Linux. Files. Permissions

Материал из Wiki
Перейти к навигации Перейти к поиску


ls

The file type is one of the following characters:

    -  regular file

    b  block special file

    c  character special file (disk)

    C  high performance ("contiguous data") file

    d  directory

    D  door (Solaris 2.5 and up)

    l  symbolic link

    M  off-line ("migrated") file (Cray DMF)

    n  network special file (HP-UX)

    p  FIFO (named pipe)

    P  port (Solaris 10 and up)

    s  socket

    ?  some other file type

Посмотреть все аттрибуты файла

stat ./Тест.part03.rar

  File: «./Тест.part03.rar»

  Size: 5146762    Blocks: 10056      IO Block: 4096   обычный файл

Device: 871h/2161d Inode: 8650784     Links: 1

Access: (0760/-rwxrw----)  Uid: ( 3131/tmb_chishko)   Gid: (  513/Domain Users)

Access: 2019-11-08 13:14:28.768582082 +0400

Modify: 2019-11-06 17:03:47.109375000 +0400

Change: 2019-11-08 13:14:29.065585726 +0400

Timestamps

    There are 3 kind of "timestamps":

        Access - the last time the file was read

        Modify - the last time the file was modified (content has been modified)

        Change - the last time meta data of the file was changed (e.g. permissions)

Аттрибуты дополнительные

Просмотреть аттрибуты

// создадим файл

touch keep.txt

// просмотрим аттрибуты

lsattr keep.txt

-------------e-- keep.txt

// создадим аттрибут "только для чтения"

sudo chattr +i keep.txt

// теперь даже root не сможет удалить этот файл

lsattr keep.txt

----i--------e-- keep.txt

// удалим аттрибут "только для чтения"

sudo chattr -i keep.txt

// просмотрим

lsattr keep.txt

-------------e-- keep.txt

Sticky bit

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

chmod 1777 /tmp

Freebsd расширенные атрибуты

https://www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/fs-acl.html

// несмотря на полный доступ к файлам, они могут ни удаляться, ни переименовываться

// или не изменяться права доступа даже из под root.

// это значит что на файл установлены дополнительные атрибуты ACL

// увидеть это можно через "ls -lao"

// "+" означает что на файле имеются расширенные атрибуты ACL

ls -lao /mnt/raid1/share/ПТК.xlsx

...

-rwxrw-rw-+  1 root  wheel  uarch 17301 Jul  9 08:26 ПТК.xlsx

...

// смотрим атрибуты

getfacl /mnt/raid1/share/ПТК.xlsx

# file: /mnt/raid1/share/ПТК.xlsx

# owner: root

# group: wheel

            owner@:rwxpD-aARWcCo-:-------:allow

            group@:rw-p--a-R-c---:-------:allow

         everyone@:rw-p--a-R-c---:-------:allow

// сбрасываем атрибуты

// Параметр -k удалит все установленные на данный момент ACL из файла или файловой системы.

// Более предпочтительный метод это использование параметра -b, который оставит необходимые для работы ACL поля.

setfacl -b /mnt/raid1/share/ПТК.xlsx

// смотрим

getfacl /mnt/raid1/share/ПТК.xlsx

# file: /mnt/raid1/share/ПТК.xlsx

# owner: root

# group: wheel

            owner@:rwxp--aARWcCos:-------:allow

            group@:rwxp--a-R-c--s:-------:allow

         everyone@:rwxp--a-R-c--s:-------:allow

--------------------------------------------------------------------------------