2013年1月27日日曜日

Raspberry Pi とWindows でファイル共有(samba)

[2016/04/03 追記]
 自分は今まで Raspbian Wheezy を使っていた(今も Dexter Industries の Raspbian for Robot をBrickPi, GoPiGo, GrovePiでは使ってる)のですが、最近 Pi 3 を手に入れてオンボードの無線LANを使うためには Raspbian Jessie が必要だったので、Jessieをセットアップして samba の設定をしようとしたところ、若干設定方法が変わっているらしいです。


 今回はRaspberry Pi ネタです。しばらく前に追加のRaspberry Piが届いていましたが、あんまりいじっていなかったので、以前のこの辺りとかこの辺りの復習を兼ねて久しぶりにいじってみました。
 あとから届いた方のRaspberry Piの設定をした時に忘れてたのですが、Windowsとファル共有できるようにするための Samba を設定していませんでした。まず、そこから。
     sudo apt-get install samba
 しかし、404エラー...となってしまったので、
     sudo apt-get update
で最新のパッケージリストを取得してから再度
     sudo apt-get install samba
でインストール。
 設定を適宜、自分はローカルネットワークでの「マイコン」として利用なのでセキュリティとかは無視。
     sudo vi /etc/samba/smb.conf
で、設定ファイルを編集して、一番最後に
     [pi]
      comment = pi's home
      path = home/pi
      public = Yes
      read only = No
      writable = Yes
      guest ok = Yes
      force user = pi
      directory mode = 0777
      create mode = 0666
を追加して、
     sudo service samba restart
でサービスを再起動するか、マシンごと sudo reboot して、Windows マシンからアクセスできることを確認。


 WindowsエクスプローラのアドレスバーにRaspberry PiのIPアドレスを直打ちして
    \\xxx.xxx.xxx.xxx
で、上記のように Raspberry Pi の piユーザのホームディレクトリが見えればOK。フォルダにアクセスして、中のファイルが見れるか、適当にWindows側からテキストファイルやフォルダを作成・削除してアクセス権の確認を行います。
 ついでにRaspberry Pi側のファイルマネージャのアドレスバーに WindowsやNASのアドレスに対して、
    smb://xxx.xxx.xxx.xxx
のように打ち込んでアクセス。ユーザーとパスワードを確認するダイアログが表示されるので、ユーザー、ドメイン(ドメインでない場合はアクセス先のPC名)、パスワードを入力すれば


Raspberry Pi 側からWindowsのファイルへアクセスすることもできそうです。
 実際にWindowsとRaspberry Piで同一のファイルをやり取りしてそれぞれでうんぬんは文字コードとか面倒ですが、自分の場合は、マイコンとしてのRaspberry PiのプログラムコードをWindows側にバックアップしておきたい、あるいはWindows側の使い慣れたテキストエディタで編集したい(これは文字コード注意ですが・・・)というところが目的です。