Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
82 changes: 81 additions & 1 deletion docs/books/admin_guide/04-advanced-commands.uk.md
Original file line number Diff line number Diff line change
Expand Up @@ -370,7 +370,7 @@ watch -t -n 1 date
Ця команда поєднує копіювання файлів (`cp`) і створення каталогу (`mkdir`) із керуванням правами (`chmod`, `chown`) та інші корисні функції (наприклад, резервне копіювання).

```bash
install source dest
install source dest
install -t directory source [...]
install -d directory
```
Expand Down Expand Up @@ -438,3 +438,83 @@ $ install -v -b -D -t ~/samples/ src/sample.txt
$ install -v -b -S ".bak" -D -t ~/samples/ src/sample.txt
'src/sample.txt' -> '~/samples/sample.txt' (archive: '~/samples/sample.txt.bak')
```

## Команда `tree`

Розгорніть файли або каталоги в каталозі у вигляді дерева.

| опції | опис |
|:----- |:---------------------------------------------- |
| `-a` | Усі файли перераховані |
| `-h` | Друкує розмір у більш зрозумілий спосіб |
| `-u` | Відображає власника файлу або номер UID |
| `-g` | Відображає власника групи файлів або номер GID |
| `-p` | Друкує захист для кожного файлу |

Наприклад:

```bash
$ tree -hugp /etc/yum.repos.d/
/etc/yum.repos.d/
├── [-rw-r--r-- root root 1.6K] epel-modular.repo
├── [-rw-r--r-- root root 1.3K] epel.repo
├── [-rw-r--r-- root root 1.7K] epel-testing-modular.repo
├── [-rw-r--r-- root root 1.4K] epel-testing.repo
├── [-rw-r--r-- root root 710] Rocky-AppStream.repo
├── [-rw-r--r-- root root 695] Rocky-BaseOS.repo
├── [-rw-r--r-- root root 1.7K] Rocky-Debuginfo.repo
├── [-rw-r--r-- root root 360] Rocky-Devel.repo
├── [-rw-r--r-- root root 695] Rocky-Extras.repo
├── [-rw-r--r-- root root 731] Rocky-HighAvailability.repo
├── [-rw-r--r-- root root 680] Rocky-Media.repo
├── [-rw-r--r-- root root 680] Rocky-NFV.repo
├── [-rw-r--r-- root root 690] Rocky-Plus.repo
├── [-rw-r--r-- root root 715] Rocky-PowerTools.repo
├── [-rw-r--r-- root root 746] Rocky-ResilientStorage.repo
├── [-rw-r--r-- root root 681] Rocky-RT.repo
└── [-rw-r--r-- root root 2.3K] Rocky-Sources.repo

0 directories, 17 files
```

## Команда `stat`

Команда `stat` відображає стан файлу або файлової системи.

```bash
$ stat /root/anaconda-ks.cfg
File: /root/anaconda-ks.cfg
Size: 1352 Blocks: 8 IO Block: 4096 regular file
Device: 10302h/66306d Inode: 2757097 Links: 1
Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2024-01-20 13:04:57.012033583 +0800
Modify: 2023-09-25 14:04:48.524760784 +0800
Change: 2024-01-24 16:37:34.315995221 +0800
Birth: 2
```

* `File` - Відображає шлях до файлу.
* `Size` - Відображає розмір файлу в байтах. Якщо це каталог, він відображає фіксовані 4096 байт, зайняті назвою каталогу.
* `Blocks` - Відображає кількість виділених блоків. Увага, будь ласка! Розмір кожного блоку в цій команді становить 512 байт. Стандартний розмір кожного блоку в `ls -ls` становить 1024 байти.
* `Device` - Номер пристрою в десятковій системі числення. Номер пристрою в шістнадцятковій системі числення.
* `Inode` - Inode — це унікальний ідентифікаційний номер, який ядро Linux призначає файлу або каталогу.
* `Links` - Кількість жорстких посилань. Жорсткі посилання іноді називають фізичними посиланнями.
* `Access` - Час останнього доступу до файлів і каталогів, тобто `atime` у GNU/Linux.
* `Modify` - Час останньої модифікації файлів і каталогів, тобто `mtime` у GNU/Linux.
* `Change` - Востаннє властивість змінено, наприклад, `ctime` у GNU/Linux.
* `Birth` - Час народження (час створення). У деяких документах він скорочується як `btime` або `crtime`. Для відображення часу створення вам потрібна файлова система та версія ядра, яка перевищує певну версію.

Для файлів:

**atime** – після доступу до вмісту файлу за допомогою таких команд, як `cat`, `less`, `more` і `head`, `atime` файл можна оновити. Будь ласка, зверніть увагу! `atime` файлу не оновлюється в реальному часі, і з міркувань продуктивності йому потрібно зачекати деякий час, перш ніж його можна буде відобразити. **mtime** – зміна вмісту файлу може оновити `mtime` файлу (наприклад, додавати або перезаписувати вміст файлу за допомогою переспрямування), оскільки розмір файлу є властивістю файлу, `ctime` також буде оновлено одночасно. **ctime**. Зміна власника, групи, дозволів, розміру файлу та посилань (м’яких і жорстких посилань) файлу призведе до оновлення ctime.

Для каталогів:

**atime** – після використання команди `cd` для входу в новий каталог, доступу до якого раніше не було, ви можете оновити та виправити `atime ` цього каталогу. **mtime** – виконання таких операцій, як створення, видалення та перейменування файлів у цьому каталозі, оновить `mtime` і `ctime` довідника. **ctime** – коли дозволи, власник, група тощо каталогу змінюються, `ctime` каталогу буде оновлено.

!!! tip "Підказка"

* Якщо ви створюєте новий файл або каталог, його `atime`, `mtime` і `ctime` точно збігаються
* Якщо вміст файлу змінено, `mtime` та `ctime` файлу неминуче буде оновлено.
* Якщо в каталозі створюється абсолютно новий файл, `atime`, `ctime` і `mtime` цього каталогу буде оновлено одночасно.
* Якщо `mtime` каталогу оновлюється, то `ctime` цього каталогу має бути оновлено.
2 changes: 1 addition & 1 deletion docs/books/admin_guide/16-about-sytemd.uk.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ tags:

| цілі systemd | SystemV runlevel | цільовий псевдонім (м'яке посилання) | опис |
| :---------------- | :--------------- | :------------------------------------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| defautl.target | | | Ця «ціль» завжди є м’яким посиланням на «multi-user.target» або «graphical.target». `systemd` завжди використовує "default.target" для запуску системи. Увага, будь ласка! Це не може бути програмне посилання на "halt.target", "poweroff.target" або "reboot.target". |
| default.target | | | Ця «ціль» завжди є м’яким посиланням на «multi-user.target» або «graphical.target». `systemd` завжди використовує "default.target" для запуску системи. Увага, будь ласка! Це не може бути програмне посилання на "halt.target", "poweroff.target" або "reboot.target". |
| graphical.target | 5 | runlevel5.target | GUI середовище. |
| | 4 | runlevel4.target | Зарезервований і невикористовуваний. У програмі ініціалізації SysV runlevel4 такий самий, як runlevel3. У програмі ініціалізації `systemd` користувачі можуть створювати та налаштовувати цю "ціль" для запуску локальних служб без зміни типового "multi-user.target". |
| multi-user.target | 3 | runlevel3.target | Повноцінний багатокористувацький режим командного рядка. |
Expand Down
Loading