Tonysan’s blog

ほぼ自分のための Tips 集


刺され!

ZFS

前提は NAS なので、 ZFS で、RAID-Z を構築する。

OpenZFS インストール

sudo apt install zfsutils-linux

zfs pool 作成

まずディスクの確認。

ls -lA /dev/disk/by-id/
ata-ST4000DM004-2CV104_******H8
ata-ST4000DM004-2CV104_******VS
ata-ST4000DM004-2CV104_******LT

一部マスクしてます。
で、この情報を下に raidz pool を作成。
慣例にならって pool 名を tank にしています。

zpool create tank raidz /dev/disk/by-id/ata-ST4000DM004-2CV104_******H8 /dev/disk/by-id/ata-ST4000DM004-2CV104_******VS /dev/disk/by-id/ata-ST4000DM004-2CV104_******LT

オプション

タイムスタンプ機能を off。圧縮機能をデフォルト設定で ON。ついでに 一ヶ月に一回の Scrub を設定。

sudo zfs set atime=off tank
sudo zfs set compression=zstd tank
sudo systemctl enable zfs-scrub-monthly@tank.timer

データセット作成

サブフォルダーというか、samba 共有したいフォルダを作成。

sudo zfs create tank/media
sudo zfs create tank/iso
sudo zfs create tank/backup

samba 共有

zfs 自体に共有機能があって、それを設定してもよいが、一元管理したいので、/etc/samba/smb.conf に設定を追加する。

$ sudo nano /etc/samba/smb.conf
  :
  :
#共有するフォルダと共有の情報を追加
[media]
   comment = Ubuntu22.04
   path = /tank/media
   writable = yes
   guest ok = no
   force create mode = 0775
   force directory mode = 0775

[iso]
   comment = Ubuntu22.04
   path = /tank/iso
   writable = yes
   guest ok = no
   force create mode = 0775
   force directory mode = 0775

[backup]
   comment = Ubuntu22.04
   path = /tank/backup
   writable = yes
   guest ok = no
   force create mode = 0775
   force directory mode = 0775

samba を再起動して設定を反映する。

sudo systemctl restart smbd