Chmod and chown linux

How To Use chmod and chown Command in Linux

Understanding file permissions for chmod and chown command

One can use file permissions to control access to their files. Sysadmins can enforce a security policy based upon file permissions. All files have three types:

  1. Owner – Person or process who created the file.
  2. Group – All users have a primary group, and they own the file, which is useful for sharing files or giving access.
  3. Others – Users who are not the owner, nor a member of the group. Also, know as world permission.

read (r), write (w), and execute (x) permission

We can set the following permissions on both files and directories:

Permission File Directory
r Reading access/view file Users can read file. In other words, they can run the ls command to list contents of the folder/directory.
w Writing access/update/remove file Users can update, write and delete a file from the directory.
x Execution access. Run a file/script as command Users can execute/run file as command and they have r permission too.
No access. When you want to remove r, w, and x permission All access is taken away or removed.

Please note that permission priority decided as follows by the kernel:
User permissions -> Group permissions -> Other permissions
It means user permission overrides group permission and group permissions overrides other permission.

Viewing Linux/Unix file permissions and ownership

Run the ls command:
ls -l
# Show information about a file named file1 #
ls -l file1
ls -l /path/to/file1
# Get information about a directory named dir1 #
ls -ld dir1
ls -l -d /path/to/dir1
For example, we can list permissions for /etc/hosts and /etc/ directory as follows:
ls -l /etc/hosts
Pass the -d option to ls to list directories themselves, not their contents:

From above outputs it is clear that the first character indicate the file type in drwxr-xr-x and -rw-r–r– and the next 9 characters are the actual file permissions.

– rw-r–r– file and d rwxr-xr-x directory permission explained

First character Description
Regular file.
b Block special file.
c Character special file.
d Directory.
l Symbolic link.
p FIFO.
s Socket.
w Whiteout.

Next nine characters are the file permissions divided into three sets/triad of three characters for owner permissions, group permissions, and other/world permissions as follows:

Three permission triads defined what the user/group/others can do First triad defines what the owner can do Second triad explains what the group members can do Third triad defines what other users can do
— rw- r— r— Owner has only read and write permission ( rw- ) Group has read permission ( r— ) Others has read permission ( r— )
d rwx r-x r-x Owner has full permission ( rwx ) Group has read and execute permission ( r-x ) Others has read and execute permission ( r-x )
Читайте также:  Linux или windows безопасность

Displaying file permission using the stat command

Run the following command:
stat file1
stat dir1
stat /etc/passwd
stat /etc/resolv.conf

GUI displaying file permissions:

chown command

The chown command changes the user and/or group ownership of for given file. The syntax is:

Источник

Difference Between chmod and chown

The chmod and chown commands are used to control access to files in UNIX and Linux systems.

The chmod command stands for “change mode”, and allows changing permissions of files and folders, also known as “modes” in UNIX. The chown command stands for “change owner”, and allows changing the owner of a given file or folder, which can be a user and a group. That’s the difference between them in a nutshell.

chmod and chown are working together: chmod can control which permissions are available to owner and owner’s group for a given file or directory, while chown quickly changes who on the system gets access to a file.

Let’s take a quick look at the basic usage of these commands.

chmod examples

The chmod command can be used in a couple of different ways, with permissions (or modes) set by numbers or by letters. Permissions can be given to a user who owns the file (u = user), group of said user (g = group), everyone else (o = others) or all users (a). And the basic permissions that can be given include read (r), write (w), and execute (x). There are also X, s, and t, but they’re less commonly used.

When using numbers you can use a numeric value such as 644 to set permissions. The position of the value represents to whom is the permission given, and the actual value represents which (or how much) permissions are given as a sum total of each permission’s unique value.

First position (in the above example 6) refers to the user. Second refers to the group of the user, and the third refers to all others.

Numeric values for permissions are:

So a value of 4 will only give read rights, but a value of 6 will give read and write rights because it is a sum of 4 and 2. 5 will give only read ane execute rights, and 7 will give all rights. Do this calculation for each numerical position and you’ll end up with the desired value. So in the example of 644 we’re giving the user who owns the file the permission to read and write (but not execute), the group of that user the permission to read only, and others the right to read only as well.

To set this mode with chmod on a file called important.txt we would simply run this command:

Note that making a file executable, if it were a script or a program, amounts to simply giving someone or everyone a permission to execute. If this was an important.sh bash script we could allow the owner to execute, and others to read with the 744 mode, or everyone to execute with 755.

Now, we can also use letters to accomplish the same thing, and we’ve already mentioned the relevant letters above. This is probably easier to remember than using numbers. For example, to accomplish the 644 permissions above we would run this:

Читайте также:  Изменить интерфейс windows 10 pro

So we’re saying file owner user gets read and write permissions, group and others get to read.

The second example, with the important.sh file being made executable we could just run this:

If important.sh already had permissions set to 644 we can add everyone execute rights by simply running:

Not specifying the letter for anyone is treated as if we said “a”, for all.

Finally, if we’re setting permissions to a folder we need to specify the -R option (standing for “recursive”):

chown command

Basic usage of chown is pretty straightforward. You just need to remember that first comes the user (owner), and then the group, delimited by a colon.

This command will set the user “greys”, from the group of “admins” as owners of the directory “important-files”:

Just like with chmod, the -R is there when it’s a directory.

It’s possible to change just the owner of a file, without specifying a group (which will stay intact):

Источник

Как пользоваться командами chown и chmod в Linux?

Каждый из пользователей Linux имеет свои файлы – загруженные и созданные, и попадает при этом в определенную группу (собственную). Некоторые пользователи могут быть объединены в другие группы. Нередко бывают случаи, когда нужно изменить текущее положение вещей. Как это сделать? Об этом вы узнаете далее.

Данная статья станет отличной шпаргалкой для новичка, не успевшего перейти на «ты» с ОС Линукс.

Команда Chown в Linux

Расшифровка команды с английского языка выглядит так:

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

Для смены пользователя (владельца файла) понадобится команда в виде:

sudo chown userName text.txt

Где userName – это имя нового владельца файла text.txt.

Для смены группы пользователя нужно сделать следующее:

sudo chgrp groupName text.txt

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

sudo chown username:groupName text.txt

Имя пользователя нужно указывать первым, а имя группы – вторым.

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

sudo chown -R userName:groupName /var/www/site

Команда Chmod в Linux

Данная команда разработана для смены прав доступа на директорию или отдельно взятый файл. Пользователь может применить для этих целей цифры или буквы (по личному усмотрению). При использовании цифр получится следующее:

sudo chmod 755 text.txt

Если происходит смена прав доступа для директории, пользователю необходимо добавить ключ «–R» после «chmod». Однако, есть другой вариант записи, например через звездочку. Linux chmod 777 рекурсивно Чтобы совершить смену прав одним махом (то есть, сразу во всем папках и внутренних каталогах), нужно использовать специальную команду. О ней полезно знать новичку:

find /ваш_путь -type d -exec chmod 755 <> \;

Чтобы проделать аналогичное действие с файлами, выполните:

find/ваш_путь -type f -exec chmod 644 <> \;

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

  • u – владелец (user)
  • g – пользователи группы (group)
  • o – другие пользователи (others)
  • a – все пользователи (all).
  • + – добавить права доступа
  • — – удалить права доступа
  • = – установить права доступа.
Читайте также:  Как сделать чтобы windows загружался по умолчанию

Разберем на конкретном примере, как установить права на файл rwxr-xr-x (755 в предыдущем примере). Выполняем:

sudo chmod u=rwx, g=rx, o=rx text.txt

Чтобы сделать файл доступным для чтения (для всех), выполните:

sudo chmod a+r text.txt

Заключение

Из данного материала вы смогли узнать, каким образом и для каких целей можно использовать команды chmod и chown в устройствах, функционирующих на популярном ядре Linux.

Источник

🐧 Использование команд Chown и Chmod на Linux

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

Chown и Chmod в чем разница?

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

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

Это может сделать пользователь (владелец), группа и остальные.

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

Chown

Давайте начнем с команды chown.

Используя ее, вы можете изменить владельца или группу объектов (другими словами, файлы, поскольку все в GNU / Linux представлено в этой форме).

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

Чтобы просмотреть владельца файла, введите:

Третье и четвертое поля показывают имя владельца и имя группы.

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

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

где OBJECT – имя файла (или нескольких разделенных пробелом).

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

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

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

чтобы изменить только группу:

Помимо флага рекурсивной операции существуют и другие (которые похожи на chmod).

Например, –from позволяет вносить изменения только для объектов с указанным владельцем и группой.

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

Chmod

Теперь давайте перейдем к команде chmod.

Позволяет манипулировать правами доступа к любым системным объектам, кроме символических ссылок (по умолчанию).

Существует 3 типа взаимодействия файлов: чтение, запись и выполнение. Чтобы просмотреть указанные правила для объектов, введите:

В показанном списке самый левый столбец объясняется следующим образом.

Первый символ описывает тип файла («-» – это обычный файл, «d» – это каталог и т. д.), затем есть три группы по три символа в каждой: первый описывает права доступа для пользователя (не обязательно владелец объекта), второй для группы пользователей и третий для остальных, не входящих ни в одну категорию.

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

Если есть дефис (минус), то соответствующее действие запрещено. Чтение означает открытие файла и просмотр его содержимого. Запись позволяет вносить изменения в объект, а выполнение – запускать программу / скрипт.

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

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

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

Запись! В статье не рассматриваются изменения в битах Set-User-ID и Set-Group-ID из-за конкретной области их применения.

Манипулирование этими правилами осуществляется двумя способами, описанными ниже:

Источник

Оцените статью
только чтение каталога запрещено
( -wx )
запрещена только запись в каталог
(r – х)
запрещено только выполнение каталога
( rw- )
изменить папку + +