Как редактировать / etc / hosts без sudo?

У меня есть машина, с которой я могу получить доступ только с помощью SSH.

Я возился с именами хостов, и теперь он говорит:

ssh: unable to resolve hostname 

Я знаю, как исправить это в /etc/hosts .

Проблема в том, что мне нужно sudo чтобы исправить их, потому что у моей обычной учетной записи нет разрешений.

Каков наилучший способ исправить хосты?

  • Предоставляет ли команда unattended-upgrade безопасным пользователям, не использующим sudo?
  • Sudo с NOPASSWD и перезапуск службы
  • Как sudo прерывается в xterm на Ctrl-C?
  • тестирование sudo для учетных данных
  • Использовать пользовательскую конфигурацию без полномочий root для учетной записи root
  • исключить команды из прав пользователя sudo
  • как требовать sudo для просмотра файлов?
  • сбросить разрешения системного файла, владельцев и групп
  • 2 Solutions collect form web for “Как редактировать / etc / hosts без sudo?”

    Вам не нужно sudo, чтобы исправить это, попробуйте pkexec ,

     pkexec nano /etc/hosts pkexec nano /etc/hostname 

    После запуска pkexec nano /etc/hosts добавьте новое имя хоста в строку, начинающуюся с 127.0.1.1 как 127.0.1.1 ниже,

     127.0.0.1 localhost 127.0.1.1 your-hostname 

    Кроме того, не забудьте добавить имя хоста внутри файла /etc/hostname после запуска команды pkexec nano /etc/hostname ,

     your-hostname 

    Перезагрузите компьютер. Теперь это работает.

    Для редактирования файла /etc/hosts на локальном хосте вам понадобятся права sudo или root. Если вы этого не сделаете, нет способа редактировать этот файл.

    Затем вы должны добавить запись в /etc/hosts чтобы ваш локальный хост мог правильно разрешить имя хоста удаленного хоста.

    Это формат строк в /etc/hosts

     127.0.0.1 localhost.localdomain localhost 10.10.2.9 remotehost.labs remotehost 
    Linux и Unix - лучшая ОС в мире.