mirror of
https://github.com/Dannecron/netology-devops.git
synced 2025-12-25 23:32:37 +03:00
fix all homeworks in 03-sysadmin
This commit is contained in:
@@ -3,7 +3,9 @@
|
||||
|
||||
## Q/A
|
||||
|
||||
1. Разряженные файлы
|
||||
### Задача 1
|
||||
|
||||
> Разряженные файлы
|
||||
|
||||
Суть таких файлов в том, чтобы разделить реальные данные последовательностью нуль-символов (`\x00`), которые не занимают реального места на физическом носителе.
|
||||
При этом сами данные записываются на разных фрагментах на физическом диске.
|
||||
@@ -12,12 +14,16 @@
|
||||
Это позволяет сделать запись туда, где доступно 1-2KB (например, после удаления другого файла),
|
||||
но куда оригинальный файл целиком не поместится.
|
||||
|
||||
2. Могут ли файлы, являющиеся жесткой ссылкой на один объект, иметь разные права доступа и владельца? Почему?
|
||||
### Задача 2
|
||||
|
||||
> Могут ли файлы, являющиеся жесткой ссылкой на один объект, иметь разные права доступа и владельца? Почему?
|
||||
|
||||
Не могут. Причина в том, что жёсткие ссылки всегда ссылаются на одну `Inode` (идентификатор объекта файла внутри ОС).
|
||||
То есть, все файлы, которые имеют одну `Inode` будут синхронизированы по: содержимому, правам доступа и другим мета-данным.
|
||||
|
||||
3. Реконфигурация виртуальной машины
|
||||
### Задача 3
|
||||
|
||||
> Реконфигурация виртуальной машины
|
||||
|
||||
В текущую конфигурацию [`vagrant`](/src/vagrant/Vagrantfile) добавлена конфигурация дисков:
|
||||
|
||||
@@ -40,7 +46,9 @@ lvm_experiments_disk0.vmdk
|
||||
lvm_experiments_disk1.vmdk
|
||||
```
|
||||
|
||||
4. Используя `fdisk`, разбейте первый диск на 2 раздела: 2 Гб, оставшееся пространство.
|
||||
### Задача 4
|
||||
|
||||
> Используя `fdisk`, разбейте первый диск на 2 раздела: 2 Гб, оставшееся пространство.
|
||||
|
||||
Найдём диски, которые были подключены на предыдущем шаге
|
||||
|
||||
@@ -116,7 +124,9 @@ Device Start End Sectors Size Type
|
||||
/dev/sdb2 4196352 5242846 1046495 511M Linux filesystem
|
||||
```
|
||||
|
||||
5. Используя `sfdisk`, перенесите данную таблицу разделов на второй диск.
|
||||
### Задача 5
|
||||
|
||||
> Используя `sfdisk`, перенесите данную таблицу разделов на второй диск.
|
||||
|
||||
Перенесём таблицу разделов с `/dev/sdb` на `/dev/sdc`.
|
||||
|
||||
@@ -174,7 +184,9 @@ Device Start End Sectors Size Type
|
||||
/dev/sdc2 4196352 5242846 1046495 511M Linux filesystem
|
||||
```
|
||||
|
||||
6. Соберите `mdadm` `RAID1` на паре разделов 2 Гб.
|
||||
### Задача 6
|
||||
|
||||
> Соберите `mdadm` `RAID1` на паре разделов 2 Гб.
|
||||
|
||||
Разделы, которые необходимо объединить в `RAID1`: `/dev/sdb1` и `/dev/sdc1`.
|
||||
|
||||
@@ -184,7 +196,9 @@ mdadm: Defaulting to version 1.2 metadata
|
||||
mdadm: array /dev/md0 started.
|
||||
```
|
||||
|
||||
7. Соберите `mdadm` `RAID0` на второй паре маленьких разделов
|
||||
### Задача 7
|
||||
|
||||
> Соберите `mdadm` `RAID0` на второй паре маленьких разделов
|
||||
|
||||
Разделы, которые необходимо объединить в `RAID0`: `/dev/sdb2` и `/dev/sdc2`.
|
||||
|
||||
@@ -194,7 +208,9 @@ mdadm: Defaulting to version 1.2 metadata
|
||||
mdadm: array /dev/md1 started.
|
||||
```
|
||||
|
||||
8. Создайте 2 независимых PV на получившихся md-устройствах
|
||||
### Задача 8
|
||||
|
||||
> Создайте 2 независимых PV на получившихся md-устройствах
|
||||
|
||||
```shell
|
||||
sudo pvcreate /dev/md0
|
||||
@@ -228,7 +244,9 @@ sudo pvdisplay
|
||||
PV UUID PB8hEQ-bZGA-M6Xe-tOQV-1CAb-DRSf-syoUSA
|
||||
```
|
||||
|
||||
9. Создайте общую volume-group на этих двух PV.
|
||||
### Задача 9
|
||||
|
||||
> Создайте общую volume-group на этих двух PV.
|
||||
|
||||
```shell
|
||||
sudo vgcreate test_vg /dev/md0 /dev/md1
|
||||
@@ -257,7 +275,9 @@ sudo vgdisplay
|
||||
VG UUID 7xcN3Z-o9Ca-iXl2-5eao-iA4e-cEVJ-YgSajr
|
||||
```
|
||||
|
||||
10. Создайте LV размером 100 Мб, указав его расположение на PV с `RAID0`.
|
||||
### Задача 10
|
||||
|
||||
> Создайте LV размером 100 Мб, указав его расположение на PV с `RAID0`.
|
||||
|
||||
```shell
|
||||
sudo lvcreate --size=100MB test_vg /dev/md1
|
||||
@@ -282,7 +302,9 @@ sudo lvdisplay
|
||||
Block device 253:1
|
||||
```
|
||||
|
||||
11. Создайте `mkfs.ext4` ФС на получившемся `LV`
|
||||
### Задача 11
|
||||
|
||||
> Создайте `mkfs.ext4` ФС на получившемся `LV`
|
||||
|
||||
```shell
|
||||
sudo mkfs.ext4 /dev/test_vg/lvol0
|
||||
@@ -295,14 +317,18 @@ Creating journal (1024 blocks): done
|
||||
Writing superblocks and filesystem accounting information: done
|
||||
```
|
||||
|
||||
12. Смонтируйте этот раздел в любую директорию.
|
||||
### Задача 12
|
||||
|
||||
> Смонтируйте этот раздел в любую директорию.
|
||||
|
||||
```shell
|
||||
mkdir /tmp/new
|
||||
sudo mount /dev/test_vg/lvol0 /tmp/new
|
||||
```
|
||||
|
||||
13. Поместите туда тестовый файл.
|
||||
### Задача 13
|
||||
|
||||
> Поместите туда тестовый файл.
|
||||
|
||||
```shell
|
||||
sudo wget https://mirror.yandex.ru/ubuntu/ls-lR.gz -O /tmp/new/test.gz
|
||||
@@ -317,7 +343,9 @@ Saving to: ‘/tmp/new/test.gz’
|
||||
2022-03-02 03:04:09 (9.33 MB/s) - ‘/tmp/new/test.gz’ saved [22388361/22388361]
|
||||
```
|
||||
|
||||
14. Прикрепите вывод `lsblk`.
|
||||
### Задача 14
|
||||
|
||||
> Прикрепите вывод `lsblk`.
|
||||
|
||||
```shell
|
||||
sudo lsblk
|
||||
@@ -347,7 +375,9 @@ sdc 8:32 0 2.5G 0 disk
|
||||
└─test_vg-lvol0 253:1 0 100M 0 lvm /tmp/new
|
||||
```
|
||||
|
||||
15. Протестируйте целостность файла
|
||||
### Задача 15
|
||||
|
||||
> Протестируйте целостность файла
|
||||
|
||||
```shell
|
||||
sudo gzip -t /tmp/new/test.gz
|
||||
@@ -356,7 +386,9 @@ echo $?
|
||||
0
|
||||
```
|
||||
|
||||
16. Используя `pvmove`, переместите содержимое PV с `RAID0` на `RAID1`.
|
||||
### Задача 16
|
||||
|
||||
> Используя `pvmove`, переместите содержимое PV с `RAID0` на `RAID1`.
|
||||
|
||||
```shell
|
||||
sudo pvmove /dev/md1 /dev/md0
|
||||
@@ -364,14 +396,18 @@ sudo pvmove /dev/md1 /dev/md0
|
||||
/dev/md1: Moved: 100.00%
|
||||
```
|
||||
|
||||
17. Сделайте `--fail` на устройство в вашем `RAID1` md.
|
||||
### Задача 17
|
||||
|
||||
> Сделайте `--fail` на устройство в вашем `RAID1` md.
|
||||
|
||||
```shell
|
||||
sudo mdadm --fail /dev/md0 /dev/sdb1
|
||||
mdadm: set /dev/sdb1 faulty in /dev/md0
|
||||
```
|
||||
|
||||
18. Подтвердите выводом `dmesg`, что `RAID1` работает в деградированном состоянии
|
||||
### Задача 18
|
||||
|
||||
> Подтвердите выводом `dmesg`, что `RAID1` работает в деградированном состоянии
|
||||
|
||||
```shell
|
||||
sudo dmesg | tail -n 5
|
||||
@@ -382,7 +418,9 @@ sudo dmesg | tail -n 5
|
||||
md/raid1:md0: Operation continuing on 1 devices.
|
||||
```
|
||||
|
||||
19. Протестируйте целостность файла, несмотря на "сбойный" диск он должен продолжать быть доступен
|
||||
### Задача 19
|
||||
|
||||
> Протестируйте целостность файла, несмотря на "сбойный" диск он должен продолжать быть доступен
|
||||
|
||||
```shell
|
||||
sudo gzip -t /tmp/new/test.gz
|
||||
|
||||
Reference in New Issue
Block a user