Sambaは、フォルダーやその他のリソースをエンドユーザーと共有できるようにするオープンソースのファイル共有プロトコルです。この記事では、Sambaをインストールして使用し、UbuntuLinuxディストリビューションでファイルを共有する方法について詳しく説明します。この記事では、Ubuntu20.04LTSシステムとWindows10ですべてのコマンドと一連の手順を実行しました。
前提条件
システムにSambaをインストールするには、sudo権限を持っているか、rootユーザーアカウントからログインする必要があります。
Ubuntu20.04にSambaをインストールする
新しいパッケージまたはソフトウェアをインストールする前に、システムのaptパッケージリポジトリを更新することをお勧めします。したがって、以下のコマンドを実行してaptリポジトリを更新します。
$ sudo apt update
次に、次のコマンドを実行してSambaをインストールします。
$ sudo apt install samba smbclient
インストールプロセスをさらに進めるには、「y」を押してから「Enter」を押します。
しばらくすると、システムへのSambaのインストールが完了します。
次のコマンドを入力して、Sambaの実行中のサービスのステータスを確認できます。
$ sudo systemctl status smbd
次に、ファイアウォールアクセスルールを変更して「Samba」プロファイルを有効にします。
$ sudo ufw allow 'Samba'
Sambaを使用してフォルダを共有する
Sambaのインストールが完了すると、デフォルトのUbuntuファイルマネージャーツール「Nautilus」を使用して、フォルダーまたはディレクトリをグラフィカルに共有できるようになります。
Nautilusファイルマネージャを介してディレクトリを共有する方法のデモを再生してみましょう。
ファイルマネージャに移動し、ローカルネットワークを介して共有するフォルダを選択します。必要なフォルダを右クリックし、次の画像でも赤で強調表示されているリストアイテムの表示から[ローカルネットワーク共有]オプションを選択します。
次のフォルダ共有ダイアログがシステムに表示されます。ディレクトリを共有するには、次のチェックボックスをオンにする必要があります。
[このフォルダを共有する]チェックボックスをオンにしてから、共有名を入力すると、コメントを追加することもできますが、これはオプションです。
デフォルトのLinux構成の共有ディレクトリの所有者のみが、Samba共有のファイルとディレクトリの読み取りまたは書き込みを行うことができます。
[共有を作成]ボタンをクリックします。
その後、次のダイアログがシステムに表示されます。 [権限を自動的に追加する]をクリックします。
これで共有が有効になり、使用できるようになります。次に、キャンセルオプションをクリックして、フォルダ共有ダイアログを閉じます。
フォルダを共有したら、以下のスクリーンショットに示されているフォルダアイコンを変更する必要があります:
Sambaユーザーを作成する
ゲストユーザーの場合、Samba共有ディレクトリにアクセスするためにユーザーアカウント認証は必要ありません。ゲスト共有を使用することで、誰もがネットワーク上の共有フォルダにアクセスできます。ただし、許可された人物としてSamba共有にアクセスするには、Sambaユーザーアカウントが必要です。
注: ローカルのLinuxサーバーアカウントがSambaユーザーアカウントにリンクされていることを知っておく必要があります。そのため、ローカルのLinuxサーバーユーザーのアカウントと一致するSambaユーザーの名前を同じに保つことができます。
たとえば、次のコマンドを実行して、「kbuzdar」という名前のSambaユーザーを作成しています。
$ sudo smbpasswd -a kbuzdar
上記のコマンドで、「kbuzdar」という名前は、Ubuntuでのログインユーザーの名前です。
ユーザーの新しいパスワードを入力し、「Enter」を押します。もう一度、新しいパスワードを再入力して、「Enter」を押します。
ターミナルに、新しいSambaユーザーが正常に作成され、新しく作成されたユーザーに新しいパスワードが割り当てられたことが表示されます。
LinuxシステムでSamba共有にアクセスする
Samba共有にアクセスするには、SambaクライアントプログラムをUbuntuシステムにインストールする必要があります。
[その他の場所]をクリックし、次のスクリーンショットに示されている[サーバーに接続]フィールドにSamba共有のアドレスを入力します。
次のダイアログがシステムに表示されます:
上のスクリーンショットでは、「匿名」ユーザーとして接続するか、「登録ユーザー」として接続するかの両方の選択肢があります。 Sambaユーザーの資格情報を入力し、[接続]ボタンをクリックします。
サーバーまたはホスト名をクリックします。
ここでは、すべてのSambaがディレクトリを共有していることがわかります。
次に、特定のディレクトリをクリックして、資格情報を入力します。
その後、システム上のSamba共有フォルダのコンテンツにアクセスできます。
WindowsでSamba共有にアクセスする
Windowsユーザーは、次の手順を使用してSamba共有に接続することもできます。
ファイルエクスプローラーを開き、[このPC]オプションを右クリックします。次のドロップダウンリストが開きます。 [ネットワークの場所を追加]を選択します。
次のウィザードがシステムに表示されます。 [次へ]をクリックします。
次に、もう一度[次へ]をクリックして、カスタムネットワークの場所を選択します。
サーバーのIPとSamba共有のユーザー名を入力します。
Sambaアカウントのクレデンシャルを入力すると、共有ディレクトリが表示されます。
コマンドラインを使用してSamba共有にアクセスする
次の構文を使用してSambaを介して共有するディレクトリを作成し、chownおよびchmod2770コマンドを使用して特権を割り当てます。
$ mkdir /home/<folder-name>/<user-name>
$ mkdir /home/samba/kbuzdar
次に、次のコマンドを使用してユーザーを有効にします。
$ sudo smbpasswd -e kbuzdar
次のコマンドを使用して、安全のためにsmb.confファイルのコピーを作成します。
$ sudo cp /etc/samba/smb.conf ~
次のコマンドを実行して、お気に入りのテキストエディタで構成ファイルを編集します。
$ sudo nano /etc/samba/smb.conf
構成ファイルがロードされたら、ファイルの最後に次のコードを追加します。
[<folder_name>]
path = /home/<user_name>/<folder_name>
valid users = <user_name>
read only = no
user_nameとfolder_nameを独自の詳細に置き換えます。
次に、以下のコマンドを使用してsambaサービスを再起動します。
$ sudo service smbd restart
smb.confファイルのエラーをテストするには、以下のコマンドを実行します。
testparm
これで、次のコマンドを使用して、samba共有フォルダーにアクセスできます。
$ sudo apt install smbclient
次のコマンドは、すべてのsamba共有フォルダーを一覧表示します。
$ smbclient -L //<HOST_IP_OR_NAME>/<folder_name> -U <user>
次のコマンドを入力して、samba共有に接続します。
$ smbclient //<HOST_IP_OR_NAME>/<folder_name> -U <user>
結論
上記の記事から、Ubuntu20.04LinuxシステムにSambaをインストールする方法を学びました。 Samba共有を使用してローカルネットワーク経由でフォルダを共有する方法を実装しました。システムでSambaのメリットをお楽しみください。