Команда sudo не найдена на Cygwin

В настоящее время я пытаюсь установить и обновить несколько пакетов в ОС Windows. Единственное, что я использую Cygwin для ввода команд через терминал (как мне известно, я могу набирать команды типа Linux, такие как cd, ls и т.д. На Cygwin - я могу ошибаться). Однако, когда я пытаюсь установить пакет, например:

sudo apt-get install paparazzi-dev 

Получаю ответ:

-sh: sudo: command not found.

Есть ли у кого-нибудь идея, как я могу исправить эту проблему?

Ответ 1

Cygwin не является полным дистрибутивом Linux. Поэтому у вас нет sudo или менеджера пакетов Debian/Ubuntu apt-get. В репозитории Cygwin имеется несколько пакетов: http://cygwin.com/packages/ Вы должны выбрать эти пакеты во время настройки.

Ответ 2

Запустите cygwin как администратор.. тогда вам не понадобится команда sudo.

Ответ 3

В Windows нет суффо, apt или почти любых команд Linux. Cygwin может разрешить некоторые, но поскольку программы не установлены на Windows, поскольку пакеты apt-get не будут работать. В программах Windows установлены инсталляторы как .exe или .msi.

Версия sudo для Windows называется runas, если вам нужно запустить что-то в качестве другого пользователя. Или вы можете запустить Cygwin в качестве администратора.

Если вам нужно использовать пакеты, вам нужен Linux. Вы можете установить его напрямую, чтобы заменить Windows, выполнить двойную загрузку или использовать программное обеспечение для виртуализации, такое как VMware VirtualBox.

Ответ 4

Извлечение пояснительного ответа от ответа здесь на @Aimal, поскольку это сработало для меня.

Cygwin может не получить permissions to create folders and files при запуске, щелкнув значок Cygwin, который находится в нормальном режиме.

Cygwin получает право авторизации только тогда, когда right click -> "run as adminitrator" на cygwin icon из-за этого получает permissions to create folders and files.

Ответ 5

Cygwin позволяет запускать определенные команды, такие как cd, ls или mv; но он не позволяет запускать другие команды, такие как sudo или apt-get.

  • Если вы пытаетесь добавить пакет к установке Cygwin, перезапустите Cygwin Setup. Он все еще может находиться в папке "Загрузки". Повторите все шаги еще раз. Установщик Cygwin автоматически загрузит и установит требуемый пакет и добавит его в вашу установку Cygwin. (Я думаю, что он, вероятно, также обновит все ваши установленные пакеты Cygwin до последних доступных версий.)

  • Если ваш желаемый пакет не находится в списке пакетов Cygwin, но находится на Список пакетов портов Cygwin, следуйте инструкциям Инструкции по установке портов Cygwin. Обратите внимание, что порты Cygwin отделены от Cygwin. Пожалуйста, не отправлять сообщения о пакетах Cygwin Ports в списки рассылки cygwin.com.

  • Если у вас есть опыт работы с Linux, вы можете скомпилировать нужное вам программное обеспечение в Cygwin. Это может быть сложной задачей.

  • Возможно, более простой вариант, чем "скомпилировать его самостоятельно", заключается в следующем: вы можете установить VirtualBox, затем установить свой любимый дистрибутив Linux внутри виртуальной машины, а затем установить нужный пакет внутри Linux. (Мне нравится Ubuntu Linux, в котором содержится более 27 000 пакетов в репозитории "Вселенная".) Теперь вы можете одновременно запускать Linux и Windows.

Ответ 6

Думаю, я пробовал шаги ниже, после некоторых исследований и преуспел (по окнам)

1.Установите scoop с помощью powershell 3 (iex (new-object net.webclient).downloadstring('https://get.scoop.sh')) 2. сделать совок установить --global sudo 3. Убедитесь, что в переменной окружения добавлены пути (C:\Users\\scoop\shims и C:\ProgramData\scoop\shims).

Ответ 7

В моем случае я хотел установить завиток, но не смог создать каталог /usr/local/curl/lib при запуске команды "make install" из-за отказа разрешения. поэтому мне нужно изменить /usr/local разрешение. когда я запускаю sudo chmod 755/usr/local, команда sudo не найдена.

после поиска нескольких решений, выяснилось, что sudo по умолчанию не установлен в Cygwin. Но я попробовал решение, которое дал Aimal, для запуска Cygwin в качестве администратора. Наконец, я могу изменить разрешение папки. Спасибо Aimal.