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

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

Старт! Честный VDS/VPS, на котором «Лунная База» живет уже 20+ лет

Задумываетесь о том, чтобы поднять свой pet-проект, сайт клиента или настроить окружение для разработки? Уже пора подумать, где арендовать железо.

Лунная База хостится на FirstVDS более 20 лет. Мыслей о том, чтобы перебраться на другой хостинг, не было ни разу (хотя опыт работы с другими вариантами, конечно, есть).

Бывали разные ситуации, но они бывают на любом железе. Главное, что нужно понять: здесь нет маркетинговой шелухи и сказок про «мы всё сделаем за вас». Если вы берете VDS — вам дают полный root, возможность накатить любую ОС и не лезут в ваши конфиги.

Если в саппорт написать с вопросом по вашему коду и получить ответ: «Читайте документацию и разбирайтесь сами» или «Обратитесь к профильному специалисту» — это не повод обижаться. Это повод углубить свои знания в DevOps и сайтостроении! Бегите от тех, кто пообещает: «Мы всё чиним и настраиваем абсолютно бесплатно!». Никто никогда не работает «по доброте душевной» в ущерб себе, а бесплатный сыр в администрировании обычно заканчивается сломанной базой данных.

Что по факту: Гибкое масштабирование ядер и RAM, экономия по сравнению с физическими серверами и адекватная панель ispmanager, если она вам нужна.



tree -u — просмотр дерева каталогов и файлов с указанием владельца файла/каталога

Посмотрим внимательно мануал (tree --help). Для выдачи дерева каталогов и файлов с указанием владельца файла/каталога нам нужна опция:

-u            Displays file owner or UID number.

Запомнить просто: -u скорее всего от английского слова user.

В итоге получим такой вывод дерева:

root@server:/var/www# tree -u
.
├── [root    ]  amorale
│   └── [root    ]  data
└── [root    ]  html
    └── [root    ]  index.html

3 directories, 1 file

tree -g — просмотр дерева каталогов и файлов с указанием группы владельца файла/каталога

Для того, чтобы вывести дерево каталогов и файлов с указанием группы владельца файла/каталога с помощью команды tree, нужно использовать опцию -g (видимо от английского group).

Читаем мануал:

-g            Displays file group owner or GID number.

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

root@server:/var/www# tree -g
.
├── [root    ]  amorale
│   └── [root    ]  data
└── [root    ]  html
    └── [root    ]  index.html

3 directories, 1 file

tree -p — просмотр дерева каталогов и файлов с указанием правд доступа файлов/каталогов

Также полезной информацией будет информация о правах работы с папками и файлами, находящихся в дереве каталогов. Для того, чтобы их отобразить с помощь команды tree, нужно применить опцию -p (скорее всего от английского слова permission, а может быть protections). В мануале на нерусском языке написано:

-p            Print the protections for each file.

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

root@server:/var/www# tree -p
.
├── [drwxr-xr-x]  amorale
│   └── [drwxr-xr-x]  data
└── [drwxr-xr-x]  html
    └── [-rw-r--r--]  index.html

3 directories, 1 file

tree -ugp — просмотр дерева каталогов и файлов с указанием всей необходимой информацией о них

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

root@server:/var/www# tree -ugp
.
├── [drwxr-xr-x root     root    ]  amorale
│   └── [drwxr-xr-x root     root    ]  data
└── [drwxr-xr-x root     root    ]  html
    └── [-rw-r--r-- root     root    ]  index.html

3 directories, 1 file

Тут нужно обратить снимание на, что, что команды были в последовательности -ugp, выдача tree всё равно идёт: сначала права, потом всё остальное.

P.S.

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

Пример использования в видео-инструкции:

Самый честный хостинг за 20+ лет существования Лунной Базы

Задумываешься о том, чтобы поднять свой сайт в Интернете? Уже пора подумать о том, какой хостинг выбрать?

Лунная База хостится 20+ лет на firstDVS. При этом, мыслей о том, чтобы перебраться на другой хостинг не было. (Но, при этом есть опыт работы с другими вариантами.)

Бывали с firstDVS разные ситуации, но, они бывают на всех хостингах. Единственное, что тут важно понять, - это то, что никто ничего тебе не будет впаривать... Но, и работать за тебя тоже никто не станет. Если в саппорт ответили: «Читайте по ссылке и разбирайтесь сами...» или вообще «Обратитесь за помощью к специалисту», - это повод углубить свои знания в области сайтостроения, а не бежать к тем, что пообещают: «Мы всё чиним и всё делаем за своих клиентов абсолютно бесплатно!» Никто никогда ничего ни за кого "по доброте душевной" не делал, не делает и не будет делать!

Старт! Горячий старт на просторы интернета
Старт! Горячий старт на просторы интернета
Старт! Меню