Ubuntu16.04で小さな組織のSamba共有を設定する方法
著者は、 Write forDOnationsプログラムの一環として寄付を受け取るためにTechEducationFundを選択しました。
序章
Samba は、ファイルやプリンターへのアクセスやActiveDirectoryなどの共有サービス用にWindows環境で使用されるSMB/CIFSネットワークプロトコルのオープンソース実装です。 Sambaを使用して、スタンドアロンサーバーと呼ばれる構成でクロスプラットフォームのファイル共有を作成することもできます。
このガイドでは、スタンドアロンのSambaサーバーをインストールして構成し、Example.comという架空の小さな組織にネットワーク化されたファイルストアまたは共有を提供します。 この組織には、ファイル共有に関するいくつかの要件があります。1。 すべての従業員には、個人のプライベートファイル共有が必要です。 2.2。 すべての従業員は、共通のファイル共有への読み取りおよび書き込みアクセス権を持っている必要があります。 3.3。 管理ユーザーは、すべての個人共有への読み取りおよび書き込みアクセス権と普通株式の所有権を持っている必要があります。
Sambaサーバーはこれらの要件をすべて満たします。 また、Windows、Linux、およびmacOSから共有にアクセスする方法についても学習します。
前提条件
このガイドを開始する前に、次のものが必要です。
-
ルート以外のsudoユーザーがいるUbuntu16.04サーバー。 詳細については、Ubuntu16.04初期サーバーセットアップガイドを参照してください。 Sambaには適度なRAMとCPUの要件があり、1GBのサーバーで適切に機能します。 ストレージスペースが不足する可能性が高いため、サーバーサイズを選択する際には、これを主な考慮事項にする必要があります。
-
ポート
445
で許可される着信TCP接続。 UFW ファイアウォールを使用している場合は、UbuntuおよびDebianクラウドサーバーでUFWを使用してファイアウォールを設定する方法を参照してください。 別のファイアウォールまたは外部ファイアウォールを使用している場合は、関連するドキュメントを参照してください。
ステップ1—Sambaのインストール
Ubuntuのパッケージ管理システムを使用してSambaをインストールすることから始めましょう。
新しいパッケージをインストールする前に、ローカルパッケージインデックスを更新して、Ubuntuリポジトリからの最新バージョンを含めましょう。
- sudo apt-get update
次に、Sambaをインストールします。
- sudo apt-get install samba
このコマンドは、Sambaサーバーsmbd
とSambaNetBIOSサーバー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がインストールされ、構成する準備が整いました。
ステップ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: <LOOPBACK,UP,LOWER_UP> 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: <BROADCAST,MULTICAST,UP,LOWER_UP> 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]
セクションでは、サーバーの名前、役割、およびネットワークインターフェイスを含むその他の詳細を定義します。
[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]
セクションに次の行を追加します。
log level = 3 passdb:5 auth:5
これにより、ログレベルが3(info)に設定され、ログ情報の粒度がデフォルト設定の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つの部分で構成されており、ログインとテストを可能にするために、両方を作成して構成する必要があります。 次のセクションでは、共有にアクセスできるユーザーを作成する方法について説明します。
ステップ3—ユーザーの作成
このステップでは、共有にアクセスできるユーザーを作成します。 ログインしてファイルシステムの読み取りと書き込みを行うときにSambaサーバーで認証するには、Sambaおよびシステムユーザーとしてアクセスする必要があります。
架空の会社Example.comには、Sambaサーバーに追加し、Linuxシステムでユーザーとして作成する必要がある4人の従業員がいます: david 、 mike 、 jane 、およびlucy。 これらの4つに加えて、個人共有にアクセスして管理できるadminユーザーがいます。 このユーザーは、誰もがアクセスできる普通株も所有します。
システムユーザーを追加するための最初のステップは、各ユーザーのホームディレクトリを作成することです。 /home/user
で標準のホームディレクトリを使用するのではなく、Sambaディレクトリとデータは/samba/
に配置されます。 Sambaデータを単一の場所に保持し、他のユーザーデータから分離することで、バックアップなどの将来の管理タスクが容易になります。
注:このガイドで作成されたユーザーは、SSHログインを目的としていません。 ユーザーがすでにサーバーにアカウントを持っている場合は、このガイドに従うために、ユーザー専用のSambaユーザーを作成する必要があります。
次のセクションでは、最初のユーザー david を追加するプロセスについて説明しますが、 mike 、 jane 、およびに対してこのプロセスを繰り返す必要があります。ルーシー。
最初のステップは、ファイルシステムのルートにSambaデータが保存されるディレクトリを作成することです。 このディレクトリは/samba/
と呼ばれ、そのグループ所有権はsambashare
に設定されます。これは、Sambaのインストール時に作成されたグループです。
次のコマンドを実行して/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サーバーの構成に移りましょう。
ステップ4—Samba共有の構成
各共有には、グローバルパラメータに従って、メインのSamba構成ファイル/etc/samba/smb.conf
に独自のセクションがあります。 これらのセクションでは、各共有がどのように機能するかを定義します。
nano
テキストエディタをもう一度使用して、このファイルを開いて編集します。
- sudo nano /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 の次の共有構成ブロックを追加し、ホームディレクトリ、このディレクトリのグループ所有権のアクセス許可、および共有にアクセスする必要があるユーザーを定義します。
[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
オプションの両方で他の共有と異なり、次のようになります。 :
...
[everyone]
path = /samba/everyone
browseable = yes
read only = no
force create mode = 0660
force directory mode = 2770
valid users = @sambashare @admins
sambashare
グループに共有への読み取り/書き込みアクセスを許可すると、作成時にこのグループに追加されたため、すべてのユーザーが共有にアクセスできるようになります。
完全な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サーバーへのログインについて説明します。
ステップ5—Sambaサーバーにログインする
このセクションでは、Linux、Windows、およびmacOSから作成したSamba共有にアクセスする方法について説明します。
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
注:一部の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 —Dolphinを使用したKDE
DolphinはKDEのデフォルトのファイルマネージャーであり、Samba共有にアクセスするための組み込み機能を備えています。
Dolphinを開いた後、次の手順を実行します。
- 場所リストからネットワークを選択します。
- ネットワークフォルダの追加をクリックします。
- MicrosoftWindowsネットワークドライブオプションを選択します。
- 次へをクリックします
- Samba共有の詳細を入力します。
名前-これは、共有のためにDolphinにブックマークとして表示される覚えやすい名前です。 サーバー-これは、Sambaサーバーのホスト名またはIPアドレスです。 この例では、samba.example.comになります。 フォルダ-これは、smb.confで設定された共有の名前です。 - クリック保存して接続 。
- Samba共有にアクセスするユーザーのユーザー名とパスワードを入力します。
- OKをクリックします。
Dolphinが接続し、Samba共有を開きます。これは次のようになります。
これで、Samba共有をローカルディレクトリであるかのように使用して、ファイルやディレクトリをコピー、削除、および名前変更できます。 共有は、ネットワークの場所にも永続的なブックマークとして表示されます。
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 //david@samba.example.com/david ./samba
samba
ディレクトリには、 Example.comSambaサーバー上のdavid共有の内容が表示されます。 ファイルとディレクトリは、ls
、rm
、mkdir
などの通常のツールで操作できます。 ただし、共有がマウントされた後、samba
ディレクトリはrootによって所有されます。 したがって、sudo
を使用して、samba
ディレクトリとその内容にアクセスする必要があります。
Samba共有をアンマウントするには、mkdir
コマンドを実行したのと同じディレクトリからumount
コマンドを実行します。
- umount samba
次のセクションでは、macOSのデスクトップGUIアプリケーションを使用してSamba共有にアクセスする方法について説明します。
MacOS —デスクトップ
MacOSは、Finderアプリケーションを使用してSamba共有にアクセスすることもできます。
次の手順を実行します。
- Finder を開き、メニューバーのGoをクリックします。
- オプションのリストからサーバーに接続をクリックします。
- ユーザー名、ホスト名またはサーバーIP、および共有の名前を含む
smb://
形式のURLを使用します:smb://username@your_samba_hostname_or_server_ip/share
。 ここに示す例では、ユーザー名davidとホスト名samba.example.com
が表示されます。 - + の記号が付いたボタンをクリックして、Samba共有をブックマークします。
- 接続をクリックします
- 登録ユーザーを選択します
- Samba共有ユーザーのユーザー名とパスワードを入力します。
- macOSにパスワードを保存するかどうかを決定します。
- 接続をクリックします。
Samba共有に正常に接続すると、次のようにFinderに表示されます。
次のセクションでは、Windows10からSamba共有にアクセスする方法について説明します。
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共有を参照し、コンピューターのローカルであるかのようにファイルとディレクトリを操作できるようになります。
次のセクションでは、WindowsGUIツールを使用してSamba共有にアクセスする方法について説明します。
Windows 10 —デスクトップ
Windows 10には、Samba共有に接続するためのネイティブ機能もあります。 次の手順では、Samba共有に接続し、Windowsファイルエクスプローラーを使用してブックマークとして保持します。 ファイルエクスプローラーを開いて、次の手順を開始します。
- このPCを右クリックします。
- 次のページでネットワークの場所を追加をクリックしてから次へをクリックします。
- をクリックします。カスタムネットワークの場所を選択します。
- 次へをクリックします
- SambaサーバーのWindowsスタイルのアドレスと共有名を入力します。 Windowsは、次の形式のSamba URLを使用します:
\\your_samba_hostname_or_server_ip\share\
。 サンプルイメージでは、サーバー名はsamba.example.com
であり、共有名はdavid
:\\samba.example.com\david
です。 - 次へをクリックします。
- ユーザーのユーザー名とパスワードを入力します。
- Windowsにパスワードを記憶させるかどうかを決定します。
- OKをクリックします。
これで、ファイルエクスプローラーがSamba共有に接続します。 接続が正常に完了すると、ファイルエクスプローラーのこのPCの下に新しい場所が作成されます。
これで、このフォルダーを使用して、ローカルフォルダーであるかのようにSamba共有内のファイルとフォルダーを管理できるようになります。
結論
この記事では、Sambaサーバーを使用してクロスプラットフォームのオンラインファイル共有を作成しました。 また、Windows、Linux、およびmacOSからこれらの共有にアクセスしました。
Samba共有は非常に一般的になっているため、多くのアプリケーションがSambaに保存されているデータにアクセスできます。 これらのアプリケーションは、Samba共有の機能と有用性を拡張できます。 たとえば、モバイルバージョンのメディアプレーヤー VLC は、Samba共有に接続して音楽やビデオをストリーミングできます。 アクセスするには、 open MRL を選択し、標準のSamba URLsmb://username@your_samba_hostname_or_server_ip/share
を使用します。 クロスプラットフォームバックアップユーティリティBackupPCを使用して、バックアップの宛先としてSamba共有を使用することもできます。
Sambaは、単純なファイル共有として機能するだけでなく、ドメインコントローラーまたはドメインのメンバーとしてWindowsActiveDirectoryと連携できます。 Samba Wiki ユーザードキュメントには、これを行う方法の詳細が含まれています。