Я изменяю последнюю строку в/etc/passwd, и я не могу использовать sudo

Вот то, что я сделал:

  1. Измените имя пользователя в последней строке: tiny кому: abc

    • tiny@tty7:~$ sudo vim /etc/passwd
    • Измените это:
      tiny:x:1000:1000:tiny,,,:/home/tiny:/bin/bash
      к этому:
      abc:x:1000:1000:tiny,,,:/home/tiny:/bin/bash
  2. tiny@tty7:~$ sudo vim /etc/shadow

    • это показывает: [sudo] passwork for abc:

    • Я не изменил свой пароль, но он не может войти в корень!

    • Я тип Ctrl+Alt+F1 к tty1 но ни один крошечный или abc не может войти в систему с моим паролем

и я пытаюсь посмотреть на ls ~ -la, здесь это показывает как это:

drwxr-xr-x 28 abc tiny 4096 Apr 6 03:04 .

Как я могу войти в корень? и почему имя пользователя в подсказке tiny@tty7 все еще будьте крошечными, в то время как в sudo это показывает пароль abc?

15
задан 6 April 2015 в 23:09

4 ответа

Причина Вы застряли после своего редактирования, состоит в том что /etc/shadow файл содержал запись для пароля tiny но никакая запись для abc, тогда как /etc/passwd файл содержал запись для abc а не для tiny. Когда sudo посмотревший, это идентифицировало Вас правильно (согласно файлу паролей) как abc на основе UID процесса Вы работали, но когда он надеялся сравнивать то, в чем Вы вошли как свой пароль с зашифрованным (хешированным) паролем, сохраненным /etc/shadow, это не могло найти запись для abc, таким образом, это должно было сообщить об отказе.

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

18
ответ дан 6 April 2015 в 23:09

Вы никогда не должны редактировать свой passwd файл вручную, потому что Вы испортите вещи.

надлежащий способ изменить Ваше имя пользователя:

usermod -l newUsername oldUsername

Затем изменение размещают папку:

usermod -d /home/newHomeDir -m newUsername

Для изменения пароля необходимо использовать:

sudo passwd yourusername

я предлагаю, чтобы Вы вернулись свой passwd файл назад, или если Вы не можете отредактировать его, потому что Вы не можете войти в систему с корнем - затем загружаются с живым CD и возвращаются файл назад. Затем используйте надлежащий путь.

22
ответ дан 6 April 2015 в 23:09

Использование: vipw

я всегда использовал это на FreeBSD и просто подтверждал Вас, может использовать его для Ubuntu также. Прочитайте эту страницу: Страница справочника Ubuntu для vipw

0
ответ дан 6 April 2015 в 23:09

процедура изменения Вашего имени пользователя (но не uid) вручную:

  1. исследовали Вашу голову, когда это перестало работать, продолжают ступать два.
  2. теневой файл редактирования, копирующий линию пользователя с новым именем пользователя.
  3. группы редактирования, sudoers, позволяя новые полномочия имени пользователя, сохраняют старыми
  4. символически корневой каталог ссылки к новому имени
  5. , редактирование passwd файл, изменяющий имя пользователя и корневой каталог
  6. , редактирует тень, sudoers, группы для удаления старых записей, которые мы сохранили на шаге три
  7. псевдонимы редактирования и другие ссылки на старое имя пользователя.
  8. выход из системы, переключитесь на текстовую консоль (следующий шаг не будет работать, если какие-либо программы будут работать в пользовательском корневом каталоге, включая менеджеры окон)
  9. CD к каталогу выше Вашего корневого каталога.
  10. удаляют символьную ссылку и переименовывают корневой каталог.
  11. выход из системы и вход в систему как нормальный.

Вещи намного более просты изменить имя пользователя других, хотя все еще не простой.

-3
ответ дан 6 April 2015 в 23:09

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

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