【お知らせ】ドメインを「dreamseed.blog」に変更しました。

PogoPlugをOpenPogo化してSambaをインストールしてみた

当ブログの一部のリンクはアフィリエイトリンクです。これらのリンクから商品を購入された場合、当サイトは一定の報酬を得ることがあります。

IMGP6788

とある目的のためにpogoplugでsambaを動かす必要が出てきたので、openpogo化してみました。作業はほぼすべて、「とりあえず再起動日記」の記事通りに行いましたが、途中、wgetの部分のみ違う方法を採りました。

下記は基本的に「とりあえず再起動日記」と同じ内容ですが、備忘録として記載しておきます。

1. 下準備

まず、PogoPlugへのSSH接続が出来るようにします。これは、my.pogoplug.comにアクセスして、設定 > セキュリティで「このPogoplug機器へのSSHアクセスを有効にする」にチェックを入れるだけです。このとき、「パスワードを変更する」でパスワードを設定しておきます。

次に、OpenPogoを入れるUSBメモリを用意します。1GBあれば十分なようですが、今どき4GB以下のものを見つけるほうが難しいかもしれません。私は4GBのUSBメモリを760円で購入してきました。

2. IPアドレスの確認

PogoPlugに繋いでいる、普段使用しているHDDを念のために外しておきます。そして、OpenPogo用のUSBメモリを挿します。そして、PogoPlugにSSHで接続します。

SSH接続のため、PogoPlugのIPアドレスを調べる必要がありますが、下記の方法で確認できます。

https://service.pogoplug.com/svc/api/loginUser?email=pogoplugアカウントのメールアドレス&password=パスワード

に接続すると、

{“valtoken”:”文字列”,”user”:
{“userid”:”~”,”screenname”:

というような表示になるので、最初のvaltoknの文字列をコピーします。そして、

http://service.pogoplug.com/svc/api/listDevices?valtoken=コピーした文字列

にアクセスすると、表示される文字列の中に「”apiurl”:”http://IPアドレス/~」という部分があるので、それでIPアドレスを確認します。

3. USBメモリのフォーマット

PogoPlugにSSHで接続します。WindowsならteratermなどのSSHクライアントが必要です。Macなら標準ターミナルから接続できます。以下はMacでの例です。

$ ssh -l root PogoPlugのIPアドレス

で接続可能。パスワードはmy.pogoplug.comで指定したやつです。

無事、接続できたら、mke2fsをダウンロードし、hbwdというプロセスを止めて一時的にPogoPlugの機能を停止します。

# cd /tmp
# wget http://plugapps.com/os/pogoplug/mke2fs
# chmod 755 mke2fs
# killall hbwd

次に、fdiskコマンドを使って挿入したUSBメモリのパスを確認します。

# /sbin/fdisk -l

おそらく、/dev/sda1という結果が返ってくると思います(sdb1の場合もあるかも)。これを確認したら、fdiskでパーティションを切り直します。

#/sbin/fdisk /dev/sda

mでhelpが表示されるので確認してください。やることは、d(パーティションの削除)→n(新規パーティションの作成)→1(パーティション番号1を指定)です。

これが済んだら、先ほどダウンロードいsたmke2fsでフォーマット。

# ./mke2fs /dev/sda1

USBメモリを抜いて、PogoPlugを再起動。

# /sbin/reboot

4. OpenPogoのインストール

USBメモリを挿します。この時点で、PCからはP:として認識可能になっているはずです。この状態で、「http://www.pogoplugged.com/download/12124/Create-an-openpogo-base-system-on-a-USB-drive/」からOpenPogoをダウンロードします(ファイル名はopt.tar.gz)。ダウンロードしたファイルはUSBメモリにコピーしておきます。

再度、SSHでPogoPlugに接続します。接続したら、先ほどコピーしたopt.tar.gzを展開します。

# cd /tmp/.cemnt/mnt_sda1
# tar xzvf opt.tar.gz

展開されたディレクトリに「/opt」でアクセスできるようリンクを貼ります。

# mount -o rw,remount /
# ln -s /tmp/mnt_opt/.opt /opt

そして起動スクリプトを修正してPogoPlug起動時にOpenPogoも動くようにします。「/etc/init.d/rcS」に下記の内容を追加します。viでやるか、「とりあえず再起動日記」にあるようにechoで書いていきます。

# vi /etc/init.d/rcS
##以下の内容を最後部に追加
/etc/init.d/mount_opt
/opt/etc/init

/etc/profileも作成します。

# vi /etc/profile
## 以下の内容で作成
#!/bin/bash
export PATH=/opt/bin:/opt/sbin:/usr/bin:/usr/sbin:/bin:/sbin

起動スクリプトを/etc/init.dにコピーします。

#cp /tmp/.cemnt/mnt_sda1/.opt/mount_opt /etc/init.d/
#chmod 755 /etc/init.d/mount_opt

そして再起動

# /sbin/reboot

5. ipkg update

そのままでは「ipkg update」が失敗するのでwgetをwrapします。

# mount -o rw,remount /
# mv -i /usr/bin/wget /usr/bin/wget.busybox
# vi /usr/bin/wget.sh
## 以下の内容で作成
#!/bin/sh
arg=`echo $* | sed -e 's/--passive-ftp//g'`
/bin/busybox wget $arg

作ったwget.shをwgetとしてリンクを貼ります。

# chmod 755 /usr/bin/wget.sh
# ln -s /usr/bin/wget.sh /usr/bin/wget

デフォルトで設定されているリポジトリが無効になっているので、それを修正。

# cd /opt/etc/ipkg
# vi armel-feed.conf
## リポジトリを下記に変更
src cross http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/stable

この後、「ipkg update」を実行

# ipkg update

エラーが出なければOKです。

6. Sambaのインストール

# ipkg install samba35 samba35-swat

/opt/etc/samba/smb.confを作成しますが、設定は自身の好みで。sambaの設定内容は検索すればいくらでも出てきます。「とりあえず再起動日記」のままの下記の設定ももちろんOK。

[global]
 netbios aliases = POGOPLUG
 server string = POGOPLUG
 null passwords = Yes
 guest account = root
 log file = /opt/var/log/samba/log.%m
 max log size = 50
 smb passwd file = /opt/etc/samba/smbpasswd
 socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=131072 SO_SNDBUF=131072 SO_KEEPALIVE
 load printers = No
 dns proxy = No

[HDD1]
 path = /tmp/.cemnt/mnt_sdb1/
 read only = No
 force create mode = 0666
 force directory mode = 0777
 guest only = Yes
 guest ok = Yes

sambaのユーザを登録します。

# smbpasswd -a root

パスワードを聞かれるので2回打ちます。ここではrootというユーザを作りましたが、もちろん別のユーザ名でも構いません。

この状態でsambaを起動してみます。

# /opt/etc/init.d/S08samba start

うまく行けば、PCのネットワークコンピュータから参照可能になっているはずです(ユーザ名、パスワードは上記で指定したものです)。

7. 自動起動の設定

いちいち手動でsambaを起動するのは面倒なので、PogoPlug起動時にsambaも起動するようにしておきます。

# vi /etc/init.d/rcS
## 下記の内容を最後尾に追加
/opt/etc/init.d/S08samba start

以上でPogoPlugのOpenPogo化、およびssambaの設定は終了です。「とりあえず再起動日記」ではswatの設定も行っていますが、面倒なので省きました。一回設定しちゃえば弄らないし。

PogoPlugならわざわざsambaを設定しなくても、当然ながらPCから使用できますが、SMBプロトコル経由で接続したい理由があったので設定してみました。肝心のその理由についてはそのうちに。しかし、OpenPogoは思ったよりも敷居が低かったのでほかにもいろいろ遊べそうです。

タイトルとURLをコピーしました