Как исправить файлы в linux

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

Да, для многого придуман графический интерфейс, и уже почти все можно сделать в нем, но ручной способ все еще остается мощным и очень гибким путем настройки системы. В этой статье мы рассмотрим как редактировать файлы в Ubuntu. Мы будем рассматривать именно этот дистрибутив, потому что он самый популярный среди начинающих.

Новичкам намного проще редактирование файлов ubuntu в графическом интерфейсе и для этого в этой системе по умолчанию поставляется программа Gedit. Это очень простой, но достаточно функциональный текстовый редактор, который позволяет делать все что нужно.

Функция создания файлов интегрирована в Nautilus, поэтому вы можете просто выбрать пункт создать, а затем пустой файл чтобы получить новый файл в своем домашнем каталоге.

Открыть файл тоже можно с помощью проводника, текстовый редактор Gedit по умолчанию назначен для работы с текстовыми файлами, поэтому достаточно выполнить двойной клик по нужному файлу.

Также вы можете запустить Gedit через терминал. Для этого откройте терминал с помощью сочетания клавиш Ctrl+Alt+T, и выполните:

gedit /путь/к/папке/с_файлом/файл

Но проблемы появляются, если вы попытаетесь открыть с помощью Nautilus конфигурационный файл, расположенный выше вашей домашней папки, он принадлежит пользователю root и только он может его редактировать. Поэтому открыть такой файл прямо из файлового менеджера не получится. Он откроется, но сохранить вы его не сможете.

Обычно права установлены таким образом, что открыть то вы его сможете, а вот сохранить изменения уже нет. Запустите терминал и выполните:

gksu gedit /путь/к/папке/с_файлом/файл

После этого программа запросит пароль и запустит текстовый редактор от имени администратора. Дальше вы сможете успешно выполнить редактирование файлов в Ubutnu и сохранить изменения в файле.

Есть еще одной обходной способ, вы можете, добавить пункт открыть от имени администратора в контекстное меню Nautilus. Для этого нужно выполнить несколько команд в терминале. Сначала обновите списки пакетов из репозиториев:

sudo apt update

Установите пакет nautilus-admin:

sudo apt install -y nautilus-admin

Затем выполните такую команду чтобы полностью закрыть Nautilus:

nautilus -q

Теперь загрузите Nautilus, и в меню появится пункт Редактировать как администратор:

После нажатия на этот пункт система запросит пароль и вы получите возможность работать с файлом от имени администратора. Но не все любят запускать графические программы, более опытным пользователям нравится выполнять редактирование файла в терминале Ubuntu через терминал, именно такой способ работы с файлами используется везде у нас на сайте. Дальше мы рассмотрим с помощью каких программ это можно сделать.

Редактирование файлов в Ubuntu через терминал

Очень часто среди опытных пользователей принято работать с текстовыми файлами через терминал, для этого применяются две программы. Одна из них более простая и рассчитана на новичков — nano, а вторая более сложная, но очень эффективная — vim. Для редактирования файла с помощью nano используйте соответствующую команду:

nano /путь/к/файлу/имя_файла

Если файл нужно открыть от имени администратора:

sudo nano /путь/к/файлу/имя_файла

Редактор nano очень прост, для перемещения по файлу используйте кнопки со стрелками, после того, как закончите редактировать файл ubuntu, нажмите чтобы сохранить Ctrl+O, а для выхода Ctrl+X. Еще поддерживается поиск и замена, но все на очень примитивном уровне, и этого явно недостаточно для того чтобы работать эффективно.

Другой редактор ориентирован на профессионалов — это редактор vim. Он очень гибкий, может работать в двух режимах — командном и обычном режиме набора текста. Чтобы открыть с помощью него файл выполните:

vi /путь/к/файлу/имя_файла

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

sudo vi /путь/к/файлу/имя_файла

В командном режиме вы можете выполнять поиск, быстро перемещаться по строкам и символам с помощью клавиш набора, а также много других действий. Мы подробно рассматривали как работать с vim в отдельной статье.

Выводы

В этой небольшой статье мы рассмотрели как редактировать файлы в терминале Ubuntu, а также как это более удобно выполнять через графический интерфейс. Это довольно простая задача, для нас — уже опытных пользователей, но для новичков она может показаться совсем непростой. Если у вас остались вопросы, спрашивайте в комментариях!

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Creative Commons License

Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .

На этом уроке по Linux мы рассмотрим создание (touch), редактирование (nano) и чтение (cat, tac, grep, less, tail) текстовых файлов.

Создание файлов и просмотр их в каталоге

Все примеры я буду показывать на Debian 11, так как на Ubuntu 22.04 все выполняется аналогично. Вообще в Linux работа в терминале на любых системах практически одинакова. Поэтому создание, редактирование и чтение файлов можно продемонстрировать на любой системе.

Для создания текстового файла служит команда touch:

alex@deb:~$ touch file.txt

С помощью команды ls можно посмотреть какие файлы есть в каталоге:

alex@deb:~$ ls
file.txt

Для команды ls есть дополнительные опции:

  • -l — показывает информацию по каждому файлу;
  • -h — показывает размер файла в удобном для человека виде (байты, килобайты, мегабайты и т.д.). Эту опцию можно использовать только вместе в -l.

Опции можно писать слитно (ls -lh) или раздельно (ls -l -h). Вот пример:

alex@deb:~$ ls -lh
итого 0
-rw-r--r-- 1 alex alex 0 ноя 26 16:15 file.txt

Команда touch не только создает файл, но если этот файл уже есть, то обновляет время доступа и модификации данного файла:

alex@deb:~$ touch file.txt

alex@deb:~$ ls -lh
итого 0
-rw-r--r-- 1 alex alex 0 ноя 26 16:17 file.txt

Как вы могли заметить вначале время последнего изменения файла было 16:15, а после выполнения команды touch оно изменилось на 16:17. На самом деле команда touch не изменила файл, она лишь прикоснулась к файлу и тем самым изменила его время доступа. Кстати, с английского touch переводится как прикасаться.

Давайте теперь разберём вывод команды ls -lh:

Тип файла
| Права 
| |         Кол-во ссылок
| |         | Владелец
| |         | |    Группа
| |         | |    |    Размер
| |         | |    |    | Дата и время последнего касания или изменения
| |         | |    |    | |            Имя файла
| |         | |    |    | |            |  
- rw-r--r-- 1 alex alex 0 ноя 26 16:17 file.txt

Пока что вам нужно запомнить что таким образом можно посмотреть размер файла и дату его изменения, с остальным разберемся позже. И ещё запомните 2 типа файлов:

  • знак тире “-“ – это обычный файл;
  • символ “d” – это каталог;
  • есть и другие типы файлов, но пока их рассматривать не будем.

Редактирование файлов

Отредактировать текстовый файл можно с помощью текстового редактора “nano”:

alex@deb:~$ nano file.txt

После выполнения этой команды у Вас откроется текстовый редактор:

Для того чтобы сохранить этот файл нужно нажать комбинацию клавиш “Ctrl+o“.

А чтобы закончить редактирование и закрыть этот файл нужно нажать “Ctrl+x“. При этом у вас спросят, хотите ли вы сохранить этот файл и если да, то нужно ввести “y” и нажать клавишу “Enter“. Таким образом необязательно использовать комбинацию “Ctrl+o” перед закрытием файла.

Внизу я выделил подсказки текстового редактора Nano, в подсказках символ “^” – это клавиша Ctrl.

Если с помощью nano открыть несуществующий файл, то файл будет создан как только вы его сохраните. Поэтому выполнять touch перед nano не обязательно.

Чтение файлов

Команды cat и tac

Давайте теперь научимся читать текстовые файлы. Чаще всего для этого используется команда cat:

alex@deb:~$ cat file.txt
И тут мы можем
вводить текст,
какой только пожелаем.

У команды cat есть опция -n, которая выводит номера строк:

alex@deb:~$ cat -n file.txt
     1  И тут мы можем
     2  вводить текст,
     3  какой только пожелаем.

Для команды cat есть команда перевёртыш, это команда tac. Она выводит текст задом наперед:

alex@deb:~$ tac file.txt
какой только пожелаем.
вводить текст,
И тут мы можем

Команда grep

Если Вам нужно что-то найти в тексте, то для этого используйте команду grep. Например, мы ищем строку в которой встречается слово “какой”:

alex@deb:~$ grep какой file.txt
какой только пожелаем.

Команда less

Если текст длинный то вместо cat лучше использовать команду less:

alex@deb:~$ less /etc/ssh/sshd_config

Используя less мы можем кнопками вверх / вниз перемещаться по тексту:

Если нажать кнопу «/», то откроется строка, куда можно ввести фразу для поиска в этом файле. Давайте, например, найдём строку со словом “Port”:

При поиске удобно использовать кнопку “n” для дальнейшего поиска введенной фразы, и комбинацию “Shift+n” для поиска в обратном направлении (к началу файла). Для выхода из программы используйте клавишу”q“.

Команды tail и head

Если Вам нужно посмотреть последние строки файла используйте команду “tail“:

alex@deb:~$ tail /etc/ssh/sshd_config

# override default of no subsystems
Subsystem       sftp    /usr/lib/openssh/sftp-server

# Example of overriding settings on a per-user basis
#Match User anoncvs
#       X11Forwarding no
#       AllowTcpForwarding no
#       PermitTTY no
#       ForceCommand cvs server 

А если нужно посмотреть первые строки файла то команду “head“:

alex@deb:~$ head /etc/ssh/sshd_config
#       $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options override the

Эти две команды выводят 10 последних (tail) или 10 первых (head) строк файла. И у этих команд есть параметр -n, с помощью которого можно указать сколько строк выводить, например выведем по 3 строки:

alex@deb:~$ tail -n 3 /etc/ssh/sshd_config
#       AllowTcpForwarding no
#       PermitTTY no
#       ForceCommand cvs server

alex@deb:~$ head -n 3 /etc/ssh/sshd_config
#       $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $

# This is the sshd server system-wide configuration file.  See

А ещё команда tail позволяет выводить изменяющиеся файлы, например логи. Для этого используется опция -f. Чтобы закончить наблюдение за файлом, нужно нажать комбинацию Ctrl+c.


Сводка

Linux. Работа с текстовыми файлами

Имя статьи

Linux. Работа с текстовыми файлами

Описание

На этом уроке по Linux мы рассмотрим создание (touch), редактирование (nano) и чтение (cat, tac, grep, less, tail) текстовых файлов

Файлы конфигурации содержат информацию, необходимую для управления работой программы. Пользователи Linux, особенно администраторы Linux, должны знать, как редактировать файлы конфигурации для обслуживания сервера или рабочего стола Ubuntu. Файлы конфигурации в Ubuntu хранятся в подкаталогах папки /etc в виде текстовых файлов и могут быть отредактированы с помощью текстовых редакторов. Некоторые примеры конфигурационных файлов — /etc/hosts, host.conf, hosts. resolv.conf, /etc/networks, syslog.conf и т.д. в операционных системах на базе Linux.

Чтобы внести изменения в конфигурацию, необходимо открыть файл с помощью текстового редактора и отредактировать его. В этой статье я описываю несколько способов редактирования конфигурационных файлов в Ubuntu.

  • Использование редактора Gedit
  • Использование редактора Nano
  • Использование редактора Vim
  • Использование редактора Gvim
  • Использование редактора Emacs

Теперь давайте рассмотрим эти текстовые редакторы. Используя эти редакторы, вы можете легко редактировать файлы в терминале.

Содержание

  1. Использование редактора Gedit
  2. Использование редактора Nano
  3. Использование редактора Vim
  4. Использование редактора Gvim
  5. Использование редактора Emacs

Использование редактора Gedit

Gedit — это текстовый редактор по умолчанию в среде рабочего стола Gnome. Он поддерживает вкладки, поэтому вы можете открывать различные файлы в нескольких вкладках. Это более простой и удобный текстовый редактор по сравнению с другими доступными текстовыми редакторами.

Чтобы отредактировать файл конфигурации в текстовом редакторе, запустите Terminal, нажав комбинацию клавиш Ctrl+Alt+T. Затем введите следующую команду как sudo:

sudo gedit /path/to/filename

Замените /path/to/filename на фактический путь к файлу конфигурации, который вы хотите отредактировать. Когда появится запрос на ввод пароля, введите пароль sudo.

Пример: редактирование файла /etc/resolv.conf

sudo gedit /etc/resolv.conf

Он похож на редактор Блокнот в операционной системе Windows. Как только откроется окно редактора, вы можете начать набирать текст или редактировать его, не входя ни в какой режим. Как только вы закончите редактирование, нажмите Ctrl+S, чтобы сохранить файл.

Редактирование файла конфигурации с помощью GEdit

Использование редактора Nano

Nano — это самый простой и самый мощный встроенный редактор во многих дистрибутивах Linux. Вам не нужно изучать редактор Nano перед его использованием, а также не нужно запоминать команды. Они отображаются внизу и могут быть вызваны клавишей Ctrl. Например, чтобы сохранить файл, нажмите Ctrl+O.

Чтобы отредактировать любой файл конфигурации, просто откройте окно терминала, нажав комбинацию клавиш Ctrl+Alt+T. Перейдите в каталог, где находится файл. Затем введите nano, за которым следует имя файла, который вы хотите отредактировать.

sudo nano /path/to/filename

Замените /path/to/filename на фактический путь к файлу конфигурации, который вы хотите отредактировать. Когда появится запрос на ввод пароля, введите sudo password.

Теперь вы можете редактировать и вносить изменения в конфигурационный файл с помощью редактора nano.

Редактирование файла конфигурации в редакторе nano

После завершения редактирования нажмите Ctrl+O для сохранения и Ctrl+X для выхода из редактора.

Использование редактора Vim

Редактор Vim или Vi также поставляется предустановленным в большинстве дистрибутивов Linux. Он не имеет видимых подсказок или элементов управления, что может быть немного сложнее для новичков. Однако, как только вы освоите его, он станет более быстрым и мощным инструментом для редактирования. Используя Vim, вы можете редактировать и просматривать несколько файлов за один сеанс.

Чтобы открыть файл в редакторе Vim, откройте окно терминала, нажав комбинацию клавиш Ctrl+Alt+T. Затем введите vi как sudo, за которым следует имя файла и путь к нему, например:

sudo vi /path/to/filename

Замените /path/to/filename на фактический путь к файлу конфигурации, который вы хотите отредактировать. Когда появится запрос на ввод пароля, введите sudo password.

Затем отредактируйте файл с помощью редактора Vim. Обратите внимание, что при открытии редактора вы переходите в командный режим. Вот несколько шагов для редактирования файла в редакторе Vim:

  • Чтобы отредактировать файл, нажмите I на клавиатуре, чтобы войти в режим вставки, здесь вы можете редактировать так же, как в обычном редакторе.
  • После завершения редактирования выйдите из этого режима, нажав Esc. Это вернет вас в обычный режим.
  • Чтобы сохранить файл, введите :w в командном режиме.
  • Чтобы выйти из редактора, введите :q в командном режиме.
  • Чтобы совместить эти действия, введите :wq для сохранения и выхода одновременно.

Использование редактора файлов Vi на Ubuntu

Использование редактора Gvim

Gvim — это редактор Vim с графическим интерфейсом пользователя. Чтобы установить Gvim, запустите Terminal, нажав Ctrl+Alt+T. Затем введите следующую команду в Terminal, чтобы начать установку.

sudo apt-get install vim-gnome

После завершения установки вы можете открыть и отредактировать любой файл конфигурации. Введите следующую команду с правами sudo в Терминале, чтобы открыть любой файл конфигурации в Gvim:

sudo gvim /path/to/filename

Нажмите I, чтобы войти в режим вставки, в котором вы можете редактировать файл.

Файловый редактор GVim

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

Использование редактора Emacs

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

Чтобы установить редактор Emacs, запустите Terminal, нажав комбинацию клавиш Ctrl+Alt+T. Введите следующую команду в Терминале как sudo:

После установки вы сможете открывать и редактировать в нем любые файлы конфигурации.

Чтобы открыть файл конфигурации с помощью редактора emacs, введите emacs, затем имя файла и путь к нему в следующем синтаксисе:

sudo emacs /path/to/filename

Замените /path/to/filename на фактический путь к файлу конфигурации, который вы хотите отредактировать. Когда появится запрос на ввод пароля, введите пароль sudo.

Редактирование текстовых файлов в Emacs

Итак, это были некоторые простые редакторы, которые вы можете использовать для простого и безопасного редактирования файлов конфигурации в вашей операционной системе

Содержание

Практически все настройки практически всех приложений в Ubuntu, включая системные компоненты, хранятся в виде обычных текстовых файлов различного формата, называемых конфигурационными файлами или просто «конфигами». Это очень удобно, поскольку позволяет просто читать и менять их не только из конкретного приложения. Нормальные программы обычно содержат встроенный редактор параметров, основные настройки системы так же можно легко изменить с помощью графических утилит, доступных из меню «Система». Однако некоторые операции требуют редактирования системных файлов конфигурации, к которым нет доступа из графического окружения.

Редактирование конфигурационных файлов

Большинство конфигурационных файлов, которые приходится редактировать вручную, к тому же доступны для изменения только пользователю с привилегиями root. Если вам неоходимо отредактировать подобный файл, то вы можете поступить несколькими способами:

  • Самый простой путь: вызвать диалог запуска программ (по умолчанию — Alt+F2) и запустить обычный текстовый редактор с правами суперпользователя командой:

    gksu gedit /путь/до/файла

    Пользователи Kubuntu должны подставить вместо gedit текстовый редактор KDE kate. У вас попросят ввести ваш пароль и, если вы являетесь администратором компьютера, откроется для редактирования нужный файл.

  • То же самое можно сделать из терминала, запустив редактор командой

    sudo gedit /путь/до/файла

    В этом случае вместо графического окна с запросом пароля у вас появится запрос непосредственно в терминале.

При введении пароля в терминале на экране ничего не отображается, ни звёздочек, ни чёрточек, ни каких-либо других символов, это нормально и так и должно быть, просто вводите пароль и нажимайте Enter

  • Ну и наконец можно отредактировать текстовый файл непосредственно из терминала, не открывая графических приложений вообще. Существует масса текстовых редакторов для терминала, самыми популярными в среде линуксойдов являются vi и emacs, однако ни первым, ни вторым новичку пользовать в принципе нереально, поэтому лучше всего использовать простой в освоении редактор nano, доступный по умолчанию в любой версии Ubuntu. Для открытия текстового файла с правами суперпользователя в nano просто наберите в терминале

    sudo nano /путь/до/файла

Если для доступа к конфигурационному файлу требуются права администратора, то, скорее всего, в нём содержаться какие-то важные системные настройки. Будьте предельно внимательны при редактировании таких файлов, ошибка может привести к неработоспособности всей системы. Если всё же случилось так, что вы записали в конфиг что-то не то, то не отчаивайтесь: всегда можно загрузиться с LiveCD и исправить любой файл.

Для редактирование некоторых конфигурационных файлов права администратора не требуются и поэтому являются излишними, в этом случае достаточно просто убрать sudo или gksu из начала команды и всё делать так же, как уже описано.

Критические системные файлы

Существует несколько критических конфигурационных файлов, от содержимого которых зависит в системе очень многое, классическим примером является файл /etc/sudoers. Для редактирования конкретно этого файла существует специально адаптированная версия редактора vi, которую можно вызвать командой

sudo visudo

Будьте предельно внимательны при изменении подобных файлов, неправильная информация в /etc/sudoers может крайне просто привести к невозможности выполнить что-либо в системе.

Пользователи Linux обычно редактируют файлы конфигурации с помощью терминальных инструментов, таких как nano и vim. Если вы хотите отредактировать файл графически — даже системный — текстовый редактор gedit сделает это безболезненно и легко.

Файлы, файлы везде

Часто повторяемая фраза относительно Linux и других операционных систем на базе Unix, таких как macOS, звучит так: «все является файлом».

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

Текстовым редактором GNOME по умолчанию является gedit, поэтому вы должны найти его в любой системе с рабочим столом GNOME. Сюда входят Ubuntu, Fedora, Debian, CentOS и Red Hat. Это удобный инструмент для редактирования файлов, когда все, что вам нужно, — это редактор, достаточный для выполнения работы, без необходимости изучения некоторых мощных редакторов, таких как vim.

Чтобы запустить gedit из командной строки, введите gedit и нажмите Enter.


Скоро появится текстовый редактор gedit.

текстовый редактор gedit с пустым документом в Linux

Это лаконичное и чистое окно приложения. Вы можете продолжать печатать все, над чем работаете, не отвлекаясь.

Конечно, вы также можете запустить gedit из меню приложений на рабочем столе Linux. Его часто называют «Текстовый редактор». Просто поищите в меню приложений «gedit».

Запуск gedit из меню приложений на рабочем столе GNOME Ubuntu

Запуск gedit в качестве фоновой задачи

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

Введите gedit, пробел, амперсанд & и нажмите Enter — вот так:

gedit &

gedit & команда в окне терминала

Открытие существующего файла

Чтобы открыть существующий текстовый файл, нажмите кнопку «Открыть» на панели инструментов gedit. Вы также можете нажать Ctrl + O, чтобы открыть файл.

Это открывает меню недавних файлов. Если вы хотите повторно открыть один из перечисленных файлов, щелкните имя файла. Если вы хотите открыть другой файл, нажмите кнопку «Другие документы…» в нижней части меню.

открыть меню файла в gedit

Это открывает стандартный диалог открытия файла. Вы можете использовать это, чтобы перейти к файлу, который хотите отредактировать.

Нажмите зеленую кнопку «Открыть», когда вы выделите файл, который хотите отредактировать.

диалог открытия файла gedit

Открытие файла из командной строки

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

gedit ana.c

команда gedit ana.c в окне терминала

Функция выделения синтаксиса в gedit позволяет особенно удобно редактировать файлы исходного кода программы и сценарии оболочки.

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

gedit с файлом ana.c, открытым для редактирования

Имя редактируемого файла отображается на панели инструментов. Если вы изменили файл, рядом с именем файла появится звездочка *.

измененный файл в gedit

Это позволяет узнать, что в содержимое файла были внесены изменения. Он действует как напоминание о том, что если вы хотите сохранить изменения, вам необходимо сохранить файл.

Сохранение изменений в файл

Чтобы сохранить изменения, нажмите кнопку «Сохранить» на панели инструментов. Вы также можете нажать Ctrl + S, чтобы сохранить файл.

Чтобы сохранить файл под другим именем или в другом месте, нажмите кнопку меню на панели инструментов, а затем выберите в меню «Сохранить как».

кнопка меню с подсветкой

Откроется стандартный диалог сохранения файла. Вы можете перейти в каталог, в котором хотите сохранить файл, и указать имя для файла. Нажмите зеленую кнопку «Сохранить», чтобы сохранить файл.

диалог сохранения файла gedit

Редактирование системных файлов

Чтобы отредактировать системный файл, вам обычно нужно использовать sudo, потому что владельцем файла, скорее всего, будет root. Чтобы быть точным, вы сможете открыть системный файл, даже если вы не используете sudo, но вы не сможете сохранить какие-либо изменения обратно в файл, если не использовали sudo.

sudo gedit /etc/samba/smb.conf

команда sudo gedit в окне терминала

Предупреждение: не редактируйте системные файлы, если вы точно не знаете, что ваши изменения сделают с вашей системой. Если вы испортите не тот системный файл, то после перезагрузки вы можете потерять доступ к своему компьютеру.

Эта команда открывает gedit и загружает файл конфигурации samba для редактирования.

gedit редактирование smb.conf

Репликация владения и разрешений на новый файл

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

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

Допустим, мы хотим отредактировать файл fstab.

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

touch new_fstab

коснитесь нового fstab в окне терминала

Мы можем использовать ls, чтобы проверить атрибуты файла и посмотреть, какие у него права доступа к файловому режиму и кто является владельцем файла.

ls -l new_fstab

ls -l new_fstab в окне терминала

Владелец файла — dave, права доступа к файловому режиму — чтение и запись для владельца файла и доступ только для чтения для группы и других пользователей.

Теперь мы скопируем файл / etc / fstab поверх только что созданного файла. Затем мы проверим атрибуты файла, чтобы увидеть, не изменились ли они.

sudo cp /etc/fstab new_fstab
ls -l new_fstab

cp / etc / fstab new_fstab в окне терминала

Fstab был скопирован поверх файла new_fstab. Атрибуты файла new_fstab не изменились. Давайте проверим атрибуты исходного файла fstab.

ls -l /etc/fstab

ls -l / etc / fstab в окне терминала

Как мы видим, владельцем является root, а права доступа к файловому режиму разные. Разрешения группы — чтение и запись. Разрешения группы для new_fstab доступны только для чтения. Нам нужно будет исправить эти два атрибута, прежде чем мы скопируем файл обратно.

Сначала мы запустим gedit и отредактируем файл new_fstab, чтобы внести необходимые изменения.

gedit new_fstab

gedit new_fstab в окне терминала

После того, как мы отредактировали файл и сохранили наши изменения, нам нужно вернуть права собственности на файл и права доступа к файловому режиму такими, какими они должны быть.

Мы можем сделать это с помощью параметра –reference команд chmod и chown.

Параметр –reference принимает имя файла в качестве параметра. Это заставляет chmod и chown брать из этого файла права доступа к файловому режиму и значения владения файлом и копировать их в целевой файл. Затем мы можем использовать ls для проверки правильности установки атрибутов отредактированного файла, прежде чем копировать их обратно в исходный файл.

sudo chmod --reference=/etc/fstab new_fstab
sudo chown --reference=/etc/fstab new_fstab
ls -l new_fstab

параметр --reference в окне терминала

Теперь права доступа к файлам и права собственности верны. Мы можем скопировать new_fstab поверх существующего fstab, и наши изменения будут внесены.

sudo cp new_fstab fstab в окне терминала

Поскольку это изменения в файле fstab, они вступят в силу при следующей перезагрузке компьютера или сразу же, если команда монтирования была использована следующим образом:

sudo mount -a

Будьте осторожны

Мой девиз — осторожность, и я не боюсь повторять предупреждения. Если вы совершенно не уверены в том, как ваши изменения в системном файле повлияют на поведение вашего компьютера, не вносите изменений.

Когда вам действительно нужно отредактировать текстовый файл, независимо от того, является он системным файлом или нет, вы обнаружите, что gedit — это быстрый и простой редактор, который не утомляет вас слишком большим количеством параметров, но при этом имеет достаточно возможностей, чтобы вы могли работа сделана.

Понравилась статья? Поделить с друзьями:
  • Как составить новогоднее предложение
  • Как найти скаченные фильмы в телеграмме
  • Как составить программу переводящую грис в угол поля
  • Как найти бемоли в тональности
  • Как найти морфологические особенности научного стиля