# Файловая система и alias

Основной принцип: информация есть файл, откуда бы эта информация в систему ни поступала. Т е файл это единица обеспечения доступа к информации, а не единица хранения информации. Т е файлы есть даже для процессов.

Тип файла:

- - — обычный файл
- d — каталог. Содержит список файлов и каталогов.
- b или с — специальные файлы блочного (block) или символьного (character) устрой­ства
- р — именованный канал (pipe)
- s — сокет (socket)
- I — символическая ссылка (link)

<table border="1" id="bkmrk-%D0%9A%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D0%B0-%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5-fil" style="border-collapse: collapse; width: 100%; height: 61.5938px;"><colgroup><col style="width: 29.1072%;"></col><col style="width: 71.012%;"></col></colgroup><thead><tr style="height: 31.7969px;"><td class="align-center" style="height: 31.7969px;">Команда</td><td class="align-center" style="height: 31.7969px;">Описание</td></tr></thead><tbody><tr><td>type cur\_al</td><td>Алиас приложения, например type passwd</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">file путь</td><td style="height: 29.7969px;">Описание файла.</td></tr><tr><td>stat путь</td><td>Полный список параметров</td></tr><tr><td>ls -li </td><td>  
</td></tr><tr><td>Isof путь</td><td>Кто использует данный файл</td></tr><tr><td>ln fpath linkname</td><td>Создание жесткой ссылки

-s Создание символической ссылки

</td></tr><tr><td>mount</td><td>Просмотр смонтированных файловых систем

source dest смонтировать устройство в ФС

</td></tr></tbody></table>

**Ссылки.**

Жесткие ссылки создаются как еще одна ссылка на inode файла. Увеличивает счетчик ссылок на inode. Жесткая ссылка локальна в пределах файловой системы. Для жестких ссылок права доступа эквивалентны правам целевого файла. Файл физически удаляется только если счетчик ссылок равен 0. Т е технически можно сделать жесткую ссылку и разместить ее в другом месте. Пользователь будет думать, что удалил файл.

Символические ссылки просто ссылаются на файл в операционной системе. Могут существовать после удаления основного файла. Понятия "права доступа" у символических ссылок нет - они берут права основного файла.

**Поиск файлов**

<table border="1" id="bkmrk-%D0%9A%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D0%B0-%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5-fin" style="border-collapse: collapse; width: 100%; height: 61.5938px;"><colgroup><col style="width: 29.1072%;"></col><col style="width: 71.012%;"></col></colgroup><thead><tr style="height: 31.7969px;"><td class="align-center" style="height: 31.7969px;">Команда</td><td class="align-center" style="height: 31.7969px;">Описание</td></tr></thead><tbody><tr><td>find</td><td>Поиск по имени. Если сначала не указана директория, то поиск в текущей и по точному совпадению. Бессмысленно. Поэтому формат должен быть find директория параметры

```
find ./ tren.txt
```

-name имя файла, точное совпадение. \* ? работает

-size +1G файлы больше 1 ГБ

 -type f отображает только файлы

 Еще есть поиск по правам доступа. Похоже по всем атрибутам можно искать.

</td></tr><tr><td>locate</td><td>Хранит свои данные в базе. Необходимо ее обновить перед поиском, чтобы было быстрее и точно. По умолчанию ищет неполное вхождение (т.е. файл localtest.sh тоже войдет в результат)

```
updatedb
locate test.sh
```

-n 10 ограничивает количество вывода

</td></tr><tr><td>which</td><td>Расположение файла бинарника, на который есть ссылка в PATH

</td></tr></tbody></table>

**Загрузка системы**

/etc/init.d/ - что может запускаться

/etc/rc?.d/ - что запускается на разных уровнях загрузки системы

**Режимы доступа к различным типам файлов**

<table border="1" id="bkmrk-%D0%A2%D0%B8%D0%BF-%D1%84%D0%B0%D0%B9%D0%BB%D0%B0-r-w-x-%D0%9E%D0%B1%D1%8B%D1%87" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 25%;"></col><col style="width: 25%;"></col><col style="width: 25%;"></col><col style="width: 25%;"></col></colgroup><thead><tr><td class="align-center">Тип файла</td><td class="align-center">r</td><td class="align-center">w</td><td class="align-center">x</td></tr></thead><tbody><tr><td>Обычный файл</td><td>Чтение</td><td>Запись</td><td>Исполнение</td></tr><tr><td>Каталог</td><td>Чтение списка файлов</td><td>Создание и удаление файлов</td><td>Обращение к файлам внутри каталога</td></tr><tr><td>Файлы устройств, каналов, сокетов</td><td>Право ввода</td><td>Право вывода</td><td>Не существует</td></tr></tbody></table>

**Дополнительные атрибуты**

s - атрибут неявного делегирования полномочий. Передача полномочий пользователя - владельца приложения пользователю, запустившему приложение. Для директории установка SGID означает установку для всех файлов, создаваемых в каталоге, группы владельца. Т е

```
chmod g+ws
```

заставит создавать файлы принадлежащие группе, к которой принадлежит папка.

t - атрибут ограниченного удаления. Ограничивает возможность удалять чужие файлы, т. е. файлы, не принадлежащие пользователю, пытающемуся их удалить