◆Windowsマシンのファイル共有のマウント
□事前作業
# mkdir smb1 #共有のマウント先を作成
# dnf install cifs-utils #cifsをインストールしないとエラーになる
# mount -t cifs -o rw,user=aduser01 //WINSV2022AD/temp smb1
Password for aduser01@//WINSV2022AD/temp:
[root@pro ~]# df
ファイルシス 1K-ブロック 使用 使用可 使用% マウント位置
devtmpfs 4096 0 4096 0% /dev
tmpfs 900988 0 900988 0% /dev/shm
tmpfs 360396 5588 354808 2% /run
/dev/mapper/almalinux-root 17141760 5136636 12005124 30% /
/dev/sda2 983040 517524 465516 53% /boot
/dev/sda1 613160 7228 605932 2% /boot/efi
tmpfs 180196 52 180144 1% /run/user/42
tmpfs 180196 36 180160 1% /run/user/0
//WINSV2022AD/temp 51709948 12044728 39665220 24% /root/smb1 #マウントを確認
# cd smb1/ #以下、動作確認
# ls
test.txt testdir
# mkdir mounttest
# cd mounttest/
# touch success.txt | echo '成功!' > success.txt
# cat success.txt
成功!
Windows共有のtempフォルダ以下にmounttestフォルダが作成され、mounttest内の success.txtが作成されており、「成功!」と書かれていることを確認します。

□アンマウント
# umount smb1/
# df
ファイルシス 1K-ブロック 使用 使用可 使用% マウント位置
devtmpfs 4096 0 4096 0% /dev
tmpfs 900988 0 900988 0% /dev/shm
tmpfs 360396 5584 354812 2% /run
/dev/mapper/almalinux-root 17141760 5132640 12009120 30% /
/dev/sda2 983040 517524 465516 53% /boot
/dev/sda1 613160 7228 605932 2% /boot/efi
tmpfs 180196 52 180144 1% /run/user/42
tmpfs 180196 36 180160 1% /run/user/0 #//WINSV2022AD/temp の行が無くなっていることを確認。
□cifsの主なオプション
オプション |
説明 |
user=ユーザー名 |
認証時に使用するWindowsユーザー名 |
password=パスワード |
認証時に使用するパスワード |
domain=ドメイン名 |
認証時に使用するドメイン名 |
guest |
空のパスワードを指定 |
credentials=ファイル名 |
認証時に使用するWindowsユーザー名、パスワードを格納したファイル |
uid=ユーザー名 |
マウントしたファイル共有内のファイル、ディレクトリに設定する所有者ユーザー名もしくはUID |
gid=グループ名 |
マウントしたファイル共有内のファイル、ディレクトリに設定する所有グループ名もしくはGID |
file_mode |
マウントしたファイル共有内のファイル、ディレクトリに設定するパーミッション |
dir_mode |
マウントしたファイル共有内のディレクトリに設定するパーミッション |
noperm |
パーミッションによる制御を無効化するか |
setuids |
新規に作成するファイル所有者や所有グループをLinuxの通常動作に準じて設定するか |
□認証情報の入力
-o userオプションで指定するユーザー名を「user=ユーザー名%パスワード」という構文を記載することで、Windowsパスワードを同時に入力することが出来ますが、credentialsオプションを指定したファイルから読み取る方が、セキュリティ的には望ましい。
# touch /etc/cifs-utils/.credentials | echo -e "user=aduser01\npassword=Passw0rd" > /etc/cifs-utils/.credentials #「\n」は改行コード。改行しないと対話式ログインになってしまう。
# cat /etc/cifs-utils/.credentials #ユーザー名とパスワードが2行で作成されていることを確認
user=aduser01
password=Passw0rd
# mount -t cifs -o rw,credentials=/etc/cifs-utils/.credentials //WINSV2022AD/temp smb1 #パスワード抜きでログイン出来ることを確認。
# df
ファイルシス 1K-ブロック 使用 使用可 使用% マウント位置
devtmpfs 4096 0 4096 0% /dev
(略)
//WINSV2022AD/temp 51709948 12045876 39664072 24% /root/smb1 #マウントされている事を確認。
◆リモートマシン上のアクセス許可の操作
# smbcacls -U Administrator%Passw0rd //WINSV2022AD/temp test.txt #Windowsサーバ上の共有ファイル「temp.txr」のアクセス許可の表示
REVISION:1
CONTROL:SR|DI|DP
OWNER:BUILTIN\Administrators
GROUP:NORA\Domain Users
ACL:NORA\Administrator:ALLOWED/I/FULL
ACL:BUILTIN\Administrators:ALLOWED/I/FULL
ACL:NT AUTHORITY\SYSTEM:ALLOWED/I/FULL
ACL:NORA\aduser01:ALLOWED/I/FULL
ACL:NORA\aduser02:ALLOWED/I/READ
◆リモートマシン上のクォーター設定の操作
# smbcquotas //WINSV2022AD/C$ -U Administrator%Passw0rd -F #Windowsサーバ上のディスククォータの表示
File System QUOTAS:
Limits:
Default Soft Limit: 18446744073709551615
Default Hard Limit: 18446744073709551615
Quota Flags:
Quotas Enabled: Off
Deny Disk: Off
Log Soft Limit: Off