ubuntu2600kをNASにする

ワクチンの副反応で発熱し、数日ダウンしていました。ようやく復帰です。

HDDも枯渇したので順次Swarを動かしていたPCを止め、キャッシュ用の2TB HDDをプロット保管用に転用しています。今日のターゲットは廊下収納の奥底にあるCore i7-2600kです。ごちゃごちゃすぎてやる気がなかなか起きませんでした。

まずは整理から。先日中古で購入したらHDDマウント用ネジがついてなかったHDDRACK5を使います。

同じのを2つ持っているのでニコイチします。端子側の2つのネジは純正のマウント用ネジ。後ろの2つは適当なネジを浮かせて取り付けます。

ロック機構は手前2つだけマウント用ネジをつかっていればしっかり固定されるのでなんとかなりそう。

もう1台のHDDRACK5はCore i7-7700Kマシンについていました。2TBx4でプロット保管するだけのために起動しっぱなしでしたが、流石に効率悪いのでシャットダウンさせました。お疲れ様。

ubuntu2600kにはHGST2TBx4をSATA接続(裏においてあるのでよくみえない)し、余っていたSAS9211-8iとHDDRACK5のうち1棟(seagate2TBx4)をブレイクアウトケーブルでつなぎました。もう1棟はUSB変換をつけてTP01に接続しています。UPSの左側に新たにATX電源を置いたので、ubuntu2600kをシャットダウンしても他のUSB機器に影響はでなくなりました。

SASコネクタ

SASのエンクロージャーとかバックプレーンでSASとSATA両方対応しているっていう製品を見て謎に思っていたことがあります。

SATAとSASはコネクタが違います。ではエンクロージャーについてるのはどっちのコネクタ?両対応なら変更できるの!?

変換コネクタをかませればいい?でもそうすると厚みが変わってしまうからエンクロージャーに収まらなくなるのでは・・・などと。

実際試してみたらSASのSFF-8482はSATAディスクにささりました。なるほど両対応!!!!

てことはですよ、はじめからブレイクアウトケーブルはSFF-8482のものを買っておけば潰しが効きますね。さすがSAS奥が深い。

そんなこと知らなかったものだから、普通のSATAのブレイクアウトケーブルも買ってしまいました。失敗したなぁ。

結局それでSFF-8482が足りなくて配送待ちです。7/1にポチったのにまだ届かんのよ。

ubuntu2600kの設定

以下備忘録。自分のために設定を変更した手順を記載しておきます。方針は、HGST2TBx4はZFS(RAID0)にしてプロット保管用に、Core i7-7700Kから移植したSeagate2TBx4はひとまずそのままNTFSでマウントして共有ドライブにする。

久しぶりに触るのでまずは
sudo apt update
sudo apt upgrade

IPアドレス確認
ip a

MTU確認
ip link show | grep mtu
MTU1500、そういえばこれはジャンボフレーム設定は毎回手動でやってたっけ…

毎回手動でジャンボフレーム設定する場合
sudo ip link set enp2s0 mtu 9000

面倒くさいので固定にする。IF確認。
nmcli d
ens2s0 有線接続 2と判明

ジャンボフレーム固定設定
sudo nmcli connection modify '有線接続 2' 802-3-eth.mtu 9000
sudo nmcli con up '有線接続 2'

確認
ip link show | grep mtu
sudo cat /etc/NetworkManager/system-connections/'有線接続 2.nmconnection'

ドライブ名確認
sudo lshw -short | grep disk

[code]
hyperbanana@ubuntu2600k:~$ sudo lshw -short | grep disk
/0/8/0.0.0 /dev/sda disk 64GB C300-CTFDDAC064M
/0/9/0.0.0 /dev/sdb disk 2TB HGST HUS724020AL
/0/a/0.0.0 /dev/sdc disk 2TB HGST HUS724020AL
/0/b/0.0.0 /dev/sdd disk 2TB HGST HUS724020AL
/0/c/0.0.0 /dev/sde disk 2TB HGST HUS724020AL
/0/d/0.0.0 /dev/sdf disk 2TB ST2000NM0011
/0/d/0.1.0 /dev/sdg disk 2TB ST2000NM0033-9ZM
/0/d/0.2.0 /dev/sdh disk 2TB ST2000NM0033-9ZM
/0/d/0.3.0 /dev/sdi disk 2TB ST2000NM0011
hyperbanana@ubuntu2600k:~$
[/code]

マウントポイント作成
sudo mkdir /mnt/SG2TB-1
sudo mkdir /mnt/SG2TB-2
sudo mkdir /mnt/SG2TB-3
sudo mkdir /mnt/SG2TB-4

マウント
sudo mount -t ntfs /dev/sdf1 /mnt/SG2TB-1

したらなんかエラーでて読み込み専用になっちゃった。

一旦アンマウント
sudo umount /mnt/SG2TB-1

フィックスしないとだめらしい
sudo ntfsfix /dev/sdf1
sudo ntfsfix /dev/sdg1
sudo ntfsfix /dev/sdh1
sudo ntfsfix /dev/sdi1

マウント
sudo mount -t ntfs /dev/sdf1 /mnt/SG2TB-1
これでマウントできたが、オーナーパーミッションなどを変更することができず、root777のまま。どうやらnfts-3gでマウントすればいいらしい。せっかくだからfstabに書いちゃおう。

UUID調査
sudo blkid /dev/sdf1
sudo blkid /dev/sdg1
sudo blkid /dev/sdh1
sudo blkid /dev/sdi1

[code]
hyperbanana@ubuntu2600k:~$ sudo blkid /dev/sdf1
/dev/sdf1: LABEL="SEAGATE4" UUID="AC7A021F7A01E744" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="76905b85-574b-4633-a5cc-c50b66572219"
hyperbanana@ubuntu2600k:~$
hyperbanana@ubuntu2600k:~$ sudo blkid /dev/sdg1
/dev/sdg1: LABEL="SEAGATE1" UUID="C2D2C5B7D2C5B049" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="f91b4f52-980a-4b5f-abd0-bf83c056e59f"
hyperbanana@ubuntu2600k:~$
hyperbanana@ubuntu2600k:~$ sudo blkid /dev/sdh1
/dev/sdh1: LABEL="SEAGATE2" UUID="1E84CFC784CF9F9F" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="6e3bd71b-0205-4850-9703-40d8af8bfcd2"
hyperbanana@ubuntu2600k:~$
hyperbanana@ubuntu2600k:~$ sudo blkid /dev/sdi1
/dev/sdi1: LABEL="SEAGATE3" UUID="38E655E9E655A7C0" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="c48fb268-94de-4461-967a-718e630b79ee"
hyperbanana@ubuntu2600k:~$
[/code]

vimをインストール
sudo apt install vim

fstabを開く
sudo vi /etc/fstab
末尾に以下を追記。

[code]
UUID=AC7A021F7A01E744 /mnt/SG2TB-1 ntfs-3g auto,nosuid,nodev,nofail,x-gvfs-show,users,permissions 0 0
UUID=C2D2C5B7D2C5B049 /mnt/SG2TB-2 ntfs-3g auto,nosuid,nodev,nofail,x-gvfs-show,users,permissions 0 0
UUID=1E84CFC784CF9F9F /mnt/SG2TB-3 ntfs-3g auto,nosuid,nodev,nofail,x-gvfs-show,users,permissions 0 0
UUID=38E655E9E655A7C0 /mnt/SG2TB-4 ntfs-3g auto,nosuid,nodev,nofail,x-gvfs-show,users,permissions 0 0
[/code]

マウント
sudo mount -a

オーナー変更
sudo chown -R hyperbanana:hyperbanana /mnt/SG2TB-1
sudo chown -R hyperbanana:hyperbanana /mnt/SG2TB-2
sudo chown -R hyperbanana:hyperbanana /mnt/SG2TB-3
sudo chown -R hyperbanana:hyperbanana /mnt/SG2TB-4

ファイルのパーミッションを644、ディレクトリを755に一括変更
find /mnt/SG2TB-1 -type d -exec chmod 755 {} \;
find /mnt/SG2TB-1 -type f -exec chmod 644 {} \;
find /mnt/SG2TB-2 -type d -exec chmod 755 {} \;
find /mnt/SG2TB-2 -type f -exec chmod 644 {} \;
find /mnt/SG2TB-3 -type d -exec chmod 755 {} \;
find /mnt/SG2TB-3 -type f -exec chmod 644 {} \;
find /mnt/SG2TB-4 -type d -exec chmod 755 {} \;
find /mnt/SG2TB-4 -type f -exec chmod 644 {} \;

ZFSインストール
sudo apt install zfsutils-linux

HGST2TBx4をRAID0にする。-fで強制フォーマット、-mでマウントポイント指定
sudo zpool create -f -m /mnt/hgst2tb hgst2tb /dev/sdb /dev/sdc /dev/sdd /dev/sde

確認
zpool status
zpool list
df -hT | grep zfs
zfs get mountpoint

オーナー変更
sudo chown hyperbanana:hyperbanana /mnt/hgst2tb

SMBインストール
sudo apt install samba

設定
sudo vi /etc/samba/smb.conf

[code]
[global]
#文字コード設定追記
dos charset = CP932
unix charset = UTF-8

#ゲストを許可しないのでコメントアウトして1行追記
#map to guest = bad user
security = user

#printer関連はいらないので全部コメントアウト

[hgst2tb]
#共有パス
path = /mnt/hgst2tb
#書き込み許可
writable = yes
#ゲストを許可しない
guest ok = no
#hyperbananaグループのみアクセス許可
valid users = @hyperbanana
#ファイル作成時のパーミッション
create mode = 0644
#ディレクトリ作成時のパーミッション
directory mode = 0755
#親ディレクトリのパーミッションを継承
#inherit permissions = yes
#これを設定しちゃうとファイルのパーミッションが644にならなかったので無しで…

[SG2TB-1]
path = /mnt/SG2TB-1
writable = yes
guest ok = no
valid users = @hyperbanana
create mode = 0644
directory mode = 0755
#inherit permissions = yes

[SG2TB-2]
path = /mnt/SG2TB-2
writable = yes
guest ok = no
valid users = @hyperbanana
create mode = 0644
directory mode = 0755
#inherit permissions = yes

[SG2TB-3]
path = /mnt/SG2TB-3
writable = yes
guest ok = no
valid users = @hyperbanana
create mode = 0644
directory mode = 0755
#inherit permissions = yes

[SG2TB-4]
path = /mnt/SG2TB-4
writable = yes
guest ok = no
valid users = @hyperbanana
create mode = 0644
directory mode = 0755
#inherit permissions = yes
[/code]

パスワード設定
sudo smbpasswd -a hyperbanana

設定反映
sudo systemctl restart smbd

SMB自動起動設定
sudo systemctl enable smbd

これでubuntu NASの完成です。

hgst2tbはからっぽなのでportable plotを作って入れる。SG2TB-1~4はOG Plotが入っているのでhpool-minerに登録。hgst2tb(容量8TB)が埋まったら今度はSG2TBx4を消してRAID0にして同じようにportable plot作って入れる感じになる予定。

最近のチア農場

しばらくあいちゃったのでアレですが…現状こんな感じです。

OG Plot (hpool) 256.08 TiB
Portable Plot (Space pool) 6.235 TiB