Raspberry Piのインストールログ
メモしておく2
- apt-get
思いついたままインストールしたので順番ばらばら
ソースコンパイル時に必要なパッケージもあるので注意
# apt-get install raspi-config # apt-get upgrade # apt-get install postfix # apt-get install lv # apt-get install emacs # apt-get install wv ppthtml xlhtml # apt-get install w3m # apt-get install lynx # apt-get install dnsutils # apt-get install git # apt-get install w3m-el # apt-get install procmail # apt-get install gnupg2 # apt-get install anthy-el # apt-get install tcsh # apt-get install screen # apt-get install fetchmail # apt-get install pwgen # apt-get install libssl-dev # apt-get install telnet # apt-get install ntpdate # apt-get install squid # apt-get install pptpd # apt-get install postfix-policyd-spf-python # apt-get autoremove
- ソースからコンパイル
% git clone git://github.com/kazu-yamamoto/Mew.git % cd Mew % ./configure % make % sudo make install % sudo cp /usr/share/emacs/23.4/site-lisp/subdirs.el /usr/local/share/emacs/site-lisp
hyperestraier and qdbm
% wget http://fallabs.com/qdbm/qdbm-1.8.78.tar.gz % tar xvzf qdbm-1.8.78.tar.gz % cd qdbm-1.8.78 % ./configure --enable-zlib % make % sudo make install % sudo ldconfig
% wget http://fallabs.com/hyperestraier/hyperestraier-1.4.13.tar.gz % tar xvzf hyperestraier-1.4.13.tar.gz % cd hyperestraier-1.4.13 % ./configure % make % sudo make install
stunnel
dpkgでも存在するがmewでは使えなかった
"--disable-fips"でビルド
% wget https://www.stunnel.org/downloads/stunnel-4.56.tar.gz % tar xvzf stunnel-4.56.tar.gz % cd stunnel-4.56 % ./configure --disable-fips % make % sudo make install % bash $ for i in /usr/share/ca-certificates/mozilla/*; do cp $i ~/.certs/`openssl x509 -hash -noout -in $i`.0; done $ exit % openssl s_client -connect imap.gmail.com:993 -CApath ~/.certs/
- cronの設定
- rsyslogの設定
- /etc/rsyslog.conf
- ntpの設定
- /etc/ntp.conf
- sshdの設定
- イントラネット用デーモン(ほぼデフォルト)とインターネット用デーモン(違うポート番号・公開鍵限定)
- 両デーモンのRCスクリプト
- squidの設定
- postfixの設定
- pptpdの設定
- /etc/pptpd.conf
- /etc/ppp/{pptpd-options,chap-secrets}
設定ファイルはのちほど
Raspberry Piのイメージ(Raspbian)をmount
メモしておく
イメージの内容変更は未テスト
% unzip 2013-02-09-wheezy-raspbian.zip Archive: 2013-02-09-wheezy-raspbian.zip inflating: 2013-02-09-wheezy-raspbian.img % sudo /sbin/kpartx -av 2013-02-09-wheezy-raspbian.img add map loop0p1 (253:3): 0 114688 linear /dev/loop0 8192 add map loop0p2 (253:4): 0 3665920 linear /dev/loop0 122880 % sudo /sbin/fdisk /dev/loop0 Command (m for help): p Disk /dev/loop0: 1939 MB, 1939865600 bytes 255 heads, 63 sectors/track, 235 cylinders, total 3788800 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 Device Boot Start End Blocks Id System /dev/loop0p1 8192 122879 57344 c W95 FAT32(LBA) /dev/loop0p2 122880 3788799 1832960 83 Linux Command (m for help): q % sudo mount /dev/mapper/loop0p2 /mnt/tmp
解除するとき
% sudo umount /mnt/tmp % sudo /sbin/kpartx -dv 2013-02-09-wheezy-raspbian.img del devmap : loop0p2 del devmap : loop0p1 loop deleted : /dev/loop0
CentOSでSELinuxの修復
SELinux無効時にyumでインストールしたせいか
% sudo /etc/init.d/iptables restart ファイアウォールルールを適用中: [ OK ] チェインポリシーを ACCEPT に設定中filter [ OK ] iptables モジュールを取り外し中 [ OK ] iptables ファイアウォールルールを適用中: iptables-restore v1.3.5: iptables-restore: unable to initializetable 'filter' Error occurred at line: 3 Try `iptables-restore -h' or 'iptables-restore --help' for more information. [失敗]
と言われる
audit.logをみるとSELinuxのせいみたいで
Permissiveにすると問題なくrestartできる
messagesをみるとntpもコケているみたいで
めんどうくさいなと思ったので
% sudo /sbin/fixfiles restore /sbin/setfiles: labeling files under / ******************************************************************************* ************************************************************ matchpathcon_filespec_eval: hash table stats: 135155 elements, 35173/65536 buckets used,longest chain length 22 /sbin/setfiles: labeling files under /var **matchpathcon_filespec_eval: hash table stats: 2044 elements, 1336/65536 buckets used, longest chain length 4 /sbin/setfiles: labeling files under /boot matchpathcon_filespec_eval: hash table stats: 26 elements, 26/65536 buckets used, longest chain length 1 /sbin/setfiles: Done.
としたらなおった
CentOS6のSELinux Enforcingでrailsのlogrotate
railsはpassengerで動かしていて
logrotateの設定ファイルは以下
/var/www/rails/log/production.log {
#create 0644 nobody nobody
missingok
notifempty
sharedscripts
delaycompress
postrotate
/bin/touch /var/www/rails/tmp/restart.txt
endscript
}
わざわざnobodyを指定しなくても大丈夫だった
ただしlogrotateの権限logrotate_tで
ログなどを(読み|書き)込めるように
/var/www/rails/log/以下
や
/var/www/rails/tmp/restart.txt
をhttpd_log_tにしてしておく必要がある
またディレクトリの表記を"*"にすると権限がなくて
読み込めないことがあるので注意
Shibboleth-SPをSELinuxのEnforcingでうごかす
うごかすためのバッドノウハウ
module shibd 1.0; require { type var_run_t; type httpd_t; type initrc_t; class sock_file write; class unix_stream_socket connectto; } #============= httpd_t ============== allow httpd_t initrc_t:unix_stream_socket connectto; allow httpd_t var_run_t:sock_file write;
単にソケットファイルにhttpd_tのプロセスからつなぎたいだけ
ちゃんとしたtargetedでpolicyがでてほしい
去年(2011年6月)設定してたのですが
忘れてて思い出すまでえらく悩んだので
ちゃんと忘れずに書こうと思ったのでした
追記2012-12-17
これやるとlocalhostで動作しているMySQLに
allow_user_mysql_connect
なしでもsocket通信できてしまう
なんだかやっぱりばっどのうはうだ
TeX Live 2012をSELinux Enforcingで動かす
TeX Live 2012をCentOS6にインストール - kame-tの日記
の続きで
TeXLiveは/usr/local/texlive
にインストールされるが
ちゃんとラベルを貼らないとSELinuxではうごかないよという話
1. /usr/local/の他のディレクトリと同様にデフォルトは「usr_t」にする
% cd /usr/local % sudo chcon -R -t usr_t ./texlive
2. 実行ファイルは「bin_t」にする
% cd /usr/local/texlive/2012 % sudo chcon -R -t bin_t ./bin % sudo chcon -R -t bin_t ./texmf/scripts % sudo chcon -R -t bin_t ./texmf-dist/scripts % sudo chcon -t bin_t ./texmf/web2c/mktexdir % sudo chcon -t bin_t ./texmf/web2c/mktexnam % sudo chcon -t bin_t ./texmf/web2c/mktexupd % sudo chcon -t bin_t ./texmf/texconfig/tcfmgr
# bin/とかscripts/とかに加えてaudit.logとかで目についたものを
# 変更しているが実際はfindとか使って
# 実行権限のあるファイルを検出すべきかも
特に一般ユーザでtexliveをインストールしたせいか
一部「user_tmp_t」になっているファイルがあり
# インストール時に生成したファイルか?
そんなラベルではhttpdから読めないので
platexとかdvipdfmx叩くとエラーになるので要注意
--/var/log/httpd/error_log-- /usr/local/texlive/2012/texmf-var/web2c/eptex/platex.fmt: Permission denied
なのでtexliveをアップデートする際には注意が必要かも
# まだアップデートしたことないので
TeX Live 2012をCentOS6にインストール
TeX Live - TeX Users Group
Installing TeX Live over the Internet - TeX Users Group
Quick install - TeX Live - TeX Users Group
実はCentOS6にはtexliveという
パッケージがあるが2007で
日本語に難があるらしいので
これはアンインストール
その後上記のインストール方法に書かれた方法で
2012のパッケージをインストール
% wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz % tar xvzf install-tl-unx.tar.gz % cd install-tl-20121125 #ディレクトリ名は違うかと % sudo ./install-tl
するとデフォルトで/usr/local/texliveに入る
/usr/local/texlive/2012
は触らず
/usr/local/texlive/texmf-local/tex/latex/local
にローカルなstyを入れて
% sudo mktexlsr
した
ちなみに実行ファイルは/usr/local/texlive/2012/bin/x86_64-linux
にあるのでPATHを通すのを忘れずに
あとパッケージのアップデートは
% sudo tlmgr update --all % sudo tlmgr update --self
で
下記の先人の方が非常に参考になりました
CentOS 6.3にGhostscript 9.06とTeXLive 2012をインストールする - どこかWiki
フォント埋め込みに関して
TeX/Font/MapFile/KanjiMap - 東京大学大学院人文社会系研究科/文学部西洋古典学研究室の学生有志によるWikiページ