add lab3
BIN
labs/lab3/assets/34.png
Normal file
|
After Width: | Height: | Size: 43 KiB |
BIN
labs/lab3/assets/35.png
Normal file
|
After Width: | Height: | Size: 102 KiB |
BIN
labs/lab3/assets/36.png
Normal file
|
After Width: | Height: | Size: 166 KiB |
BIN
labs/lab3/assets/37.png
Normal file
|
After Width: | Height: | Size: 74 KiB |
BIN
labs/lab3/assets/38.png
Normal file
|
After Width: | Height: | Size: 124 KiB |
BIN
labs/lab3/assets/39.png
Normal file
|
After Width: | Height: | Size: 68 KiB |
BIN
labs/lab3/assets/40.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
labs/lab3/assets/41.png
Normal file
|
After Width: | Height: | Size: 220 KiB |
BIN
labs/lab3/assets/42.png
Normal file
|
After Width: | Height: | Size: 262 KiB |
BIN
labs/lab3/assets/43.png
Normal file
|
After Width: | Height: | Size: 244 KiB |
BIN
labs/lab3/assets/44.png
Normal file
|
After Width: | Height: | Size: 74 KiB |
BIN
labs/lab3/assets/45.png
Normal file
|
After Width: | Height: | Size: 113 KiB |
BIN
labs/lab3/assets/46.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
labs/lab3/assets/47.png
Normal file
|
After Width: | Height: | Size: 57 KiB |
BIN
labs/lab3/assets/48.png
Normal file
|
After Width: | Height: | Size: 73 KiB |
BIN
labs/lab3/assets/49.png
Normal file
|
After Width: | Height: | Size: 139 KiB |
BIN
labs/lab3/assets/50.png
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
labs/lab3/assets/51.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
labs/lab3/assets/52.png
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
labs/lab3/assets/53.png
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
labs/lab3/assets/54.png
Normal file
|
After Width: | Height: | Size: 120 KiB |
BIN
labs/lab3/assets/55.png
Normal file
|
After Width: | Height: | Size: 100 KiB |
BIN
labs/lab3/assets/56.png
Normal file
|
After Width: | Height: | Size: 45 KiB |
BIN
labs/lab3/assets/57.png
Normal file
|
After Width: | Height: | Size: 119 KiB |
BIN
labs/lab3/assets/58.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
labs/lab3/assets/59.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
labs/lab3/assets/60.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
labs/lab3/assets/61.png
Normal file
|
After Width: | Height: | Size: 211 KiB |
BIN
labs/lab3/assets/62.png
Normal file
|
After Width: | Height: | Size: 76 KiB |
BIN
labs/lab3/assets/63.png
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
labs/lab3/assets/64.png
Normal file
|
After Width: | Height: | Size: 96 KiB |
BIN
labs/lab3/assets/65.png
Normal file
|
After Width: | Height: | Size: 5.1 KiB |
BIN
labs/lab3/assets/66.png
Normal file
|
After Width: | Height: | Size: 101 KiB |
BIN
labs/lab3/assets/67.png
Normal file
|
After Width: | Height: | Size: 51 KiB |
BIN
labs/lab3/assets/68.png
Normal file
|
After Width: | Height: | Size: 225 KiB |
BIN
labs/lab3/assets/69.png
Normal file
|
After Width: | Height: | Size: 51 KiB |
BIN
labs/lab3/assets/70.png
Normal file
|
After Width: | Height: | Size: 31 KiB |
BIN
labs/lab3/assets/71.png
Normal file
|
After Width: | Height: | Size: 29 KiB |
@@ -200,12 +200,207 @@ done
|
||||
#align(center)[#image("assets/32.png")]
|
||||
#align(center)[#image("assets/33.png")]
|
||||
|
||||
Добавил оставшиеся диски в новую VG `gr02`:
|
||||
|
||||
#align(center)[#image("assets/34.png")]
|
||||
|
||||
Создал зеркальный том `vol02` в этой группе.
|
||||
|
||||
#align(center)[#image("assets/35.png")]
|
||||
|
||||
Создал файловую систему `ext4`:
|
||||
|
||||
#align(center)[#image("assets/36.png")]
|
||||
|
||||
Смонтировал том:
|
||||
|
||||
#align(center)[#image("assets/37.png")]
|
||||
|
||||
=== Часть 5. Управление монтированием дисков.
|
||||
|
||||
Я создал каталог для монтирования и получил UUID фс на зеркальном томе:
|
||||
|
||||
#align(center)[#image("assets/38.png")]
|
||||
|
||||
Затем, в файл `/etc/fstab` я добавил строку:
|
||||
|
||||
```
|
||||
UUID=94897d69-fcbf-49a7-beb1-732d8062bd0c /nfs ext4 defaults 0 2
|
||||
```
|
||||
|
||||
Проверим работоспособность:
|
||||
|
||||
#align(center)[#image("assets/39.png")]
|
||||
#align(center)[#image("assets/40.png")]
|
||||
#align(center)[#image("assets/41.png")]
|
||||
|
||||
=== Часть 6. Работа с NFS.
|
||||
|
||||
На машине `c7-2` установил службу `nfs-kernel-server`, разрешил запуск и запустил её:
|
||||
|
||||
#align(center)[#image("assets/42.png")]
|
||||
|
||||
Я разрешил доступ к каталогу `\nfs` через сеть:
|
||||
|
||||
#align(center)[#image("assets/43.png")]
|
||||
#align(center)[#image("assets/44.png")]
|
||||
|
||||
C `c7-1` осуществил монтирование сетевого ресурса `nfs` в каталог `/var/remotenfs`.
|
||||
|
||||
#align(center)[#image("assets/45.png")]
|
||||
#align(center)[#image("assets/46.png")]
|
||||
#align(center)[#image("assets/47.png")]
|
||||
#align(center)[#image("assets/48.png")]
|
||||
|
||||
=== Часть 7. Работа с RAID в Linux.
|
||||
|
||||
На машину `c7-1` я добавил 3 жестких диска по 1гб.
|
||||
|
||||
#align(center)[#image("assets/49.png")]
|
||||
|
||||
Затем создал `RAID-5` массив:
|
||||
|
||||
#align(center)[#image("assets/50.png")]
|
||||
#align(center)[#image("assets/51.png")]
|
||||
|
||||
Сохранил конфигурацию RAID, чтобы массив поднимался автоматически при загрузке:
|
||||
|
||||
#align(center)[#image("assets/52.png")]
|
||||
|
||||
Обновил `initramfs`:
|
||||
|
||||
#align(center)[#image("assets/53.png")]
|
||||
#align(center)[#image("assets/54.png")]
|
||||
|
||||
Я создал файловую систему `ext4` на RAID массиве:
|
||||
|
||||
#align(center)[#image("assets/55.png")]
|
||||
|
||||
Затем я создал каталог и смонтировал массив:
|
||||
|
||||
#align(center)[#image("assets/56.png")]
|
||||
#align(center)[#image("assets/57.png")]
|
||||
#align(center)[#image("assets/58.png")]
|
||||
|
||||
Положил в RAID каталог тестовый файл:
|
||||
|
||||
#align(center)[#image("assets/59.png")]
|
||||
|
||||
Определил доступный объем:
|
||||
|
||||
#align(center)[#image("assets/60.png")]
|
||||
|
||||
Затем я удалил диск `sdc`.
|
||||
|
||||
#align(center)[#image("assets/61.png")]
|
||||
|
||||
Добавил новый диск:
|
||||
|
||||
#align(center)[#image("assets/62.png")]
|
||||
#align(center)[#image("assets/63.png")]
|
||||
|
||||
#align(center)[#image("assets/64.png")]
|
||||
#align(center)[#image("assets/65.png")]
|
||||
#align(center)[#image("assets/66.png")]
|
||||
|
||||
=== Часть 8. Получение информации и изменение файловой системы.
|
||||
|
||||
Нашел корневой раздел:
|
||||
|
||||
#align(center)[#image("assets/67.png")]
|
||||
#align(center)[#image("assets/68.png")]
|
||||
#align(center)[#image("assets/69.png")]
|
||||
|
||||
Включил использование зарезервированных `inode`:
|
||||
|
||||
#align(center)[#image("assets/70.png")]
|
||||
#align(center)[#image("assets/71.png")]
|
||||
|
||||
=== Ответы на вопросы:
|
||||
|
||||
*Как вы увеличили раздел в части 3? Какие команды использовали. В чем состояла суть выполненных действий?*
|
||||
|
||||
Я использовал утилиту `fdisk`, чтобы удалить старый раздел и создать новый, занимающий весь диск:
|
||||
|
||||
```bash
|
||||
sudo fdisk /dev/vdb
|
||||
```
|
||||
|
||||
После этого заново создал раздел. Затем обновил файловую систему:
|
||||
|
||||
```bash
|
||||
sudo resize2fs /dev/vdb1
|
||||
```
|
||||
|
||||
Физически размер раздела увеличился, и командой `resize2fs` файловая система была расширена, чтобы занять всё доступное место на диске.
|
||||
|
||||
*Почему отличается процедура увеличения раздела в частях 3 и 4? Почему в случае LVM не пришлось отмонтировать раздел?*
|
||||
|
||||
В LVM файловая система расположена не на "жёстком" разделе, а на логическом томе, который можно динамически изменять.
|
||||
LVM поддерживает online resize, то есть позволяет расширять том, пока он смонтирован:
|
||||
|
||||
```bash
|
||||
sudo lvextend -l +100%FREE /dev/gr01/vol01
|
||||
sudo resize2fs /dev/gr01/vol01
|
||||
```
|
||||
|
||||
Это возможно, потому что LVM управляет логическими блоками и абстрагирует файловую систему от физического устройства.
|
||||
В обычном случае (fdisk) нужно отмонтировать, так как изменяются реальные границы раздела.
|
||||
|
||||
*Как можно ограничить доступ через сеть к данным в каталоге NFS сервера?*
|
||||
|
||||
Ограничение доступа делается через файл `/etc/exports`, где указывается, какие IP-адреса или подсети могут монтировать каталог и с какими правами.
|
||||
Пример:
|
||||
|
||||
```bash
|
||||
/nfs 192.168.122.0/24(rw,sync,no_root_squash)
|
||||
```
|
||||
|
||||
Здесь доступ разрешён только хостам из подсети `192.168.122.0/24`, с правом записи (`rw`).
|
||||
|
||||
*В чем разница архитектуры NAS и DAS?*
|
||||
|
||||
#table(columns: 3)[*Параметр*][*NAS*][*DAS*][Подключение][Через сеть (TCP/IP, NFS, SMB)][Непосредственно к серверу (SATA, SAS, USB)][Доступ][Несколько клиентов][Один конкретный сервер][Масштабирование][Легко масштабируется][Ограничено локальными портами][Пример][Synology, TrueNAS][Внутренний HDD или SSD]
|
||||
|
||||
Главное отличие: NAS — это сетевое хранилище, DAS — локально подключённый диск.
|
||||
|
||||
*В части 4 п.7 вы создали зеркальный том. От каких рисков потери данных это защищает? От каких — не защищает?*
|
||||
|
||||
Защищает:
|
||||
|
||||
- от отказа одного физического диска;
|
||||
- от ошибок чтения/записи на отдельном носителе.
|
||||
|
||||
Не защищает:
|
||||
|
||||
- от случайного удаления файлов;
|
||||
- от вирусов и логических ошибок;
|
||||
- от выхода из строя контроллера или потери всей группы дисков одновременно.
|
||||
|
||||
*В части 7 вы смогли запустить RAID-массив с потерей диска. Откуда взялись данные?*
|
||||
|
||||
RAID-5 хранит не только данные, но и чётность (parity), распределённую по всем дискам.
|
||||
При потере одного диска оставшиеся два содержат достаточно информации, чтобы восстановить недостающие блоки "а лету".
|
||||
То есть данные не хранились "копией", а восстанавливались математически через XOR из чётности и оставшихся данных.
|
||||
|
||||
*Почему невозможно записать файлы, если свободное место есть, права есть и раздел смонтирован для записи?*
|
||||
|
||||
На файловых системах типа `ext4` часть блоков зарезервирована для суперпользователя (обычно 5%).
|
||||
Если все “пользовательские” блоки заняты, обычный пользователь не сможет записывать файлы,
|
||||
хотя `df` будет показывать, что немного места ещё "есть".
|
||||
Проверить можно:
|
||||
|
||||
```bash
|
||||
sudo tune2fs -l /dev/sdX | grep 'Reserved block count'
|
||||
```
|
||||
|
||||
Также возможны другие причины:
|
||||
|
||||
- переполнены inode (слишком много мелких файлов);
|
||||
- раздел смонтирован в режиме read-only после ошибки (`dmesg` покажет).
|
||||
|
||||
=== Вывод:
|
||||
|
||||
В ходе лабораторной работы я освоил основные операции с подсистемой хранения данных в Linux: создание и изменение разделов, работу с файловыми системами и LVM, настройку сетевого хранилища NFS и организацию RAID-массивов.
|
||||
На практике были изучены принципы расширения разделов и томов, монтирование файловых систем, создание зеркальных и распределённых хранилищ, а также восстановление RAID после отказа диска.
|
||||
Получены навыки администрирования хранилищ и управления доступом к ним.
|
||||
|
||||