2013/05/31

不要サービスの削除など

無駄なメモリ消費を抑えるため、不要サービスを削除する。

tty2〜6を起動させないように
$ sudo vi /etc/inittab
#
1:2345:respawn:/sbin/getty --noclear 38400 tty1
# 2:23:respawn:/sbin/getty 38400 tty2
# 3:23:respawn:/sbin/getty 38400 tty3
# 4:23:respawn:/sbin/getty 38400 tty4
# 5:23:respawn:/sbin/getty 38400 tty5
# 6:23:respawn:/sbin/getty 38400 tty6


不要パッケージ削除
$ sudo apt-get remove dbus triggerhappy 2013/06/03 修正
削除しなくていいかも。。。


ntp関連
sudo apt-get remove ntp
$ sudo apt-get install ntpdate

$ sudo crontab -e
# 1時間ごと(毎時0分)に、時刻合わせを行う
0 * * * * /etc/network/if-up.d/ntpdate > /dev/null 2>&1

$ sudo vi /etc/default/ntpdate
# NTPSERVERS="0.debian.pool.ntp.org 1.debian.pool.ntp.org 2.debian.pool.ntp.org 3.debian.pool.ntp.org"
NTPSERVERS="0.ntp.nict.jp 1.ntp.jst.mfeed.ad.jp 2.ntp.ring.gr.jp"


$ sudo apt-get autoremove

Rasbian のアップデート

Rasbian のアップデートを忘れてた!

そのままだと、
$ sudo apt-get update
$ sudo apt-get upgrade
なんだけど、
国内サーバーにリポジトリをミラーリングしてくれてる奇特な方がおられるので、
せっかくなので利用させていただく。

https://twitter.com/kfujieda/status/301119397064486912

$ sudo vi /etc/apt/sources.list

変更前
## deb http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi

変更後
deb http://ftp.jaist.ac.jp/raspbian/ wheezy main contrib non-free rpi


$ sudo apt-get update
$ sudo apt-get upgrade
で更新

ミラーサイトが遅かったら戻すべし

Apacheの設定

ownCloud を動かすと、
.htaccessが云々と怒られる。

/var/www/owncloud/.htaccess を
/etc/apache2/conf.d/owncloud.conf
としてコピー&編集

Alias /owncloud /var/www/owncloud
<Directory /var/www/owncloud>
  <IfModule mod_fcgid.c>
  <IfModule mod_setenvif.c>
  <IfModule mod_headers.c>
    SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1
    RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION
  </IfModule>
  </IfModule>
  </IfModule>
  ErrorDocument 403 /core/templates/403.php
  ErrorDocument 404 /core/templates/404.php
  <IfModule mod_php5.c>
    php_value upload_max_filesize 513M
    php_value post_max_size 513M
    php_value memory_limit 512M
    <IfModule env_module>
      SetEnv htaccessWorking true
    </IfModule>
  </IfModule>
  <IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteRule ^.well-known/host-meta /public.php?service=host-meta [QSA,L]
    RewriteRule ^.well-known/host-meta.json /public.php?service=host-meta-json [QSA,L]
    RewriteRule ^.well-known/carddav /remote.php/carddav/ [R]
    RewriteRule ^.well-known/caldav /remote.php/caldav/ [R]
    RewriteRule ^apps/calendar/caldav.php remote.php/caldav/ [QSA,L]
    RewriteRule ^apps/contacts/carddav.php remote.php/carddav/ [QSA,L]
    RewriteRule ^apps/([^/]*)/(.*\.(css|php))$ index.php?app=$1&getfile=$2 [QSA,L]
    RewriteRule ^remote/(.*) remote.php [QSA,L]
  </IfModule>
  <IfModule mod_mime.c>
    AddType image/svg+xml svg svgz
    AddEncoding gzip svgz
  </IfModule>
  <IfModule dir_module>
    DirectoryIndex index.php index.html
  </IfModule>
  AddDefaultCharset utf-8
  Options -Indexes
</Directory>

ownCloud をインストール

Apache2 とか PHP とか 各種ライブラリ
$ sudo apt-get install apache2 libapache2-mod-php5 php5-intl
$ sudo apt-get install php5-gd php-xml-parser php5-sqlite
$ sudo apt-get install smbclient curl libcurl3 php5-curl

$ sudo apt-get install php5 sqlite3
↑ 2013/06/05 追記 コマンドラインでも実行できるように

Apache2の設定
$ sudo vi /etc/apache2/sites-enabled/000-default

       <Directory /var/www/>
#               Options Indexes FollowSymLinks MultiViews
#               AllowOverride None
                Options -Indexes ExecCGI FollowSymlinks
                AllowOverride All
                Order allow,deny
                allow from all
       </Directory>


ownCloud のダウンロード&展開
$ cd /var/www
$ sudo wget http://download.owncloud.org/community/owncloud-x.x.x.tar.bz2
$ sudo tar -xjf owncloud-x.x.x.tar.bz2
$ sudo rm owncloud-x.x.x.tar.bz2

ディレクトリ設定
$ sudo chown -R www-data:www-data /var/www
$ sudo chown -R www-data:www-data /var/www/owncloud
↑ 2013/05/05 修正 ディレクトリミス

ホストマシンから
http://192.168.0.xxx/ownclowd

2013/05/30

USB-HDD をマウント

データ用HDD(パーティション2)をマウントして使用出来るようにする。

全域をデータ領域にするため、
パーティション2のマウントポイントを /var/www にする。
$ sudo vi /etc/fstab

#/dev/mmcblk0p2  /               ext4    defaults,noatime  0       1
/dev/sda1       /               ext4    defaults          0       0
/dev/sda2       /var/www        ext4    defaults          0       0

mmcblk0p2の記述が残ってるのでコメントアウト
sda1をルートポイントにマウント
sda2を/var/wwwにマウント


再起動して
$ df

/dev/sda2        nnnnnnnn nnnnnnnn nnn /var/www

となってればおk

固定IPの設定

IPアドレスを固定IPにする。

$ sudo vi /etc/network/interfaces

変更前
iface eth0 inet dhcp

変更後(値はネットワークによる)
iface eth0 inet static
 address 192.168.0.xxx
 network 192.168.0.0
 netmask 255.255.255.0
 broadcast 192.168.0.255
 gateway 192.168.0.1
 dns-nameservers 192.168.0.1


再起動後、SSHで再接続
> ssh 192.168.0.xxx

Raspberry Pi 初期設定

RPi にSSHで接続し、初期設定をおこなう。

> ssh pi@192.168.xxx.xxx

$ sudo raspi-config

・update
 なにはともあれ、まずはアップデート

(以下、2013/05/30現在のraspi-config)

・Enable Boot to Desktop
 No
 を選択

・Internationalisation Options
 ・Change Locale
  en_US.UTF-8 UTF-8
  ja_JP.UTF-8 UTF-8
  を追加選択

 ・Change Timezone  
  Asia - Tokyo
  に設定

・Advanced Option
 ・Hostname
  raspi
  とか、短めの名前に変更

 ・Memory Split
  16
  に設定(16MB)

Finishを選ぶとrebootするか?と聞いてくるので、
No
を選ぶ。先に自分アカウントを設定するため。

初期設定が完了したら自分アカウントの作成&アカウントpiの抹消をおこなう。
$ sudo adduser hogehoge
パスワードとか色々設定

$ sudo visudo
hogehoge ALL=(ALL) ALL
を追加

リブート
$ sudo reboot


新しく作った自分アカウントでRPiにログイン
> ssh hogehoge@192.168.xxx.xxx

アカウントpiの削除
$ sudo userdel -r pi

$ sudo visudo
pi に関する記述を消しておく

2013/05/29

Raspberry Pi に ownCloud で俺様専用クラウドを構築

あたらしい記事を参照してみてください。
 → RaspberryPi に ownCloud で俺様専用クラウドを❝再❞構築 (1)


Raspberry Pi と余ったHDD を有効利用するために ownCloud をインストールしてみる。

まずは、
・新規構築
・Raspbian をHDDに載せる(SDはブートのみ)

準備
・2GB SDカード
・USB-HDD

USB-HDDを2パーティションに分割。それぞれext4でフォーマット。
パーティション1をシステム領域(2GB以上の領域を確保)
パーティション2をデータ領域(残り全部)
とする。

ダウンロードしたRaspbianをSDカードに焼く。
$ sudo dd if=wheezy-raspbian.img of=/dev/mmcblk0 bs=1M

こんがり焼きあがったSDカードから、boot以外の領域(パーティション2)を吸い出す
$ sudo dd if=/dev/mmcblk0p2 of=raspbianSD.img bs=1M

吸い出したイメージをUSB-HDD(パーティション1)に展開
$ sudo dd if=raspbianSD.img of=/dev/sda1 bs=1M

−−−−−−−−−−−−

RPiにSDとHDDを挿し、電源ON!
RPiのLEDが安定したら、IPアドレスを調べてSSHで接続。

UbuntuでIPアドレスを調べる場合は、
$ sudo nmap -sP 192.168.xxx.1-255


UID:pi
PWD:raspberry
で接続
$ ssh pi@192.168.xxx.xxx

接続後、dmesgでHDDの接続状況を確認し、ブート手順を書き換える。

たとえば/dev/sdaに接続されている場合、
$ sudo vi /boot/cmdline.txt
root=/dev/mmcblk0p2 と定義してあるところを
root=/dev/sda1 に書き換える。

rebootすると、HDDから起動するハズ。
#アクセスランプで妄想

フォロワー