Папка /etc перемещена в другое место
Я переместил /etc папку в другое место. Теперь, когда я использую sudo mv Команда это говорит:
sudo: uid 1010 does not exist in the passwd file
есть решение для этого? это произошло в моем VPS по SSH. Формат не вариант. (Ubuntu VPS)
3 ответа
Проблема здесь в том, что способ аутентификации пользователей для входа в Ubuntu заключается в /etc/passwd файл. Так как этот файл отсутствует... произойдут плохие вещи, такие как sudo не работает.
Если у вас есть root-доступ где-то, например, сеанс, который у вас все еще открыт, или вы можете выяснить, как войти в систему как root, вы можете сделать symlink (что похоже на ярлык в Windows) для нового местоположения, чтобы операционная система могла найти файл. Вы делаете это с ln команда. Синтаксис будет:
ln -s [your new /etc location] /etc
Теперь для восстановления вашей текущей системы вы можете сделать:
Загрузитесь в живую среду.
Смонтируйте свой текущий раздел Ubuntu:
sudo mount /dev/sdXY /mntИзмените XY на текущий раздел Ubuntu. Если не уверены, запустите Gparted из живого окружения и найдите что-то вроде
sda1,sda2,sda3, так далее.Скопируйте
/etcвернуться на свое место, т.е./mnt/path/to/moved/etcв/mnt/etcСкопируйте это сsudo,Выход.
sudo rebootТеперь после загрузки установленной системы вы можете удалить ранее перенесенную
/etcпапка.
Это то, что вы сделали, переехав /etc без открытой оболочки с привилегиями:
Изображение с: https://imgur.com/gallery/eEsd4V1
... Единственный выход - сбросить VPS после резервного копирования. Сожалею. Помните, с sudo прийти великая сила и большая ответственность...

