ubuntuにSamba導入でwindowsとファイル転送を楽々こなす
ubuntu で、いろいろな設定を行ったり、アプリをインストールしたりした記事を書く場合に、ubuntu で取得した画面のやり取りを USBメモリ経由で行っていました。
ubuntu マシンで USBメモリを差し込んでファイルを移した後、USBメモリを取り外して windowsマシンに差し込んでファイルを転送するわけですが、割と面倒なんですね。
FTP経由でファイル転送もできますが、いちいち FTPコマンドをたたくのもやはり面倒です。
もっと手軽にネット経由でファイル転送を出来ないだろうかと考えていたんですが 、samba を導入すれば実現できるのではないかと思いつきました。
Samba は Linux 上で Windows のファイルサーバ、プリントサーバ、ドメインコントローラーなどのネットワーク機能を実現するオープンソースソフトウェアです。
このソフトウェアは、LINUX の初心者向けの書籍を読むと必ず出てくるファイルサーバーです。
それでは、インストールから運用まで手順を追って見ていきましょう。
Samba導入
始めに、ubuntu に Samba をインストールします。
Sambaのインストールは、「端末」(画面左下のアクティビティから、ユーティリティをクリックして下の方にある)を使用して行います。
最初は ubuntu を最新状態にするところからです。
sudo apt update
sudo apt upgrade
次に Samba をインストールします。
sudo apt-get install samba
インストールしたら、Samba のバージョンを見てみましょう。確認段階のバージョンは 4.11.6 でした。
samba -V
Version 4.11.6-Ubuntu
Sambaの初期設定
rootユーザの設定
Samba の初期設定は root ユーザで実施します。root パスワードの設定を行っていない場合は、以下のコマンドで root パスワードを設定してから実施しましょう。
sudo passwd root
新しいパスワード:
新しいパスワードを再入力してください:
passwd: パスワードは正しく更新されました
Samba の設定ファイル(smb.conf)作成
Samba の設定ファイルを作成する前に、設定ファイル(smb.conf)のバックアップを行います。この作業は、万が一、設定ファイル変更に失敗した際の保険になるものです。確実に実施しましょう。
mv /etc/samba/smb.conf /etc/samba/smb.conf.bk
それでは、Samba の設定ファイル(smb.conf)を作成しましょう。
vi /etc/samba/smb.conf
vi が開いたら、insertモードで次の内容をコピーして保存します。
[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = ubuntu
security = user
map to guest = bad user
dns proxy = no
ntlm auth = yes
#==========================================================
[Share]
#共有フォルダ
path = /samba/share/
#マイネットワークに表示の有無
browsable = yes
#書き込み許可
writable = yes
#ゲストユーザのログイン許可
guest ok = yes
#読込みの許可
read only = no
#ファイル属性
force create mode = 0777
#ディレクトリ属性
force directory mode = 0777
共有フォルダ作成
次に、共有フォルダを作成します。
mkdir /samba
mkdir /samba/share
chown nobody:nogroup /samba/share
chmod 0777 /samba/share
Samba の 再起動
Samba の設定ファイル及び共有フォルダの作成が終了したので、Samba を再起動して、これらの設定を samba に認識させます。
service smbd restart
Sambaへのユーザ登録
Samba は独自でユーザーの管理をしますので、Samba を使用する前にユーザー登録が必要です。この処理を行わないと、windows から Samba へアクセスできません。
Samba とサーバーはそれぞれで利用者を管理しますが、同じユーザー名とパスワードを指定しても特に問題はありません。
Windowsからアクセスしたときに、認証で「ユーザー名」と「パスワード」を入力しますが、ここで登録した値を入力することになります。
pdbedit -L
pdbedit -a ユーザー名
new password:パスワード
retype new password:パスワード
パスワードは確認のため再度入力を求められますが、2回目のパスワード(retype new password)を入力して Enter すると、以下の結果が表示されます。
Unix username: ユーザー名
NT username:
Account Flags: [U ]
User SID: S-1-5-21-NNNNNNNNN-NNNNNNNNN-4087051051-1000
Primary Group SID: S-1-5-21-NNNNNNNNN-NNNNNNNNN-4087051051-513
Full Name: 氏名
Home Directory: \ubuntu\XXXXXXX
HomeDir Drive:
Logon Script:
Profile Path: \ubuntu\XXXXXXXX\profile
Domain: UBUNTU
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: 日, 03 10月 2021 14:51:27 JST
Password can change: 日, 03 10月 2021 14:51:27 JST
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
正しくユーザ名が入力されたか以下のコマンドを入力して確認できます。
pdbedit -L -v
すると、ユーザー名を登録した際表示された内容が表示されます。
これで準備は完了です。Windows から ubuntu にアクセスしましょう。
WindowsからSambaにアクセスする方法
Windows と Ubuntu が同じサブネットにあり、さらに同じワークグループ名であれば、Windows のエクスプローラから ubuntu のフォルダが見えるはずです。もし見えない場合は、ubuntu のフォルダを Windows のネットワークドライブに割り当てるのが一番簡単です。
60爺も、この方法で対応しました。
ネットワークドライブの割り当て
エクスプローラのネットワークを右クリックして「ネットワークドライブの割り当て」をクリックします。
フォルダ名設定
画面のように、割り当てるドライブ名を指定し、フォルダ名を「¥¥IPアドレス¥共有フォルダ名」(¥は小文字です)の形で指定します。
この指定を行う際、フォルダ名は share のみで大丈夫です。
ネットワーク資格情報入力
ネットワーク資格情報の入力画面が表示されますので、上記3.で入力したユーザ名とパスワードを入力し、OKをクリックします。
すると、エクスプローラ上に、上記 ubuntu で割り当てた /samba/share の内容が表示されます。
下記のように、あたかもローカルドライブのごとくエクスプローラから簡単に ubuntu のファイルをアクセスできるようになりました。
これで、ubuntu から windows へのファイル転送を、エクスプローラーを使用して楽々行うことが出来るようになりました。
最後に
ubuntuとwindowsのやり取りにUSBメモリを使っていたのが面倒になってきました。
そこで、Sambaの導入に踏み込みました。
初期設定を行い、Sambaのユーザー登録を行いました。
windowsとのやり取りを確認して終了です。これでファイルのやり取りが楽になりました!
■思えば「ubuntu」の記事も増えてきました!
参考
【 Ubuntuを使おう 第09回 】Ubuntu 20.04 LTSにsambaをインストールしてファイルサーバーを構築
Ubuntu20:Sambaサーバー設定
Ubuntuで簡単ファイルサーバー(NAS)構築
ディスカッション
コメント一覧
まだ、コメントがありません