На этот вопрос уже есть ответ:
Я новичок в Linux и только что загрузил Ubuntu 12.04 LTS. Я нашел место, которое показало мне, как присоединиться к моей Windows Active Directory. Он заставил меня добавить пару строк в «хосты», но я не могу редактировать файл, потому что у меня нет разрешения. Я не владелец. Я использую chmod с rwx, но он не позволяет редактировать файл. Как изменить разрешение? Спасибо
Это не хорошая идея стать владельцем системного файла / каталог! Так, если Вы хотите отредактировать системный файл, не необходимо быть владельцем того файла. Просто используйте в терминале:
sudo -i # to grant access as root
gedit file_name # or /path/to/file/file_name
После того, как Вы закончили редактировать свой файл, нажмите Ctrl+D в терминале для выхода от корневой сессии.
Но стать владельцем файла/каталога, использовать chown
. Например:
sudo chown your_username file_or_directory
Проверить man chown
и man chmod
для получения дополнительной информации.
Самый простой способ (большинство GUI) будет использовать gedit
. Вы также можете использовать любой другой редактор, который вы предпочитаете (например, nano
или vi
). Просто запустите редактор как root с помощью sudo
и все готово! Вам нужно передать 1 аргумент: путь к файлу, который вы хотите редактировать (в данном случае /etc/hosts
).
Полная команда:
sudo -i gedit /etc/hosts
Вы должны использовать sudo -i (nano for text-based or gedit for graphical) /etc/hosts
. По умолчанию обычные пользователи не должны иметь возможности редактировать файл hosts. Смена владельца хостов не является правильным решением.
Откройте терминал и попробуйте следующее:
sudo vi file.txt
file.txt - это файл, который вы хотите редактировать.
Система попросит вас ввести пароль, чтобы вы могли выполнить команду с привилегиями root.
Редкий случай (но он был моим): файловая система может быть смонтирована только для чтения. Это может произойти неожиданно из-за проблемы с диском / ядром .