著者は、Write for DOnationsプログラムの一部として寄付を受け取るためにTech Education Fundを選択しました。
前書き
Sambaは、ファイルやプリンターへのアクセス、Active Directoryなどの共有サービスのためにWindows環境で使用されるSMB/CIFS networking protocolのオープンソース実装です。 Sambaを使用して、standalone serverと呼ばれる構成でクロスプラットフォームのファイル共有を作成することもできます。
このガイドでは、スタンドアロンのSambaサーバーをインストールして構成し、Example.comと呼ばれる架空の小さな組織にネットワーク化されたファイルストアまたはsharesを提供します。 この組織には、ファイル共有に関するいくつかの要件があります.1。 すべての従業員には、個人的なプライベートファイル共有が必要です。 2。 すべての従業員には、共通のファイル共有に対する読み取りおよび書き込みアクセス権が必要です。 3。 管理ユーザーには、すべての個人共有および共有の所有権に対する読み取りおよび書き込みアクセス権が必要です。
Sambaサーバーはこれらの要件をすべて満たします。 また、Windows、Linux、およびmacOSから共有にアクセスする方法も学習します。
前提条件
このガイドを始める前に、次のものが必要です。
-
非ルートsudoユーザーを持つUbuntu 16.04サーバー。 詳細については、Ubuntu 16.04 initial server setupガイドを参照してください。 Sambaには控えめなRAMとCPUの要件があり、1GBサーバーで十分に機能します。 ストレージ容量が不足する可能性が高いため、サーバーのサイズを選択する際にはこれが第一の考慮事項になります。
-
ポート
445
で許可される着信TCP接続。 UFWファイアウォールを使用している場合は、How To Set Up a Firewall with UFW on an Ubuntu and Debian Cloud Serverを参照してください。 別のファイアウォールまたは外部ファイアウォールを使用している場合は、関連するドキュメントを参照してください。
[[step-1 -—- installing-samba]] ==ステップ1—Sambaのインストール
Ubuntuのパッケージ管理システムを使用してSambaをインストールすることから始めましょう。
新しいパッケージをインストールする前に、ローカルパッケージインデックスを更新して、Ubuntuリポジトリの最新バージョンを含めましょう。
sudo apt-get update
次に、Sambaをインストールします。
sudo apt-get install samba
このコマンドは、Sambaサーバーsmbd
とSamba NetBIOSサーバーnmbd
の両方をインストールして起動します。 このチュートリアルではnmbd
は必要ないため、セキュリティ上の理由から、systemctl
を使用して停止および無効化できます。
sudo systemctl stop nmbd.service
sudo systemctl disable nmbd.service
sudo systemctl disable nmbd.service
コマンドを実行すると、次の出力が生成されます。
Outputnmbd.service is not a native service, redirecting to systemd-sysv-install
Executing /lib/systemd/systemd-sysv-install disable nmbd
insserv: warning: current start runlevel(s) (empty) of script `nmbd' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `nmbd' overrides LSB defaults (0 1 6).
この出力は、nmbd
にネイティブのsystemd
管理構成がないため、古いSysVinitシステムによって無効にされていることを示しています。
未構成のネットワーク対応サービスを実行することで発生する可能性のあるセキュリティ問題を回避するために、構成の詳細が設定されるまでSambaサーバーを停止しましょう。
sudo systemctl stop smbd.service
これでSambaがインストールされ、構成の準備ができました。
[[step-2 -—- setting-samba-39-s-global-options]] ==ステップ2—Sambaのグローバルオプションの設定
/etc/samba/smb.conf
にある構成ファイルを変更して、Sambaサーバーがどのように動作するかを定義しましょう。 このファイルには、[global]
セクションと[shares]
セクションの2つの部分があります。 [global]
セクションはSambaサーバーの動作を構成し、[shares]
セクションはファイル共有を構成します。 [global]
セクションでディレクティブを設定することから始めましょう。
/etc/samba/smb.conf
を直接編集するのではなく、名前をsmb.conf.original
に変更し、smb.conf
という名前の新しいファイルを作成します。
sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.orig
/etc/samba/smb.conf
を編集する前に、Sambaに認識すべきインターフェースを指示するために、使用可能なインターフェースを確認しましょう。 次を入力します。
ip link
Output1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 02:21:2c:03:ef:e2 brd ff:ff:ff:ff:ff:ff
この出力は、lo
がループバックインターフェイスであり、eth0
が外部ネットワークインターフェイスであることを示していますが、外部インターフェイスは異なる場合があります。 両方に注意してください。smb.conf
ファイルの[global]
セクションのinterfaces
ディレクティブにそれらを含めます。
このファイルの編集をnano
またはお気に入りのエディターで始めましょう。
sudo nano /etc/samba/smb.conf
このファイルの[global]
セクションは、サーバーの名前、役割、およびネットワークインターフェイスを含むその他の詳細を定義します。
/etc/samba/smb.conf
[global]
server string = samba_server
server role = standalone server
interfaces = lo your_network_interface
bind interfaces only = yes
disable netbios = yes
smb ports = 445
log file = /var/log/samba/smb.log
max log size = 10000
これらのディレクティブは次を指定します。
-
server string
-これは、接続中にユーザーに提供される識別情報です。 サーバーを識別するsamba_server
または別の名前を使用できます。 このチュートリアル全体を通して、組織Example.comのSamba共有を示す文字列samba.example.com
が表示されます。 -
server role
-これは、作成されるSambaサーバーのタイプを定義します。 この場合、それはstandalone server
です。つまり、 ファイル共有。 他のサーバーの種類には、ドメインメンバーサーバーとドメインコントローラーが含まれます。 -
interfaces
-これらはSambaがバインドするネットワークインターフェースです。lo
はループバックインターフェイス(127.0.0.1)であり、必須です。 前に出力した外部ネットワークインターフェイスも含める必要があります。 これは通常eth0
です。 -
bind interfaces only
-これにより、Sambaはinterfaces
行にリストされているインターフェースにのみバインドされます。 セキュリティ対策として、これによりSambaは指定されたinterfaces
に対応しないパケットを無視します。 -
disable netbios
-これにより、スタンドアロンサーバーでは不要なすべてのNetBIOS機能が無効になります。 これにより、サーバーの名前解決プロセスとSMBトラフィックの転送が簡素化されます。 -
smb ports
-これは、Sambaがリッスンするポートを設定します。 ポート445
はSambaの標準ポートです。 -
log file
-これは、Sambaのログファイルの名前と場所を設定します。 -
max log size
-これはログファイルのサイズ制限を設定します。 リストされている数値はバイト単位で、10MBに相当します。 このサイズ制限を設定する際に留意すべき点がいくつかあります。サイズ制限に達すると、Sambaは新しいログファイルを生成し、古いコンテンツを.old
拡張子の重複に移動します。 制限を再度超えると、既存の.old
ファイルが破棄されます。 これにより、単一のログファイルの内容でディスク/パーティションスペースが圧迫されるのを防ぎます。 したがって、システムリソースに適したファイルサイズを定義する必要があります。
サーバーのセットアップ中にさらに詳細なログが必要な場合は、[global]
セクションに次の行を追加します。
/etc/samba/smb.conf
log level = 3 passdb:5 auth:5
これにより、ログレベルが3(情報)に設定され、ログ情報の粒度がデフォルト設定の1から増加します。 passdb
およびauth
デバッグクラスの5の高い設定は、ユーザー認証に関連するより多くの情報を提供します。
このセクションの作成が終了したら、ファイルを保存して閉じます。
smb.conf
を編集するときはいつでも、Sambaユーティリティtestparm
を実行して、構文エラーがないことを確認する必要があります。
testparm
smb.conf
ファイルでtestparm
コマンドを実行すると、次の出力が生成されます。
OutputLoad smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
ENTER
を押すと、次の出力が生成されます。
Output# Global parameters
[global]
server string = samba_server
interfaces = lo your_network_interface
bind interfaces only = Yes
server role = standalone server
log file = /var/log/samba/smb.log
max log size = 10000
smb ports = 445
disable netbios = Yes
idmap config * : backend = tdb
testparm
がLoaded services file OK.
を報告する場合、Sambaサーバーの起動を停止する構文エラーはありません。
Sambaサーバーを起動するために必要なのは、[global]
セクションの構成だけです。 ただし、共有構成なしでは機能が制限されます。 共有は、ユーザーとディレクトリの2つの部分で構成されます。両方とも、ログインとテストを許可するように作成および構成する必要があります。 次のセクションでは、共有にアクセスできるユーザーを作成する方法について説明します。
[[step-3 -—- creating-users]] ==ステップ3—ユーザーの作成
この手順では、共有にアクセスできるユーザーを作成します。 彼らは、ログインしてファイルシステムに読み書きするときにSambaサーバーで認証するために、Sambaおよびシステムユーザーとしてアクセスする必要があります。
架空の会社Example.comには、Sambaサーバーに追加し、Linuxシステムでユーザーとして作成する必要がある4人の従業員がいます:david、mike、jane、およびlucy。 これらの4つに加えて、個人共有にアクセスして管理できるadminユーザーが存在します。 このユーザーは、誰もがアクセスできる共有も所有します。
システムユーザーを追加する最初の手順は、ユーザーごとにホームディレクトリを作成することです。 /home/user
で標準のホームディレクトリを使用するのではなく、Sambaディレクトリとデータは/samba/
に配置されます。 Sambaデータを単一の場所に保持し、他のユーザーデータから分離すると、バックアップなどの将来の管理タスクが容易になります。
[.note]#Note:このガイドで作成されたユーザーは、SSHログインを意図していません。 ユーザーがすでにサーバーにアカウントを持っている場合は、このガイドに従うために、ユーザー専用のSambaユーザーを作成する必要があります。
#
次のセクションでは、最初のユーザーdavidを追加するプロセスについて説明しますが、mike、jane、およびlucyに対してこのプロセスを繰り返す必要があります。
最初のステップは、ファイルシステムのルートに、Sambaデータが保存されるディレクトリを作成することです。 このディレクトリは/samba/
と呼ばれ、そのグループの所有権は、Sambaのインストール時に作成されたグループであるsambashare
に設定されます。
次のコマンドを実行して/samba/
ディレクトリを作成し、グループの所有権をsambashare
に設定します。
sudo mkdir /samba/
sudo chown :sambashare /samba/
次に、/samba/
ディレクトリの下にdavidのホームディレクトリを作成します。
sudo mkdir /samba/david
ここで、次のコマンドを使用して、システムユーザーとしてdavidを追加します。
sudo adduser --home /samba/david --no-create-home --shell /usr/sbin/nologin --ingroup sambashare david
オプションは次のことを行います。
-
--home
-これは、ユーザーのホームディレクトリの場所を設定します。 -
--no-create-home
-これにより、adduser
コマンドによるdavidのホームディレクトリの作成が停止します。 システムがこのディレクトリを作成する場合、現在のセットアップには不要な.bash_history
などの構成ファイルが入力されます。 -
--shell
-これは、SSHでログインしたときに割り当てられるシェルdavidを設定します。 Samba共有にアクセスするためにSSHログインは必要ありません。これを/usr/sbin/nologin
に設定すると、SSHログインが無効になります。 -
--in-group sambashare
-これにより、ユーザーがsambashare
グループに追加され、自分の共有と共通の共有への読み取りおよび書き込みアクセスが可能になります。
このコマンドを実行すると、パスワードの入力を求められます。 10文字以上の、辞書に基づかない一意のパスワードを選択します。
システムユーザーdavidが存在するので、彼のSambaホームディレクトリに所有権と権限を設定できます。
sudo chown david:sambashare /samba/david/
sudo chmod 2770 /samba/david/
ディレクトリのアクセス許可を2770
に設定すると、/samba/david/
で作成された新しいファイルまたはディレクトリは、ファイルまたはディレクトリを作成したユーザーのプライマリグループではなく、親ディレクトリのグループ所有権を継承します。 これは、たとえば、adminユーザーがdavidの共有に新しいディレクトリを作成した場合、davidはそのディレクトリの読み取りと書き込みができることを意味します。
次に、davidをSambaサーバーに追加します。 Sambaは、ログインの認証に使用するユーザーとパスワードの独自のデータベースを保持しています。 ログインするには、すべてのユーザーをSambaサーバーに追加して有効にする必要があります。 次のsmbpasswd
コマンドを実行して、これらのタスクの両方を実行します。
sudo smbpasswd -a david
sudo smbpasswd -e david
ここで使用されるオプションは次のことを行います。
-
-a
-これにより、ユーザーは有効にせずにSambaサーバーに追加されます。 -
-e
-これにより、以前に追加されたユーザーが有効になります。
ここで入力するパスワードは、Samba共有へのアクセスに使用され、システムパスワードとは異なる場合があります。
ユーザーdavidは、サーバーにSSH接続する機能を持たないシステムユーザーとして存在するようになりました。 彼は/samba/david
にホームディレクトリを持っており、Sambaユーザーとして登録および有効化されています。
すべてのSambaユーザー(mike、jane、およびlucy)に対してこのプロセスを繰り返します。
adminユーザーを作成するには、次のコマンドを実行して、ホームディレクトリを/samba/everyone/
に変更します。
sudo mkdir /samba/everyone
sudo adduser --home /samba/everyone --no-create-home --shell /usr/sbin/nologin --ingroup sambashare admin
sudo chown admin:sambashare /samba/everyone/
sudo chmod 2770 /samba/everyone/
sudo smbpasswd -a admin
sudo smbpasswd -e admin
adminユーザーの作成に加えて、サーバーの管理を容易にするためにadminsというグループを作成しましょう。 各共有に対する読み取りおよび書き込み権限があるため、このグループはユーザーの追加と削除の作業を簡素化できます。 たとえば、個々のユーザーがadminユーザーとして機能してから組織を離れる場合、各共有から個別に削除する必要があります。 新しい管理者もすべての共有に手動で追加する必要があります。 adminsグループを作成し、このグループに共有への読み取り/書き込みアクセス権を付与することは、ユーザーの追加と削除に必要なコマンドが1つだけであることを意味します。
次のコマンドを実行して、adminsという名前の新しいグループを作成し、ユーザーadminをこのグループに追加します。
sudo groupadd admins
sudo usermod -G admins admin
2番目のコマンドsudo usermod -G admins admin
を実行し、admin
の代わりに別のユーザーを使用することで、adminsグループにユーザーを追加できます。
これでシステム構成が完了し、組織Example.comのユーザーがシステムユーザーおよびSambaユーザーとして設定されました。 これらのユーザーが共有ディレクトリにアクセスできるように、Sambaサーバーの構成に移りましょう。
[[step-4 -—- configuring-the-samba-shares]] ==ステップ4—Samba共有の構成
各共有には、グローバルパラメータに従って、メインのSamba構成ファイル/etc/samba/smb.conf
に独自のセクションがあります。 これらのセクションでは、各共有の機能を定義します。
nano
テキストエディタを再度使用して、このファイルを開いて編集します。
sudo nano /etc/samba/smb.conf
次の構成ブロックは、各ユーザーの個人共有を定義します。
/etc/samba/smb.conf
...
[share_name]
path =
browseable =
read only =
force create mode =
force directory mode =
valid users =
これらのオプションは次のとおりです。
-
share_name
-これは、ログイン時に使用する共有の名前です。 -
path
-これはファイルシステム内の共有への絶対パスです。 -
browsable
-これは、他のユーザーが共有を表示できるかどうかを設定します。 このオプションを有効にすると、Sambaサーバーの他のユーザーのみが共有の存在を確認できます。 読み取りまたは書き込み権限は付与されません。 -
read only
-これは、valid users
が共有に書き込むことができるかどうかを設定します。 -
force create mode
-これにより、共有に書き込まれるすべてのファイルのアクセス許可が強制されます。 -
force directory mode
-これにより、共有で作成されたすべてのディレクトリのアクセス許可が強制されます。 -
valid users
-これは、共有にアクセスできるユーザーのリストです。 この設定では、ユーザー名またはadminsなどのシステムグループを使用できます。 グループは、前に@
を付けてリストする必要があります。@admins
。
次のdavidの共有構成ブロックを追加し、ホームディレクトリ、このディレクトリのグループ所有権のアクセス許可、および共有にアクセスする必要があるユーザーを定義します。
/etc/samba/smb.conf
[david]
path = /samba/david
browseable = no
read only = no
force create mode = 0660
force directory mode = 2770
valid users = david @admins
ディレクトリのアクセス許可により、グループの所有権が親ディレクトリの所有権に設定されることに注意してください。
mike、jane、およびlucyの共有ブロックを作成します。 共有[name]
、path
、およびvalid users
のみを変更して、各ユーザーの名前を反映させます。
[everyone]
の共有は、[name]
、path
、valid users
、およびbrowsable
の両方のオプションで他の共有とは異なり、次のようになります。
/etc/samba/smb.conf
...
[everyone]
path = /samba/everyone
browseable = yes
read only = no
force create mode = 0660
force directory mode = 2770
valid users = @sambashare @admins
sambashare
グループに共有への読み取り/書き込みアクセスを許可すると、作成時にこのグループに追加されたため、すべてのユーザーが共有にアクセスできるようになります。
完全なsmb.conf
ファイルは次のようになります。
/etc/samba/smb.conf
[global]
server string = samba_server
server role = standalone server
interfaces = lo your_network_interface
bind interfaces only = yes
disable netbios = yes
smb ports = 445
log file = /var/log/samba/smb.log
max log size = 10000
[david]
path = /samba/david
browseable = no
read only = no
force create mode = 0660
force directory mode = 2770
valid users = david @admins
[mike]
path = /samba/mike
browseable = no
read only = no
force create mode = 0660
force directory mode = 2770
valid users = mike @admins
[jane]
path = /samba/jane
browseable = no
read only = no
force create mode = 0660
force directory mode = 2770
valid users = jane @admins
[lucy]
path = /samba/lucy
browseable = no
read only = no
force create mode = 0660
force directory mode = 2770
valid users = lucy @admins
[everyone]
path = /samba/everyone
browseable = yes
read only = no
force create mode = 0660
force directory mode = 2770
valid users = @sambashare @admins
編集が終了したら、ファイルを保存して閉じます。
構成を再度テストします。
testparm
これにより、次のような出力が生成されます。
OutputLoad smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[david]"
Processing section "[jane]"
Processing section "[mike]"
Processing section "[lucy]"
Processing section "[everyone]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
構成チェックが完了したら、systemctl
でSambaサーバーを起動しましょう。
sudo systemctl start smbd.service
これでSambaサーバーが実行され、ログインを受け入れる準備ができました。 次のステップは、Sambaサーバーにログインして、期待どおりに動作することをテストすることです。 次のセクションでは、Windows、Linux、macOSからSambaサーバーへのログインについて説明します。
[[step-5 --- logging-into-the-samba-server]] ==ステップ5—Sambaサーバーへのログイン
このセクションでは、Linux、Windows、macOSから作成したSamba共有にアクセスする方法について説明します。
[[linux -—-コマンドライン]] === Linux —コマンドライン
smbclient
というツールを使用して、コマンドラインからSambaにアクセスできます。 このパッケージは、ほとんどのLinuxディストリビューションにはデフォルトで含まれていないため、ローカルパッケージマネージャーでインストールする必要があります。
DebianおよびUbuntuサーバーでは、次のコマンドを使用してsmbclient
をインストールします。
sudo apt-get update
sudo apt-get install smbclient
Fedoraシステムでは、次を使用します。
sudo dnf update
sudo samba-client
CentOSの場合:
sudo yum update
sudo yum install samba-client
[。注意]##
Note:一部のLinuxディストリビューションでは、smbclient
は次のエラーメッセージで失敗します。
Outputsmbclient: Can't load /etc/samba/smb.conf - run testparm to debug it
このエラーメッセージが表示された場合は、ファイルが/etc/samba/smb.conf
。
に作成されていることを確認してください。
smbclient
は、次の形式を使用してSamba共有にアクセスします。
smbclient //your_samba_hostname_or_server_ip/share -U username
サーバーのIPまたは/etc/samba/smb.conf
で定義したホスト名のいずれかを使用して、共有にアクセスできます。 この例では、ホスト名samba.example.com
を使用して、前の手順で作成したSambaサーバー上のdavidの共有にアクセスします。
smbclient //samba.example.com/david -U david
davidが普通株(everyone
)にアクセスしたい場合は、コマンドを次のように変更します。
smbclient //samba.example.com/everyone -U david
smbclient
コマンドを実行すると、Sambaパスワードの入力を求められ、FTPテキストインターフェイスを連想させるコマンドラインインターフェイスにログインします。
smb: \>
このインターフェイスは、ユーザー名とパスワード、および読み取り/書き込みアクセスのテストに最も役立ちます。 たとえば、次のようにディレクトリを作成し、その内容をリストできます。
mkdir test
ls
次のような出力が表示されるはずです。
Output . D 0 Fri Feb 2 14:49:01 2018
.. D 0 Wed Jan 24 12:11:33 2018
test D 0 Fri Feb 2 14:49:01 2018
次のように入力して、ディレクトリを削除します。
rmdir test
多くの場合、GUIツールを使用すると、共有内のデータを簡単に管理できます。 次のセクションでは、KDEの組み込みGUIツールについて説明します。
[[linux -—- kde-with-dolphin]] === Linux —KDEとDolphin
DolphinはKDEのデフォルトのファイルマネージャーであり、Samba共有にアクセスするための組み込み機能を備えています。
Dolphinを開いた後、次の手順を実行します。
-
PlacesリストからNetworkを選択します。
-
Add Network Folderをクリックします。
-
Microsoft Windows network driveオプションを選択します。
-
Nextをクリックします
-
Samba共有の詳細を入力します。
-
Name-これは、共有のDolphinにブックマークとして表示される覚えやすい名前です。
-
Server-これはSambaサーバーのホスト名またはIPアドレスです。 この例では、
samba.example.com
になります。 -
Folder-これは、
smb.conf
で設定された共有の名前です。
-
-
Save & Connectをクリックします。
-
Samba共有にアクセスするユーザーのユーザー名とパスワードを入力します。
-
OKをクリックします。
Dolphinは、次のようなSamba共有を接続して開きます。
Samba共有をローカルディレクトリであるかのように使用して、ファイルやディレクトリをコピー、削除、および名前変更できるようになりました。 共有は、Networkの場所に永続的なブックマークとしても表示されます。
[[macos -—-コマンドライン]] === MacOS —コマンドライン
MacOSには、Samba共有へのアクセスに使用できるコマンドラインツールがプリインストールされています。 Terminalアイコンをクリックして、Launchpadでターミナルを開きます。
これにより、ホームディレクトリにコマンドラインターミナルが開きます。 Samba共有をマウントするには、共有のマウントポイントとして機能する新しいディレクトリを作成できます。 マウントポイントは、2つのファイルシステムが結合される場所です。この場合、ローカルファイルシステムとリモートSambaファイルシステムです。
samba
という名前の新しいディレクトリを作成します。
mkdir samba
次に、Samba共有を新しいsamba
ディレクトリにマウントします。 このコマンドの形式は次のとおりです。
sudo mount_smbfs //username@your_samba_hostname_or_server_ip/share ./mount_point
Example.comの詳細をユーザーdavidに置き換えると、次のようになります。
sudo mount_smbfs //[email protected]/david ./samba
samba
ディレクトリには、Example.com Sambaサーバー上のdavid共有の内容が表示されます。 ファイルとディレクトリは、ls
、rm
、mkdir
などの通常のツールで操作できます。ただし、共有がマウントされた後、samba
ディレクトリはrootによって所有されます。 したがって、samba
ディレクトリとその内容にアクセスするには、sudo
を使用する必要があります。
Samba共有をアンマウントするには、mkdir
コマンドを実行したのと同じディレクトリからumount
コマンドを実行します。
umount samba
次のセクションでは、macOSのデスクトップGUIアプリケーションを使用したSamba共有へのアクセスについて説明します。
[[macos -—- desktop]] === MacOS —デスクトップ
MacOSは、Finderアプリケーションを使用してSamba共有にアクセスすることもできます。
以下の手順に従ってください。
-
Finderを開き、メニューバーのGoをクリックします。
-
オプションのリストからConnect to Serverをクリックします。
-
ユーザー名、ホスト名またはサーバーIP、および共有の名前を含む
smb://
形式のURLを使用します:smb://username@your_samba_hostname_or_server_ip/share
。 ここに示す例では、ユーザー名davidとホスト名samba.example.com
が表示されます。 -
+記号の付いたボタンをクリックして、Samba共有をブックマークします。
-
Connectをクリックします
-
Registered Userを選択します
-
Samba共有ユーザーのユーザー名とパスワードを入力します。
-
macOSにパスワードを保存するかどうかを決定します。
-
Connectをクリックします。
Samba共有に正常に接続すると、次のようにFinderに表示されます。
次のセクションでは、Windows 10からSamba共有にアクセスする方法について説明します。
[[windows-10 -—-コマンドライン]] === Windows 10 —コマンドライン
WindowsコマンドラインからSamba共有をマウントするには、1つのコマンドのみが必要です。
net use drive_letter \\your_samba_hostname_or_server_ip\share
ユーザーdavidの共有から変数を置き換え、ドライブ文字をX:
に設定します。
net use X: \\samba.example.com\david
このコマンドを入力すると、davidのユーザー名とパスワードの入力を求められます。 これらを入力すると、共有が正常にマウントされたという確認を受け取ります。
OutputEnter the user name for 'samba.example.com': david
Enter the password for samba.example.com:
The command completed successfully.
これで、ファイルエクスプローラーでSamba共有を参照し、コンピューターにローカルであるかのようにファイルとディレクトリを操作できるようになります。
次のセクションでは、Windows GUIツールを使用してSamba共有にアクセスする方法について説明します。
[[windows-10 -—- desktop]] === Windows 10 —デスクトップ
Windows 10には、Samba共有に接続するネイティブ機能もあります。 次の手順は、Samba共有に接続し、Windowsエクスプローラーを使用してブックマークとして保持します。 ファイルエクスプローラーを開いて、次の手順を開始します。
-
This PCを右クリックします。
-
次のページでAdd a network locationをクリックしてからNextをクリックします。
-
Choose a custom network locationをクリックします。
-
Nextをクリックします
-
SambaサーバーのWindowsスタイルのアドレスと共有名を入力します。 Windowsは、次の形式のSamba URLを使用します:
\your_samba_hostname_or_server_ip\share\
。 サンプルイメージでは、サーバー名はsamba.example.com
で、共有名はdavid
:\samba.example.com\david
です。 -
Nextをクリックします。
-
ユーザーのユーザー名とパスワードを入力します。
-
Windowsにパスワードを記憶させるかどうかを決定します。
-
OKをクリックします。
これで、File ExplorerはSamba共有に接続します。 接続が正常に完了すると、ファイルエクスプローラーのThis PCの下に新しい場所が作成されます。
これで、このフォルダーを使用して、Samba共有内のファイルとフォルダーをローカルフォルダーであるかのように管理できるようになります。
結論
この記事では、Sambaサーバーを使用してクロスプラットフォームのオンラインファイル共有を作成しました。 また、Windows、Linux、およびmacOSからこれらの共有にアクセスしました。
Samba共有は非常に一般的になったため、多くのアプリケーションが保存されているデータにアクセスできます。 これらのアプリケーションは、Samba共有の機能と有用性を拡張できます。 たとえば、モバイルバージョンのメディアプレーヤーVLCは、Samba共有に接続して音楽やビデオをストリーミングできます。 アクセスするには、open MRLを選択し、標準のSamba URL:smb://username@your_samba_hostname_or_server_ip/share
を使用します。 クロスプラットフォームのバックアップユーティリティBackupPCを使用して、バックアップの宛先としてSamba共有を使用することもできます。
Sambaは、単純なファイル共有として機能することに加えて、ドメインコントローラまたはドメインのメンバーとしてWindows Active Directoryと連携できます。 Samba WikiUser Documentationには、これを行う方法の詳細が含まれています。