この記事には広告を含む場合があります。
記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。
ども。あいしんくいっと(@ithinkitnet)です。
ithinkit
LinuxからWindowsの領域をマウントする場合はCIFSを使います。
WindowsとLinuxでCIFSを使って簡単にファイル共有する方法
逆にWindowsからLinuxの領域を共有したい場合、Sambaを利用することが多いです。
と言うワケで、LinuxでSambaを構築する手順について書いておきたいと思います。
クリック可能な目次
LinuxでSambaを5分で構築する方法
SELINUX、Firewalldは無効化を前提とします
Sambaインストール
Sambaパッケージ導入。今回はrpmでのパッケージインストールとします。
# dnf -y install samba samba-common
# dnf -y install samba samba-common
Updating Subscription Management repositories.
メタデータの期限切れの最終確認: 2:21:05 時間前の 2019年10月10日 13時58分15秒 に 実施しました。
Package samba-common-4.9.1-8.el8.noarch is already installed.
依存関係が解決しました。
================================================================================
パッケージ アーキテクチャー
バージョン リポジトリ サイズ
================================================================================
Installing:
samba x86_64 4.9.1-8.el8 rhel-8-for-x86_64-baseos-rpms 708 k
依存関係をインストール中:
samba-common-tools x86_64 4.9.1-8.el8 rhel-8-for-x86_64-baseos-rpms 461 k
samba-libs x86_64 4.9.1-8.el8 rhel-8-for-x86_64-baseos-rpms 177 k
~省略~
Installed products updated.
インストール済み:
samba-4.9.1-8.el8.x86_64 samba-common-tools-4.9.1-8.el8.x86_64
samba-libs-4.9.1-8.el8.x86_64
完了しました!
Sambaパッケージがインストールされたことを確認します。
# dnf list installed samba*
Updating Subscription Management repositories.
インストール済みパッケージ
samba.x86_64 4.9.1-8.el8 @rhel-8-for-x86_64-baseos-rpms
samba-client-libs.x86_64 4.9.1-8.el8 @anaconda
samba-common.noarch 4.9.1-8.el8 @anaconda
samba-common-libs.x86_64 4.9.1-8.el8 @anaconda
samba-common-tools.x86_64 4.9.1-8.el8 @rhel-8-for-x86_64-baseos-rpms
samba-libs.x86_64 4.9.1-8.el8 @rhel-8-for-x86_64-baseos-rpms
Samba基本設定
Sambaの設定は基本的に「smb.conf」を編集して行います。
編集前にsmb.confのバックアップを取得しておきます。
cp -p /etc/samba/smb.conf /etc/samba/smb.conf_org
smb.conf編集
smb.confを編集します。
[global]
workgroup = WORKGROUP
security = user
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
[global]
workgroup = WORKGROUP
server string = SAMBA SERVER %v
netbios name = smb-fs
security = user
passdb backend = tdbsam
dos charset = CP932
load printers = no
disable spoolss = yes
local master = yes
os level = 200
[Share]
comment = Share Folder for All Users
path = /share/
read only = No
smb.confの確認
smb.confの編集が終わったら、設定ファイルに誤りがないか確認。
# testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[Share]"
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
# Global parameters
[global]
disable spoolss = Yes
dos charset = CP932
load printers = No
netbios name = SMB-FS
security = USER
server string = SAMBA SERVER %v
idmap config * : backend = tdb
[Share]
comment = Share Folder for All Users
path = /share/
read only = No
[homes]
browseable = No
comment = Home Directories
inherit acls = Yes
read only = No
valid users = %S %D%w%S
[printers]
browseable = No
comment = All Printers
create mask = 0600
path = /var/tmp
printable = Yes
[print$]
comment = Printer Drivers
create mask = 0664
directory mask = 0775
force group = @printadmin
path = /var/lib/samba/drivers
write list = @printadmin root
公開用ディレクトリ作成
続いて、公開用ディレクトリを作成。
ここでは「share」とします。
shareディレクトリ作成
mkdir /share
chmod 777 /share
samba用ユーザ作成
hogeユーザでshareフォルダにSambaログイン出来るよう設定
Samba用ユーザ作成
# pdbedit -a -u hoge -f "hoge"
new password:
retype new password:
Unix username: hoge
NT username:
Account Flags: [U ]
User SID: S-1-5-21-2897256104-3781981787-2368735278-1000
Primary Group SID: S-1-5-21-2897256104-3781981787-2368735278-513
Full Name: hoge
Home Directory: \\smb-fs\hoge
HomeDir Drive:
Logon Script:
Profile Path: \\smb-fs\hoge\profile
Domain: SMB-FS
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: 木, 07 2月 2036 00:06:39 JST
Kickoff time: 木, 07 2月 2036 00:06:39 JST
Password last set: 金, 11 10月 2019 17:08:13 JST
Password can change: 金, 11 10月 2019 17:08:13 JST
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Sambaサービス起動・自動起動設定
Sambaサービスを起動します。合わせてOS起動時に自動起動するよう設定します。
systemctl start smb nmb
systemctl enable smb nmb
Samba接続確認
クライアントからSambaサーバが見えることを確認。
Windows及び、Macで確認します。
Macから見た場合
Windowsから見た場合
shareフォルダに接続出来ること、ファイルの書き込みが出来ることを確認。
この辺りが確認出来たら、Samba環境としては問題ないかと思います。
これでSamba環境の構築は完了です。
WindowsからLinuxへファイルを送ることが出来ます。
ithinkit
以上、あいしんくいっとでした。