Найти в Дзене

Команда sudo в Windows

В Windows 11 в сборке 24H2 появилась команда sudo, принцип работы которой похож на одноимённую команду в Linux. Этот проект не является форком sudo проекта Unix/Linux, равно как и портом этого sudo проекта. Вместо этого Sudo для Windows — это специфичная для Windows реализация концепции. Sudo для Windows — это новый способ выполнения пользователей команд с повышенными привилегиями (от имени администратора) непосредственно из незавершенного сеанса консоли в Windows. https://github.com/microsoft/sudo По умолчанию команда отключена. Включить ее можно в настройках Settings → System → For developers. Параметр Enable Sudo. Включить sudo можно также через реестр: reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Sudo" /v "Enabled" /t REG_DWORD /d 1 /f Проверим. Попробуем перезапустить службу печати: net stop spooler Прав не хвалило. Выполнить команду с повышенными привилегиями: sudo net stop spooler Появляется окно запроса контроля учетных записей UAC на повышение привилегий. Подтвержда
Оглавление

В Windows 11 в сборке 24H2 появилась команда sudo, принцип работы которой похож на одноимённую команду в Linux. Этот проект не является форком sudo проекта Unix/Linux, равно как и портом этого sudo проекта. Вместо этого Sudo для Windows — это специфичная для Windows реализация концепции.

Sudo для Windows — это новый способ выполнения пользователей команд с повышенными привилегиями (от имени администратора) непосредственно из незавершенного сеанса консоли в Windows.

https://github.com/microsoft/sudo

По умолчанию команда отключена.

-2

Включить ее можно в настройках Settings → System → For developers. Параметр Enable Sudo.

-3

Включить sudo можно также через реестр:

reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Sudo" /v "Enabled" /t REG_DWORD /d 1 /f

Проверим.

-4

Демонстрация работы

Попробуем перезапустить службу печати:

net stop spooler
-5

Прав не хвалило. Выполнить команду с повышенными привилегиями:

sudo net stop spooler
-6

Появляется окно запроса контроля учетных записей UAC на повышение привилегий. Подтверждаем: Да. Теперь команда будет выполнена с правами администратора.

-7

Команда запускается в отдельном окне с правами администратора.

-8

Выполнено.

Можно было выполнить однострочник:

sudo net stop spooler && sudo net start spooler
-9

Подтверждать придётся два раза.

В отличии от runas, команда sudo не запрашивает пароль администратора в командной строке.

Конфигурация

Еще один способ включить sudo — через конфигурирование под администратором:

sudo config --enable <configuration_option>
-10

Возможные опции:

  • disable
  • enable
  • forceNewWindow
  • disableInput
  • normal
  • default

По умолчанию sudo работает с опцией forceNewWindow — в режиме принудительного создания нового окна. Странно, с учётом того, что рекомендуемая опция normal — во встроенном режиме без нового окна. Режим disableInput — в режиме отключенного ввода.

Переключим режим на normal:

sudo config --enable normal

Если мы не под админом, то:

sudo sudo config --enable normal

Перезапускаем диспетчер печати:

sudo net stop spooler && sudo net start spooler
-11

Так гораздо удобнее, но этот режим считается менее безопасным.

Можно запустить команду внутри текущего окна независимости от текущего режима sudo через параметр inline.

sudo --inline net stop spooler

В помощь:

sudo -h

Источник:

Команда sudo в Windows | internet-lab.ru

💰 Поддержать проект

Если вам понравилась статья, то ставьте 👍🏻 каналу.
Пишите комментарии, задавайте вопросы, подписывайтесь.