diff --git a/docs/books/admin_guide/07-file-systems.uk.md b/docs/books/admin_guide/07-file-systems.uk.md index c568ae27bc..5624dad616 100644 --- a/docs/books/admin_guide/07-file-systems.uk.md +++ b/docs/books/admin_guide/07-file-systems.uk.md @@ -770,7 +770,7 @@ crw------- 1 root root 8, 0 jan 1 1970 /dev/tty0 #### Файли посилань -Ці файли дають можливість давати декілька логічних імен одному фізичному файлу. Таким чином, створюється нова точка доступу до файлу. +Ці файли дозволяють давати кілька логічних імен одному фізичному файлу, створюючи нову точку доступу до файлу. Існує два типи файлів посилань: diff --git a/docs/books/admin_guide/08-process.uk.md b/docs/books/admin_guide/08-process.uk.md index 798cee3df6..e18c6e373e 100644 --- a/docs/books/admin_guide/08-process.uk.md +++ b/docs/books/admin_guide/08-process.uk.md @@ -59,11 +59,11 @@ ps [-e] [-f] [-u login] # ps -fu root ``` -| Опція | Опис | -| ---------- | -------------------------------- | -| `-e` | Відображає всі процеси. | -| `-f` | Відображає додаткову інформацію. | -| `-u` login | Відображає процеси користувача. | +| Опція | Опис | +| ---------- | ---------------------------------- | +| `-e` | Відображає всі процеси. | +| `-f` | Відображає повний список форматів. | +| `-u` login | Відображає процеси користувача. | Деякі додаткові опції: @@ -73,7 +73,7 @@ ps [-e] [-f] [-u login] | `-t tty` | Відображає процеси, запущені з терміналу. | | `-p PID` | Відображає інформацію про процес. | | `-H` | Відображає інформацію у вигляді дерева. | -| `-I` | Відображає додаткову інформацію. | +| `-l` | Відображення в довгому форматі. | | `--sort COL` | Сортує результат відповідно до стовпця. | | `--headers` | Відображає заголовок на кожній сторінці терміналу. | | `--format "%a %b %c"` | Налаштовує вихідний формат відображення. | @@ -200,13 +200,13 @@ kill [-signal] PID kill -9 1664 ``` -| Код | Сигнал | Опис | -| ---- | --------- | -------------------------------- | -| `2` | *SIGINT* | Негайне припинення процесу | -| `9` | *SIGKILL* | Перервати процес (++control+d++) | -| `15` | *SIGTERM* | Чисте завершення процесу | -| `18` | *SIGCONT* | Відновлення процесу | -| `19` | *SIGSTOP* | Призупинення процесу | +| Код | Сигнал | Опис | +| ---- | --------- | ---------------------------------------------------------------------------------------------------------------- | +| `2` | *SIGINT* | Негайне припинення процесу | +| `9` | *SIGKILL* | Перериває процес (++control+"d"++) | +| `15` | *SIGTERM* | Чисте завершення процесу | +| `18` | *SIGCONT* | Відновлює процес. Процеси, які використовують сигнал SIGSTOP, можуть використовувати його для продовження роботи | +| `19` | *SIGSTOP* | Призупиняє процес (Зупиняє процес). Ефект цього сигналу еквівалентний ++ctrl+"z"++ | Сигнали є засобами зв'язку між процесами. Команда `kill` надсилає сигнал процесу. @@ -238,9 +238,9 @@ nohup myprogram.sh 0ctrl + d щоб вийти з цього режиму редагування. diff --git a/docs/books/incus_server/00-toc.uk.md b/docs/books/incus_server/00-toc.uk.md index 2728a3bc29..aba325202f 100644 --- a/docs/books/incus_server/00-toc.uk.md +++ b/docs/books/incus_server/00-toc.uk.md @@ -1,5 +1,5 @@ --- -title: Сервер Incus +title: Сервер Incus. Вступ author: Steven Spencer contributors: Ezequiel Bruni, Ganna Zhyrnova tested_with: 9.4 @@ -17,9 +17,9 @@ tags: > Компанія Canonical, творець і головний учасник проекту LXD, вирішила, що після більш ніж 8 років роботи в спільноті Linux Containers цей проект тепер краще обслуговувати безпосередньо в рамках власного набору проектів Canonical. -Одним із вирішальних факторів стала відставка деяких провідних розробників LXD. Потім ці розробники розгалужували LXD на Incus, оголосивши про розгалуження в серпні 2023 року. Версія випуску (0.1) вийшла в жовтні 2023 року, і з тих пір розробники швидко створили цю версію, випускаючи поетапно до 0.7 (у березні 2024 року). Після версії 0.7 4 квітня 2024 року була випущена версія довгострокової підтримки 6.0 LTS. Поточна версія 6.4. +Одним із вирішальних факторів стала відставка деяких провідних розробників LXD. Потім ці розробники розгалужували LXD на Incus, оголосивши про розгалуження в серпні 2023 року. Версія випуску (0.1) вийшла в жовтні 2023 року, і з тих пір розробники швидко створили цю версію, випускаючи поетапно до 0.7 (у березні 2024 року). Випуск версії довгострокової підтримки (6.0 LTS) відбувся після випуску 0.7. Поточна версія 6.5. -Вважалося, що протягом усього процесу Canonical продовжувала підтримувати посилання на зображення контейнерів, надані Linux Containers. Однак через [зміну ліцензії](https://stgraber.org/2023/12/12/lxd-now-re-licensed-and-under-a-cla/) контейнери Linux стали неможливими для продовження пропонуючи зображення контейнерів у LXD. Це означає, що LXD матиме зображення контейнерів, але вони не будуть зображеннями контейнерів, які ви могли б очікувати. Контейнери Linux продовжують розміщувати та підтримувати свої зображення, якщо ви використовуєте Incus. +Вважалося, що протягом усього процесу Canonical продовжувала підтримувати посилання на зображення контейнерів, надані Linux Containers. Однак [зміна ліцензії](https://stgraber.org/2023/12/12/lxd-now-re-licensed-and-under-a-cla/) унеможливила Linux Containers продовжувати пропонувати контейнер зображення в межах LXD. Це означає, що LXD матиме зображення контейнерів, але вони не будуть такими, якими ви могли б очікувати. Контейнери Linux продовжують розміщувати та підтримувати свої зображення, якщо ви використовуєте Incus. Цей документ є перетворенням [книги LXD](../lxd_server/00-toc.md) на Incus. Після створення репозиторію співкерівником інфраструктури проекту Rocky Linux [Нілом Хенлоном](https://wiki.rockylinux.org/team/infrastructure/), у вас є можливість інсталювати Incus до його включення в EPEL (Додатково Пакети для репозиторію Enterprise Linux). @@ -48,7 +48,7 @@ Incus найкраще описано на [офіційному веб-сайт ## Передумови та припущення - Один сервер Rocky Linux 9, гарно налаштований. Розгляньте окремий жорсткий диск для дискового простору ZFS у робочому середовищі (це потрібно зробити, якщо ви використовуєте ZFS). І так, ми припускаємо, що це чистий сервер, а не VPS. -- Це слід вважати розширеною темою, але ми зробили все можливе, щоб зробити її максимально зрозумілою для всіх. Тим не менш, знання кількох основних речей про керування контейнерами займе у вас довгий шлях. +- Це слід вважати розширеною темою, але ми зробили все можливе, щоб зробити її максимально зрозумілою для всіх. Тим не менш, знання кількох основних речей про керування контейнерами займе у вас довгий шлях. Знання кількох базових речей про керування контейнерами значно допоможе. - Ви маєте добре володіти командним рядком на своїй машині (машинах) і вільно володіти редактором командного рядка. (Використовуємо _vi_ в цих прикладах, але ви можете використовувати свій улюблений редактор.) - Для більшості цих процесів вам потрібно буде бути непривілейованим користувачем. Для початкових кроків налаштування вам потрібно буде бути користувачем root або вміти `sudo`, щоб стати ним. У цих розділах ми припускаємо, що ваш непривілейований користувач є "incusadmin". Вам доведеться створити цей обліковий запис користувача пізніше в процесі. - Для ZFS переконайтеся, що безпечне завантаження UEFI НЕ ввімкнено. В іншому випадку вам доведеться підписати модуль ZFS, щоб змусити його завантажити. @@ -72,7 +72,7 @@ Incus найкраще описано на [офіційному веб-сайт - **Глава 8: Знімки контейнерів** детально описує процес створення знімків для контейнерів на основному сервері - **Розділ 9. Сервер знімків** охоплює налаштування та конфігурацію сервера знімків, а також те, як створити симбіотичний зв’язок між основним і сервером знімків - **Розділ 10: Автоматизація миттєвих знімків** розповідає про автоматизацію створення миттєвих знімків і заповнення миттєвими знімками сервера миттєвих знімків. -- **Додаток A: налаштування робочої станції** технічно не є частиною документів робочого сервера, але пропонує рішення для людей, які хочуть створити лабораторію контейнерів Incus на своєму ноутбуці чи робочій станції. +- **Додаток A: налаштування робочої станції** технічно не є частиною документів робочого сервера. Він пропонує рішення для людей, які хочуть створити лабораторію з контейнерів Incus на своїх ноутбуках або робочих станціях. ## Висновки diff --git a/docs/books/incus_server/03-incusinit.uk.md b/docs/books/incus_server/03-incusinit.uk.md index dc9c1f84be..4521249534 100644 --- a/docs/books/incus_server/03-incusinit.uk.md +++ b/docs/books/incus_server/03-incusinit.uk.md @@ -10,7 +10,7 @@ tags: - налаштування incus --- -У цьому розділі ви повинні бути адміністратором або вміти `sudo`, щоб стати адміністратором. Крім того, передбачається, що ви налаштували пул зберігання даних ZFS, як описано в [главі 2](02-zfs_setup.md). Ви можете використовувати інший пул зберігання, якщо ви вирішили не використовувати ZFS, але вам потрібно буде внести зміни до запитань і відповідей щодо ініціалізації. +У цьому розділі ви повинні бути адміністратором або вміти `sudo`, щоб стати адміністратором. Крім того, передбачається, що ви налаштували пул зберігання даних ZFS, як описано в [главі 2](02-zfs_setup.md). Якщо ви вирішили не використовувати ZFS, ви можете використовувати інший пул зберігання, але вам потрібно буде налаштувати запитання та відповіді щодо ініціалізації. ## Ініціалізація Incus @@ -32,13 +32,13 @@ Would you like to use clustering? (yes/no) [default=no]: Do you want to configure a new storage pool? (yes/no) [default=yes]: ``` -Це здається неінтуїтивним. Ви вже створили свій пул ZFS, але це стане зрозумілим у наступному питанні. Прийміть значення за замовчуванням. +Це здається нелогічним. Ви вже створили свій пул ZFS, але це буде зрозуміло в наступному питанні. Прийміть значення за замовчуванням. ```text Ім’я нового пулу сховищ [default=default]: storage ``` -Можна залишити це значення «за замовчуванням», але для ясності краще використовувати ту саму назву, яку ви дали нашому пулу ZFS. +Залишити це значення за замовчуванням можна, але для ясності краще використовувати ту саму назву, яку ви дали нашому пулу ZFS. ```text Назва серверної частини сховища для використання (btrfs, dir, lvm, zfs, ceph) [default=zfs]: @@ -66,7 +66,7 @@ What IPv4 address should be used? (CIDR subnet notation, “auto” or “none What IPv6 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]: none ``` -Ви можете ввімкнути цю опцію, якщо хочете використовувати IPv6 у своїх контейнерах Incus. Це залежить від вас. +Ви можете ввімкнути цю опцію, щоб використовувати IPv6 у своїх контейнерах Incus. ```text Would you like the Incus server to be available over the network? (yes/no) [default=no]: yes @@ -81,7 +81,7 @@ Trust password for new clients: Again: ``` -Цей пароль довіри означає, як ви підключатиметеся до snapshot сервера або повертатиметеся із snapshot сервера. Встановіть це з тим, що має сенс у вашому оточенні. Збережіть цей запис у безпечному місці, наприклад у менеджері паролів. +Цей пароль довіри означає, як ви будете підключатися до сервера знімків або повертатися з нього. Встановіть його з чимось, що має сенс у вашому оточенні. Збережіть цей запис у безпечному місці, наприклад у менеджері паролів. ```text Would you like stale cached images to be updated automatically? (yes/no) [default=yes] @@ -90,7 +90,7 @@ Would you like a YAML "incus admin init" preseed to be printed? (yes/no) [defaul ## Налаштування прав користувача -Перш ніж продовжити, вам потрібно створити користувача "incusadmin" і переконатися, що він має необхідні права. Вам потрібен користувач «incusadmin», щоб мати можливість використовувати `sudo` для рутування, і вам потрібно, щоб він був членом групи `incus-admin`. Щоб додати користувача та переконатися, що він є членом обох груп, виконайте: +Перш ніж продовжити, вам потрібно створити користувача "incusadmin" і переконатися, що він має необхідні права. Вам потрібен користувач «incusadmin», щоб мати можливість використовувати `sudo` для рутування, і вам потрібно, щоб він був членом групи `incus-admin`. Щоб додати користувача та переконатися, що він є членом обох груп, виконайте такі дії: ```bash useradd -G wheel,incus-admin incusadmin diff --git a/docs/books/incus_server/04-firewall.uk.md b/docs/books/incus_server/04-firewall.uk.md index 7a45917f8c..c0ad5f3f64 100644 --- a/docs/books/incus_server/04-firewall.uk.md +++ b/docs/books/incus_server/04-firewall.uk.md @@ -11,11 +11,11 @@ tags: У цьому розділі ви повинні бути адміністратором або вміти `sudo`, щоб стати адміністратором. -Як і будь-який сервер, вам потрібно переконатися, що він захищений від зовнішнього світу та вашої локальної мережі. У той час як наш приклад сервера має лише інтерфейс локальної мережі, цілком можливо мати два інтерфейси, по одному для вашої мережі LAN та WAN. +Як і будь-який сервер, ви повинні переконатися, що він захищений від зовнішнього світу та у вашій локальній мережі. Ваш приклад сервера має лише інтерфейс локальної мережі, але можна мати два інтерфейси, кожен з яких спрямований до вашої мережі LAN та WAN. ## Налаштування брандмауера - `firewalld` -Для правил _firewalld_ вам потрібно використовувати [цю базову процедуру](../../guides/security/firewalld.md) або бути знайомими з цими концепціями. Припущеннями є мережа LAN 192.168.1.0/24 і міст під назвою incusbr0. Щоб було зрозуміло, ваш сервер Incus може мати багато інтерфейсів, один з яких, можливо, спрямований до вашої WAN. Ви також збираєтеся створити зону для мостової та локальної мереж. Це лише для ясності зони. Інші назви зон насправді не застосовуються. Ця процедура передбачає, що ви вже знаєте основи _firewalld_. +Для правил _firewalld_ вам потрібно використовувати [цю базову процедуру](../../guides/security/firewalld.md) або бути знайомими з цими концепціями. Припущеннями є мережа LAN 192.168.1.0/24 і міст під назвою incusbr0. Щоб було зрозуміло, ваш сервер Incus може мати багато інтерфейсів, один з яких, можливо, спрямований до вашої WAN. Ви також створите зону для мостової та локальної мереж. Це лише для ясності зони. Інші назви зон не застосовуються. Ця процедура передбачає, що ви вже знаєте основи _firewalld_. ```bash firewall-cmd --new-zone=bridge --permanent @@ -46,7 +46,7 @@ firewall-cmd --zone=bridge --add-interface=incusbr0 --permanent firewall-cmd --zone=bridge --set-target=ACCEPT --permanent ``` -Якщо припустити, що помилок немає і все працює, просто перезавантажте: +Якщо припустити, що помилок немає і все працює, перезавантажте: ```bash firewall-cmd --reload @@ -105,7 +105,7 @@ local (active) rich rules: ``` -Ви хочете дозволити SSH із нашої надійної мережі. Для цього дозвольте вихідним IP-адресам використовувати вбудовану «довірену» зону. Ціль для цієї зони вже "ACCEPT" за замовчуванням. +Ви хочете дозволити SSH із нашої надійної мережі. Для цього дозвольте вихідним IP-адресам використовувати вбудовану «довірену» зону. За замовчуванням метою цієї зони є «ACCEPT». ```bash firewall-cmd --zone=trusted --add-source=192.168.1.0/24 @@ -143,7 +143,7 @@ trusted (active) rich rules: ``` -За замовчуванням «загальнодоступна» зона ввімкнена, а SSH дозволено. З міркувань безпеки ви не хочете, щоб SSH дозволявся в «загальнодоступній» зоні. Переконайтеся, що ваші зони правильні та що доступ до сервера ви отримуєте через одну з IP-адрес локальної мережі (у нашому прикладі). Ви можете заблокувати себе на сервері, якщо не підтвердите це, перш ніж продовжити. Коли ви впевнені, що маєте доступ із правильного інтерфейсу, видаліть SSH із загальнодоступної зони: +«Загальнодоступна» зона ввімкнена за замовчуванням, а SSH дозволено. З міркувань безпеки ви не хочете, щоб SSH дозволявся в «загальнодоступній» зоні. Переконайтеся, що ваші зони правильні та що доступ до сервера ви отримуєте через одну з IP-адрес локальної мережі (у нашому прикладі). Ви можете заблокувати себе на сервері, якщо не підтвердите це, перш ніж продовжити. Коли ви впевнені, що маєте доступ із правильного інтерфейсу, видаліть SSH із загальнодоступної зони: ```bash firewall-cmd --zone=public --remove-service=ssh @@ -157,4 +157,4 @@ firewall-cmd --reload firewall-cmd --zone=public --list-all ``` -На вашому сервері можуть бути інші інтерфейси. Ви можете використовувати вбудовані зони, де це доцільно, але якщо назви не здаються логічними, ви точно можете додати зони. Просто пам’ятайте, що якщо у вас немає служб або протоколів, які вам потрібно дозволити або відхилити спеціально, вам потрібно буде змінити цільову зону. Якщо використання інтерфейсів працює, як у випадку з мостом, ви можете це зробити. Якщо вам потрібен детальніший доступ до служб, натомість використовуйте вихідні IP-адреси. +На вашому сервері можуть бути інші інтерфейси. Ви можете використовувати вбудовані зони, якщо це доречно, але якщо назви здаються недостатньо вдалими, ви можете додати зони. Просто пам’ятайте, що якщо у вас немає служб або протоколів, які вам потрібно дозволити або відхилити спеціально, вам потрібно буде змінити цільову зону. Ви можете зробити це, якщо він працює з використанням інтерфейсів, як у випадку з мостом. Якщо вам потрібен детальніший доступ до послуг, використовуйте натомість вихідні IP-адреси. diff --git a/docs/books/incus_server/06-profiles.uk.md b/docs/books/incus_server/06-profiles.uk.md index f032f354db..10e34359be 100644 --- a/docs/books/incus_server/06-profiles.uk.md +++ b/docs/books/incus_server/06-profiles.uk.md @@ -11,9 +11,9 @@ tags: У цій главі ви повинні запускати команди як непривілейований користувач ("incusadmin", якщо ви стежите за цим із початку цієї книги). -Коли ви інсталюєте Incus, вам надається профіль за замовчуванням, який ви не можете видалити чи змінити. Тим не менш, ви можете використовувати профіль за замовчуванням для створення нових профілів для використання з вашими контейнерами. +Коли ви інсталюєте Incus, вам надається профіль за замовчуванням, який ви не можете видалити чи змінити. Якщо вам потрібен більш детальний доступ до послуги, використовуйте натомість вихідні IP-адреси. -Якщо ви перевірите свій список контейнерів, ви помітите, що IP-адреса в кожному випадку походить з мостового інтерфейсу. У виробничому середовищі ви можете використовувати щось інше. Це може бути адреса, призначена DHCP з вашого інтерфейсу LAN, або навіть статична адреса з вашої WAN. +Якщо ви перевірите свій список контейнерів, ви помітите, що IP-адреса в кожному випадку походить з мостового інтерфейсу. У виробничому середовищі ви можете використовувати щось інше. Це може бути призначена DHCP адреса з інтерфейсу локальної мережі або статично призначена адреса з вашої глобальної мережі. Якщо ви налаштуєте свій сервер Incus із двома інтерфейсами та призначите кожному IP-адресу у своїй WAN та LAN, ви зможете призначити IP-адреси свого контейнера на основі інтерфейсу, до якого контейнер має бути спрямований. @@ -21,7 +21,7 @@ tags: Є способи обійти це, але це не дуже приємно. Схоже, це якось пов’язано зі змінами, внесеними в Менеджер мережі, які впливають на `macvlan`. `macvlan` дозволяє створювати багато інтерфейсів з різними адресами рівня 2. -Наразі майте на увазі, що це має недоліки під час вибору зображень контейнерів на основі RHEL. +Майте на увазі, що це має недоліки під час вибору зображень контейнерів на основі RHEL. ## Створення профілю `macvlan` і його призначення @@ -33,7 +33,7 @@ incus profile create macvlan Якщо ви користуєтеся багатоінтерфейсним комп’ютером і вам потрібен більше одного шаблону `macvlan` на основі мережі, яку ви хочете охопити, ви можете використати «lanmacvlan» або «wanmacvlan» або будь-яке інше ім’я, яке ви намагалися використати для ідентифікації профілю. Використання "macvlan" у вашій заяві про створення профілю залежить від вас. -Ви хочете змінити інтерфейс `macvlan`, але перед тим, як це зробити, вам потрібно знати, що таке батьківський інтерфейс для вашого сервера Incus. Це буде інтерфейс, якому призначено IP-адресу локальної мережі (у цьому випадку). Щоб дізнатися, що це за інтерфейс, використовуйте: +Ви хочете змінити інтерфейс `macvlan`, але перед тим, як це зробити, вам потрібно знати, що таке батьківський інтерфейс для вашого сервера Incus. Цьому інтерфейсу буде призначено IP-адресу локальної мережі (у цьому випадку). Щоб дізнатися, що це за інтерфейс, використовуйте: ```bash ip addr @@ -52,7 +52,7 @@ ip addr В цьому випадку інтерфейс буде "enp3s0". -Тепер давайте змінимо профіль: +Далі змініть профіль: ```bash incus profile device add macvlan eth0 nic nictype=macvlan parent=enp3s0 @@ -60,7 +60,7 @@ incus profile device add macvlan eth0 nic nictype=macvlan parent=enp3s0 Ця команда додає всі параметри до профілю `macvlan`, необхідні для використання. -Щоб побачити, що створила ця команда, скористайтеся командою: +Перевірте, що створила ця команда за допомогою команди: ```bash incus profile show macvlan @@ -100,7 +100,7 @@ incus profile assign rockylinux-test-9 default,macvlan У дистрибутивах і клонах RHEL мережевий менеджер постійно змінюється. Через це спосіб роботи профілю `macvlan` не працює (принаймні в порівнянні з іншими дистрибутивами) і вимагає додаткової роботи для призначення IP-адрес через DHCP або статично. -Майте на увазі, що нічого з цього не має нічого спільного з Rocky Linux, а лише з реалізацією пакета вище. +Пам’ятайте, що все це не має нічого спільного з Rocky Linux, а лише з реалізацією пакунка вгору. Якщо ви хочете запустити контейнери Rocky Linux і використовувати `macvlan` для призначення IP-адреси з вашої мережі LAN або WAN, процес буде відрізнятися залежно від версії контейнера операційної системи (8.x або 9.x). @@ -157,7 +157,7 @@ incus exec rockylinux-test-9 dhclient +-------------------+---------+----------------------+------+-----------+-----------+ ``` -Це мало статися з простою зупинкою та запуском контейнера, але цього не відбувається. Припускаючи, що ви хочете щоразу використовувати призначену DHCP IP-адресу, ви можете виправити це за допомогою простого запису crontab. Для цього вам потрібно отримати доступ до контейнера, ввівши: +Це мало статися з простою зупинкою та запуском контейнера, але цього не відбувається. Якщо припустити, що ви хочете щоразу використовувати IP-адресу, призначену DHCP, ви можете виправити це простим записом у crontab. Для цього вам потрібно отримати доступ до контейнера, ввівши: ```bash incus shell rockylinux-test-9 @@ -169,13 +169,13 @@ incus shell rockylinux-test-9 dnf install which ``` -потім запустіть: +А потім запустіть: ```bash which dhclient ``` -який має повернути: +Що поверне: ```bash /usr/sbin/dhclient @@ -193,7 +193,7 @@ crontab -e @reboot /usr/sbin/dhclient ``` -Введена команда crontab використовує _vi_. Щоб зберегти зміни та вийти, використовуйте ++shift+colon+"w"+"q"++. +Введена команда crontab використовує _vi_. Використовуйте ++shift+двокрапка+"w"+"q"++, щоб зберегти зміни та вийти. Вийдіть із контейнера та перезапустіть rockylinux-test-9: @@ -218,7 +218,7 @@ incus restart rockylinux-test-9 ### Rocky Linux 9.x `macvlan` – виправлення статичної IP-адреси -Для статичного призначення IP-адреси все стає ще заплутанішим. Оскільки `network-scripts` тепер застарілий у Rocky Linux 9.x, єдиним способом зробити це є статичне призначення. Оскільки контейнери використовують мережу, ви не зможете встановити маршрут за допомогою звичайного оператора `ip route`. Проблема полягає в тому, що інтерфейсом, призначеним під час застосування профілю `macvlan` (у цьому випадку eth0), не можна керувати за допомогою Network Manager. Виправлення полягає в перейменуванні мережевого інтерфейсу контейнера після перезапуску та призначенні статичної IP-адреси. Ви можете зробити це за допомогою сценарію та запустити (ще раз) у crontab root. Зробіть це за допомогою команди `ip`. +При статичному призначенні IP-адреси все стає ще заплутанішим. Оскільки `network-scripts` тепер застарілий у Rocky Linux 9.x, єдиним способом зробити це є статичне призначення. Оскільки контейнери використовують мережу, ви не зможете встановити маршрут за допомогою звичайного оператора `ip route`. Проблема полягає в тому, що інтерфейсом, призначеним під час застосування профілю `macvlan` (у цьому випадку eth0), не можна керувати за допомогою Network Manager. Виправлення полягає в перейменуванні мережевого інтерфейсу контейнера після перезапуску та призначенні статичної IP-адреси. Ви можете зробити це за допомогою сценарію та запустити (ще раз) у crontab root. Зробіть це за допомогою команди `ip`. Для цього вам потрібно знову отримати доступ оболонки до контейнера: @@ -232,7 +232,7 @@ incus shell rockylinux-test-9 vi /usr/local/sbin/static ``` -Вміст цього сценарію простий: +Зміст цього сценарію не є складним: ```bash #!/usr/bin/env bash @@ -258,7 +258,7 @@ sleep 2 chmod +x /usr/local/sbin/static ``` -Додайте це до root-файлу crontab для контейнера з часом @reboot: +Додайте це до crontab кореневого користувача для контейнера з часом @reboot: ```bash @reboot /usr/local/sbin/static @@ -292,7 +292,7 @@ incus list ## Ubuntu macvlan -На щастя, у реалізації Network Manager в Ubuntu стек `macvlan` НЕ зламано. Це набагато простіше розгорнути! +На щастя, реалізація Network Manager в Ubuntu не порушує стек `macvlan`, що значно полегшує розгортання! Як і у випадку з вашим контейнером rockylinux-test-9, вам потрібно призначити профіль для вашого контейнера: @@ -300,7 +300,7 @@ incus list incus profile assign ubuntu-test default,macvlan ``` -Щоб дізнатися, чи призначає DHCP адресу контейнеру, зупиніть і знову запустіть контейнер: +Щоб дізнатися, чи DHCP призначає адресу контейнеру, зупиніть і знову запустіть контейнер: ```bash incus restart ubuntu-test @@ -320,9 +320,9 @@ incus restart ubuntu-test +-------------------+---------+----------------------+------+-----------+-----------+ ``` -Success! +Успішно! -Налаштування статичної IP-адреси трохи відрізняється, але зовсім не складно. Ви повинні змінити файл `.yaml`, пов’язаний із підключенням контейнера (`10-incus.yaml`). Для цього статичного IP ви будете використовувати 192.168.1.201: +Налаштування статичної IP-адреси трохи відрізняється, але не складно. Ви повинні змінити файл `.yaml`, пов’язаний із підключенням контейнера (`10-incus.yaml`). Для цього статичного IP ви будете використовувати 192.168.1.201: ```bash vi /etc/netplan/10-incus.yaml @@ -342,7 +342,7 @@ network: addresses: [8.8.8.8,8.8.4.4] ``` -Збережіть зміни та вийдіть з контейнера. +Будь ласка, збережіть зміни та залиште контейнер. Перезапустіть контейнер: @@ -365,6 +365,6 @@ incus restart ubuntu-test ``` -Success! +Успішно! У прикладах, які тут використовуються, навмисно було обрано складний контейнер для налаштування та два менш складних. У списку зображень багато інших версій Linux. Якщо у вас є улюблений, спробуйте встановити його, призначити шаблон `macvlan` і налаштувати IP-адреси. diff --git a/docs/books/incus_server/08-snapshots.uk.md b/docs/books/incus_server/08-snapshots.uk.md index 0edfe3e95e..c1834b56b9 100644 --- a/docs/books/incus_server/08-snapshots.uk.md +++ b/docs/books/incus_server/08-snapshots.uk.md @@ -38,7 +38,7 @@ Snapshots: ubuntu-test-1 (taken at 2021/04/29 15:57 UTC) (stateless) ``` -Success! Наш снепшот на місці. +Успішно! Наш снепшот на місці. Тепер перейдіть до контейнера ubuntu-test: diff --git a/docs/books/incus_server/09-snapshot_server.uk.md b/docs/books/incus_server/09-snapshot_server.uk.md index 997f6dda11..4498c106e9 100644 --- a/docs/books/incus_server/09-snapshot_server.uk.md +++ b/docs/books/incus_server/09-snapshot_server.uk.md @@ -11,15 +11,15 @@ tags: У цій главі використовується комбінація привілейованого (root) користувача та непривілейованого (incusadmin) користувача на основі завдань, які ви виконуєте. -Як зазначалося на початку, сервер моментальних знімків Incus повинен усіма можливими способами віддзеркалювати робочий сервер. Причина полягає в тому, що вам може знадобитися перенести його на робочий стан у разі апаратної несправності, а наявність не лише резервних копій, але й швидкого способу запуску робочих контейнерів зводить до мінімуму панічні телефонні дзвінки та текстові повідомлення системних адміністраторів. ЦЕ ЗАВЖДИ ДОБРЕ! +Як зазначалося на початку, сервер моментальних знімків Incus повинен усіма можливими способами віддзеркалювати робочий сервер. Можливо, вам знадобиться перенести його на виробництво, якщо апаратне забезпечення виходить з ладу на вашому основному сервері, а наявність резервних копій і швидкий спосіб перезапуску робочих контейнерів зводить до мінімуму панічні телефонні дзвінки та текстові повідомлення системних адміністраторів. Це ЗАВЖДИ добре! -Таким чином, процес створення snapshot сервера точно схожий на робочий сервер. Щоб повністю імітувати налаштування робочого сервера, повторіть **Розділи 1-4** на сервері знімків і поверніться до цього місця після завершення. +Процес створення сервера моментальних знімків точно схожий на процес створення робочого сервера. Щоб повністю імітувати налаштування робочого сервера, повторіть **Розділи 1-4** на сервері знімків і поверніться до цього місця після завершення. -Ви повернулись!! Вітаємо, це має означати, що ви успішно завершили базову інсталяцію snapshot сервера. +Якщо ви тут, ви завершили базову інсталяцію сервера знімків. ## Налаштування зв’язку між основним і snapshot сервером -Перш ніж продовжити, потрібно трохи прибрати. По-перше, якщо ви працюєте у робочому середовищі, ви, ймовірно, маєте доступ до DNS-сервера, який можна використовувати для налаштування IP-адреси для розпізнавання імен. +Перш ніж продовжити, вам потрібно трохи прибратися. По-перше, якщо ви працюєте у робочому середовищі, ви, ймовірно, маєте доступ до DNS-сервера, щоб налаштувати IP для розпізнавання імен. У вашій лабораторії ви не маєте такої розкоші. Можливо, у вас працює той самий сценарій. З цієї причини ви додасте IP-адреси та імена серверів до файлу `/etc/hosts` на основному сервері та серверах знімків. Ви повинні зробити це як ваш root (або _sudo_) користувач. @@ -36,13 +36,13 @@ tags: firewall-cmd zone=trusted add-source=192.168.1.141 --permanent ``` -а на сервері знімків додайте це правило: +А на сервері знімків додайте це правило: ```bash firewall-cmd zone=trusted add-source=192.168.1.106 --permanent ``` -потім перезавантажте: +Перезавантажте: ```bash firewall-cmd reload @@ -54,13 +54,13 @@ firewall-cmd reload incus remote add incus-snapshot ``` -Це відображає сертифікат, який потрібно прийняти. Прийміть його, і з’явиться запит на введення пароля. Це «пароль довіри», який ви встановили під час кроку ініціалізації Incus. Сподіваємось, ви надійно зберігаєте всі ці паролі. Коли ви введете пароль, ви отримаєте це: +Це відображає сертифікат, який потрібно прийняти. Прийміть його, і з’явиться запит на введення пароля. Це «пароль довіри», який ви встановили під час кроку ініціалізації Incus. Сподіваюся, ви відстежуєте всі ці паролі. Коли ви введете пароль, ви отримаєте це: ```bash Client certificate stored at server: incus-snapshot ``` -Не завадить мати це і в зворотному порядку. Наприклад, довірчі відносини можна встановити на сервері incus-snapshot. За потреби сервер incus-snapshot може надсилати знімки назад на основний сервер incus-primary. Повторіть кроки та замініть "incus-primary" на "incus-snapshot." +Не завадить мати це і навпаки. Наприклад, довірчі відносини можна встановити на сервері incus-snapshot. За потреби сервер incus-snapshot може надсилати знімки назад на основний сервер incus-primary. Повторіть кроки та замініть "incus-primary" на "incus-snapshot." ### Перенесення вашого першого snapshot @@ -72,7 +72,7 @@ Client certificate stored at server: incus-snapshot incus profile copy macvlan incus-snapshot ``` -Коли всі зв’язки та профілі налаштовано, наступним кроком є ​​надсилання знімка з incus-primary до incus-snapshot. Якщо ви точно слідкували за цим, ви, ймовірно, видалили всі свої знімки. Створіть інший знімок: +Коли всі зв’язки та профілі налаштовано, наступним кроком є ​​надсилання знімка з incus-primary до incus-snapshot. Якщо ви суворо дотримувалися цього, ви, ймовірно, видалили всі свої знімки. Створіть інший знімок: ```bash incus snapshot rockylinux-test-9 rockylinux-test-9-snap1 @@ -90,7 +90,7 @@ incus info rockylinux-test-9 rockylinux-test-9-snap1 at 2021/05/13 16:34 UTC) (stateless) ``` -Тож, тримаємо пальці! Давайте спробуємо перенести ваш snapshot: +Спробуйте перенести свій знімок: ```bash incus copy rockylinux-test-9/rockylinux-test-9-snap1 incus-snapshot:rockylinux-test-9 @@ -108,7 +108,7 @@ incus copy rockylinux-test-9/rockylinux-test-9-snap1 incus-snapshot:rockylinux-t +-------------------+---------+------+------+-----------+-----------+ ``` -Success! Спробуйте запустити його. Оскільки ви запускаєте його на сервері incus-snapshot, вам потрібно спершу зупинити його на сервері incus-primary, щоб уникнути конфлікту IP-адрес: +Успішно! Спробуйте запустити його. Оскільки ви запускаєте його на сервері incus-snapshot, вам потрібно спершу зупинити його на сервері incus-primary, щоб уникнути конфлікту IP-адрес: ```bash incus stop rockylinux-test-9 @@ -126,7 +126,7 @@ incus start rockylinux-test-9 Снепшоти, скопійовані в incus-snapshot, не працюватимуть під час міграції, але якщо у вас виникне подія живлення або потрібно перезавантажити сервер через оновлення чи щось інше, у вас виникне проблема. Ці контейнери намагатимуться запуститися на сервері знімків, створюючи потенційний конфлікт IP-адрес. -Щоб усунути це, потрібно налаштувати переміщені контейнери так, щоб вони не запускалися після перезавантаження сервера. Для вашого щойно скопійованого контейнера rockylinux-test-9 ви зробите це за допомогою: +Щоб усунути це, вам потрібно налаштувати перенесені контейнери так, щоб вони не запускалися після перезавантаження сервера. Для вашого щойно скопійованого контейнера rockylinux-test-9 ви зробите це за допомогою: ```bash incus config set rockylinux-test-9 boot.autostart 0 @@ -136,15 +136,15 @@ incus config set rockylinux-test-9 boot.autostart 0 ## Автоматизація snapshot процесу -Чудово, що ви можете створювати миттєві знімки за потреби, а іноді вам _до_ потрібно створити миттєвий знімок вручну. Ви навіть можете скопіювати його в incus-snapshot вручну. Але в інших випадках, особливо для багатьох контейнерів, які працюють на вашому первинному сервері incus, **останнє**, що ви хочете зробити, це витратити півдня на видалення знімків на сервері знімків, створення нових знімків і надсилання їх до сервер знімків. Для основної частини ваших операцій ви захочете автоматизувати процес. +Чудово, що ви можете створювати миттєві знімки за потреби, а іноді вам потрібно створити миттєвий знімок вручну. Ви навіть можете скопіювати його в incus-snapshot вручну. Але в інших випадках, особливо для багатьох контейнерів, які працюють на вашому первинному сервері incus, **останнє**, що ви хочете зробити, це витратити півдня на видалення знімків на сервері знімків, створення нових знімків і надсилання їх до сервер знімків. Для основної частини ваших операцій ви захочете автоматизувати процес. -Перше, що вам потрібно зробити, це запланувати процес автоматизації створення знімка на incus-primary. Ви зробите це для кожного контейнера на сервері incus-primary. Після завершення він подбає про це в майбутньому. Це можна зробити за допомогою наступного синтаксису. Зверніть увагу на схожість із записом crontab для позначки часу: +Вам потрібно буде запланувати процес, щоб автоматизувати створення знімка на incus-primary. Ви зробите це для кожного контейнера на сервері incus-primary. Після завершення він подбає про це в майбутньому. Це можна зробити за допомогою наступного синтаксису. Зверніть увагу на схожість із записом crontab для позначки часу: ```bash incus config set [container_name] snapshots.schedule "50 20 * * *" ``` -Це означає, що щодня о 20:50 робіть знімок назви контейнера. +Це означає: робіть знімок назви контейнера щодня о 20:50. Щоб застосувати це до контейнера rockylinux-test-9: @@ -158,7 +158,7 @@ incus config set rockylinux-test-9 snapshots.schedule "50 20 * * *" incus config set rockylinux-test-9 snapshots.pattern "rockylinux-test-9{{ creation_date|date:'2006-01-02_15-04-05' }}" ``` -ЧУДОВО, але ви точно не хочете отримувати новий знімок щодня, не позбувшись старого, чи не так? Ви б заповнили диск знімками. Щоб виправити це, виконайте: +ЧУДОВО, але ви точно не хочете отримувати новий знімок щодня, не позбувшись старого. Ви б заповнили диск знімками. Щоб виправити це, виконайте наступне: ```bash incus config set rockylinux-test-9 snapshots.expiry 1d diff --git a/docs/desktop/appimage/appimage_pool.uk.md b/docs/desktop/appimage/appimage_pool.uk.md new file mode 100644 index 0000000000..529875ce80 --- /dev/null +++ b/docs/desktop/appimage/appimage_pool.uk.md @@ -0,0 +1,74 @@ +--- +title: Встановлення AppImages за допомогою AppImagePool +author: Joseph Brinkman +contributors: Steven Spencer +--- + +## Вступ + +[AppImagePool](https://github.com/prateekmedia/appimagepool) надає центр для встановлення та керування AppImages. Він візуально схожий на програмне забезпечення. + +## Припущення + +Для цього посібника вам знадобиться наступне: + +- Rocky Linux із встановленим робочим середовищем +- привілеї `sudo` +- Встановленний Flatpak + +## Встановлення AppImagePool + +Встановіть пакет Flatpak для AppImagePool: + +```bash +flatpak install flathub io.github.prateekmedia.appimagepool +``` + +## Дослідження програми запуску AppImage + +Після завершення інсталяції AppImagePool запустіть його та дослідіть доступні AppImage. + +![Launching AppImagePool](images/appimagepool/appimagepool_launch.jpg) + +На момент написання цієї статті існує вісімнадцять доступних категорій: + +1. Utility +2. Network +3. Graphics +4. System +5. Science +6. Others +7. Development +8. Game +9. Education +10. Office +11. Multimedia +12. Audio +13. Emulator +14. Finance +15. Qt +16. Video +17. GTK +18. Sequencer + +Крім того, існує категорія "Explore" для спільного перегляду всіх доступних категорій AppImages. + +## Завантаження AppImage + +Знайдіть AppImage, який ви хочете використовувати: + +![select\_AppImage](images/appimagepool/appimagepool_select.jpg) + +Клацніть на іконку та завантажте його. Через кілька хвилин очікування AppImage буде у вашій системі та готовий до використання! + +![downloaded AppImage](images/appimagepool/appimagepool_download.jpg) + +## Видалення AppImage + +Щоб видалити зображення, клацніть ++"Installed"++ у верхній панелі меню та клацніть піктограму кошика праворуч від AppImage, який потрібно видалити: + +![Remove AppImage](images/appimagepool/appimagepool_remove.jpg) + +## Висновок + +[AppImagePool](https://github.com/prateekmedia/appimagepool) надає простий у користуванні центр для перегляду, завантаження та видалення AppImages. Він схожий на програмний центр і такий же простий у використанні. diff --git a/docs/desktop/display/installing_nvidia_gpu_drivers.uk.md b/docs/desktop/display/installing_nvidia_gpu_drivers.uk.md index 83fe1f58c7..e78cba7490 100644 --- a/docs/desktop/display/installing_nvidia_gpu_drivers.uk.md +++ b/docs/desktop/display/installing_nvidia_gpu_drivers.uk.md @@ -74,7 +74,7 @@ sudo dnf config-manager --add-repo http://developer.download.nvidia.com/compute/ Далі встановіть набір пакетів, необхідних для збирання та встановлення модулів ядра: ```bash -sudo dnf install kernel-headers-$(uname -r) kernel-devel-$(uname -r) tar bzip2 make automake gcc gcc-c++ pciutils elfutils-libelf-devel libglvnd-opengl libglvnd-glx libglv-devel acpid pkgconfig dkms -y +sudo dnf install kernel-headers-$(uname -r) kernel-devel-$(uname -r) tar bzip2 make automake gcc gcc-c++ pciutils elfutils-libelf-devel libglvnd-opengl libglvnd-glx libglvnd-devel acpid pkgconf dkms -y ``` Встановіть найновіший модуль драйвера NVIDIA для вашої системи: @@ -93,7 +93,7 @@ Nouveau — це драйвер NVIDIA з відкритим вихідним к sudo vim /etc/default/grub ``` -Додайте `nouveau.modeset=0` і `rd.driver.blacklist=nouveau` в кінці `GRUB_CMDLINE_LINUX`. +Додайте `nouveau.modeset=0` та `rd.driver.blacklist=nouveau` в кінець `GRUB_CMDLINE_LINUX`. Значення `GRUB_CMDLINE_LINUX` має виглядати подібно до наведеного нижче тексту, хоча воно не буде і не повинно бути точним збігом: diff --git a/docs/desktop/gnome/rdp-server.uk.md b/docs/desktop/gnome/rdp-server.uk.md index d27c5bb036..c4f896aa49 100644 --- a/docs/desktop/gnome/rdp-server.uk.md +++ b/docs/desktop/gnome/rdp-server.uk.md @@ -12,7 +12,9 @@ contributors: Steven Spencer, Ganna Zhyrnova !!! note "Примітка" -За замовчуванням Rocky Linux дозволяє надавати спільний доступ до робочого столу через інший протокол VNC. VNC є достатньо обслуговуваним, але RDP зазвичай пропонує набагато більш плавну роботу та може працювати з дивною роздільною здатністю монітора. +``` +За замовчуванням Rocky Linux дозволяє надавати спільний доступ до робочого столу через інший протокол VNC. VNC досить зручний, але RDP зазвичай пропонує набагато більш плавний досвід і може працювати з дивною роздільною здатністю монітора. +``` ## Припущення diff --git a/docs/desktop/tools/kitty.de.md b/docs/desktop/tools/kitty.de.md new file mode 100644 index 0000000000..3578784424 --- /dev/null +++ b/docs/desktop/tools/kitty.de.md @@ -0,0 +1,70 @@ +--- +title: Installation des Kitty-Terminal-Emulators +author: Alex Zolotarov +contributors: Steven Spencer +tested with: 9 +--- + +## Einleitung + +**Kitty is a blazing fast terminal emulator on steroids**. Alles, was Sie sich vorstellen können, ist in Kitty anpassbar. +Sie können Tab-Verwaltung, Kacheln, Bildvorschauen und viele weitere Optionen direkt in diesem Terminal-Emulator nutzen. +Sie können sogar `tmux` oder einen Fenstermanager durch **Kitty** ersetzen (wenn Sie überwiegend in einem Terminal arbeiten). + +## Voraussetzungen + +- Sie haben eine Rocky Linux-Workstation oder einen Server mit GUI +- Sie sind ein Administrator mit `sudo`-Berechtigungen + +## Kitty — Installation + +\*\*Installieren Sie zuerst das EPEL-Repository (Extra Packages for Enterprise Linux): \*\* + +```bash +dnf install -y epel-release +``` + +Installieren Sie als Nächstes **Kitty**: + +```bash +dnf install -y kitty +``` + +Nach der Installation können Sie `Kitty` starten. + +## Kurze Übersicht + +### Konfigurationsdatei + +Sobald Sie **Kitty** gestartet haben, können Sie die Kitty-Konfigurationsdatei mit ++ctrl+shift+f2++ öffnen. +Sie finden die Konfigurationsdatei auch unter `$HOME/.config/kitty`. + +Dieses Dokument geht nicht näher auf die Konfigurationsdatei selbst ein. Beachten Sie bitte, dass Sie alle Standardverknüpfungen oder alles, was mit der Darstellung zu tun hat, in der Konfiguration ändern können. + +### Registerkarten + +Mit ++ctrl+shift+t++ können Sie eine neue Registerkarte erstellen. + +Sie können eine Registerkarte mit ++ctrl+shift+w++ _oder_ ++ctrl+shift+q++ schließen. + +Sie können Tabs mit ++ctrl+shift+left++ _oder_ ++ctrl+shift+right++ auswählen. + +![kittytabs](./images/kitty_tabs.png) + +### Kacheln + +Drücken Sie ++ctrl+shift+enter++, um einen neuen Bereich oder ein neues Fenster zu öffnen. +Sie können die Tastenkombination mehrmals drücken, um ein Kachel-Layout zu erstellen. + +Sie können das Layout mit ++ctrl+shift+l++ wechseln. + +Sie können Fenster oder Bereiche mit ++ctrl+shift+bracket-left++ oder ++ctrl+shift+bracket-right++ auswählen. +Wenn Sie möchten, können Sie einfach mit der Maus auf den Bereich oder das Fenster klicken. + +![kittytiling](./images/kitty_tilling.png) + +## Zusammenfassung + +Kitty bietet zahlreiche Features ohne zusätzliche Konfiguration. +Wenn Sie auf Ihrer Arbeitsstation bereits einen konfigurierten Fenstermanager, `zsh` oder `tmux`, haben, benötigen Sie Kitty wahrscheinlich nicht. Bedenken Sie, dass Sie `zsh`-Verknüpfungen, `tmux`-Kacheln und viele Fenstermanagerfunktionen in nur einem Terminalemulator kombinieren können. +Wenn Sie jedoch noch keines dieser Power-Tools ausprobiert haben, empfiehlt der **Autor** Ihnen unbedingt, mit Kitty zu versuchen. diff --git a/docs/desktop/tools/kitty.uk.md b/docs/desktop/tools/kitty.uk.md new file mode 100644 index 0000000000..16c9f42bc1 --- /dev/null +++ b/docs/desktop/tools/kitty.uk.md @@ -0,0 +1,70 @@ +--- +title: Встановлення емулятора терміналу Kitty +author: Alex Zolotarov +contributors: Steven Spencer +tested with: 9 +--- + +## Вступ + +**Kitty — неймовірно швидкий емулятор терміналу на стероїдах**, у Kitty можна налаштувати все, що ви можете собі уявити. +Ви можете використовувати керування вкладками, мозаїку, попередній перегляд зображень та багато інших параметрів лише в цьому емуляторі терміналу. +Ви навіть можете замінити `tmux` або навіть менеджер вікон на **Kitty** (якщо ви працюєте здебільшого в терміналі). + +## Припущення + +- У вас є робоча станція або сервер Rocky Linux із графічним інтерфейсом користувача +- Ви адміністратор з привілеями `sudo` + +## Встановлення Kitty + +**Спочатку встановіть репозиторій EPEL (додаткові пакети для Enterprise Linux):** + +```bash +dnf install -y epel-release +``` + +Далі встановіть **Kitty**: + +```bash +dnf install -y kitty +``` + +Після встановлення ви можете запустити Kitty. + +## Короткий огляд + +### Файл конфігурації + +Після запуску **Kitty** ви можете відкрити файл конфігурації Kitty за допомогою ++ctrl+shift+f2++. +Ви також можете знайти файл конфігурації за адресою `$HOME/.config/kitty`. + +Цей документ не збирається заглиблюватися в сам файл конфігурації. Просто знайте, що ви можете змінити будь-які стандартні ярлики або будь-що, пов’язане із зовнішнім виглядом, у конфігурації. + +### Вкладки + +Ви можете створити нову вкладку за допомогою ++ctrl+shift+t++. + +Ви можете закрити вкладку за допомогою ++ctrl+shift+w++ _або_ ++ctrl+shift+q++. + +Ви можете вибирати вкладки за допомогою ++ctrl+shift+left++ _або_ ++ctrl+shift+right++. + +![kittytabs](./images/kitty_tabs.png) + +### Плитка + +Натисніть ++ctrl+shift+enter++, щоб відкрити нову панель або вікно. +Ви можете натиснути її кілька разів, щоб створити мозаїчний макет. + +Ви можете перемикати макети за допомогою ++ctrl+shift+l++. + +Ви можете вибрати вікна чи панелі за допомогою ++ctrl+shift+bracket-left++ або ++ctrl+shift+bracket-right++. +За бажанням ви можете просто клацнути панель або вікно мишею. + +![kittytiling](./images/kitty_tilling.png) + +## Висновок + +Kitty пропонує багато функцій без додаткового налаштування. +Якщо на вашій робочій станції вже налаштовано віконний менеджер, `zsh` або `tmux`, можливо, Kitty вам не потрібна. Візьміть до уваги, що ви можете об’єднати ярлики `zsh`, мозаїку `tmux` і багато функцій віконного менеджера в одному емуляторі терміналу. +Але, якщо ви ще не пробували жодного з цих електроінструментів, **автор** радить вам почати з Кітті. diff --git a/docs/desktop/tools/terminator.uk.md b/docs/desktop/tools/terminator.uk.md new file mode 100644 index 0000000000..e2d0c3a3d9 --- /dev/null +++ b/docs/desktop/tools/terminator.uk.md @@ -0,0 +1,81 @@ +--- +title: Встановлення емулятора терміналу Terminator +author: Andrew Scott +contributors: Steven Spencer, Ganna Zhyrnova +tested with: 9.4 +--- + +## Вступ + +Terminator — це емулятор терміналу на основі терміналу GNOME, який підтримує розширені функції, такі як багато панелей терміналів, групування терміналів і збереження бажаних макетів. + +## Припущення + +- У вас є робоча станція або сервер Rocky Linux із графічним інтерфейсом користувача +- Ви адміністрація з привілеями `sudo` + +## Установка Термінатора + +Terminator знаходиться в репозиторії Extra Packages for Enterprise Linux (EPEL), який недоступний під час нової інсталяції. Отже, спочатку нам потрібно додати EPEL до Rocky Linux. + +- Крок 1 (необов’язково): увімкніть репозиторій CodeReady Builder (CRB). + +```bash +sudo dnf config-manager --set-enabled crb +``` + +Хоча це не обов’язково для Terminator, CRB забезпечує залежності для деяких пакунків у EPEL, тому може бути корисним, якщо ви покладатиметеся на це сховище в майбутньому. + +- Крок 2: Додайте репозиторій EPEL + +```bash +sudo dnf install epel-release -y +``` + +- Крок 3 (необов’язковий, але настійно рекомендований): оновіть систему + +```bash +sudo dnf update -y --refresh +``` + +- Крок 4: Встановіть Terminator + +```bash +sudo dnf install terminator -y +``` + +## Конфігурація + +За замовчуванням Terminator мало чим відрізняється від стандартного терміналу GNOME. Це виглядає _ще більше_ просто, ніж за замовчуванням. + +![Default layout of Terminator](images/terminator-01.png) + +Щоб розпочати налаштування нового терміналу, відкрийте контекстне меню, клацнувши правою кнопкою миші будь-де на тлі. + +![Terminator context menu](images/terminator-02.png) + +У цьому меню ми можемо розділяти вікно, відкривати нові вкладки та перемикати макети. Підменю «Налаштування» також дозволяє налаштувати тему. Можливо, варто витратити трохи часу на ознайомлення з доступними параметрами, оскільки багато параметрів виходять за рамки цього посібника. + +Кілька комбінацій клавіш також доступні для тих, хто вважає за краще не рухати рукою вперед і назад між клавіатурою та мишею. Наприклад, ++shift+ctrl+"O"++ розділить вікно горизонтально на багато терміналів. Додатково підтримується багаторазове розділення вікна та зміна порядку перетягування. + +![Terminator window with 3 split terminals](images/terminator-03.png) + +Нарешті, також може бути корисним налаштування комбінації клавіш для відкриття нового терміналу. Для цього відкрийте меню «Налаштування». Ви можете отримати доступ до меню кількома різними способами, тому для цього посібника ви збираєтеся клацнути правою кнопкою миші на робочому столі та клацнути лівою кнопкою миші «Налаштування». + +![Desktop context menu with "Settings" highlighted](images/terminator-04.png) + +Звідси перейдіть до розділу «Клавіатура» за допомогою меню ліворуч, а потім натисніть «Налаштувати ярлики» внизу. + +![GNOME Settings Keyboard Menu](images/terminator-05.png) + +Якщо ви вперше встановлюєте спеціальний ярлик, ви побачите кнопку під назвою «Додати ярлик». Інакше ви побачите список своїх ярликів зі знаком плюс унизу. Щоб відкрити діалогове вікно «Додати спеціальний ярлик», клацніть той варіант, який підходить для вашої ситуації. У полі _Ім’я_ введіть псевдонім, який легко запам’ятати, для вашого ярлика. У поле _Command_ введіть назву нашої програми: `terminator`. Потім натисніть «Установити ярлик», щоб встановити нову комбінацію клавіш. + +![Add Custom Shortcut dialog](images/terminator-06.png) + +Хоча ++ctrl+alt+"T"++ є традиційним вибором, сміливо вибирайте будь-яку комбінацію, яку ви бажаєте. Ви завжди можете оновити назву швидкого доступу та комбінацію клавіш пізніше. Щоб зберегти свій ярлик, натисніть «Додати» у верхньому правому куті діалогового вікна «Додати спеціальний ярлик». + +![Add Custom Shortcut dialog completed for Terminator](images/terminator-07.png) + +## Висновок + +Terminator — це потужний емулятор терміналу як для звичайних, так і для досвідчених користувачів. Ці приклади представляють лише малу частину можливостей Термінатора. Хоча цей посібник містить огляд кроків встановлення для Rocky Linux, ви можете переглянути [документацію](https://gnome-terminator.readthedocs.io/en/latest/), щоб отримати повне пояснення функцій Terminator. diff --git a/docs/guides/automation/anacron.uk.md b/docs/guides/automation/anacron.uk.md index 5f55a1ec8e..64cf3d6d57 100644 --- a/docs/guides/automation/anacron.uk.md +++ b/docs/guides/automation/anacron.uk.md @@ -5,8 +5,6 @@ contributors: Steven Spencer, Ganna Zhyrnova update: 2021-10-20 --- -# `anacron` - Регулярне виконання команд - ## Передумови - Комп’ютер під керуванням Rocky Linux. @@ -66,7 +64,7 @@ START_HOURS_RANGE=3-22 @monthly 45 cron.monthly nice run-parts /etc/cron.monthly ``` -**/etc/cron.hourly/** - За допомогою `journalctl -u crond.service` ви можете знати, що файли, розміщені всередині, насправді викликаються crond.server, що означає, що команда виконуватиметься після першої хвилини кожної години. Таким чином: +**/etc/cron.hourly/** - За допомогою `journalctl -u crond.service` ви можете знати, що файли, розміщені всередині, насправді викликаються `crond` , що означає, що команда виконуватиметься після першої хвилини кожної години. Таким чином: ```bash shell > cat /etc/cron.d/0hourly diff --git a/docs/guides/automation/cronie.uk.md b/docs/guides/automation/cronie.uk.md index c8e8b7cc1a..099c595ab8 100644 --- a/docs/guides/automation/cronie.uk.md +++ b/docs/guides/automation/cronie.uk.md @@ -5,18 +5,18 @@ contributors: Steven Spencer, Ganna Zhyrnova update: 2021-10-26 --- -# Передумови +## Передумови -* Комп’ютер під керуванням Rocky Linux. -* Вміти використовувати ваш улюблений редактор для зміни файлу конфігурації в середовищі командного рядка (у цій статті використовуватиметься `vi`). -* Ви зрозуміли базові знання про bash, python або інші інструменти створення сценаріїв або програмування та очікуєте автоматичного запуску сценарію. -* Ви підключилися до свого комп’ютера через SSH (це може бути користувач root або звичайний користувач з UID більше 1000). +* Комп’ютер під керуванням Rocky Linux +* Знати, як використовувати ваш улюблений редактор для зміни файлу конфігурації в середовищі командного рядка (у цій статті використовуватиметься `vi`) +* Ви зрозуміли базові знання bash, python або інших сценаріїв або інструментів програмування та очікуєте автоматичного запуску сценарію +* Ви підключилися до свого комп’ютера через SSH (це може бути користувач root або звичайний користувач з UID більше 1000) -## Вступ до cron +## Вступ до `cron` -GNU/Linux надає систему *cron*, яка є програмою завдань `cron` на основі часу для автоматизованих процесів. Це не важко, але досить потужно. Хочете, щоб сценарій або програма запускалися щодня о 17:00? `cron` може це зробити. Існують різні гілки (або варіанти) `cron`, які мають однакові функції. У цьому документі використовується **cronie** та версія 1.5.2. Ви можете натиснути [тут](https://github.com/cronie-crond/cronie), щоб знайти останню версію та журнал оновлення. +GNU/Linux надає систему *cron*, яка є програмою завдань `cron` на основі часу для автоматизованих процесів. Це не важко, але досить потужно. Хочете, щоб сценарій або програма запускалися щодня о 17:00? `cron` може це зробити. Існують різні гілки (або варіанти) `cron`, які мають однакові функції. У цьому документі використовується **cronie**, версія 1.5.2. Ви можете натиснути [тут](https://github.com/cronie-crond/cronie), щоб знайти останню версію та журнал оновлення. -## Опис cron +## Опис `cronie` * **cronie** – назва пакета, Rocky Linux включає cronie за умовчанням; * **crontab** – команда для підтримки `crontab` (розклад завдань) для кожного користувача; @@ -27,7 +27,7 @@ GNU/Linux надає систему *cron*, яка є програмою зав ## Команда `crontab` -`crontab` — це команда, отримана після встановлення пакета cronie. У порівнянні з `anacron` він більше підходить для серверів, які працюють 7\* 24 години на добу. Загальні параметри `crontab`: +`crontab` — це команда, отримана після встановлення пакета cronie. Порівняно з `anacron`, він більше підходить для серверів, які працюють 24 години на 7 днів. Загальні параметри `crontab`: ```bash -e # редагує заплановані завдання crontab @@ -37,7 +37,7 @@ GNU/Linux надає систему *cron*, яка є програмою зав ## Використання cronie -Щоб дозволити різним користувачам виконувати різні команди (або сценарії) у різний час, їх можна записати в цей файл. Однак зазвичай ми більше звикли використовувати `crontab -e`. +Запис команд або сценаріїв у цей файл дозволяє їм запускатися в різний час. Однак зазвичай ми більше звикли використовувати `crontab -e`. ```bash shell > cat /etc/crontab @@ -65,7 +65,7 @@ MAILTO=root У наведеному нижче прикладі, припускаючи, що ви виконуєте цю операцію як користувач root, введіть наступне: -* `crontab -e`, який відкриє тимчасові завдання користувача root. Якщо ви використовуєте `vi` як типовий системний редактор, натисніть клавішу ++i++, щоб увійти в режим вставки. +* `crontab -e` покаже розраховані на час завдання користувача root. Якщо ви використовуєте `vi` як типовий системний редактор, натисніть клавішу ++i++, щоб увійти в режим вставки. * "#" означає, що це рядок коментаря. ```bash @@ -73,7 +73,7 @@ MAILTO=root 00 22 * * * /usr/local/sbin/backup ``` -* Після введення наведеного вище (знову припускаючи, що `vi` є системним редактором), натисніть ++escape++, щоб вийти з режиму вставки. +* Після введення цього рядка (знову припускаючи, що `vi` є системним редактором), натисніть ++escape++, щоб вийти з режиму вставки * Збережіть і закрийте свій файл за допомогою ++shift+colon+"w"+"q"+exclam++ (відображається внизу редактора). Тепер сценарій запускатиметься щовечора о 22:00. Це спрощений приклад. Речі можуть стати складнішими, якщо вам потрібно щось складніше. diff --git a/docs/guides/backup/mirroring_lsyncd.uk.md b/docs/guides/backup/mirroring_lsyncd.uk.md index 29b47ff80c..d2f620a787 100644 --- a/docs/guides/backup/mirroring_lsyncd.uk.md +++ b/docs/guides/backup/mirroring_lsyncd.uk.md @@ -9,64 +9,66 @@ tags: - mirroring --- -# Рішення для дзеркального відображення - `lsyncd` - ## Передумови -Це все, що вам потрібно зрозуміти та дотримуватися цього посібника: - - Комп’ютер під керуванням Rocky Linux - Комфортний рівень зі зміною файлів конфігурації з командного рядка -- Знання того, як користуватися редактором командного рядка (тут ми використовуємо vi, але ви можете використовувати свій улюблений редактор) -- Вам знадобиться root-доступ, і в ідеалі увійдіть як root-користувач у вашому терміналі +- Знання того, як користуватися редактором командного рядка (тут `vi`, але використовуйте свій улюблений редактор) +- Вам потрібен доступ root або привілеї `sudo` (використання `sudo -s` з самого початку є хорошою ідеєю) - Пари відкритих і закритих ключів SSH -- Репозиторії EPEL від Fedora +- Репозиторії EPEL (додаткові пакети для Enterprise Linux) від Fedora - Вам потрібно буде ознайомитися з *inotify*, інтерфейсом монітора подій - Додатково: знайомство з *tail* ## Вступ -Якщо ви шукаєте спосіб автоматичної синхронізації файлів і папок між комп’ютерами, `lsyncd` є чудовим варіантом. Єдиний недолік для новачків? Ви повинні налаштувати все в командному рядку та текстових файлах. +Якщо ви шукаєте спосіб автоматичної синхронізації файлів і папок між комп’ютерами, `lsyncd` — чудовий варіант. Але ви повинні налаштувати все з командного рядка. -Незважаючи на це, це програма, яку варто вивчити будь-якому системному адміністратору. +Це програма, яку варто вивчити будь-якому системному адміністратору. -Найкращий опис `lsyncd` походить з його власної сторінки довідки. Трохи перефразовуючи, `lsyncd` — це легке рішення для живого дзеркала, яке неважко встановити. Він не вимагає нових файлових систем або блокових пристроїв і не перешкоджає продуктивності локальної файлової системи. Коротше кажучи, він відображає файли. +Найкращий опис `lsyncd` міститься на сторінці довідки. Трохи перефразовуючи, `lsyncd` — це легке рішення для живого дзеркала, яке неважко встановити. Він не потребує нових файлових систем або блокових пристроїв і не перешкоджає продуктивності локальної файлової системи. Коротше кажучи, він відображає файли. -`lsyncd` спостерігає за інтерфейсом моніторингу подій локального дерева каталогів (inotify). Він агрегує та комбінує події протягом кількох секунд, а потім породжує один (чи більше) процес(ів) для синхронізації змін. За замовчуванням це `rsync`. +`lsyncd` спостерігає за інтерфейсом моніторингу подій локального дерева каталогів (inotify). Він агрегує та об’єднує події протягом кількох секунд і породжує один (чи більше) процес(ів) для синхронізації змін. За замовчуванням це `rsync`. -Для цілей цього посібника ви називатимете систему з оригінальними файлами «source», а той, з яким ми синхронізуємося, — «target». Насправді можна повністю віддзеркалити сервер за допомогою `lsyncd`, дуже ретельно вказавши каталоги та файли, які ви хочете синхронізувати. Це дуже мило! +У цьому посібнику ви називатимете систему з оригінальними файлами «джерелом»; той, з яким ви синхронізуєтеся, буде «ціллю». Можна повністю віддзеркалити сервер за допомогою `lsyncd`, ретельно вказавши каталоги та файли, які потрібно синхронізувати. -Для віддаленої синхронізації також потрібно налаштувати [пари відкритих закритих ключів Rocky Linux SSH](../security/ssh_public_private_keys.md). У наведених тут прикладах використовується SSH (порт 22). +Ви також захочете налаштувати [пари публічних закритих ключів Rocky Linux SSH](../security/ssh_public_private_keys.md) для віддаленої синхронізації. У наведених тут прикладах використовується SSH (порт 22). ## Встановлення `lsyncd` -Фактично є два способи встановити `lsyncd`. Ми включимо їх обох сюди. RPM, як правило, трохи відстає від вихідних пакетів, але лише трохи. Версія, встановлена методом RPM на момент написання цієї статті, — 2.2.2-9, тоді як версія вихідного коду зараз — 2.2.3. Тим не менш, ми хочемо надати вам обидва варіанти та дозволити вам вибрати. +Встановлення `lsyncd` відбувається двома способами. Включено описи кожного методу. RPM, як правило, трохи відстає від вихідних пакетів, але лише трохи. Версія, встановлена ​​методом RPM на момент написання цієї статті, — 2.2.3-5, тоді як версія вихідного коду зараз — 2.3.1. Виберіть спосіб, який вам зручніше. ## Встановлення `lsyncd` - метод RPM -Встановити версію RPM нескладно. Єдине, що вам потрібно спочатку встановити, це сховище програмного забезпечення EPEL від Fedora. Це можна зробити за допомогою однієї команди: +Встановити версію RPM нескладно. Єдине, що вам потрібно спочатку встановити, це сховище програмного забезпечення EPEL від Fedora. Зробіть це за допомогою: -`dnf install -y epel-release` +```bash +dnf install -y epel-release +``` -Потім нам просто потрібно встановити `lsyncd`, і всі відсутні залежності будуть встановлені разом з ним: +Тепер встановіть `lsyncd` разом із усіма відсутніми залежностями: -`dnf install lsyncd` +```bash +dnf install lsyncd +``` Налаштуйте службу на запуск під час завантаження, але поки не запускайте її: -`systemctl enable lsyncd` - -Все! +```bash +systemctl enable lsyncd +``` ## Встановлення `lsyncd` - вихідний метод -Встановлення з вихідного коду не таке погане, як здається. Просто дотримуйтеся цього посібника, і ви швидко почнете працювати! +Встановлення з вихідного коду не складний процес. -### Встановити залежності +### Встановлення залежностей -Нам знадобляться деякі залежності: кілька, які необхідні самому `lsyncd`, і кілька, які потрібні для створення пакунків із вихідного коду. Використовуйте цю команду на своєму комп’ютері Rocky Linux, щоб переконатися, що у вас є потрібні залежності. Якщо ви збираєтеся створювати з вихідного коду, було б гарною ідеєю встановити всі інструменти розробки: +Вам знадобляться деякі залежності для `lsyncd` і для створення пакунків із джерела. Використовуйте цю команду на своєму комп’ютері Rocky Linux, щоб переконатися, що у вас є потрібні залежності. Якщо ви збираєтеся створювати з вихідного коду, було б гарною ідеєю встановити всі інструменти розробки: -`dnf groupinstall 'Development Tools'` +```bash +dnf groupinstall 'Development Tools' +``` !!! warning "Для Rocky Linux 9.0" @@ -77,35 +79,45 @@ tags: ``` - Зробивши це в 9 перед наступними кроками, ви зможете завершити збірку без повернення назад. + Виконання цих дев’яти кроків перед наступними дозволить вам завершити збірку без повернення назад. -А ось залежності, які нам потрібні для самого `lsyncd` і процесу його збирання: +Ось залежності, необхідні для `lsyncd`: -`dnf install lua lua-libs lua-devel cmake unzip wget rsync` +```bash +dnf install lua lua-libs lua-devel cmake unzip wget rsync +``` ### Завантажте `lsyncd` і зберіть його -Далі нам знадобиться вихідний код: +Далі вам знадобиться вихідний код: -`wget https://github.com/axkibe/lsyncd/archive/master.zip` +```bash +wget https://github.com/axkibe/lsyncd/archive/master.zip +``` -Тепер розпакуйте файл master.zip: +Розпакуйте файл `master.zip`: `unzip master.zip` -Це створить каталог під назвою «lsyncd-master». Нам потрібно перейти до цього каталогу та створити каталог під назвою build: +Це створить каталог під назвою «lsyncd-master». Вам потрібно перейти до цього каталогу та створити каталог під назвою build: -`cd lsyncd-master` +```bash +cd lsyncd-master +``` І потім: -`mkdir build` +```bash +mkdir build +``` -Тепер знову змініть каталоги щоб опинитися в каталозі збірки: +Змініть каталоги, щоб отримати доступ до каталогу збірки: -`cd build` +```bash +cd build +``` -Тепер виконайте ці команди: +Виконайте ці команди: ```bash cmake .. @@ -113,21 +125,23 @@ make make install ``` -Після завершення ви матимете двійковий файл `lsyncd`, який буде встановлено та готовий до використання в */usr/local/bin* +Після завершення двійковий файл `lsyncd` буде встановлено та готовий до використання в */usr/local/bin* ### `lsyncd` Служба Systemd -За допомогою методу встановлення RPM служба systemd буде встановлена для вас, але якщо ви виберете встановлення з джерела, вам потрібно буде створити службу systemd. Хоча ви можете запустити двійковий файл без служби systemd, ми хочемо переконатися, що він *запускається* під час завантаження. Якщо ні, перезавантаження сервера призведе до зупинки синхронізації. Якщо ви забули запустити його знову, що дуже ймовірно, це буде проблемою для будь-якого системного адміністратора! +За допомогою методу встановлення RPM служба systemd встановиться за вас, але якщо ви встановлюєте з джерела, вам потрібно буде створити службу systemd. Хоча ви можете запустити двійковий файл без служби systemd, ви хочете переконатися, що він *справді* запускається під час завантаження. Якщо ні, перезавантаження сервера припинить вашу синхронізацію. Якщо ви забудете знову запустити його вручну, це буде проблема! -Однак створити службу systemd не дуже складно, і це заощадить ваш час у довгостроковій перспективі. +Створення служби systemd не є складним і заощадить ваш час у довгостроковій перспективі. #### Створіть службовий файл `lsyncd` -Цей файл можна створити будь-де, навіть у кореневому каталозі вашого сервера. Після створення ви можете перемістити його в потрібне місце. +Створіть цей файл будь-де, навіть у кореневому каталозі вашого сервера. Після створення ви можете перемістити його в потрібне місце. -`vi /root/lsyncd.service` +```bash +vi /root/lsyncd.service` +``` -Вміст цього файлу має бути таким: +Вміст цього файлу буде: ```bash [Unit] @@ -146,19 +160,23 @@ PIDFile=/run/lsyncd.pid WantedBy=multi-user.target ``` -Тепер давайте встановимо щойно створений файл у правильне розташування: +Встановіть щойно створений файл у правильне розташування: -`install -Dm0644 /root/lsyncd.service /usr/lib/systemd/system/lsyncd.service` +```bash +install -Dm0644 /root/lsyncd.service /usr/lib/systemd/system/lsyncd.service +``` Нарешті, перезавантажте демон `systemctl`, щоб systemd «бачила» новий службовий файл: -`systemctl daemon-reload` +```bash +systemctl daemon-reload +``` ## Конфігурація `lsyncd` -Незалежно від того, який метод встановлення `lsyncd` ви виберете, вам знадобиться файл конфігурації: */etc/lsyncd.conf*. Наступний розділ розповість вам, як створити файл конфігурації та протестувати його. +Для будь-якого методу встановлення `lsyncd` вам знадобиться файл конфігурації: */etc/lsyncd.conf*. У наступному розділі описано, як створити та перевірити файл конфігурації. -## Зразок конфігурації для тестування +### Зразок конфігурації для тестування Ось приклад спрощеного файлу конфігурації, який синхронізує */home* з іншим комп’ютером. Наш цільовий комп’ютер матиме локальну IP-адресу: *192.168.1.40* @@ -191,24 +209,26 @@ sync { - `logfile` і `statusFile` будуть створені автоматично під час запуску служби. - `statusInterval` - це кількість секунд, яку необхідно зачекати перед записом у файл statusFile. -- `maxProcesses` — це кількість процесів, які `lsyncd` дозволено створювати. Чесно кажучи, якщо ви не використовуєте це на дуже завантаженому комп’ютері, достатньо 1 процесу. -- У розділі синхронізації `default.rsyncssh` зазначено, що потрібно використовувати rsync через SSH +- `maxProcesses` — це кількість процесів, які `lsyncd` дозволено створювати. Якщо ви не використовуєте це на завантаженому комп’ютері, достатньо 1 процесу. +- У розділі синхронізації `default.rsyncssh` говорить про використання `rsync` через SSH - `source=` - це шлях до каталогу, з якого ми синхронізуємо. -- The `host=` - це наш цільовий комп'ютер, з яким ми синхронізуємо. +- `host=` - це наш цільовий комп'ютер, з яким ми синхронізуємо - `excludeFrom=` повідомляє `lsyncd`, де знаходиться файл виключень. Він повинен існувати, але може бути порожнім. - `targetdir=` - це цільовий каталог, до якого ми надсилаємо файли. У більшості випадків це буде відповідати джерелу, але не завжди. - Потім у нас є розділ `rsync =`, і це параметри, з якими ми запускаємо rsync. -- Нарешті, у нас є розділ `ssh =`, у якому вказано порт SSH, який прослуховує цільовий комп’ютер. +- Розділ `ssh =` вказує порт SSH, який прослуховує цільовий комп’ютер -Якщо ви додаєте більше одного каталогу для синхронізації, вам потрібно повторити весь розділ «синхронізації», включаючи всі відкриваючі та закриваючі дужки для кожного каталогу. +Якщо ви додаєте більше ніж один каталог для синхронізації, ви повинні повторити весь розділ «синхронізації», включаючи всі відкриваючі та закриваючі дужки для кожного каталогу. ## Файл lsyncd.exclude -Як зазначалося раніше, файл `excludeFrom` повинен існувати, тому давайте створимо його зараз: +Як зазначалося раніше, файл `excludeFrom` має існувати. Створіть це зараз: -`touch /etc/lsyncd.exclude` +```bash +touch /etc/lsyncd.exclude +``` -Якщо ви синхронізуєте папку `/etc` на нашому комп’ютері, вам слід виключити багато файлів і каталогів. Кожен виключений файл або каталог перелічено у файлі, по одному на рядок, ось так: +Як приклад, якщо ви синхронізуєте папку `/etc` на нашому комп’ютері, у процесі `lsyncd` буде багато файлів і каталогів, які ви хочете виключити. Кожен виключений файл або каталог знаходиться у файлі, по одному на рядок: ```bash /etc/hostname @@ -217,42 +237,47 @@ sync { /etc/fstab ``` -## Перевірте та поверніться +## Перевірка -Тепер, коли все інше налаштовано, ви можете все перевірити. Для початку давайте переконаємося, що наш systemd lsyncd.service запуститься: +Коли все налаштовано, ви можете перевірити все. Переконайтеся, що наш systemd `lsyncd.service` запуститься: -`systemctl start lsyncd` +```bash +systemctl start lsyncd +``` Якщо після виконання цієї команди не з’являється жодних помилок, перевірте статус служби: -`systemctl status lsyncd` +```bash +systemctl status lsyncd +``` Якщо він показує, що служба працює, використовуйте tail, щоб побачити кінці двох файлів журналу, і переконайтеся, що все відображається нормально: -`tail /var/log/lsyncd.log` - -І потім: - -`tail /var/log/lsyncd-status.log` - -Якщо припустити, що все виглядає правильно, перейдіть до каталогу `/home/[user]`, де `[user]` є користувачем комп’ютера, і створіть там новий файл за допомогою *touch*. +```bash +tail /var/log/lsyncd.log +tail /var/log/lsyncd-status.log +``` -`touch /home/[user]/testfile` +Якщо припустити, що все виглядає правильно, перейдіть до каталогу `/home/[user]`, де `[user]` є користувачем комп’ютера, і створіть там файл із *touch*. -Тепер перейдіть до цільового комп’ютера та подивіться, чи з’являється файл. Якщо так, то все працює як треба. Налаштуйте lsyncd.service на запуск під час завантаження з: +```bash +touch /home/[user]/testfile +``` -`systemctl enable lsyncd` +Перейдіть на цільовий комп’ютер і подивіться, чи з’явився файл. Якщо так, то все працює. Налаштуйте `lsyncd.service` для запуску під час завантаження з: -І ви готові йти. +```bash +systemctl enable lsyncd +``` -## Пам'ятайте, що потрібно бути обережним +## Пам'ятайте про обережність -Щоразу, коли ви синхронізуєте набір файлів або каталогів з іншим комп’ютером, уважно подумайте про вплив, який це матиме на цільовий комп’ютер. Якщо ви повернетеся до **Файлу lsyncd.exclude** у нашому прикладі вище, чи можете ви уявити, що може статися, якщо */etc/fstab* синхронізувати? +Кожного разу, коли ви синхронізуєте набір файлів або каталогів з іншим комп’ютером, враховуйте вплив на цільовий комп’ютер. Якщо ви повернетеся до **Файлу lsyncd.exclude** у нашому прикладі вище, чи можете ви уявити, що могло б статися, якби ви не змогли виключити */etc/fstab*? -Для новачків *fstab* — це файл, який використовується для налаштування накопичувачів на будь-якому комп’ютері Linux. Диски та етикетки майже напевно відрізняються. Наступного разу, коли цільовий комп’ютер буде перезавантажено, він, швидше за все, не зможе повністю завантажитися. +`fstab` — це файл, який використовується для налаштування накопичувачів на будь-якому комп’ютері Linux. Диски та етикетки майже напевно відрізняються на різних машинах. Наступне перезавантаження цільового комп’ютера, ймовірно, не вдасться. -## Висновки та посилання +## Висновки та література -`lsyncd` — потужний інструмент для синхронізації каталогів між комп’ютерами. Як ви бачили, його неважко встановити, і його нескладно підтримувати в подальшому. Ви не можете просити більше, ніж це. +`lsyncd` — потужний інструмент для синхронізації каталогів між комп’ютерами. Як ви бачили, його неважко встановити та нескладно обслуговувати надалі. Ви можете дізнатися більше про `lsyncd`, відвідавши [Офіційний сайт](https://github.com/axkibe/lsyncd)