<===

ProNotes

2025-09-21 16:44:34
Установка и настройка ZFS на Manjaro требует нескольких шагов, так как ZFS не включена по умолчанию в ядро Linux из-за лицензионных ограничений (CDDL против GPL). Однако Manjaro предоставляет удобный способ установить ZFS через AUR (Arch User Repository). Вот пошаговая инструкция:

### 1. **Обновите систему**
Убедитесь, что ваша система Manjaro полностью обновлена, чтобы избежать проблем с зависимостями.

```bash
sudo pacman -Syu
```

### 2. **Установите необходимые инструменты для AUR**
Для работы с AUR вам понадобится установленный пакет `yay` или другой AUR-хелпер. Если он не установлен, выполните:

```bash
sudo pacman -S base-devel git
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
```

### 3. **Установите ZFS**
ZFS в Manjaro доступен через AUR. Вы можете установить пакеты `zfs-dkms` (для автоматической сборки модуля ядра) или `zfs-linux` (для конкретной версии ядра).

#### Вариант 1: Установка `zfs-dkms` (рекомендуется для автоматической поддержки новых ядер)
```bash
yay -S zfs-dkms
```

- `zfs-dkms` автоматически компилирует модуль ZFS для текущего ядра при его обновлении.
- Убедитесь, что у вас установлены заголовки ядра:
  ```bash
  sudo pacman -S linux$(uname -r | grep -o '[0-9]*\.[0-9]*')-headers
  ```
  Например, для ядра 6.6: `sudo pacman -S linux66-headers`.

#### Вариант 2: Установка `zfs-linux` (для конкретного ядра)
Если вы не хотите использовать DKMS, установите пакет, соответствующий вашему ядру:
```bash
yay -S zfs-linux
```
- Этот вариант проще, но требует ручной переустановки при обновлении ядра.

### 4. **Загрузите модуль ZFS**
После установки проверьте, загружен ли модуль ZFS:

```bash
sudo modprobe zfs
```

Чтобы убедиться, что модуль загружен, выполните:
```bash
lsmod | grep zfs
```

Если модуль не загружается автоматически, добавьте его в автозагрузку:
```bash
echo zfs | sudo tee /etc/modules-load.d/zfs.conf
```

### 5. **Установите утилиты ZFS**
Утилиты для работы с ZFS (например, `zpool` и `zfs`) устанавливаются вместе с `zfs-dkms` или `zfs-linux`. Проверьте их наличие:
```bash
zfs version
zpool version
```

Если утилиты не установлены, установите их:
```bash
yay -S zfs-utils
```

### 6. **Создайте пул ZFS**
Теперь вы можете создать пул ZFS на вашем диске. **Внимание**: Все данные на диске будут уничтожены, поэтому сделайте резервную копию.

1. Определите диски для пула:
   ```bash
   lsblk
   ```
   Найдите нужный диск (например, `/dev/sdb`).

2. Создайте пул ZFS (например, пул с именем `tank`):
   ```bash
   sudo zpool create -f tank /dev/sdb
   ```
   - `-f` принудительно создает пул, игнорируя предупреждения.
   - Для зеркалирования (RAID-1) используйте: `sudo zpool create -f tank mirror /dev/sdb /dev/sdc`.

3. Проверьте статус пула:
   ```bash
   zpool status
   ```

### 7. **Создайте файловую систему ZFS**
Создайте файловую систему внутри пула:
```bash
sudo zfs create tank/data
```

Установите точку монтирования:
```bash
sudo zfs set mountpoint=/mnt/data tank/data
```

Проверьте, смонтирована ли файловая система:
```bash
zfs list
```

### 8. **Настройте автоматический импорт пула**
Чтобы пул автоматически импортировался при загрузке:
```bash
sudo systemctl enable zfs-import-cache
sudo systemctl enable zfs-mount
sudo systemctl enable zfs-zed
```

### 9. **Дополнительные настройки**
- **Включите компрессию** для экономии места:
  ```bash
  sudo zfs set compression=lz4 tank/data
  ```
- **Создайте снимок** для резервного копирования:
  ```bash
  sudo zfs snapshot tank/data@initial
  ```

### 10. **Проверка и мониторинг**
- Периодически проверяйте состояние пула:
  ```bash
  zpool status
  ```
- Запустите проверку (scrub) для выявления ошибок:
  ```bash
  sudo zpool scrub tank
  ```

### 11. **Решение возможных проблем**
- **Ошибка сборки модуля**: Если `zfs-dkms` не компилируется, проверьте, что установлены все зависимости (`dkms`, `linux-headers`).
- **Конфликты с ядром**: Если вы обновляете ядро, убедитесь, что `zfs-dkms` пересобирает модуль, или используйте `zfs-linux` для конкретного ядра.
- **Производительность**: ZFS требует минимум 4 ГБ ОЗУ, а для дедупликации — 8 ГБ и более.

### Примечания
- **Резервное копирование**: Перед настройкой ZFS убедитесь, что важные данные сохранены.
- **AUR**: Установка из AUR может занять время, так как пакеты компилируются из исходников.
- **Документация**: Ознакомьтесь с официальной документацией ZFS на сайте OpenZFS или в `man zfs` и `man zpool`.
← Previous Next →
Back to list