Blame
ea1875 | Mayekkuzu | 2024-11-12 18:56:44 | 1 | # Cтруктура папок |
2 | Для того чтобы понимать строение файловой структуры установленной системы, пользуйся этой памяткой: |
|||
3 | ||||
4 | ### /bin |
|||
5 | Чаще всего является симлинком к /usr/bin, но может быть и отдельной папкой. В нем находятся утилиты которыми может воспользоваться пользователь без прав администратора. Большинство системных утилит находятся там в первую очередь. |
|||
6 | ### /boot |
|||
7 | Папка в которой находятся файлы загрузки ядра и само ядро для инициализации запуска системы. |
|||
8 | - **/boot/efi/** - место хранения загрузчика [EFI](/PC/EFI) |
|||
9 | - **/boot/grub/** - конфигурация загрузчика [GRUB](/Linux/System/GRUB) |
|||
10 | ### /dev |
|||
11 | Концепция Linux гласит о том, что все есть фаил. В этом каталоге находятся устроиства которые представлены в виде файлов. |
|||
12 | - **/dev/disk/** - содержит блочные устроиства жестких дисков по идентификаторам. Доступные варианты - uuid,partuuid,id и path. Используется, например, если нужно прописать автоматическое монтирование в /etc/[fstab](/Linux/System/fstab) |
|||
13 | - **/dev/snd** - содержит аудио устроиства |
|||
14 | - **/dev/sdX или /dev/hdX или /dev/nvmeXnX** - [SATA](/Hardware/Interfaces/SATA), [IDE](/Hardware/Interfaces/IDE) и [NVME](/Hardware/Interfaces/NVME) жесткие диски соответственно. В порядке подключения по шине, идут в алфавитном порядке или числом по возрастанию. В случае монтирования жесткого диска вручную, требуется указать устроиство именно в таком формате, например `mount /dev/sda1 /mnt` |
|||
15 | - **/dev/null** - устроиство которое ничего не отдает и ничего не принимает. Заглушка |
|||
16 | ||||
17 | ### /etc |
|||
18 | Здесь хранятся конфигурационные файлы программ. |
|||
19 | - **/etc/[fstab](/Linux/System/fstab)** - фаил в котором хранится информация о автоматическом монтировании жестких дисков или swap. |
|||
20 | - **/etc/hosts** - информация о [IP](/Networking/IP) адресах. Локальный [DNS](/Networking/DNS) |
|||
21 | - **/etc/passwd** - информация о пользователях, группах и их оболочке |
|||
22 | - **/etc/shadow** - пароли пользователей, которые хранятся в виде хэшей |
|||
23 | - **/etc/ssh/** - конфигурация [SSH](/Linux/System/ssh) |
|||
24 | - **/etc/systemd/** - юниты и конфигурация демона [Systemd](/Linux/System/Systemd) |
|||
25 | - **/etc/profile** - стандартная конфигурация оболочки для входа в систему. Обычно копируется в домашнюю папку, которую можно настроить персонально |
|||
26 | ||||
27 | ### /home |
|||
28 | Твоя домашняя папка в которой хранятся как конфигурации и переменные профилей пользователей, так и документы с которыми вы работаете. Скорее всего ты найдешь внутри некоторое количество файлов. Это настройки [bash](/Linux/System/Bash), [ssh](/Linux/System/ssh), кэши некоторых программ. Здесь можно хранить все что захочется, другие пользователи не смогут зайти к тебе, если у них нет разрешений. В консоли можно перейти в домашнюю папку введя команду `cd ~`. Для удобства, путь от домашней папки указывается так же через ~ |
|||
29 | - **~/.ssh/** - ключи и файлы клиента [SSH](/Linux/System/ssh) |
|||
30 | - **~/.bashrc** - скрипт-конфигурация bash для текущего пользователя. Внутри есть подсказки как сделать свои (алиасы)(/alias), настроить цвет |
|||
31 | - **~/.bash_history** - история команд введенных в консоль |
|||
32 | - **~./bash_logout** - скрипт, который выполняется, в случае если вы выходите из консоли. |
|||
33 | ### /lib |
|||
34 | Библиотеки с которыми работают программы хранятся здесь. Внутри можно найти множество файлов с расширением *.so и вспомогательные файлы для программ. Так же в некоторых случаях является [симлинком](/Linux/System/Symlink) на /usr/lib. |
|||
35 | ### /lost+found |
|||
36 | Папка в которую программа [fsck](/Linux/System/fsck) складывает потерянные или "ничейные" файлы. |
|||
37 | ### /media |
|||
38 | В системах с графическим интерфейсом, например [KDE](/Linux/DE/KDE), в эту папку монтируются внешние носители, например дисковод или [USB](/Hardware/Interfaces/USB)-флешка. В [Ubuntu](/Linux/Ubuntu) можно увидеть аналог в лице папки /cdrom |
|||
39 | **/mnt** |
|||
40 | Аналог папки /media. Можно использовать для временного монтирования хоть ISO-файла, хоть внешнего устроиства хранения данных. |
|||
41 | ### /opt |
|||
42 | Директория для хранения дополнительного ПО, скачанное, например, не с репозитория. Опционально |
|||
43 | ### /proc |
|||
44 | Файлы ядра, процессов и устроиств. Представлена в виде псевдофайловой системы procfs, заполняется автоматически при запуске. Cторонние программы могут брать информацию для своих нужд |
|||
45 | - **/proc/cpuinfo** - информация о процессоре и ядрах. Полезно если нужно определить поддерживает ли процессор инструкции AVX, например |
|||
46 | - **/proc/uptime** - суммарное время работы системы с момента последней перезагрузки/включения |
|||
47 | - **/proc/mdstat** - информация о программном [RAID](/Linux/System/mdadm) |
|||
48 | ||||
49 | ### /root |
|||
50 | Домашняя папка пользователя [root](/Linux/System/root). Такое же как и /home, но админ разве не заслуживает своего пространства?) |
|||
51 | ### /run |
|||
52 | Место хранения необходимых временных файлов программ. Тут лежат сокеты и идентификаторы процессов. Такой формат хранения появился относительно недавно. Не во всех системах можно встретить, но тем не менее имеет место быть. |
|||
53 | ### /sbin |
|||
54 | Здесь хранятся программы которые может выполнить только пользователь с правами администратора. Например пользователь с правами sudo или [root](/Linux/System/root). |
|||
55 | ### /srv |
|||
4ebbb5 | Mayekkuzu | 2024-11-12 19:54:31 | 56 | Некоторое ПО, вроде [Apache2](/Software/Apache2) или [Nginx](/Software/Nginx) смотрят в него, возможно у нее было изначально другое предназначение, но папка есть. Значит нужна) |
ea1875 | Mayekkuzu | 2024-11-12 18:56:44 | 57 | ### /sys |
58 | Хранит в себе информацию о устроиствах, ядре и драйверах |
|||
59 | ### /tmp |
|||
60 | Временные файлы программ. Папка очищается после каждого перезапуска системы. |
|||
61 | ### /usr |
|||
62 | Место хранения программ, документации. Так же может хранить исходный код программ и библиотеки. |
|||
63 | - **/usr/bin/** - чаще всего на него ссылается /bin. Содержит программы которыми может пользоваться обычный пользователь |
|||
64 | - **/usr/include/** - файлы заголовков. Используются, в основном, при сборке программ из исходных кодов. |
|||
65 | - **/usr/lib/** - чаще всего на него ссылается /lib. Библиотеки для программ |
|||
66 | - **/usr/local/** - иногда программы, библиотеки и дополнительные файлы кидают сюда. Содержит внутри те же папки bin, lib и share. Как правило в переменной [PATH](/Linux/System/PATH) эта папка тоже указана. |
|||
67 | - **/usr/sbin/** - чаще всего на него ссылается /sbin. Программы которые может выполнить пользователь с правами администратора или root. |
|||
68 | - **/usr/share/** - архитектурно независимые данные. Часто иконки, дополнительные данные, [man](/Linux/System/man) и прочее. |
|||
69 | ||||
70 | ### /var |
|||
71 | Каталог временных данных, но которые не удаляются при перезагрузке. Логи пишутся, обычно сюда |
|||
72 | - **/var/cache/** - кэши приложений |
|||
73 | - **/var/lock/** - файлы блокировок. Программы могут пользоваться механизмом генерации файла блокировки, чтобы, например, не запускаться повторно или не запускаться в момент когда идет решение какой то задачи. |
|||
74 | - **/var/log/** - файлы логов. Множество программ по умолчанию пишут сюда все что происходит или что косячит. Например [Apache2](/Software/Apache2) или Zabbix-Agent |
|||
75 | - **/var/spool/** - файлы очереди печати |
|||
76 | - **/var/tmp/** - временные файлы, которые не удаляются при перезагрузке |
|||
77 | - **/var/www/html/** - [Apache2](/Software/Apache2) по умолчанию использует эту папку как место хранения данных вебсайта |