ON THE HAND

引っ越しました http://tech.andhandworks.com

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

このエントリーをはてなブックマークに追加

  1. --/--/--(--) --:--:--|
  2. スポンサー広告

Raspberry Pi をファイルサーバにする

前回までで Arduino と Wiiリモコンでのラジコンが完成しました。
Arduino ラジコンの発展もいくつかネタがあるのですが、
しばらくは Arduino から離れて Raspberry Pi の話を書いていこうと思います。

現在、Raspberry Pi は5機種出ています。
用途に合わせて、、、と言いたいところですが、
Arduino に比べると結構高いこともあり、
そんなに何台も買わないとなると、汎用性を考えて
第二世代 Model B 一択という気もします。

今回は Raspberry Pi2 Model B を NAS (ファイルサーバ)に仕立て上げます。

Raspberry Pi2 のセットアップ

通常は NOOBS (BIOS) を入れてモニタとキーボードを繋いで、、、とやるのですが、
それだけのために HDMI ケーブルや USB キーボードを用意するのも面倒です。
モニタもキーボードも無しでいきなり Raspbian を入れる手順を紹介します。

この手順を使うためにはあらかじめ次の条件を満たしておく必要があります。
  • Windows か Mac のパソコンがある。
  • DHCPが使えるネットワーク環境がある。
    (LANケーブルでPCと直接接続して IP アドレスを
    ごにょごにょすることでDHCP無しにすることも可能です。)
  • 有線ケーブルでネットワークに接続できる。
まず、Raspberry Pi のサイトから Raspbiean の圧縮ファイルをダウンロードします。
ダウンロードした ZIP ファイルを解凍するとディスクイメージが出来上がります。

Windows パソコンにWin32 Disk Imagerをインストールし、
解凍したディスクイメージを micro SD カードに書き込みます。

micro SD カードを Raspberry Pi2 に挿入し、LAN ケーブルを挿した状態で
Raspberry Pi2 を起動します。
起動が完了すると DHCP で IP アドレスが振られているはずです。
DHCP サーバ(無線ルータなど)の管理ページを見ると
Raspberry Pi という名前でアドレスが表示されているのではないでしょうか。

Tera Termなどの SSH クライアントソフトで Raspberry Pi2 の IP アドレスに対して SSH 接続します。
ユーザ ID は「pi」、パスワードは「raspberry」です。

必要なパッケージのインストール

次のコマンドを実行して OS を最新版にアップデートして再起動します。
pi@raspberrypi ~ $ sudo -s
root@raspberrypi:~# rpi-update
root@raspberrypi:~# apt-get update
root@raspberrypi:~# apt-get upgrade
root@raspberrypi:~# reboot
さらにWindowsファイル共有サーバである samba をインストール。
# apt-get install samba

外付け HDD の接続

SD カードだけではNAS として使うには容量が足りませんので
USB で外付けの HDD または SSD を接続する必要があります。

HDD/SSD はACアダプタで給電するタイプをお奨めします。
特に Raspberry Pi2 を使う場合は本体の電源が micro USB 給電になるため、
USB 給電の HDD を使うと電源の負担が大きくなり問題が出る可能性があります。

接続できたら「fdisk -l」でデバイスパスを調べます。
root@raspberrypi:~# fdisk -l

Disk /dev/mmcblk0: 15.6 GB, 15577645056 bytes
4 heads, 16 sectors/track, 475392 cylinders, total 30425088 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0009bf4f

        Device Boot      Start         End      Blocks   Id  System
/dev/mmcblk0p1            8192      122879       57344    c  W95 FAT32 (LBA)
/dev/mmcblk0p2          122880    30425087    15151104   83  Linux

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000130cd

   Device Boot      Start         End      Blocks   Id  System

この場合、「Disk /dev/sda: 1000.2 GB」から 1TB の HDD が /dev/sda として
認識されていることが分ります。

早速初期化してしまいます。
細かいオプションは「fdisk」で検索すると様々なサイトに書いてありますので省略。
root@raspberrypi ~ # fdisk /dev/sda
Command (m for help): n
※色々と質問されますが Enter キーを連打して新規パーティションを作成
Command (m for help): w
※パーティションテーブルを書き込んで終了。
root@raspberrypi ~ # mkfs.ext4 /dev/sda1

UUID を調べてディスクをマウントします。
「>>」を間違えて「>」にしてしまうと厄介なことになるので注意。
root@raspberrypi ~ # mkdir /mnt/hdd
root@raspberrypi ~ # mount -t ext4 /dev/sda1 /mnt/hdd
※マウントできることを確認
root@raspberrypi ~ # blkid /dev/sda1
root@raspberrypi ~ # cp -p /etc/fstab /etc/fstab.org
root@raspberrypi ~ # echo 'UUID="さきほど調べたUUID" /mnt/hdd ext4    0 2' >> /etc/fstab

samba の設定

ファイルサーバを仕立て上げます。
samba についても検索すると素晴らしい説明がたくさんみつかるので
ここでは詳細を端折ります。
次のように設定すればとりあえずファイルサーバにはなります。

「192.168.1.」は Raspberry Pi が所属しているネットワークを指定します。
vim /etc/samba/smb.conf
[global]
            :
   interfaces = 192.168.1. 127.0.0.0/8 eth0
            :
[public]
   comment = Public
   path = /mnt/hdd/
   public = yes
   read only = no
   browsable = yes

vim コマンドはキーボード入力だけで操作するテキストエディタです。
k, j, h, l キーがそれぞれ上下左右に移動。
i キーが入力モードに移行、ESC で入力モードから離脱。
「:wq」で書き込んで終了。

終わったら samba を再起動します。
root@raspberrypi ~ # service samba restart

これで Windows から「\\RaspberyPiのアドレス\pi」にアクセスすると
ディスクアクセスできるのではないでしょうか。


これでファイルサーバになりました。
ここからさらに VNC サーバにしたり、Scratch や Arduino IDE の
開発環境を使えるようにしますがその説明はまた後日。

このエントリーをはてなブックマークに追加

  1. 2015/03/29(日) 19:02:31|
  2. Raspberry Pi
  3. | コメント:0
関連記事
<<Raspberry Pi の Scratch GPIO を iPad から操作する | ホーム | 【完成】Wiiリモコン+Arduino+LEGO でラジコンを作る(4):WiiリモコンでDCモーターを操作する>>

コメント

コメントの投稿


管理者にだけ表示を許可する

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。