メインメニューを開く

差分

Sambaのインストール

698 バイト追加, 2023年5月31日 (水) 17:29
そこらあたり前提の手順となっておりますが、ご了承ください。
== Sambaのインストール ==
以下のコマンドを実行して、Sambaをインストールします。
<syntaxhighlight lang="bash">pacman -S samba</syntaxhighlight>
※wgetがインストールされていない場合は「pacman -S wget」でインストールしてください。
== 設定 ==
ここからが難題です…。<br/>
Sambaですが汎用性が高いからか、設定が非常に煩雑?です…。<br/>
「nano」等のエディタで「/etc/samba/smb.conf」を開きます。
=== ログの出力先 ===
はじめに…参考サイトにも書かれていますがログの出力先を、一般的な場所に変更します。
変更前
<syntaxhighlight lang="bashtext">log file = /usr/local/samba/var/log.%m</syntaxhighlight>
変更後
<syntaxhighlight lang="bashtext">log file = /var/log/samba/%m.log</syntaxhighlight>
=== とりあえず書いてある通りに設定してみる ======= ワークグループの設定 ====
「workgroup」に「WORKGROUP」を設定します。
==== ホームディレクトリの設定 ====
「valid users = %S」だけ書かれていないので追記します。
<syntaxhighlight lang="bashtext">[homes]
comment = Home Directories
browseable read only = no writable = yes
valid users = %S</syntaxhighlight>
ちなみに…「%S」ですが、ユーザーIDが入るようです。<br/>
みんな許可するってことになるかと思います。
==== サービスの起動 ====
以下のコマンドで2つのサービスを起動します。
<syntaxhighlight lang="bash">systemctl start smb
systemctl start nmb</syntaxhighlight>
=== ユーザーの追加 ===
Sambaに接続するためのユーザーを追加します。
今回は「dropbox-test」というユーザーを追加してみます。
==== ArchLinuxにユーザーを追加 ====
まず、ArchLinuxにユーザーを追加します。
<syntaxhighlight lang="bash">useradd -m dropbox-test</syntaxhighlight>
これで、Smabaのユーザーを登録する準備が整いました。<br/>
==== Sambaにユーザーを追加 ====
引き続き、以下のコマンドでSambaにユーザーを登録します。
<syntaxhighlight lang="bash">{{bc|# pdbedit -a -u dropbox-test</syntaxhighlight>}}
「-a」はユーザーの追加、「-u」はユーザー名を指定する、という意味です。
登録したときに以下のようなメッセージが表示されれば成功です。
<syntaxhighlight lang="bashtext">Unix username: dropbox-test
NT username:
Account Flags: [U ]
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF</syntaxhighlight>
== 接続 ===== Windowsの場合 ===
ホームディレクトリの設定しかしていませんが…Windowsから接続してみます。<br/>
エクスプローラーのアドレス欄に、サーバーのIPアドレスを入力します。<br/>
入れれば成功です。念のため、ファイルやディレクトリの作成・削除をしてみてください。
=== Linuxの場合 ======= コマンド接続 ====
クライアント側で以下のコマンドを実行します。
<syntaxhighlight lang="bash">mkdir /mnt/Homes
mount.cifs -o username=[userid],password=[password],iocharset=utf8,rw,vers=3.0 //[ip address]/Homes /mnt/Homes</syntaxhighlight>
==== 起動時接続 ====
「nano」等のエディタで「/etc/fstab」を以下の行を追記します。
<syntaxhighlight lang="bash">//[ip address]/Homes /mnt/Homes cifs username=[userid],password=[password],iocharset=utf8,rw,x-systemd.automount,_netdev,vers=3.0 0 2</syntaxhighlight>
== 任意のディレクトリを共有 ==
今度は任意のディレクトリを共有してみます。<br/>
共有するディレクトリは「/mnt/Dropbox」ですwww。<br/>
ドロップボックスのディレクトリを共有します。
=== 共有ディレクトリの作成 ===
まぁ書くほどのことは無いですが…
<syntaxhighlight lang="bash">mkdir /mnt/Dropbox</syntaxhighlight>
<syntaxhighlight lang="bash">chown dropbox-test:dropbox-test /mnt/Dropbox</syntaxhighlight>
=== 共有設定 ===
先ほどと同じく「/etc/samba/smb.conf」を編集していきます。<br/>
ファイルの最後に以下を追記します。
<syntaxhighlight lang="bashtext">[Dropbox]
comment = Dropbox Directory
path = /mnt/Dropbox
writable read only = yesno
valid users = dropbox-test</syntaxhighlight>
=== サービスの読み込み直し ===
以下のコマンドで読み込み直します。
<syntaxhighlight lang="bash">systemctl reload smb
以上で、接続すると見れるかと思います。
== 「read only = no」で設定しているのに書き込みできないとき ==私は短期間で2回はまったのですが…「read only = no」に設定しているのに書き込めない場合があります。(いわれてみれば当たり前なのですが…)その場合は、共有しているディレクトリの所有者とグループやパーミッションを見直してみてください…。私の場合はSambaに登録したユーザーに合わせて所有者とグループを以下のコマンドで変更しています。{{bc|# chown -r [ユーザ名]:[グループ名] [パス]}}具体的には{{bc|# chown -r naisyo:naisyo /mnt/Dropbox}}のような感じです。   == 参考サイト ==
[https://wiki.archlinux.jp/index.php/Samba Samba - ArchWiki]<br/>
[http://www.samba.gr.jp/doc/samba2.0_and_linux.html 日本Sambaユーザ会 - SambaによるWindowsファイルサーバ構築]<br/>