Merge pull request #306 from Linux4Yourself/Linuxoid85-patch-2

Update LinuxStructure2.md
This commit is contained in:
Anton 2021-05-17 22:28:25 +03:00 committed by GitHub
commit 6d289bf992
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -7,7 +7,7 @@
file /etc/os-release
```
![os-release](../../assets/i/additional/os-release.png)
![os-release](pic/os-release.png)
Самое яркое представление этого принципа - устройства. Просмотрите содержимое каталога /dev:
@ -22,7 +22,7 @@ ls /dev |less
file /dev/sda2
```
![Информация о /dev/sda2](../../assets/i/additional/sda2.png)
![Информация о /dev/sda2](pic/sda2.png)
В этом файле находятся двоичные данные, поэтому открыть его в каком-то текстовом редакторе бесмыссленно.
@ -43,7 +43,7 @@ file /dev/sda2
```
ls -l /etc |grep "^-"
```
![Обычные файлы](../../assets/i/additional/file1.png)
![Обычные файлы](pic/file1.png)
### Объяснение команды
* `ls` просматривает каталог, а ключ `-l` добавляет отображение прав на файл. `/etc` замените на нужную директорию
@ -54,7 +54,7 @@ ls -l /etc |grep "^-"
* **Символьные файлы** - любые специальные системные, например `/dev/null`, или периферийные устр-ва (последовательные/параллельные порты). Такие файлы идентифицированы символом `c`.
* **Блочные** - периферийные устр-ва, но в отличии от предыдущего типа, содержание блочных файлов буферизируется. Эти файлы идентифицированы символом `b`.
![Блочные файлы](sda2.png)
![Блочные файлы](pic/sda2.png)
* **Символические ссылки** (симлинки) - указывают на другие файлы по их имени, указывают и на другие файлы, в т.ч. каталоги. Обозначены символом `l`. В выводе команды `ls -l /путь/до/директории |grep "^l"` можно увидеть, на какой файл ссылаются симлинки - в последней колонке название имеет следующий вид:
`НАЗВАНИЕ ФАЙЛА` -> `НА ЧТО ССЫЛАЕТСЯ`
@ -64,7 +64,7 @@ ls -l /etc |grep "^-"
## Информация о файлах
### LSOF
Список всех открытых файлов можно просмотреть с помощью команды `lsof` - ListOpenFiles. Эта информация поможет узнать о многом происходящем в системе, об устройстве и работе Linux, а также решить проблемы, например, когда вы не можете размонтировать диск из-за того, что устройство используется, но вы не можете найти, какой именно программой.
![lsof](../../assets/i/additional/lsof.png)
![lsof](pic/lsof.png)
Вывод `lsof` состоит из нескольких колонок с информацией:
* `COMMAND` - имя команды, которая открыла или использует файл
@ -84,10 +84,10 @@ ls -l /etc |grep "^-"
```
lsof -u liveuser
```
![liveuser](../../assets/i/additional/liveuser.png)
![liveuser](pic/liveuser.png)
* `-U` - вывести все файлы сокетов домена Unix
![unix](../../assets/i/additional/unix.png)
![unix](pic/unix.png)
* `+d` - выяснить, какие папки и файлы открыты в некоей директории (но не в её поддиректориях): `lsof +d /usr/bin`
* `-d` - задать список дескрипторов файлов, разделённых запятой, которые надо включить в вывод или исключить из него