見出し画像

Linuxでのファイル共有の覚書

こんにちは!

今回はLinuxでのファイル共有に関する記事を書きたいと思います。あえて記事にするようなレベルのものではないかも知れませんが、まあいつもの備忘録ということで。内容的には以前書いたネットワークストレージの話のおまけ的なものです。


共有フォルダのマウント

先ほど書いたとおり、今回はネットワークストレージの記事の補足的内容です。その記事ではLinux内のフォルダ(ディレクトリ)を共有フォルダとして公開する方法を書きましまたが、今回は受け手側の設定についてです。以前の記事ではiPadやandroid端末で共有フォルダにアクセスする方法を書いたわけですが、今回はLinux PCからそれにアクセスするための方法について書いていきます。要するに、Linux PCから、別のLinux PC上の共有フォルダにアクセスするための方法ですね。

今回はそんなに説明する内容が多くないので、サクサク進めていきましょう。

まずは共有フォルダをマウントするためのフォルダの作成です。

$ sudo mkdir /mnt/storage

今回は「/mnt/storage」というフォルダを指定していますが、もちろんこれはどこでも構いません。

必要なパッケージは「samba-client」と「cifs-utils」の2つ。いつもどおり、aptからダウンロード・インストール可能です。

$ sudo apt-get install samba-client
$ sudo apt-get install cifs-utils

僕自身もこれらのパッケージの関係をはっきり理解しているわけではないですが、ネットワーク上の共有フォルダをマウントするために必要なもののようです。これらのパッケージを使って、下記のようなコマンドを打って共有ファイルをマウントします。

$ sudo mount.cifs -o "username={SAMBA USER},password={PASS}",file_mode=0777,dir_mode=0777 //{IP ADDRESS}/share /mnt/storage

ここで{SAMBA USER}はサーバー側のSambaのユーザー名、{PASS}はそのパスワード、{IP ADDRESS}はサーバーのipアドレスを入力すればOK。おそらくipアドレスではなくホスト名でもいけるんじゃないかと思います。あと、ipアドレスのあとにある「share」についてはsambaサーバー側の設定次第ですね。具体的には、「/etc/samba/smb.conf」のところで設定した名称([ ]で囲んだ部分の名称)になります。

基本的に、ここまでコマンドを打てば共有フォルダがマウントされるので、他のフォルダと同じように扱えるようになります。


自動化

とはいえ、共有フォルダにアクセスするために毎回上記のコマンドを打つのは面倒です。この手の長いコマンドは詳細を忘れる可能性が高いので、シェルスクリプトとして保存しておくのが妥当でしょう。

#!/bin/bash
sudo mount.cifs -o "username={SAMBA USER},password={PASS}",file_mode=0777,dir_mode=0777 //{IP ADDRESS}/share /mnt/storage # 共有フォルダのmount
sleep 2;Thunar /mnt/storage

ということで、こんな感じでシェルスクリプトを組みました。デスクトップにこのシェルスクリプトを起動するランチャーを作成しておけば、デスクトップからアイコンをダブルクリックで共有フォルダにアクセス出来るようになります(ついでにファイルマネージャーも開くようにスクリプトを組んでいます)。

「sleep 2」で待機2秒を入れている理由は、マウントの直後にすぐにファイルマネージャを起動すると共有フォルダが見えないケースがあるためです。おそらく、マウントの処理時間よりもファイルマネージャが立ち上がる時間のほうが早いので、マウントの前にファイルマネージャが立ち上がってしまうのだと思います。実際、この2秒の待機をいれることでほぼ問題なく表示されるようになりました。

また、最近僕はファイルマネージャとして「Thunar」を使っているので、Sleepのあとのファイルマネージャとして「Thunar」を指定していますが、もちろんこれは別に何を使ってもOKです。汎用性を考えるなら、「xdg-open」とするべきかなとは思います(実際に試していないのでわかりませんが)。Linuxにおけるファイルマネージャの仕組み(もっと言うとデスクトップ環境の仕組み)なんかはまだそんなに理解できていないので、そのうちきちんと理解できるようになりたいところではあります。


まとめ

ということで、今回はLinuxの共有ファイルを別のLinuxマシンでマウントする方法について書きました。あまり使う機会は多くないかも知れませんが、複数台のLinuxを動かすのであれば設定しておきたい項目かなとは思います。そんなに難しいことをしているわけではないですが、結構忘れやすいのでこうして書いておくと必要なときに思い出せて良いですね。

それでは、また!


この記事が気に入ったらサポートをしてみませんか?