RockyLinuxでファイルサーバーを作りたい。
RockyLinuxでファイルサーバーを構築する方法を纏めたい。
ファイルサーバーって便利だからね。
実行環境
- Linux (私はRockyLinux8.5をインスコした実機)
- Windows10 (私はOSビルド19043(21H1)の実機)
CentOSとかAlmaLinuxとかRHEL系なら今回の手順でいけると思います。
ファイルサーバーを作る!!
早速だがファイルサーバーを作っていこう。
-
共有ディレクトリを作成する。
作成済みのディレクトリを共有したい場合はスキップ$ mkdir ${任意の共有ディレクトリ名}
-
共有ディレクトリの権限を設定する。
$ chmod 777 /home/${ユーザーディレクトリ名}/${任意の共有ディレクトリ名}/
-
samba
をインストールする。# samba インストール $ sudo dnf install samba -y
-
samba
を自動起動設定&起動する。# smb 自動起動設定&起動 $ sudo systemctl enable smb --now # nmb 自動起動設定&起動 $ sudo systemctl enable nmb --now
-
samba
用にユーザーを設定する。
こちらのユーザー名はユーザーホームディレクトリ名と一致させる必要がある。$ sudo pdbedit -a ${ユーザー名} new password: ${任意のパスワード} retype new password: ${任意のパスワード}
-
smb.conf
の設定。$ sudo vim /etc/samba/smb.conf
-
[global]
に下記を追加する。[global] # 文字コード設定 unix charset = UTF-8 dos charset = CP932 # workgroup 設定 workgroup = WORKGROUP # WindowsのWORKGROUP名と一致させる。(デフォルトでは WORKGROUP) # 認証設定 security = user
-
[{任意の共有名}]
の作成。[{任意の共有名}] comment = {任意のコメント} # 用途が分かりやすいものが良い path = /home/{任意の共有ディレクトリパス} writable = yes # 書き込みの許可設定 guest ok = yes # ゲストユーザーの許可設定 force create mode = 0777 # ファイル作成時のパーミッション設定 force directory mode = 0777 # フォルダ作成時のパーミッション設定 inherit permissions = yes # パーミッションの継承設定
-
/etc/samba/smb.conf
内が下記の設定になっているか確認する。[global] security = user passdb backend = tdbsam printing = cups printcap name = cups load printers = yes cups options = raw unix charset = UTF-8 dos charset = CP932 workgroup = WORKGROUP [homes] # デフォルト設定のまま comment = Home Directories valid users = %S, %D%w%S browseable = No read only = No inherit acls = Yes [printers] # デフォルト設定のまま comment = All Printers path = /var/tmp printable = Yes create mask = 0600 browseable = No [print$] # デフォルト設定のまま comment = Printer Drivers path = /var/lib/samba/drivers write list = @printadmin root force group = @printadmin create mask = 0664 directory mask = 0775 [{任意の共有名}] comment = {任意のコメント} path = /home/{任意の共有ディレクトリパス} writable = yes guest ok = yes force create mode = 0777 force directory mode = 0777 inherit permissions = yes
-
smb.conf
の設定を完了したらsmb
を再起動する。(nmbの再起動は不要)$ sudo systemctl restart smb
オプション
SELinux
を有効にしていて、今回の様に/home
配下に共有フォルダ作成する場合の設定。# 確認コマンド $ getenforce Enforcing # 有効 $ sudo setsebool -P samba_enable_home_dirs on $ sudo restorecon -R /home/{任意の共有ディレクトリパス}
Firewalld
を有効にしている場合のサービスの許可設定# 確認コマンド $ sudo systemctl status firewalld.service # Firewall samba許可設定 $ sudo firewall-cmd --add-service=samba success # Firewall samba許可設定恒久化 $ sudo firewall-cmd --runtime-to-permanent success
-
再起動後、正常にWindows側のネットワークディレクトリに表示され、アクセス出来る事を確認する。
以上で設定完了です。
作業頻度が高くないので、忘れがちなファイルサーバーの構築設定をまとめてみました。
それでは良いLinuxライフを!!