CentOS7にsambaをインストールして外付けHDDをNAS化する

# はじめに
WindowsやMacからファイルを読み書きできるように、CentOS7上にsambaをインストールしたいと思います。

# 条件
- 外付けHDDは自動マウントするよう設定する

# Do it!
## CentOS7に外付けHDDをマウントする

まずは外付けHDDを接続してデバイスを確認します。
（rootで実施しましょう）

```
# parted -l

モデル: BUFFALO External HDD (scsi)
ディスク /dev/sdb: 3001GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: gpt
ディスクフラグ: 

番号  開始    終了    サイズ  ファイルシステム  名前                  フラグ
 1    20.5kB  210MB   210MB   fat32             EFI System Partition  boot
 2    210MB   3000GB  3000GB  hfs+              Share HD
```

認識されていますね。
今回使用したHDDはMacで使用していたため、HFS+でフォーマットされています。
一旦パーティションテーブルを削除して一から作り直したいので、ちょっと強引ですがddコマンドでバッサリ消します。

```
# dd if=/dev/zero of=/dev/sdb bs=512 count=1
```

あとは、partedコマンドでパーティションを作成します。

```
# parted
GNU Parted 3.1
/dev/sda を使用
GNU Parted へようこそ！ コマンド一覧を見るには 'help' と入力してください。
(parted) select /dev/sdb
/dev/sdb を使用
(parted) mklabel gpt                                                      
(parted) mkpart                                                           
パーティションの名前?  []?                                                
ファイルシステムの種類?  [ext2]? xfs                                      
開始? 1                                                                   
終了? 100%                                                                
(parted) p                                                                
モデル: BUFFALO External HDD (scsi)
ディスク /dev/sdb: 3001GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: gpt
ディスクフラグ: 

番号  開始    終了    サイズ  ファイルシステム  名前  フラグ
 1    1049kB  3001GB  3001GB

(parted) quit                                                             
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。
```

XFSでフォーマットします。

```
# mkfs.xfs /dev/sdb1
```

マウントしてみます。

```
# mkdir /nas
# mount /dev/sdb1 /nas
```

マウントできているか確認します。

```
# mount

/dev/sdb1 on /nas type xfs (rw,relatime,attr2,inode64,noquota)
```

できていますね！
アンマウントしてみます。

```
# umount /dev/sdb1
```

さて、NASとして使いたいドライブなので常時（再起動時）マウントする設定をしておきます。
blkidコマンドでHDDのUUIDを調べます。

```
# blkid

/dev/sdb1: UUID="5262fb43-9bc8-4274-8a8d-991967729b35" TYPE="xfs" PARTUUID="e0d30066-bfb3-422a-83d3-2bb527030265"
```

fstabファイルに追記しましょう。

```
# vi /etc/fstab

# /etc/fstab
# Created by anaconda on Thu Feb 16 20:48:14 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/cl-root     /                       xfs     defaults        0 0
UUID=33ca97db-d5f9-44b2-a5d4-d7ec562def94 /boot                   xfs     defaults        0 0
UUID=17E3-775E          /boot/efi               vfat    umask=0077,shortname=winnt 0 0
/dev/mapper/cl-home     /home                   xfs     defaults        0 0
/dev/mapper/cl-swap     swap                    swap    defaults        0 0
UUID=5262fb43-9bc8-4274-8a8d-991967729b35 /nas  xfs     defaults        0 0
```
(最終行を追加しました)

再起動してマウントされているか確認します。

```
# reboot
```

## sambaをインストールする

yumコマンドでサクッとインストールしちゃいます。

```
# yum -y install samba
```

設定を変更していきます。

```
# vi /etc/samba/smb.conf

[global]
security = user
unix charset = UTF-8
dos charset = CP932

[Share HD]
path = /nas
browseable = Yes
writable = Yes
read only = No
force create mode = 0666
create mask = 0666
force directory mode = 0777
directory mask = 0777
```

pdbeditコマンドでユーザーを追加します。

```
# pdbedit -a Shinya
```

サービスを自動起動ON＆開始します。

```
# systemctl enable smb
# systemctl start smb
# systemctl enable nmb
# systemctl start nmb
```

## 動作確認する

Windowsの場合は、¥¥192.168.0.10、Macの場合は、smb://192.168.0.10で接続できることを確認します。