ラズパイにopenssl0.9.8をインストール

raspbianでPound-2.7をコンパイルしたいのだが、またlibcryptとlibsslでエラーになる。dpkg -l libssl* で調べるとlibssl1.0.2とlibssl1.1が最初からインストールされている。ライブラリへのパスも張られている。これはlibsslのバージョン違いが原因のようだ。Pound-2.7が動いているCentOS5.11のopensslは0.9.8eだ。たぶんPoundはopensslが0.9.8なのを当てにしているのだろう。しかたないので、openssl0.9.8をラズパイへ入れることにした。0.9.8なら何でも良いだろうが、Pound-2.7のコンパイルの実績がある0.9.8kにした。

/usr/local/srcへopenssl-0.9.8k.tar.gzを解凍

./config zlib
make
make depend
make install

/usr/local/sslにライブラリはインスト―ルされるが、なぜかスタティックライブラリの.a形式。.soはできなかった。ここでPoundをconfigureするときは

./configure --with-ssl=/usr/local/ssl

cryptoは通るけど、またsslが通らないので、configureをコメントアウトして、make。ここでなぜかSSL回りでエラーが出る。シンボルが宣言されてないというのが多数。どうせSSL接続は使わないので、全部適当に宣言し直して無理やりmakeを通す。これで何とかコンパイルできて、ラズパイでpoundが動くようになった。

広告

ラズパイにapache2とPHP7とmariaDBをインストール

apache2

apt install apache

PHP7.0

apt install php php-mysql php-gd php-mbstring

mariaDB

apt install mariadb-client mariadb-server

とりあえず、これで動くみたい。apache2は/var/log/apache2がないと起動時にエラーになるため、RAMディスクで/var/logを構築している場合は、apacheをrc.localより後に起動するように設定する。

 

ラズパイのext4ジャーナルを無効にする

ラズパイのSDメモリカードへの書き込みを減らすため、ファイルシステムのジャーナルを無効にする。

ラズパイで

tune2fs -o journal_data_writeback /dev/mmcblk0p7

/dev/mmcblk0p7は/にマウントされているデバイス。/etc/fstabを見ると分かる

ラズパイをシャットダウンしてSDメモリカードを外す。他のDebianのマシンにSDメモリーカードを差して、自動マウントされたらアンマウントしておく

tune2fs -O ^has_journal /dev/sdb7

/dev/sdb7はSDメモリカードの/の領域。SDメモリカードをラズパイに差して起動して、ラズパイで

debugfs -R features /dev/mmcblk0p7

で、結果にhas_journalがなくなっていれば、無事ジャーナルが無効になっている。