На этот вопрос уже есть ответ здесь:
Я совсем новый пользователь, поэтому еще не уверен, что смогу разобраться в системе. Я хочу изменить имя своего компьютера, поэтому я попытался отредактировать имя в /etc/hostname
, но этот файл доступен только для чтения. Добавление !
не помогло. Я использую vim
для редактирования файла.
Изменение параметров настройки системы требует полномочий суперпользователя. От терминала сделайте
sudo <editor> <filename>
, где энергия или нано или какая-либо другая команда редактора могли быть и являются той, необходимо ли отредактировать.
Вы могли также использовать gksudo gedit <filename>
.
В любом случае Вам предложат пароль пользователя с полномочиями суперпользователя - в нормальной установке Ubuntu, это было бы первым пользователем, созданным во время установки.
При редактировании файла без sudo
, и Вы потребность sudo
для сохранения, просто используйте эту команду энергии:
:w !sudo tee %
Кредит к доктор Beco . Обратите внимание, что энергия заметит, что файл изменяет и спрашивает Вас, если Вы хотите к (L) oad изменения, нажмите L .
sudo -H gedit <path to file>
, например:
sudo -H gedit /etc/environment
или sudo nano /etc/environment
Ctrl + X и Ctrl + Y и хит Входят (для нано)
У Вас не могло бы быть доступа к файлу для изменения его.
для получения доступа, необходимо получить права суперпользователя и это sudo
.
Открытый терминал, введите:
sudo -H gedit "your file name "
, Если Вы используете какой-либо другой текстовый редактор, вводят это.
По умолчанию у Вас есть wight разрешение к файлу hosts пользователю root только, как показано ниже:
-rw-r--r-- 1 root root 252 Dec 16 08:40 /etc/hosts
Следовательно необходимо использовать sudo для редактирования этого, или иначе можно использовать ниже команды для становления корневыми
sudo su -
однако, это не рекомендуется вообще.
самый безопасный и рекомендуемый его Вы используете ниже команды для редактирования файла
sudo, энергия/etc/hosts
тогда нажимают" Esc" на клавиатуре и затем вводят" : w! " для записи изменений в файле hosts тогда снова вводят" : q" или" : q! ", это должно, добьюсь цели для Вас.
Можно изменить файл (даже если это только для чтения) при владении им.
Даже если пользователь, который Вы зарегистрированы как (в этом случае navid
) имеет административные привилегии, Вы не сможете изменить /etc/hostname
, потому что root
пользователь владеет тем файлом. Следовательно, необходимо войти в систему как пользователь root.
Предположение, что Вы хотите изменить свое имя компьютера от oldName
кому: newName
, вот шаги, которые необходимо выполнить:
Войдите в систему как пользователь root:
navid@oldName:~$ sudo su -
Открытое имя хоста:
root@oldName:~# vi /etc/hostname
Вы будете видеть oldName
. Нажмите i для движения в режим вставки, затем изменяют его на newName
. Затем нажмите Esc +: + w + q + Входят, чтобы сохранить и выйти.
Открытые узлы:
root@oldName:~# vi /etc/hosts
Лучшие 2 строки похожи на это:
127.0.0.1 localhost
127.0.1.1 oldName
Так же к тому, что Вы сделали на шаге 3, измените имя компьютера от oldName
кому: newName
. Затем сохраните и выйдите.
Выйдите из пользователя root:
root@oldName:~# exit
Сохраните всю свою несохраненную работу и перезапустите свой компьютер:
navid@oldName:~$ reboot
Откройте свой терминал, и Вы будете видеть, что Ваше имя компьютера было успешно изменено!:-)
navid@newName:~$
Примечание: Хотя можно достигнуть того, что Вы хотите путем пропуска шагов 4 и 5, я настоятельно рекомендую делать их также, избежать потенциальных ошибок в будущем.
См. также: