'sudo' не установлен, я не могу установить его, и он спрашивает, являюсь ли я пользователем root

20

Я только что закончил установку Debian 8 (Jessie) и попытался создать каталог lib/firmware, потому что rtl8723befw.binв установке отсутствовал файл ( ), и он говорит

mkdir: cannot create directory `rtlwifi`: Permission denied

Я попытался положить sudo на передний план, но потом он возвращается:

bash: sudo: command not found

При попытке установить sudo apt-get install sudoили даже apt-get updateвернуть:

E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

Я действительно в недоумении, что делать. Все решения, которые я нахожу для последней ошибки, это использовать sudo, но у меня даже этого нет.

Миссури
источник
1
связанные unix.stackexchange.com/questions/106529/…
Руи Ф. Рибейро
2
Я никогда даже не использую sudo. Всегда su -c.
Мистер Листер
Почему вы пытались использовать sudo, если вы установили пароль root?
Брайам

Ответы:

40

Если у вас нет sudoустановленного программного обеспечения, вам необходимо стать пользователем root. Использование su -и предоставить пароль привилегированного пользователя (не ваш пароль) , когда его спросили. После того, как вы стали пользователем root, вы можете apt-get install sudoвыйти из корневой оболочки и фактически использовать, sudoкак вы пытаетесь, теперь, когда он будет установлен.

DopeGhoti
источник
5
Станьте rootснова и добавьте себя в wheelгруппу. Также используйте, visudoчтобы удостовериться, что конфигурация, позволяющая кому-либо в wheelгруппе использовать sudo, не закомментирована.
DopeGhoti
3
sudoГруппа служит той же цели.
DopeGhoti
3
adduser yourusername sudo - обратите внимание, что членство в группах действительно не изменится, пока вы полностью не выйдете из всех сеансов / входов в систему
ivanivan
4
Если вы можете войти в систему как root, почему бы просто не установить прошивку как root? Забудь о судо.
Карл
1
@Carl Потому что если вы сделаете это, однажды вы не выйдете из учетной записи root. Вы будете думать о некоторых других вещах. Вы будете использовать учетную запись root, думая, что это один из ваших логинов. И ты что-нибудь сломаешь. Вот и весь смысл sudo.
Пол Эванс
15

Станьте пользователем root, запустите su, укажите свой пароль root, а затем запустите:

apt install sudo

Чтобы предоставить административные привилегии Mariel, запустите visudoкоманду от имени пользователя root, а затем отредактируйте файл следующим образом:

# User privilege specification
root    ALL=(ALL:ALL) ALL
Mariel  ALL=(ALL:ALL) ALL

Войдите как пользователь Mariel. Вы сможете запустить sudo без проблем.

GAD3R
источник
1
Это то, что я бы тоже сделал.
прост
8

В качестве альтернативы данным ответам, если вы не знаете пароль пользователя root, который вы можете использовать su, вы можете загрузиться в однопользовательском режиме.

В меню grub нажмите eдля редактирования командной строки загрузки. В конце начала строки linuxдобавьте слово singleи продолжайте загрузку. Вы будете помещены в приглашение root и сможете сбросить пароль root, чтобы вы могли использовать его suпри следующей нормальной загрузке.

user4556274
источник
3

Вы можете использовать su -cкак быструю и грязную замену. Если ваш suне включает -c, то просто suвойдите в систему как root. Если вы работаете на каком-то странном встроенном устройстве, которого нет su, попробуйте login rootвместо этого.

абрикосовый мальчик
источник