Разрешения файлов
Чтобы просмотреть права доступа к файлу, используйте команду ls -l
с указанием пути к файлу:
ls -l /home/user/script.sh
Результатом выполнения этой команды будет строка, которая покажет все разрешения на права использования. Например:
-rw-r--r-- 1 gordeev gordeev 0 Jun 14 11:09 script.sh
Для файлов используются несколько типов прав доступа: read (чте ние), write (запись) и execute (исполнение). Каждый тип прав доступа представлен одним из трех символов: r, w, x.
Например, -rwxr-xr--
означает, что это обычный файл, доступный пользователю на чтение, запись и исполнение, пользователь состоит в группе, и другой пользователь в этой группе не может записывать в файл, но может просматривать и запускать его без изменений. Если пользователь находится в другой группе, он может только читать файл.
Каждый тип прав доступа представлен четырьмя битами. Чтение - 4 бита, запись - 2 бита, исполнение - 1 бит, без доступа - 0 бит.
Чтобы изменить права доступа, используйте команду chmod
. Например:
chmod u+rwx script.sh
Здесь u
- это пользователь, rwx
- полный доступ для пользователя. Для групп и остальных пользователей используйте g
и o
соответственно.
chmod ugo+r-x script.sh
Здесь r
(чтение) разрешено всем пользователям, но x
(исполнение) запрещено.
chmod o-rwx script.sh
Здесь полный доступ для всех остальных пользователей (не владельца и не в группе) закрыт.
Давать полный доступ не разобравшись в правах может быть НЕБЕЗОПАСНО!
Также можно использовать числовой формат для задания прав доступа. Например:
- 777 - полный доступ для всех пользователей (ugo)
- 555 - чтение и выполнение для всех пользователей (ugo)
- 660 - чтение и запись для владельца и группы, запрет на все остальное
- 750 - полный доступ для владельца, чтение и выполнение для группы, доступ закрыт для остальных
Чтобы изменить владельца или группу файла, используйте команды chown
и chgrp
. Например:
chown root:root dir
chown user1:devs my-file
chown user1 gzip.tar
Где, root:root
- новый владелец и группа для dir
, user1:devs
- новый владелец и группа для my-file
, user1
- новый владелец для gzip.tar
. Используйте chgrp
для изменения только группы файла. Например:
chgrp devops dir
Эти инструкции помогут вам управлять правами доступа и владельцами файлов в системе Linux.