🍣
Vmware ESXiを使って自宅Serverを立ててみた(NAS構築)
概要
前回からの続きです。
今回は外付けUSBHDDを2台使用して、SMBでNASを構築しました。
(1台は家族で使用、もう1台はプライベート用途です)
OSがUbuntuなのと、RDMを使用して構築したのは何となくです。
よくよく考えたら、RDMを使うよりUSBをパススルーして認識させた方が手順的にも遥かに楽な気が。。。パフォーマンスもそこまで求めないし。。。
ESXi上からUSB接続のHDDを見えるようにする。(RDM)
HDDはあらかじめ、exFatでフォーマット。NTFSだとESXiが検出できなかった。
また、検出するにはESXiのSSHで以下のコマンドを使用してゲストOSへのパススルーを停止する必要がある。(USB接続はデフォルトだとゲストOSにパススルー設定らしい)
/etc/init.d/usbarbitrator stop
残りの手順は以下のサイトを参考にした
ubuntuのインストール
仮想マシンの設定
先ほど追加したRDMのHDDは、ハードディスクの追加→既存のハードディスクで追加する。
コントローラーはSATAを選択した。(SCSIだとなぜかゲストOS上から見えない)
セキュアブートは無効にする。
ubuntuのインストール
言語設定
キーボードのレイアウト設定
インストールタイプ選択
固定IP設定
APT のデータ取得先変更
ストレージの設定
サーバー名とユーザーの設定
SSH設定
インストールパッケージの選択
インストール完了
インストール後の設定
以下を参考に必要と思われる個所のみ実施
sudo apt -y update # update
sudo timedatectl set-timezone Asia/Tokyo # set timezone
#Language setting
export LANG=ja_JP.UTF-8
export LC_ALL=ja_JP.UTF-8
export LANGUAGE=ja_JP.UTF-8
sudo sed -i 's/# ja_JP.UTF-8 UTF-8/ja_JP.UTF-8 UTF-8/g' /etc/locale.gen
sudo locale-gen
sudo update-locale LANG=ja_JP.UTF-8
sudo dpkg-reconfigure -f noninteractive locales
sudo /usr/sbin/update-locale LANG=$LANG LC_ALL=$LANG
外付けUSBHDDの設定
接続したHDDが認識されているかチェック。
(※今回、3TBと2TBの外付けHDDを接続している。)
sudo fdisk -l
Disk /dev/sdb: 2.73 TiB, 3000558944256 bytes, 5860466688 sectors
Disk model: VMware Virtual S
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: A190DBD2-36C8-4217-B5C3-344180D56974
Device Start End Sectors Size Type
/dev/sdb1 2048 5860464639 5860462592 2.7T Microsoft basic data
Disk /dev/sdc: 1.82 TiB, 2000365289472 bytes, 3906963456 sectors
Disk model: VMware Virtual S
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 0D0D34DF-7BE3-4638-8651-F9AFDDEF0B9F
Device Start End Sectors Size Type
/dev/sdc1 2048 3906959359 3906957312 1.8T Microsoft basic data
ext4で再フォーマットする。
sudo mkfs -t ext4 /dev/sdb1
sudo mkfs -t ext4 /dev/sdc1
マウントする
sudo mkdir /mnt/usb_hdd01
sudo mkdir /mnt/usb_hdd02
sudo mount -t ext4 /dev/sdb1 /mnt/usb_hdd01
sudo mount -t ext4 /dev/sdc1 /mnt/usb_hdd02
#アクセス権変更(後からSMBで共有するため)
sudo chmod 0777 /mnt/usb_hdd01
sudo chmod 0777 /mnt/usb_hdd01
自動マウント
sudo blkid /dev/sdb1
/dev/sdb1: UUID="f224cdd0-d38a-4155-9df6-57f6bedb99ce" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="06f2441a-3642-4043-a0f5-1b6a317a82ae"
sudo blkid /dev/sdc1
/dev/sdc1: UUID="57cb195d-03d0-4b47-bf98-fbb7866468c4" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="c94e4d4a-ee4e-4f5d-994e-c47c2440a70e"
sudo vi /etc/fstab
#一番下に以下を追記。
UUID=f224cdd0-d38a-4155-9df6-57f6bedb99ce /mnt/usb_hdd01 ext4 defaults 0 1
UUID=57cb195d-03d0-4b47-bf98-fbb7866468c4 /mnt/usb_hdd02 ext4 defaults 0 1
SMBのインストールと設定
SMBインストール
sudo apt -y install samba
ユーザー設定
sudo groupadd SMBNasAccessibleUsers
sudo useradd NasAccessUser
sudo passwd NasAccessUser
sudo usermod -aG SMBNasAccessibleUsers NasAccessUser
sudo groupadd SMBPrivateNasAccessibleUsers
sudo useradd PrivateNasAccessUser
sudo sudo passwd PrivateNasAccessUser
sudo usermod -aG SMBPrivateNasAccessibleUsers PrivateNasAccessUser
sudo pdbedit -a NasAccessUser #SMBのユーザーとして追加
sudo pdbedit -a PrivateNasAccessUser
sudo vi /etc/samba/smb.conf
#追加([global])
unix charset = UTF-8
dos charset = CP932
mangled names = no
vfs objects = catia
catia:mappings = 0x22:0xa8,0x2a:0xa4,0x2f:0xf8,0x3a:0xf7,0x3c:0xab,0x3e:0xbb,0x3f:0xbf,0x5c:0xff,0x7c:0xa6
interfaces = 127.0.0.0/8 192.168.1.0/24
[nas]
comment = public nas
path = /mnt/usb_hdd01
public = yes
writable = yes
only guest = yes
directory mask = 0777
create mask = 0777
valid users = @SMBNasAccessibleUsers
[private_nas]
comment = private nas
path = /mnt/usb_hdd02
public = yes
writable = yes
only guest = yes
directory mask = 0777
create mask = 0777
valid users = @SMBPrivateNasAccessibleUsers
SMB再起動、起動時に自動実行設定
sudo systemctl restart smbd nmbd
sudo systemctl enable smbd nmbd
Windows10から接続確認
Discussion