I’m a brand new user so I’m not sure of my way around the system yet. I want to change my computer’s name, so I tried to edit the name in /etc/hostname
, but it is a read-only file. Adding the !
character didn’t help. I’m using vim
to edit the file.
Zanna♦
68.3k55 gold badges210 silver badges320 bronze badges
asked Dec 17, 2014 at 1:39
2
Changing system settings requires superuser permissions. From a terminal, do
sudo <editor> <filename>
where could be vim or nano or any other editor command, and is the one you need to edit.
You could also usegksudo gedit <filename>
.
In either case you will be prompted for password of a user with superuser permissions — in a normal Ubuntu installation this would be the first user created during installation.
answered Dec 17, 2014 at 1:47
tagMachertagMacher
5807 silver badges13 bronze badges
4
If you are editing a file without sudo
, and you need sudo
in order to save, simply use this vim command:
:w !sudo tee %
Credit to Dr Beco. Note that vim will notice the file change and ask you if you want to (L)oad the changes, press L.
answered Sep 1, 2016 at 15:21
2
Very Short Answer:
You can modify a file (even if it’s read-only) if you own it.
Short Answer:
Even if the user which you are logged in as (in this case navid
) has administrative privileges, you won’t be able to modify /etc/hostname
, because the root
user owns that file. Consequently, you should log in as the root user.
Long Answer
Assuming that you want to change your computer name from oldName
to newName
, here are the steps that you should follow:
-
Log in as the root user:
navid@oldName:~$ sudo su -
-
Open hostname:
root@oldName:~# vi /etc/hostname
-
You will see
oldName
. Press i to go to the insert mode then change it tonewName
. Then press Esc + : + w + q + Enter to save and exit. -
Open hosts:
root@oldName:~# vi /etc/hosts
The top 2 lines look like this:
127.0.0.1 localhost 127.0.1.1 oldName
-
Similarly to what you did in step 3, change the computer name from
oldName
tonewName
. Then save and exit. -
Exit the root user:
root@oldName:~# exit
-
Save all of your unsaved work and restart your computer:
navid@oldName:~$ reboot
-
Open your terminal, and you will see that your computer name has successfully been changed!
navid@newName:~$
Note: Although you may achieve what you want by skipping steps 4 and 5, I strongly recommend doing them as well, to avoid potential errors in the future.
See also:
- Why can I modify a read-only file?
answered Jan 7, 2017 at 19:06
Positive NavidPositive Navid
8753 gold badges12 silver badges19 bronze badges
sudo -H gedit <path to file>
eg :
sudo -H gedit /etc/environment
or
sudo nano /etc/environment
Ctrl + X and Ctrl + Y and hit Enter(for nano)
wittich
1,13613 silver badges25 bronze badges
answered Mar 10, 2016 at 6:55
ArUnArUn
3571 gold badge5 silver badges13 bronze badges
You might not have access to the file to change it.
In order to get access you need to get super user privileges and that is sudo
.
Open terminal, type:
sudo -H gedit "your file name "
If you use any other text editor type that in.
muru
189k52 gold badges460 silver badges711 bronze badges
answered Mar 4, 2016 at 1:55
By default you have wight permission to hosts file to root user only, as shown below:
-rw-r--r-- 1 root root 252 Dec 16 08:40 /etc/hosts
Hence you have to use sudo to edit this or else you can use below command to become root
sudo su -
however this is not recommended at all.
safest and recommended it you use below command to edit the file
sudo vim /etc/hosts
then press «Esc» on keyboard and then type «:w!» to write the changes to the hosts file then agin type «:q» or «:q!«, this should shall do the trick for you.
answered Dec 22, 2014 at 4:01
HrishHrish
2,28313 gold badges40 silver badges62 bronze badges
В некоторый случаях файловая система в Linux может перейти в состояние read-only, при котором вы можете только читать данные с диска, а при попытке записи любых изменение или создании нового файла появдляется ошибка Read-only file system.
Ошибки файловой системы и опция remount-ro
Проверьте параметры монтирования дисков при загрузке Linux. Настройки монтирования файловых систем при загрузке задаются в файле /etc/fstab.
$ cat /etc/fstab
Обратите что в fstab есть строка монтирования корневой директории вида:
UUID=aaaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaa / ext4 errors=remount-ro 0 1
Параметр
errors=remount-ro
означает, что данная директория будет смонтирована в режиме чтения, если на файловой системе устройства обнаружены проблемы. В этом случае нужно выполнить проверку диска с помощью FSCK.
Обычные файловые системы такие как EXT4/BTRFS/XFS можно монтировать как в режиме записи, так и только для чтения (в отличии от файловых систем ISO или SquashFS, которые доступны только для чтения).
В случае обнаружения ошибок на диске вы можете использовать одну из трех опций
errors=[continue|remount-ro|panic]
- continue – игнорировать ошибки,
- remount-ro – перемонтировать диск в режиме только для чтения
- panic – остановить загрузку системы
Вы можете вывести соответствие между UUID диска и именем устройства:
$ sudo blkid
В данном примере вы получили, что вашему UUID соответствует устройство /dev/sda3.
Также можно имена устройства и точки монтирования с помощью команды:
$ df –h
Т.к. в данном примере ошибки обнаружены в корневой директории которая является точкой монтирования, вы сможете выполнить ее проверку только загрузившись с LiveCD. Для исправления ошибок файловой системы используется команда:
$ sudo fsck –y /dev/sda3
Или
$ sudo fsck –y UUID=aaaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaa
Если вы не можете прямо сейчас выполнить проверку диска, и вы хотите немедленно вывести файловую систему из режима read-only, нужно выполниться команду:
$ sudo mount -o remount,rw /
Обязательно запланируйте проверку файловой системы на ближайшее время.
Read-only файловая система в виртуальных машинах
Файловая система раздела Linux на виртуальной машине можете перейти в read-only в случае недоступность системы хранения данных (СХД). Самый простой способ восстановить работу ОС – выполнить сброс виртуальной машины (фактически перезапуск с параметрами по умолчанию).
Может оказаться, что ВМ с Linux вообще не загружается и вам доступна только командная строка initramfs с предупреждениями:
UNEXPECTED INCONSISTENCY: RUN fsck MANUALLY. Fsck exitrd with code 4. The root file system of /dev/sdx requires a manual fsck.
Initramfs это начальная файловая система в оперативной памяти, которая основана на tmpfs, которая содержит утилиты и скрипты, необходимые для работы с дисками, файловыми системами и тд. После запуска initramfs отобразится проблемная ситуация.
Если же ошибок нет – просто вводим exit. Иначе выполняем проверку диска:
$ fsck /dev/sda3 –y
Здесь указан том (в данной случае /dev/sda1), для которого требуется выполнить ручную проверку. С помощью следующей команды можно проверить все подключенные файловые системы:
$ fsck –A –y /dev/sda1
После этого перезагрузите ВМ.
Ошибка read only file system может возникнуть при загрузке с LiveCD диска или в режиме восстановления вашего дистрибутива. Она означает, что файловая система в которую вы пытаетесь вести запись примонтирована только для чтения. Этому может быть несколько причин. Есть файловые системы, которые доступны только для чтения это файловая система оптических дисков — ISO, а также файловая система образов SquashFS.
С такими файловыми системами вы сделать ничего не сможете. Для изменения данных в них, надо распаковать образ, изменить данные и запаковать его обратно. Но что касается обычных файловых систем, таких как EXT4, BTRFS, XFS, то их можно монтировать и для чтения и для записи.
В этой небольшой статье мы рассмотрим как исправить read only file system Linux перемонтировав файловую систему для записи. Первым делом надо определиться с точкой монтирования, для которой надо разрешить запись. Попытаемся создать файл в корневом каталоге:
touch /file
Ошибка, файловая система корневого каталога доступна только для чтения. Чтобы посмотреть все точки монтирования доступные в системе выполните в терминале:
mount | grep /dev/sd
В данном случае, корневая файловая система и есть точкой монтирования. Но у вас, например, возникнут проблемы с созданием файла в домашней папке, то надо будет уже перемонтировать /home. Смотрите внимательно. Когда точка монтирования выбрана, осталось её примонтировать с правами на запись:
sudo mount -o remount,rw /
Или для /home:
sudo mount -o remount,rw /home
После этого вы сможете создать файл без каких-либо проблем. После завершения работы, во избежание повреждения данных при перезагрузке, желательно перемонтировать файловую систему обратно в режим только для чтения:
sudo mount -o remount,ro /
Теперь вы знаете что означает эта ошибка и как с ею справится. Если у вас остались вопросы, спрашивайте в комментариях!
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .
Об авторе
Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux, интересуюсь всем, что связано с информационными технологиями и современной наукой.
Содержание
- Способ 1: Настройка прав доступа
- Способ 2: Исправление ошибок через GParted
- Способ 3: Исправление поврежденных блоков
- Способ 4: Форматирование накопителя
- Вопросы и ответы
Способ 1: Настройка прав доступа
Первый способ исправления ошибки «Файловая система доступна только для чтения» в Linux заключается в проверке прав доступа. Иногда пользователь случайно или намерено устанавливает ограничения, которые распространяются и на других юзеров. Для начала предлагаем проверить атрибуты, а затем внести изменения, если это требуется.
- Запустите консоль удобным для вас методом. Для этого можно использовать соответствующий значок в меню приложений или горячую клавишу Ctrl + Alt + T.
- Здесь введите команду
ls -l
, чтобы просмотреть весь список дисков с подробной информацией, среди которой будет находиться и необходимая нам. - Изучите атрибуты, которые показаны в первом столбце напротив проблемного диска или раздела. Если имеется один символ -r, значит, система доступна только для чтения. Наличие w означает открытость для чтения и записи.
- Если проблема действительно связана с указанными атрибутами, придется перенастроить права. Введите команду
sudo chown -R [user]:[user] /home/[user]
, заменив user на имя нужного пользователя, к которому и будут применены все изменения. - Данное действие осуществляется с опцией sudo, поэтому ее придется подтвердить, указав в новой строке пароль суперпользователя.
После активации команды вы будете уведомлены, что все изменения успешно вступили в силу. Следом рекомендуется перезагрузить ПК и можно приступать к тестированию. Если же при использовании команды ls было обнаружено, что для раздела или носителя установлены все требуемые атрибуты, следует перейти другим решениям возникшей проблемы.
Способ 2: Исправление ошибок через GParted
GParted — одна из самых известных утилит для управления дисками в Linux со встроенным графическим интерфейсом. Ее особенность заключается в наличии множества вспомогательных функций, связанных в том числе и с решением различных ошибок носителей.
- Если GParted по умолчанию отсутствует в вашем дистрибутиве, установите ее с помощью команды
sudo apt-get install gparted
. Подтвердите это действие, введя пароль суперпользователя и одобрив скачивание архивов. - После этого утилиту проще всего запустить, нажав на соответствующий значок в меню приложений.
- Для открытия тоже потребуются права суперпользователя.
- При входе сразу станет понятно, какой из разделов является проблемным, поскольку возле него будет гореть восклицательный знак. Кликните по данной строке правой кнопкой мыши.
- В контекстном меню нажмите на «Проверить на ошибки».
- Запустите выполнение операций, щелкнув на кнопку в виде галочки, которая расположена на верхней панели.
- Подтвердите запуск проверки.
- Осталось только дождаться завершения этого процесса.
Если какие-то неполадки будут найдены и исправлены, вы получите соответствующее уведомление. По окончании проверки следует перезагрузить ПК, чтобы при начале следующего сеанса сразу проверить эффективность выполненных действий. Если они не принесли никакого результата, переходите далее.
Способ 3: Исправление поврежденных блоков
Иногда ошибка со сбойным режимом чтения возникает вследствие повреждения секторов жесткого диска. Существуют специальные утилиты, позволяющие распределить проблемное пространство или исправить его, если это является возможным. В Linux имеется встроенная команда, отвечающая за выполнение этой операции. Мы и предлагаем воспользоваться ей в том случае, если приведенные выше рекомендации не принесли никакого результата.
- Для начала просмотрим список дисков, чтобы понять, какой из них следует проверять. Осуществляется это через команду
fdisk -l
. - В списке отыщите проблемный накопитель, определив его точное название. Далее оно потребуется при активации соответствующей команды для лечения блоков.
- Теперь используйте команду
hdparm -i /dev/sda2 | grep Model
, чтобы проверить выбранный носитель или логический диск. Здесь замените /dev/sda2 на определенное ранее название. - После этого следует отмонтировать диск, чтобы в дальнейшем запустить проверку блоков. Осуществляется это через строку
umount /dev/sda2
. - Запустите проверку, вставив команду
badblocks -s /dev/sda2 > /root/badblock
. - Обнаруженные блоки, которые не подлежат исправлению, требуется отметить, чтобы система перестала их задействовать. Для этого используйте
e2fsck -l /root/badblock /dev/sda2
.
Все изменения будут применены сразу же, однако, как обычно, рекомендуется создать новый сеанс операционной системы, чтобы проверить, была ли решена возникшая неполадка с ошибкой «Файловая система доступна только для чтения».
Способ 4: Форматирование накопителя
Последний метод, о котором мы хотим рассказать в рамках сегодняшней статьи, является самым радикальным, поскольку подразумевает полное форматирование накопителя, после будет восстановлено состояние файловой системы. Такой вариант подойдет только в той ситуации, если на диске нет важных файлов и все содержимое можно удалить. Более детальные инструкции по данной теме ищите в отдельном материале на нашем сайте, воспользовавшись указанной далее ссылкой.
Подробнее: Форматирование диска в Linux
Сегодня мы разобрали четыре метода исправления неполадки «Файловая система доступна только для чтения». Осталось найти подходящий только путем перебора, выполняя по порядку все приведенные инструкции. В большинстве случаев хотя бы один из них оказывается действенным и позволяет полностью устранить рассмотренную ошибку.
Еще статьи по данной теме:
Помогла ли Вам статья?
Как записаться редактировать a файл только для чтения в линуксе?
- Войдите в систему как пользователь root из командной строки. введите команду su.
- Введите пароль root.
- Введите gedit (чтобы открыть текст редактор) по пути вашего файл.
- Сохраните и закройте файл.
Как отключить режим только для чтения в Ubuntu?
Если файл доступен только для чтения, это означает, что у вас (пользователя) нет разрешения w, и вы не можете удалить файл. Чтобы добавить это разрешение. Вы можете изменить права доступа к файлам, только если вы являетесь владельцем файла. В противном случае вы можете удалить файл используя sudo , получив привилегию суперпользователя.
Как редактировать файл только для чтения?
Файлы только для чтения
- Откройте проводник Windows и перейдите к файлу, который хотите отредактировать.
- Щелкните имя файла правой кнопкой мыши и выберите «Свойства».
- Выберите вкладку «Общие» и снимите флажок «Только для чтения», чтобы удалить атрибут только для чтения, или установите флажок, чтобы установить его.
Как в Linux перевести файл из режима только для чтения в режим чтения и записи?
chmod ugo +rwx имя папки, чтобы всем было разрешено чтение, запись и выполнение. chmod a = r имя папки, чтобы всем было разрешено только чтение.
…
Как изменить права доступа к каталогу в Linux для владельцев групп и других лиц
- chmod g + w имя_файла.
- chmod g-wx имя_файла.
- chmod o + w имя_файла.
- chmod o-rwx имя папки.
Только для чтения добавить для переопределения?
Чтобы сохранить файл, доступный только для чтения, используйте следующую команду: Восклицательный знак после записи-выхода означает переопределение статуса файла только для чтения. … Этот трюк прост и быстр, поэтому вам не придется тратить время на изменение разрешений, если вам нужно простое редактирование.
Какой пароль root для Ubuntu?
Короткий ответ — нет. Учетная запись root заблокирована в Ubuntu Linux. Нет Ubuntu Пароль root в Linux установлен по умолчанию, и он вам не нужен.
Как изменить права доступа к файлам в Ubuntu?
Тип «sudo chmod a + rwx / путь / к / файлу » в терминал, заменив «/ путь / к / файлу» на файл, для которого вы хотите предоставить разрешения всем, и нажмите «Ввод». Вы также можете использовать команду «sudo chmod -R a + rwx / path / to / folder» для предоставления разрешений выбранной папке и ее файлам.
Как мне удалить разрешение только на чтение в Linux?
Чтобы удалить разрешение на чтение в мире из файла, введите chmod или [имя файла]. Чтобы удалить групповое разрешение на чтение и выполнение при добавлении такого же разрешения в мир, вы должны ввести chmod g-rx, o + rx [имя файла]. Чтобы удалить все разрешения для группы и мира, введите chmod go = [имя файла].
Как изменить документ Word с режима только для чтения на редактирование?
Ограничить редактирование
- Щелкните Обзор> Ограничить редактирование.
- В разделе Ограничения на редактирование установите флажок Разрешить только этот тип редактирования в документе и убедитесь, что в списке указано Без изменений (только чтение).
- Щелкните Да, начать усиление защиты.
Как изменить PDF-файл только для чтения на редактируемый?
Как сделать PDF-файл редактируемым
- Выберите подходящий конвертер Smallpdf PDF в Word, PPT или Excel для своих нужд.
- Перетащите ваш PDF-файл в конвертер.
- Сохраните преобразованный файл на свой компьютер и откройте в выбранном формате (Word, PPT или Excel).
- Внесите свои правки.
- Используйте соответствующий конвертер Smallpdf, чтобы снова преобразовать его в PDF.
Как изменить Excel только для чтения на редактирование?
Для этого:
- В проводнике найдите нужный файл Excel.
- Щелкните правой кнопкой мыши файл Excel, который хотите отредактировать.
- Выберите пункт Свойства.
- Перейдите в нижнюю часть вкладки «Общие».
- Снимите флажок Только для чтения.
- Нажмите ОК, чтобы завершить.
Asked
9 years, 6 months ago
Viewed
7k times
If I would like to lock a file as read-only. Even root can not use an editor to modify it, just allowing any program to open it read-only.
Any suggestions?
Niall C.
10.9k7 gold badges68 silver badges61 bronze badges
asked Aug 1, 2013 at 3:41
4
There is an «immutable» bit for files.
Programs (even running as root) won’t be able to tamper with the file. Of course, root can un-do the bit, but most programs (especially non-malicious ones) won’t get past it.
Set it with
sudo chattr +i file
Quanlong
23.3k16 gold badges67 silver badges77 bronze badges
answered Aug 1, 2013 at 3:46
BraveNewCurrencyBraveNewCurrency
12.5k2 gold badges42 silver badges50 bronze badges
1
you should have root perms
sudo chattr +i file
answered Feb 5, 2014 at 20:21
You can use Perl or another language to create a file lock
How do I lock a file in perl
But, root could kill the process can gain access to the file.
answered Aug 1, 2013 at 3:47
traxstraxs
2961 silver badge5 bronze badges
1