измененные полномочия 'usr' к 700

Я изменил полномочия /usr в Ubuntu к 700.

Графика не работает. В tty у меня нет доступа к sudo для возврата полномочий снова.

Я пытался получить доступ к корню от 'усовершенствованного параметра загрузки' и выполнить команду chmod 755 /usr но это сказало что-то как 'файл только для чтения', и полномочия не изменились.

Один из моих друзей также попробовал путем монтирования диска и изменения владельца, но ничто, кажется, не работает.

1
задан 20 August 2016 в 15:21

2 ответа

К сожалению, Вы удалили полномочия группы и все другие полномочия. И Вы сделали это к примерно каждой программе что Ваше системное использование, чтобы загрузить и потянуть GUI. Вы также уничтожили эмулятор терминала. Если у Вас нет изображения, от которого можно восстановить, я думаю, что Вы оказываетесь перед необходимостью переустанавливать ОС.

1
ответ дан 7 December 2019 в 13:42

Если Вы загружаетесь в восстановлении и даны меню, где можно позволить объединиться в сеть (эта опция монтирует файловую систему с разрешением записи чтения), то позвольте объединиться в сеть и затем выберите опцию ввести корневую оболочку и пропуск к шагу 3 - можно опустить sudo на командах в этом случае. Если Вы загрузитесь в восстановлении и не получите эту опцию, то это не будет работать, потому что необходимо использовать sudo для перемонтирования как, чтение-запись и Вы не можете использовать sudo, так в этом случае:

Если Вы не имеете сетей и базируетесь опция восстановления оболочки, то загружаетесь в живую сессию (заставьте того друга делать Вас живым USB, если у Вас нет одного), и смонтируйте свою установку:

  1. Найдите корневой раздел с sudo fdisk -l . Это будет самое большое, если Вы не сделаете двойной начальной загрузки и скорее всего будете иметь ext4 файловую систему.

  2. Смонтируйте раздел, с помощью подлинного имени корневого раздела вместо /dev/sdxY и cd к точке монтирования:

    sudo mount /dev/sdxY /mnt
    cd /mnt
    
  3. Проверьте текущие полномочия

    ls -ld /usr
    
  4. Возвратите владельца, чтобы базироваться, если это не корень:

    sudo chown root:root /usr
    

Проверьте, использовал ли Ваш друг -R путем выполнения ls -ld /usr/bin и если это говорит, что корень является владельцем, затем не сделайте ничего больше и перейдите к следующему шагу. Если Ваш друг используется -R затем необходимо использовать sudo chown -R root:root /usr исправлять его здесь. корень должен быть владельцем всего в /usr кроме /usr/bin/at который должен принадлежать daemon таким образом, если Вы использовали chown -R root:root /usr затем впоследствии сделайте chown daemon:daemon /usr/bin/at (Я проверил это использование умной команды находки из этого ответа..., если Вы имеете /usr/sbin/uuidd это должно также быть chownредактор: chown libuuid /usr/sbin/uuidd

  1. измените полномочия (НЕ ИСПОЛЬЗУЯ-R)

    sudo chmod 755 /usr
    

Снова, не используйте -R флаг

  1. a. Принятие Вас не использовало -R отметьте во-первых, Вы зафиксировали его теперь. Если Вы действительно использовали -R флаг, затем могло бы быть легче создать резервную копию Вашего /home наполните безопасно и переустановите, но на данный момент зафиксируйте sudo то, которому нужен setuid, укусило (восьмеричные 4):

    sudo chmod 4755 /usr/bin/sudo
    
  2. При выполнении живой сессии, cd и размонтирование раздел:

    cd /
    sudo umount /dev/sdxY
    

и перезагрузка назад в Вашу систему. Теперь Вы имеете sudo, и chmod находится в /bin таким образом, можно использовать sudo chmod для закрепления поврежденных полномочий на чем-либо еще, Вам нужно в/usr для того, что Вы хотите сделать затем, но удостовериться, что Вы знаете точно, что Вы делаете (считайте некоторый материал, например, это и это) при использовании chmod (считайте и избегайте использования -R флаг - при очистке setuid, укусил от sudo Вы повредите его снова.

1
ответ дан 7 December 2019 в 13:42

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

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