Как изменить разрешения и владельцев через командную строку

В этом руководстве вы узнаете, как изменить разрешения и владельцев в Linux с помощью команд chmod и chown . Таким образом вы сможете лучше управлять командными проектами.

Зачем нужно менять разрешения и владельцев в Linux

Linux - это многопользовательская операционная система, поэтому на одном компьютере одновременно могут работать несколько человек. Что здорово, к системе можно получить доступ локально или удаленно. Поэтому разработчики часто используют эту ОС для групповых проектов.
В такой большой среде нам необходимо установить права доступа к файлам и права собственности, чтобы только определенные пользователи могли получить доступ к нашим данным. Таким образом, мы можем защитить конфиденциальную информацию и предотвратить нежелательные изменения.
К счастью, благодаря командам chmod и chown в Linux легко изменить права доступа и владельцев. Но прежде чем мы начнем изучать их использование, убедитесь, что у вас есть доступ к командной строке. Вы можете запустить его, нажав Ctrl + Alt + T .

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

Мы будем использовать команду chmod для изменения прав доступа к файлам и папкам в Linux. Но сначала вы должны знать, что есть три типа пользователей, которые могут взаимодействовать с файлом:
  • Владелец - пользователь, который создает файл или папку и владеет ими.
  • Группа - все пользователи, входящие в одну группу.
  • Другие - все остальные пользователи системы, которые не являются ни владельцами, ни участниками группы.
Чтобы увидеть разрешения и владельцев определенного файла, вы можете запустить эту команду:
ls -1 [file name]
Результат будет таким:
-rwxrw–rw- 1 user user 0 Jan 19 12:59 myfile.txt
Давайте разберем вывод, чтобы увидеть, что означает каждое поле:
  • «-Rwxrw-rw-» - эта часть строки представляет права доступа к файлу. Чтобы лучше понять это, мы должны разделить его на четыре группы: ( - ), ( rwx ), ( rw- ) и ( rw-).
    • Первая группа указывает тип файла. В нашем примере показан дефис, обозначающий обычный файл. Если мы проверяем каталог, дефис будет заменен на d .
    • Три символа после типа файла представляют права владельца файла . В этом примере мы видим, что владелец может читать ( r ), записывать ( w ) и выполнять ( x ) файл.
    • Следующие три символа - права доступа к файлам группы . Мы можем сделать вывод, что группа может читать ( r ) и писать ( w ), но не может выполнять файл. Это потому, что последний символ - дефис, а не буква x .
    • Последняя группа - это права доступа к файлам других пользователей . В нашем примере пользователи этого типа не могут выполнять файл, но им разрешено читать и писать.
  • 1 - количество жестких ссылок. Жесткая ссылка - это дополнительное имя для существующего файла.
  • user user - владелец и группа владельца файла.
  • 0 - размер файла в байтах.
  • 19.01 12:59 - дата последнего изменения.
  • myfile.txt - имя файла / папки.

Как использовать команду chmod

Допустим, мы хотим изменить права доступа к файлам Linux с -rwxrw-rw- на -rwx-r – r– . Просто введите эту строку:
chmod 744 [file name]
Выполняя эту команду, владелец может читать, записывать и выполнять файл ( rwx ). Однако группе и другим людям разрешено только читать ( r– ).
На этом этапе вы можете задаться вопросом, почему мы используем трехзначное число (744) после команды chmod.
Число определяет права доступа к файлу. READзапись и выполнить  представлены в виде числового значения:
  • r (читать) - 4
  • w (написать) - 2
  • x (выполнить) - 1
Поэтому, если вы хотите предоставить пользователю все разрешения ( rwx ), нам нужно добавить read (4), write (2) и execute (1). Следовательно, rwx  равно 7.
Между тем, поскольку группе и другим пользователям разрешено только читать файл, мы даем им 4 .
Помните, что разрешения владельца всегда идут первыми, затем идут группы и другие. Вот почему мы вводим 744. 
Если вы не хотите давать пользователю какие-либо разрешения, введите 0 в соответствующее поле.

Изменение владельцев файлов и папок

Чтобы изменить владельца файла и папки, мы будем использовать команду chown . Это основной синтаксис:
chown [owner/group owner] [file name]
Допустим, у нас есть файл с именем « myfile.txt». Если мы хотим установить владельцем файла « hostinger», мы можем использовать эту команду:
chown hostinger myfile.txt
Однако, если мы хотим изменить владельца группы файла на « клиенты», мы вместо этого введем эту строку:
chown :clients demo.txt
Обратите внимание, что мы используем двоеточие (:) перед словом «клиенты», чтобы указать, что это владелец группы.
Теперь, чтобы изменить владельца и владельца группы одновременно, синтаксис будет таким:
chown hostinger:clients myfile.txt
Основное правило - владелец должен стоять перед владельцем группы и разделяться двоеточием.

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

Option - это дополнительная команда для изменения вывода команды.
Один из самых популярных вариантов, который вы можете комбинировать с chmod и chown, - это -R (рекурсивный). Эта опция Linux позволяет вам изменять права доступа или владельцев всех файлов и подкаталогов внутри определенного каталога.
Если вы хотите использовать параметр, вы должны поместить его сразу после команды chmodchown .
Взгляните на этот пример:
chown -R 755 /etc/myfiles
После того, как вы введете указанную выше команду, владелец сможет читать, писать и выполнять все файлы и подкаталоги внутри каталога / etc / myfiles . Команда также дает разрешения на чтение и выполнение группе и другим пользователям.
Будьте особенно осторожны с этой опцией. Неправильное использование команды может привести к критическому сбою, и для отмены изменений потребуется большая работа.
Помимо -R, с командами chmod и chown часто используются следующие параметры :
  • -f или force. Командная строка игнорирует любые ошибки и применяет команды chmod и chown.
  • Параметр -v (подробный) дает вам диагностику всех файлов, обрабатываемых командой.
  • -c  (изменения) аналогичен параметру -v . Однако он предоставит информацию только в том случае, если изменения были успешно внесены.

Добавить комментарий

Автору будет очень приятно узнать обратную связь о своем руководстве.

Комментариев 0