5 جایگزین ویندوز برای دستور sudo لینوکس

اگر تا به حال از لینوکس(Linux) استفاده کرده اید یا شخصی را می شناسید که از لینوکس(Linux) استفاده می کند ، احتمالاً نام دستور sudo را شنیده اید. این فرمان تقریباً برای هر توزیع لینوکس(Linux) جزء مهمی است و کاری که انجام می دهد این است که به شما اجازه می دهد یک فرمان را به عنوان یک کاربر متفاوت، به ویژه کاربر اصلی، اجرا کنید. در برخی از توزیع‌های لینوکس(Linux) ، می‌توانید با استفاده از دستور su به عنوان کاربر اصلی وارد شوید ، اما این بسیار خطرناک است و هیچ‌کس این کار را انجام نمی‌دهد.

در واقع، آنقدر خطرناک است که به طور پیش‌فرض در توزیع‌های لینوکس(Linux) مانند اوبونتو(Ubuntu) غیرفعال است. در عوض، اگر می خواهید دستوری را به عنوان کاربر اصلی اجرا کنید، باید از دستور sudo استفاده کنید. (sudo)پس ویندوز(Windows) چطور؟ خب(Well) متأسفانه اکثر مردم به عنوان Administrator(Administrators) وارد ویندوز(Windows) می شوند که همان کاربر root در لینوکس(Linux) است. با این حال، مایکروسافت سعی کرده است با فعال کردن (Microsoft)کنترل حساب کاربری(User Account Control)  یا UAC ، اثرات خطرناک ورود به سیستم را به عنوان مدیر کاهش دهد .

به این ترتیب، حتی اگر کاربر دارای امتیازات Administrative باشد، برنامه‌هایی که تحت آن حساب اجرا می‌شوند، این امتیازات را به ارث نمی‌برند، مگر اینکه به صورت دستی توسط کاربر مجاز باشد. این کمک می کند تا از آلوده کردن بدافزارها و جاسوس افزارها به کاربر ویندوزی(Windows) که به عنوان مدیر(Administrator) وارد شده است جلوگیری شود .

بنابراین در حالی که کاربران لینوکس(Linux) فرمان sudo را دارند، کاربر ویندوز(Windows) چه چیزی دارد ؟ آیا(Are) جایگزین هایی وجود دارد که کاربران ویندوز(Windows) می توانند برای اجرای دستورات با امتیازات بالا استفاده کنند؟ آیا دستور sudo برای ویندوز(Windows) وجود دارد ؟ در این مقاله، در مورد پنج جایگزین دستور sudo برای کاربران ویندوز صحبت خواهم کرد.(Windows)

توجه: برخی از این ابزارها در حال حاضر کاملا قدیمی هستند، بنابراین ممکن است با آخرین نسخه های ویندوز کار کنند یا نکنند. (Note: Some of these tools are quite old now, so they may or may not work with the latest versions of Windows. )

دستور Runas ویندوز

ویندوز دستور runas را دارد که همتای مستقیم sudo در لینوکس(Linux) است. با استفاده از دستور runas، می توانید یک اسکریپت، برنامه یا دستور را به عنوان یک کاربر دیگر یا به عنوان یک مدیر اجرا کنید. سینتکس کامل دستور runas به صورت زیر است:

runas [{/profile|/noprofile}] [/env] [/netonly] [/smartcard] [/showtrustlevels] [/trustlevel] /user:UserAccountName program

اگر می‌خواهید یک خط فرمان اداری باز کنید، می‌توانید عبارت زیر را تایپ کنید:

runas /noprofile /user:Administrator cmd

دستور runas

/noprofile نمایه کاربر فعلی را بارگیری نمی کند. در صورت نیاز به دسترسی به متغیرهای محیط کاربر، می توانید آن را حذف کنید. اگر می خواهید یک فایل متنی را با استفاده از Notepad با حقوق مدیر باز کنید، می توانید از این دستور استفاده کنید:

runas /user:Administrator "notepad my_file.txt"

برای اطلاعات بیشتر در مورد نحوه استفاده از آن می توانید صفحه Technet را در runas بررسی کنید.(Technet page)

توجه داشته باشید که هنگام استفاده از دستور runas، در صورت نصب برنامه یا ایجاد تغییرات در تنظیمات و غیره، تغییرات در حساب کاربری که دستور را روی آن اجرا می کنید، اعمال می شود. به عنوان مثال، فرض کنید کاربر X دارید که یک کاربر عادی است و کاربر Y که یک مدیر است. اگر وارد X شوید و سپس با استفاده از اعتبار Administrator یک runas انجام دهید ، تغییراتی در تنظیمات Administrator اعمال خواهد شد ،(Administrator) نه کاربر X.

بنابراین اگر برنامه‌ای را با کلیک راست روی فایل EXE و انتخاب Run as Administrator نصب کنید، در نمایه کاربر Administrator داخلی نصب می‌شود ، نه در پروفایلی که وارد آن شده‌اید. اگر می خواهید امتیازات واقعی مانند sudo را بدون مشکلات نمایه داشته باشید، گزینه بعدی زیر را بررسی کنید.

Sudo برای ویندوز – Sourceforge

Sudo برای ویندوز(Sudo for Windows) یک برنامه رایگان است که می توانید نصب کنید و همان تجربه دستور sudo را در لینوکس(Linux) برای ویندوز(Windows) به شما می دهد. تنها تفاوت این است که Sudo برای ویندوز (Windows) "نمایه کاربر و مالکیت اشیاء ایجاد شده را حفظ می کند"(“preserves the user’s profile and ownership of created objects”) همانطور که توسط توسعه دهنده بیان شده است. اگر می‌خواهید از مجوزهای بالا برای نصب برنامه‌ها یا ایجاد تغییرات در مکان‌های کاربری مانند My Documents و غیره استفاده کنید، واقعاً مفید است.

به شما امتیازات Administrative می دهد، اما همه تغییرات را در نمایه فعلی به جای حسابی که برای اجرای دستور استفاده می کنید، حفظ می کند. این برنامه به دات نت نسخه 2.0 نیاز دارد که نمی توانید آن را به صورت جداگانه دانلود کنید. برای دریافت 2.0 باید دات نت فریم ورک 3.5(.NET Framework 3.5) را نصب کنید که شامل 2.0 می شود.

هنگامی که Sudo را برای ویندوز نصب(Windows) کردید، باید حساب های کاربری را اضافه کنید تا اجازه دهید امتیازات بالاتری را به گروه خاصی که توسط برنامه به نام S udoers ایجاد شده است، اضافه کنید. روی My Computer(My Computer) یا This PC کلیک راست کرده و روی Manage کلیک کنید . سپس Users and Groups را باز کرده و روی Groups کلیک کنید . شما باید یکی به نام سودوئرها(Sudoers) را ببینید .

سوداگرها

روی Sudoers دوبار کلیک کنید و روی دکمه Add کلیک کنید.

اضافه کردن عضو

در گفتگوی بعدی، روی دکمه Advanced و سپس Find Now را کلیک کنید . با این کار تمام کاربران و گروه‌های موجود در سیستم فهرست می‌شوند. روی کاربری که می خواهید اضافه کنید دوبار کلیک کنید.(Double-click)

کاربر را به گروه اضافه کنید

این مرحله را برای تعداد کاربرانی که می خواهید اضافه کنید تکرار کنید. سپس روی OK کلیک کنید و باید اعضای لیست شده در کادر لیست اعضا را که در بالا(Members) نشان داده شده است ببینید. روی OK کلیک کنید(Click OK) و اکنون باید بتوانید از رابط کاربری گرافیکی(GUI) و دستور sudo استفاده کنید. اگر روی برنامه ای راست کلیک کنید، گزینه Sudo را مشاهده خواهید کرد .

sudo کلیک راست کنید

همچنین می توانید یک خط فرمان باز کنید و sudo را برای اجرای دستور با مجوزهای بالا تایپ کنید.

خط فرمان sudo

به طور کلی، بسیار زیبا است و بسیار خوب کار می کند. با این حال، توجه داشته باشید که این برنامه خاص واقعاً برای راه اندازی(launching) برنامه ها یا پردازش ها از طریق کلیک راست یا از طریق خط فرمان مفید است، اما برای اجرای برنامه های خط فرمان مناسب نیست. برای مثال، اگر می‌خواهید sudo mkdir "c:Program Files ew" را انجام دهید، این کار با استفاده از Sudo برای ویندوز(Windows) کار نخواهد کرد . برای این قابلیت، برنامه دیگری به نام همان چیزی وجود دارد، اما توسط یک توسعه دهنده متفاوت. زیر را بخوانید(Read) .

سودو برای ویندوز - لوک سامپسون

یک توسعه‌دهنده دیگر وجود دارد که Sudo دیگری برای ویندوز(Sudo for Windows) نوشته است که به شما امکان می‌دهد برنامه‌های خط فرمان را نیز اجرا کنید. بنابراین اجازه دهید به مثال مربوط به ایجاد یک پوشه جدید در C:Program Files برگردیم. شما واقعا نمی توانید این کار را به صورت پیش فرض انجام دهید.

powershell mkdir

در بالا، من از PowerShell استفاده می کنم ، اما با استفاده از خط فرمان نیز همان خطا را دریافت خواهید کرد. با این حال، هنگامی که Sudo را برای ویندوز(Windows) نصب کردید ، فقط کلمه sudo را به جلوی دستور اضافه کنید و بدون خطا کار می کند!

برای نصب آن، باید PowerShell را باز کنید و سپس دستورات زیر را به ترتیب وارد کنید:

iex (new-object net.webclient).downloadstring('https://get.scoop.sh')

set-executionpolicy unrestricted -s cu -f

scoop install sudo

اگر همه چیز درست است، پس از هر دستور باید خروجی زیر را در PowerShell ببینید:(PowerShell)

Scoop sudo را نصب کنید

خودشه! اکنون می توانید شروع به تایپ دستورات و اضافه کردن sudo در جلو کنید. تنها چیزی که در مورد این برنامه آزاردهنده است این است که پنجره UAC همچنان ظاهر می شود و شما باید (UAC)Yes را کلیک کنید تا کار کند. حتی با آن آزار جزئی، مزایا ارزشش را دارد.

بالا بردن

Elevate برنامه ای است که با UAC کار می کند و دقیقاً مانند sudo کار نمی کند. با Elevate ، کاربر اجراکننده را مانند دستور runas به Administrator تغییر می‌دهد. (Administrator)با این حال، برای کار در خط فرمان یا با فایل های دسته ای مفید است.

بالا بردن

هدف اصلی elevate دور زدن UAC نیست، بلکه شروع یک فرآیند در حالت بالا از یک پوسته غیربالا و سپس ادامه روند عادی حتی پس از تکمیل فرمان است. Elevete(Elevate) برای اسکریپت نویسی مفید است زیرا لازم نیست نگران تلاش برای اسکریپت کردن کل کلیک راست و اجرای خط فرمان به عنوان فرآیند Administrator باشید.(Administrator)

Elevation PowerToys برای ویندوز

برای کسانی از شما که کارهای زیادی روی خط فرمان انجام می‌دهند یا با اسکریپت‌ها و فایل‌های دسته‌ای کار می‌کنند، صفحه Elevation PowerToys برای ویندوز(Elevation PowerToys for Windows) دارای چندین ابزار و اسکریپت مفید است.

اسباب بازی های برقی ارتفاع

اسباب‌بازی‌های قدرت اسکریپت(script elevation power toys) برای غلبه بر جنبه‌های ناامیدکننده UAC در هنگام تلاش برای بالا بردن یک برنامه از خط فرمان یا اجرای اسکریپت‌ها به عنوان سرپرست ایجاد شدند.

امیدواریم(Hopefully) این ابزارها و برنامه‌ها برای شما کافی باشد تا احساس کنید واقعاً از sudo در ویندوز(Windows) استفاده می‌کنید . هیچ جایگزین کاملی برای آن وجود ندارد، اما چندین گزینه وجود دارد که نزدیک به آن هستند. اگر از چیز دیگری برای بالا بردن برنامه‌ها، دستورات یا اسکریپت‌ها در ویندوز(Windows) استفاده می‌کنید ، در نظرات به ما اطلاع دهید. لذت بردن!



About the author

من یک مهندس نرم افزار و وبلاگ نویس با نزدیک به 10 سال تجربه در این زمینه هستم. من در ایجاد بررسی ابزارها و آموزش‌ها برای پلتفرم‌های مک و ویندوز، و همچنین ارائه نظرات تخصصی درباره موضوعات توسعه نرم‌افزار تخصص دارم. من همچنین یک سخنران و مدرس حرفه ای هستم و در کنفرانس های فناوری در سراسر جهان ارائه کرده ام.



Related posts