Как редактировать файл под root

Как редактировать файл под root Техника

Последние версии Debian, такие как Debian 10, поставляются с файловым менеджером по умолчанию под названием Nautilus. Этот файловый менеджер с открытым исходным кодом, созданный для рабочих столов GNOME, даёт нам возможность управлять нашими файлами и приложениями. Он также позволяет нам открывать и редактировать наши файлы и папки в качестве администратора Debian. Другие возможности, которые он предоставляет, включают:

Содержание
  1. Установка Nautilus-admin
  2. Открытие папки от имени администратора
  3. Редактирование файла от имени администратора
  4. Открытие директории от имени администратора
  5. Как стать пользователем root?
  6. Получение временного доступа root с помощью команды sudo
  7. Разблокировка/блокировка учетной записи root
  8. Как изменить пароль root (альтернативный подход)?
  9. Требования для редактирования файлов с помощью диспетчера файлов с графическим интерфейсом.
  10. Зачем использовать Наутилус?
  11. Установка расширения Nautilus для администраторов.
  12. Перезагрузите систему.
  13. Использование графического интерфейса для редактирования файлов.
  14. Отключение функции редактирования файлов.
  15. Вход под суперпользователем
  16. Переключение на суперпользователя в терминале
  17. Получение прав root без переключения
  18. Графически приложения от имени суперпользователя
  19. Выводы
  20. Редактирование файлов в Ubuntu через терминал
  21. Специальные права доступа к файлам в Linux
  22. Как посмотреть права доступа к файлам в Linux
  23. Как изменить права файла в Linux
  24. Управление владением файлами
  25. Отображение владельца файла или каталога
  26. Изменение владельца
  27. Изменение владельца группы
  28. Понимание владельца по умолчанию
  29. Управление основными правами
  30. Понимание прав на чтение, запись и выполнение
  31. Использование chmod
  32. Расширенные права
  33. Понимание расширенных прав SUID, GUID и sticky bit
  34. Применение расширенных прав
  35. Пример работы со специальными правами

Установка Nautilus-admin

Откройте Терминал через поиск Debian Application Launcher следующим образом:

Как редактировать файл под root

Выполните следующую команду от имени администратора:

Как редактировать файл под root

Введите Y, когда появится запрос об использовании дополнительного дискового пространства.

Открытие папки от имени администратора

В этом примере мы хотим получить root доступ к директории Downloads, мы получим доступ к ней следующим образом:

Как редактировать файл под root

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

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

Предположим, я хочу отредактировать защищенный файл ‘.pwd.lock’, расположенный по адресу /etc. Когда я открою его обычным способом, я получу следующее сообщение:

Как редактировать файл под root

Обходной путь — открыть файл через Nautilus следующим образом:

Как редактировать файл под root

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

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

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

Ubuntu поставляется с этой утилитой по умолчанию; вы можете установить ее, выполнив действия, описанные в следующем разделе.

Следующие шаги помогут вам установить файловый менеджер Nautilus на вашу систему Ubuntu:

Откройте Терминал через Ctrl+Alt+T или через тире Ubuntu.

Nautilus будет установлен в вашей системе. Вы можете проверить это, введя Nautilus в Ubuntu Dash следующим образом:

Как редактировать файл под root

Теперь файловым менеджером в вашей системе является Nautilus.

Открытие директории от имени администратора

Как редактировать файл под root

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

Предположим, я хочу отредактировать защищенный файл ‘evm’, расположенный по адресу /sys/kernel/security. Когда я открою его обычным способом, я получу следующее сообщение:

Как редактировать файл под root

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

Последние версии Ubuntu по умолчанию не имеют root-пользователя со специально зашифрованным паролем; поэтому была создана функциональность под названием «sudo», которую вы можете использовать для выполнения различных административных операций.

Вы можете либо временно стать пользователем root, либо указать пароль с помощью команды sudo, которая помогает сохранить ответственность за все действия пользователя как администратора. По умолчанию первый пользователь, созданный при установке Ubuntu, получает права sudo. Ubuntu дает ему полные привилегии root, и он добавляется в список sudoers в файле /etc/sudoers. Важно отметить, что вы должны быть авторизованным sudoer, чтобы выполнять все операции с пользователем root, описанные в этой статье.

В этой статье мы расскажем, как стать пользователем root в командной строке Ubuntu. Это поможет вам в выполнении всех операций по установке, удалению, настройке, а также конфигурированию системы.  Мы будем использовать командную строку Ubuntu, Терминал, чтобы объяснить, как стать и как изменить пароль для пользователя root. Поэтому вам необходимо открыть приложение Terminal либо через системный Dash, либо с помощью сочетания клавиш Ctrl+Alt+T.

Как стать пользователем root?

Откройте терминал Ubuntu и введите следующую команду:

Эта команда попросит систему зарегистрировать вас как суперпользователя.

Система попросит вас ввести пароль для root. Введите пароль и нажмите Enter.

В идеале вы должны увидеть знак «#» перед командной строкой. Это означает, что вы вошли в систему под именем root.

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

Чтобы стать пользователем root из непривилегированной учетной записи (учетной записи обычного пользователя), когда пароль root не установлен, используйте эту команду:

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

Теперь, когда вы вошли в систему как root, вы можете выполнять все административные операции в Ubuntu.

Поясним это на примере.

Как редактировать файл под root

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

Вы можете редактировать его, только если вы вошли в систему под именем root или если вы используете команду sudo для временного получения привилегий root.

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

Как редактировать файл под root

Мы можем внести любые изменения в файл и сохранить их, нажав Ctrl+X.

Примечание: Очень важно сохранять осторожность при внесении любых важных изменений в системные файлы при входе в систему от имени root. Любое излишнее изменение системных файлов может испортить все настройки системы.

Вы можете выйти из командной строки root и снова стать обычным пользователем, используя команду exit следующим образом:

Получение временного доступа root с помощью команды sudo

Вместо того чтобы входить в командную строку как root и получать командную строку # (пользователь root), вы можете использовать команду sudo вместе с другими командами, чтобы временно стать root.

Это особенно полезно, поскольку любой авторизованный пользователь (тот, который добавлен в список sudoers) может ввести свой пароль и временно получить права root для выполнения нескольких команд. Еще одним преимуществом использования этой команды является то, что вы можете выполнять задачи, требующие привилегий root, даже когда учетная запись root находится в заблокированном состоянии.

Разблокировка/блокировка учетной записи root

Если при входе в систему от имени root вы получаете следующее сообщение, то, скорее всего, учетная запись root заблокирована. В большинстве систем Ubuntu эта учетная запись заблокирована по умолчанию.

Однако вы можете разблокировать ее, выполнив следующую команду sudo:

Система попросит вас дважды ввести новый пароль UNIX. После этого она обновит пароль root, и учетная запись будет разблокирована.

После того как вы закончите выполнять операции с root, вы можете снова заблокировать учетную запись root, введя следующую команду:

Как изменить пароль root (альтернативный подход)?

Помимо описанного выше способа смены пароля root, вы можете воспользоваться следующим альтернативным методом:

Система предложит вам ввести текущий пароль sudo. Введите пароль и нажмите Enter.

Теперь, когда вы вошли в систему под именем root, вы можете изменить пароль для текущего пользователя (root), используя команду passwd следующим образом:

После работы с этой статьей вы теперь можете стать пользователем root в командной строке Ubuntu. Теперь вы можете выполнять все операции, на которые имеет право только очень привилегированный пользователь.

Хотите знать, как редактировать файлы с правами root с помощью файлового менеджера с графическим интерфейсом в Ubuntu? Не волнуйтесь, мы вас прикрыли!

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

Будучи открытым исходным кодом и управляемым сообществом, которое занимается обновлениями, Ubuntu зарекомендовала себя как один из самых надежных, безопасных и удобных для начинающих дистрибутивов Linux.

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

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

С учетом сказанного, давайте начнем!

Требования для редактирования файлов с помощью диспетчера файлов с графическим интерфейсом.

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

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

Следующее, что вам понадобится, — это учетная запись с правами sudo или root. Они обязательны, так как некоторые команды требуют определенных разрешений перед выполнением.

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

Зачем использовать Наутилус?

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

Дополнительно:  Barq's Root Beer

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

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

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

Установка расширения Nautilus для администраторов.

Первым шагом этого руководства является установка расширения администратора для Nautilus.

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

Выполните следующие действия, чтобы установить расширение Nautilus в вашей системе.

$ sudo apt update && обновление sudo apt

Это обновит все пакеты и репозитории до последних доступных версий.

Дождитесь окончания установки.

Перезагрузите систему.

Теперь, когда вы установили расширение администратора для Nautilus, вам необходимо перезагрузить систему, чтобы завершить изменения.

Это также можно сделать с помощью командного терминала.

Выполните следующие действия, чтобы перезагрузить систему с помощью CLI:

$ перезагрузить судо

Использование графического интерфейса для редактирования файлов.

Как упоминалось ранее, убедитесь, что у вас есть привилегии root, иначе этот метод не сработает.

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

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

Отключение функции редактирования файлов.

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

Это также может быть достигнуто с помощью командного терминала.

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

Это отключит функцию удаления графического интерфейса, удалив привилегии администратора вашей системы для Nautilus.

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

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

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

Если это руководство помогло вам, пожалуйста, поделитесь им. 🙂

Как вы знаете, Linux очень серьезно относится к управлению пользователями и предоставлению им прав на работу с системой. Обычный пользователь может записывать файлы только в свой каталог и каталог /tmp/. Также есть возможность читать некоторые файлы в корневой файловой системе. Но вы не можете устанавливать программы, ведь для этого нужно право на запись, не можете изменять атрибуты файлов, не можете запускать сервисы, не можете читать некоторые файлы логов и еще много чего не можете.

В Linux управлять корневой файловой системой и создавать там файлы имеет право только пользователь root.

В этой статье мы рассмотрим какие программы нужны для того, чтобы получить права root пользователя linux, как они работают, как выполнять программу с правами root от обычного пользователя и как запускать графические программы с правами root. А также выясним что такое sudo в чем разница su или sudo.

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

Если же нужно сделать что-то большее нам понадобятся права root пользователя linux. У root есть право делать все в вашей файловой системе независимо от того какие права установлены на файл.

Вход под суперпользователем

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

Переключение на суперпользователя в терминале

Теперь мы подошли к более интересному и практичному. С помощью специальных утилит вы можете переключить текущий эмулятор терминала в окружения суперпользователя и выполнять все следующие команды не от своего имени, а от его, таким образом, дав программе права root linux. Для этого существует утилита su. Вообще говоря, эта утилита позволяет не только переключаться на пользователя root но и на любого другого пользователя, но по умолчанию используется именно root. Рассмотрим ее подробнее. Команда su linux имеет следующий синтаксис:

Вот ее основные опции:

Теперь немного поэкспериментируем, чтобы понять как работает команда su linux.

Сначала выполним su без параметров, но для начала создадим переменную окружения, чтобы проверить как с ними обходится эта команда:

Теперь смотрим что получилось:

Как редактировать файл под root

Из этих команд мы видим, что теперь мы пользователь root, но домашней директорией считается директория нашего предыдущего пользователя и наша переменная не сохранилась также изменилась переменная PATH, теперь там добавлен путь /sbin.

И повторим ту же комбинацию:

Как редактировать файл под root

Та же ситуация, только на этот раз изменена ко всему еще и домашняя директория на директорию root. Но мы можем сохранить наши переменные окружения, если это нужно, для этого есть опция -p:

Как редактировать файл под root

Как видите, наша переменная осталась. Вы также можете переключится на любого другого пользователя. Например:

su — test

Как редактировать файл под root

Более подробно о команде su вы можете почитать в отдельной статье. Получение прав суперпользователя таким способом используется во многих дистрибутивах, например, Debian, OpenSUSE, ArchLInux, Gentoo и т д. Но в Ubuntu, как дистрибутиве для начинающих вход под пользователем root отключен. Это сделано потому, что это тоже не очень безопасно, вы можете забыть что выполняете команду от root и что-то натворить в системе. Поэтому переходим к следующей программе.

Получение прав root без переключения

Чтобы реализовать максимально безопасный интерфейс для работы с правами суперпользователя в Linux была разработана команда sudo. Давайте рассмотрим что такое sudo. Эта команда пишется перед каждой командой, которую нужно выполнить от имени суперпользователя, и для ее выполнения нужно ввести пароль уже не root, а всего лишь вашего пользователя. Так же, как и в предыдущей, в этой утилиты есть свои опции. Сначала рассмотрим синтаксис:

Вы можете выполнить те же эксперименты, только для этой команды, чтобы понять как использовать команду sudo. Например:

sudo -u test ls

Использование sudo — это рекомендованный способ выполнять команды от имени суперпользователя в Linux. Так вы не забудете с чем имеете дело и меньше всего рискуете повредить систему. Более подробно о команде sudo читайте здесь. Но остался еще один нерешенный вопрос — как быть с графическими утилитами? Ведь команда sudo их не запускает, а запускать графическую оболочку от имени root небезопасно. Это мы и рассмотрим далее.

Графически приложения от имени суперпользователя

Для запуска графических приложений от имени суперпользователя существуют специальные утилиты. Они сохраняют все необходимые переменные окружения и полномочия. В KDE это команда kdesu, а в Gnome команда gksu.

Просто наберите gksu или kdesu, а затем нужную команду:

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

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

Выводы

Вот и все. Теперь вы знаете как получить права суперпользователя в Linux, знаете как использовать команду sudo и в чем разница sudo или su. Теперь программы, требующие дополнительных привилегий в системе, не вызовут у вас проблем. Если остались вопросы, пишите в комментариях!

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

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

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

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

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

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

Как редактировать файл под root

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

Как редактировать файл под root

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

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

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

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

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

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

Как редактировать файл под root

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

Дополнительно:  Синий экран смерти и коды ошибок Windows

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

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

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

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

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

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

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

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

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

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

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

Изначально каждый файл имел три параметра доступа. Вот они:

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

Именно с помощью этих наборов полномочий устанавливаются права файлов в linux. Каждый пользователь может получить полный доступ только к файлам, владельцем которых он является или к тем, доступ к которым ему разрешен. Только пользователь Root может работать со всеми файлами независимо от их набора их полномочий.

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

Специальные права доступа к файлам в Linux

Для того, чтобы позволить обычным пользователям выполнять программы от имени суперпользователя без знания его пароля была придумана такая вещь, как SUID и SGID биты. Рассмотрим эти полномочия подробнее.

Теперь давайте рассмотрим как посмотреть и изменить права на файлы в Linux.

Как посмотреть права доступа к файлам в Linux

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

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

Как редактировать файл под root

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

Рассмотрим подробнее, что значат условные значения флагов прав:

В нашем примере, файл test1 имеет типичные разрешения для программ, владелец может все, группа только чтение и выполнение, а все остальные — только выполнение. Для test2 дополнительно установлен флаг SUID и SGID. А для папки test3 установлен Sticky-bit. Файл test4 доступный всем. Теперь вы знаете как посмотреть права на файл linux.

Как изменить права файла в Linux

Чтобы изменить права на файл в linux вы можете использовать утилиту chmod. Она позволяет менять все флаги, включая специальные. Рассмотрим ее синтаксис:

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

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

Действие может быть одно из двух, либо добавить — знак «+», либо убрать — знак — «-«. Что касается самих прав доступа, то они аналогичны выводу утилиты ls: r — чтение, w — запись, x — выполнение, s — suid/sgid, в зависимости от категории, для которой вы его устанавливаете, t — устанавливает sticky-bit. Например, всем пользователям полный доступ к файлу test5:

chmod ugo+rwx test5

Или заберем все права у группы и остальных пользователей:

chmod go-rwx test5

Дадим группе право на чтение и выполнение:

chmod g+rx test5

Остальным пользователям только чтение:

chmod o+r test5

Для файла test6 установим SUID:

chmod u+s test6

А для test7 — SGID:

chmod g+s test7

Посмотрим что получилось:

Как редактировать файл под root

Как видите, изменить права на файл в Linux очень просто. К тому же вы можете изменить основные права с помощью файлового менеджера.

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

На завершение хочу предложить неплохое видео про права доступа в Linux:

https://youtube.com/watch?v=ICKs6uEnXWQ%3Ffeature%3Doembed

Всем привет. Это перевод статьи из книги RedHat RHCSA RHCE 7 RedHat Enterprise Linux 7 EX200 and EX300.

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

Как редактировать файл под root

Чтобы получить доступ к файлам в Linux, используются разрешения. Эти разрешения назначаются трем объектам: файлу, группе и другому объекту (то есть всем остальным). В этой статье вы узнаете, как применять разрешения.

Статья начинается с обзора основных понятий, после чего обсуждаются специальные разрешения (Special permissions) и списки контроля доступа (ACL). В конце этой статьи рассматривается настройка прав доступа по умолчанию через umask, а также управление расширенными атрибутами пользователя.

Управление владением файлами

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

Отображение владельца файла или каталога

В Linux у каждого файла и каждого каталога есть два владельца: пользователь и группа.

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

Это происходит в следующем порядке:

Чтобы увидеть текущие назначения владельца, вы можете использовать команду ls -l. Эта команда показывает пользователя и группу-владельца. Ниже вы можете увидеть настройки владельца для каталогов в каталоге /home.

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

Изменение владельца

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

chown кто что

Например, следующая команда меняет владельца каталога /home/account на пользователя linda:

chown linda /home/account

Команда chown имеет несколько опций, одна из которых особенно полезна: -R. Вы можете догадаться, что она делает, потому что эта опция доступна и для многих других команд. Это позволяет вам рекурсивно устанавливать владельца, что позволяет вам установить владельца текущего каталога и всего, что находится ниже. Следующая команда меняет владельца для каталога /home и всего, что находится под ним, на пользователя lisa:

Сейчас владельцы выглядят так:

Теперь пользователь lisa стал владельцем каталога account:

Изменение владельца группы

Есть два способа изменить владение группой. Вы можете сделать это, используя chown, но есть специальная команда с именем chgrp, которая выполняет эту работу. Если вы хотите использовать команду chown, используйте . или : перед названием группы.

Следующая команда изменяет какого-либо владельца группы /home/account на группу account:

chown .account /home/account

Вы можете использовать chown для изменения владельца пользователя и/или группы несколькими способами. Вот несколько примеров:

Вы можете использовать команду chgrp, чтобы изменить владельца группы. Рассмотрим следующий пример, где вы можете с помощью chgrp установить владельцем каталога account группу sales:

chgrp .sales /home/account

Как и в случае с chown, вы можете использовать опцию -R с chgrp, а также рекурсивно менять владельца группы.

Понимание владельца по умолчанию

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

Чтобы показать текущую эффективную первичную группу, пользователь может использовать команду groups:

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

Дополнительно:  Где можно получить root-доступ для 64-гигабайтного Samsung Galaxy Note 8?

Ниже показано, как пользователь lisa использует эту команду, что бы первичной группой стала группа sales:

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

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

Управление основными правами

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

Понимание прав на чтение, запись и выполнение

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

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

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

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

Разрешение на выполнение — это то, что вам нужно для выполнения файла. Оно никогда не будет установлено по умолчанию, что делает Linux практически полностью невосприимчивым к вирусам. Только кто-то с правами записи на каталог может применять разрешение на выполнение.

Ниже обобщается использование основных разрешений:

Как редактировать файл под root

Использование chmod

Как редактировать файл под root

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

chmod 755 /somefile

Когда вы используете chmod таким способом, все текущие разрешения заменяются установленными вами разрешениями.

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

При изменении разрешений в относительном режиме вы можете пропустить часть «кому», чтобы добавить или удалить разрешение для всех объектов. Например, эта команда добавляет разрешение на выполнение для всех пользователей:

chmod +x somefile

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

chmod g+w,o-r somefile

При использовании chmod -R o+rx /data вы устанавливаете разрешение на выполнение для всех каталогов, а также для файлов в каталоге /data. Чтобы установить разрешение на выполнение только для каталогов, а не для файлов, используйте chmod -R o+ rX /data.

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

Расширенные права

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

Понимание расширенных прав SUID, GUID и sticky bit

Есть три продвинутых разрешения. Первое из них — это разрешение на установку идентификатора пользователя (SUID). В некоторых особых случаях вы можете применить это разрешение к исполняемым файлам. По умолчанию пользователь, запускающий исполняемый файл, запускает этот файл со своими собственными разрешениями.

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

Рассмотрим, например, ситуацию, когда пользователю необходимо сменить пароль. Для этого пользователь должен записать свой новый пароль в файл /etc/shadow. Однако этот файл недоступен для записи пользователям, не имеющим прав доступа root:

Разрешение SUID предлагает решение этой проблемы. В утилите /usr/bin/passwd это разрешение применяется по умолчанию. Это означает, что при смене пароля пользователь временно получает права root, что позволяет ему записывать в файл /etc/shadow. Вы можете видеть разрешение SUID с ls -l как s в позиции, где обычно вы ожидаете увидеть x для пользовательских разрешений:

Разрешение SUID может выглядеть полезным (и в некоторых случаях так оно и есть), но в то же время оно потенциально опасно. При неправильном применении вы можете случайно раздать права доступа root. Поэтому я рекомендую использовать его только с максимальной осторожностью.

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

Второе специальное разрешение — это идентификатор группы (SGID). Это разрешение имеет два эффекта. При применении к исполняемому файлу, он дает пользователю, который исполняет файл, разрешения владельца группы этого файла. Таким образом, SGID может выполнить более или менее то же самое, что SUID. Однако для этой цели SGID практически не используется.

Как и в случае с разрешением SUID, SGID применяется к некоторым системным файлам в качестве настройки по умолчанию.

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

Это не всегда очень полезно, особенно потому, что у пользователей Red Hat/CentOS в качестве основной группы задана группа с тем же именем, что и у пользователя, и из которых пользователь является единственным участником. Таким образом, по умолчанию файлы, которые создает пользователь, будут групповыми для общего доступа.

Представьте себе ситуацию, когда пользователи linda и lori работают в бухгалтерии и являются членами группы account. По умолчанию эти пользователи являются членами частной группы, единственным членом которой они являются. Однако оба пользователя являются членами группы account, но также и в качестве параметра вторичной группы.

Ситуация по умолчанию состоит в том, что когда любой из этих пользователей создает файл, основная группа становится владельцем. Поэтому по умолчанию linda не может получить доступ к файлам, созданным lori, и наоборот. Однако, если вы создаете общий каталог группы (скажем, /groups/account) и убедитесь, что разрешение SGID применено к этому каталогу и что учет группы установлен как владелец группы для этого каталога, все файлы, созданные в этом каталоге и во всех его подкаталогах, также получают account группы как владельца группы по умолчанию.

По этой причине разрешение SGID является очень полезным разрешением для установки в каталогах общих групп.

Разрешение SGID показывается в выводе ls -ld как s в позиции, где вы обычно находите разрешение на выполнение группы:

Третий из специальных разрешений — sticky bit. Это разрешение полезно для защиты файлов от случайного удаления в среде, где несколько пользователей имеют права на запись в один и тот же каталог. Если применяется закрепленный sticky bit, пользователь может удалить файл, только если он является пользователем-владельцем файла или каталога, в котором содержится файл. По этой причине он применяется в качестве разрешения по умолчанию для каталога /tmp и может быть полезен также для каталогов общих групп.

Без sticky bit, если пользователь может создавать файлы в каталоге, он также может удалять файлы из этого каталога. В общедоступной групповой среде это может раздражать. Представьте себе пользователей linda и lori, которые оба имеют права на запись в каталог /data/account и получают эти разрешения благодаря участию в группе account. Поэтому linda может удалять файлы, созданные lori, и наоборот.

Когда вы применяете sticky bit, пользователь может удалять файлы, только если выполняется одно из следующих условий:

При использовании ls -ld, вы можете видеть sticky bit как t в позиции, где вы обычно видите разрешение на выполнение для других:

Применение расширенных прав

Чтобы применить SUID, SGID и sticky bit, вы также можете использовать chmod. SUID имеет числовое значение 4, SGID имеет числовое значение 2, а sticky bit имеет числовое значение 1.

Если вы хотите применить эти разрешения, вам нужно добавить четырехзначный аргумент в chmod, первая цифра которого относится к специальным разрешениям. Следующая строка, например, добавит разрешение SGID на каталог и установит rwx для пользователя и rx для группы и других:

chmod 2755 /somedir

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

В таблице обобщено все, что важно знать об управлении специальными разрешениями.

Как редактировать файл под root

Пример работы со специальными правами

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

Оцените статью
Master Hi-technology
Добавить комментарий