add new posts
This commit is contained in:
27
content/posts/clean-arch.md
Normal file
27
content/posts/clean-arch.md
Normal file
@@ -0,0 +1,27 @@
|
||||
---
|
||||
title: "Иерархия каталогов в Linux"
|
||||
tags: ["linux", "файловые системы"]
|
||||
categories: ["tech"]
|
||||
---
|
||||
|
||||
В Linux все дерево начинается с корня - `/`. Каждая директория имеет свое строгое назначение:
|
||||
|
||||
### Системные и исполняемые файлы
|
||||
- `/bin` и `/sbin` - содержат основные программы, необходимые для работы системы и ее восстановления. В `/sbin` лежат команды, предназначенные для системного администратора.
|
||||
- `/usr` - может показаться, что является сокращением от user, однако на самом деле является аббривеатурой **Unix System Resources** - вторичная иерархия. Здесь хранятся пользовательские программы, библиотеки и документация. Современные дистрибутивы часто делают `/bin` ссылкой на `/usr/bin`
|
||||
- `/lib`, '/lib64' - системные библиотеки, которые нужны программам из `/bin` и `/sbin` для запуска.
|
||||
|
||||
### Настройки и переменные данные
|
||||
- `/etc` - здесь хранятся **конфигурационные файлы** всей системы.
|
||||
- `/var` - сокращение от **Variable**. Директория для файлов, которые часто меняются. К таким, например, относятся логи (которые, кстати, находятся по пути `/var/log`), базы данных, временные файлы печати и тд.
|
||||
- `/tmp` - временные файлы. Важно помнить, что во многих системах содержимое этой папки очищается при перезагрузке. Это связано с файловой системой, которая предписывает хранение файлов из /tmp в оперативной памяти.
|
||||
|
||||
### Пользовательские данные
|
||||
- `/home` - здесь находятся личные папки пользователей. При вводе `cd ~` система переносит пользователя как раз в директорию `/home/<username>`.
|
||||
- `/root` - домашний каталог суперпользователя (администратора с UID 0). Он вынесен отдельно от остальных пользователей, чтобы администратор мог войти в систему, даже если раздел `/home` не удалось примонтировать.
|
||||
|
||||
### Виртуальные и псевдо-файловые системы
|
||||
Основная идея таких данных - что это не реальные данные на диске, а интерфейсы к ядру:
|
||||
- `/proc` - виртуальная ФС, содержащая информацию о процессах и состоянии ядра. По-хорошему, можно просто прочитать файл в этой папке и узнать, например, модель процессора, который стоит на системе.
|
||||
- `/sys` - информация об устройствах и драйверах.
|
||||
- `/dev` - как мне изначально казалось, сокращение от developer, однако на самом деле является сокращением от **Devices** - файлы устройств. В Linux **все есть файл**, а значит, работа с жестким диском, терминалом, мышкой или любым другим устройством идет так же, как с обычным файлом.
|
||||
Reference in New Issue
Block a user