sudo удаляется [дубликат]

Этот вопрос уже имеет ответ здесь: Можно ли повторно установить его после удаления? 7 ответов

Как установить пакет sudo?

$ apt-get install sudo
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?
1
задан 22 January 2017 в 20:29

4 ответа

Вам необходимо root разрешить установку любого программного обеспечения. Но вы удалили пакет sudo.

Если у вас есть доступ как root, вы можете снова установить sudo.

Ссылка на этот ответ .

Попробуйте начать с bash mode с пользователем root.

Перезагрузите свою систему. Длительно нажмите клавишу Shift или Esc. Выберите Advanced options for Ubuntu. Выберите Ubuntu, with Linux x.x.x-xx-generic (recovery mode). Выберите команду root Drop to root shell prompt Type mount -o rw,remount /, чтобы получить доступ на чтение. Введите apt install sudo. Следуйте инструкциям на экране.

Если установка завершена, это сделано!

Если нет, это может потребовать подключения к сети.

Перезагружает вашу систему для нормальной загрузки и загрузки необходимых файлов. Если это так, Ctrl + D снова перейдет на страницу меню и выберите resume. Это будет нормально загружаться.

Возможно, вам потребуется установить sudo в автономном режиме. Это может быть еще одно исследование. answer вы можете найти пакет .deb. Вы можете загрузить свою версию ОС. Загрузите файл sudo_1.8.19-3_xxxx.deb. А затем запомните свою загрузку file path.

Перезагрузите свою систему в bash mode (recovery mode) и выполните 1-6 шагов.

И затем dpkg -i *file_path/sudo_1.8.19-3_xxxx.deb. Это установит sudo. Законченный! Ctrl + D и выберите resume для нормальной загрузки.

Done!

2
ответ дан 23 May 2018 в 02:10
да, я случайно удалил файл sudo. вывод ls -l / usr / bin / sudo не может получить доступ к «/ usr / bin / sudo»: нет такого файла или каталога

Просто мысль:

У вас все еще есть носитель (DVD / USB-накопитель), из которого вы установили Ubuntu в свою систему?

Загрузите его и установите системный раздел вашего компьютера. Скопируйте /usr/bin/sudo из живой системы в смонтированный раздел. Убедитесь, что владелец файла и разрешения совпадают. Перезагрузите систему.
2
ответ дан 23 May 2018 в 02:10

Возможно, вы можете загрузить свою систему в режим восстановления через grub. Оттуда вы можете попытаться проверить системную интеграцию через dpkg, что, возможно, позволит вам решить вашу проблему. Или после этого, поскольку ваш раздел был установлен с разрешениями на чтение и запись, вы можете установить sudo без использования команды sudo с помощью записи корневого меню. Вы должны обновить с помощью apt-get и, возможно, сначала попробовать использовать apt-get install -f и dpkg --configure -a.

0
ответ дан 23 May 2018 в 02:10
  • 1
    Доступна ли сеть в режиме восстановления? – Eliah Kagan 23 January 2017 в 04:02
  • 2
    Да, в самом деле. Это. Сеть доступна в режиме восстановления. – starkus 23 January 2017 в 09:32
  • 3
    Я думаю, вам нужно включить его из меню восстановления, а затем сделать то, что вам нужно. – George Udosen 23 January 2017 в 10:17

Вы можете построить sudo из источника

mkdir sudo-src
cd sudo-src
apt-get source sudo
cd sudo-x.y.z
./configure --prefix=$HOME
make
make install
0
ответ дан 23 May 2018 в 02:10
  • 1
    Пользователь без полномочий root, который не имеет возможности выполнять действия как root, не может установить sudo таким образом, чтобы он мог позволить пользователям запускать команды как другие пользователи (например, root). В частности, исполняемый файл sudo должен быть setuid root , а пользователи без полномочий root не могут изменить права собственности файла на root. Очень хорошо, что это не сработает - если да, то любой, у кого есть учетная запись, может перерасти свои собственные права на root и запустить произвольный код, установив собственную версию sudo! Но, к сожалению, это означает, что приведенный здесь метод не поможет. – Eliah Kagan 22 January 2017 в 22:59
  • 2
    Это отличная идея! Откуда у вас «источник»? Вы пробовали это, и это было успешным? Мне любопытно, как make install работает здесь, когда OP не имеет доступа к эскалации в рамках своего вопроса. – earthmeLon 22 January 2017 в 23:00
  • 3
    sudo является проектом с открытым исходным кодом . Источник доступен на сайте проекта и, вероятно, через диспетчер пакетов дистрибутива в качестве исходного пакета. – loa_in_ 23 January 2017 в 03:17
  • 4
    @earthmeLon Существует несколько способов получить исходный код, и если исходные репозитории включены в /etc/apt/sources.list, путь здесь будет успешно восстановлен. Если build-essential установлен, его можно даже построить таким образом. Но вы никогда не сможете установить рабочий sudo с помощью этого метода. Пользователь без полномочий root просто не может заставить sudo или его поддерживающие файлы принадлежать пользователю root и без этого sudo ничего не может сделать. Попробуйте и посмотрите: шаг make install завершился с ошибкой «Операция не разрешена». ошибка chown. – Eliah Kagan 23 January 2017 в 06:55
  • 5
    Да, я ободряю @ GAD3R прийти к такому выводу. – earthmeLon 23 January 2017 в 07:38

Другие вопросы по тегам:

Похожие вопросы: