オンラインプリント使ってみた。¶
Debian勉強会の資料印刷をFedEX Kinko’sでやってみた。で勘違いしていたのが、最初の見積り依頼でページ数少なくした方が良いだろうと22ページでPDFを生成したこと。中綴じ製本するなら4の倍数のページで印刷しないと後ろが余ってしまうんですな。よく考えれば、会社のプリンタでも4upとか8upするときは極力倍数になるようにしているのにね。余白ページと目次の位置を編集しなおして依頼しおした。
LaTeXで気づいたこと。¶
余白ページを印刷する場合、LaTeXでclearpageを連続させてもダメなんですな。
ダミーを挟む必要があるので、
\newpage\mbox{}\newpage
としないと余白ページが挿入されないと。
市販薬も医療費控除の対象になる。¶
知らなかった。ただ、条件がある。
http://www.nta.go.jp/taxanswer/shotoku/1122.htm
治療又は療養に必要な医薬品の購入の対価(風邪をひいた場合の風邪薬などの購入代金は医療費となりますが、ビタミン剤などの病気の予防や健康増進のために用いられる医薬品の購入代金は医療費となりません。)
そこで疑問がある。ワシはドライアイなので、目薬が欠かせない。でも目薬を注したところでドライアイが治るわけではない。だから少なくとも購入している市販の目薬は治療用途ではない。療養とは何を意味するのか?大辞泉によると、
http://dic.yahoo.co.jp/dsearch?stype=1&dtype=0&dname=0ss&p=%CE%C5%CD%DC
病気をなおすために、治療をし体を休めること。
とある。それって結果は治療と同じではないか。
で、そもそも治療の言葉の意味が治るとは限らないのではないか?とふと思った。
http://dic.yahoo.co.jp/dsearch?enc=UTF-8&p=%E6%B2%BB%E7%99%82&stype=1&dtype=0
病気やけがをなおすこと。病気や症状を治癒あるいは軽快させるための医療行為。療治。「歯を―する」
正解。ということは、ドライアイは治らないけれど、症状を緩和するために買っている目薬は医療費控除の対象になる、ということがだな。まぁ、それを入れたとしてもワシは10万には程遠いので関係ないのだけど。
既読ラベルを非表示にするが便利。¶
GmailのLabsにある、”既読ラベルを非表示にする”を有効にしてみたが、既読ラベルが非表示になるだけでなく、ちゃんと新着のあった未読ラベルが表示されるので、ラベルの種類が多いと非常に便利だ。とくにMLは放っておくと未読数が千とか万の単位になるので、もう追っかけるのも嫌になるので見なくなっていたのだが、これを有効にして、今までの未読は全て既読にして 1 、新着を追っかけるようにしたらまぁ割と目を通しやすくなった。それでも一日数百とか来るMLは何とかしたいなぁと思うが、まぁ一歩改善。
- 1
意味ねぇ。
法定点検。¶
そんな時しかatコマンドを使わない 1 ので、毎年この時期になるとmanマニュアル見ながら確認している。なので、メモ。
物理マシン¶
停電前にshutdownすれば良いだけなので、こんな感じ。
$ sudo at 19:40 Nov 14
warning: commands will be executed using /bin/sh
at> shutdown -h now
at> <EOT>
job 2 at Sat Nov 14 19:40:00 2009
ちなみに、atコマンドで実行されるジョブの実体はこうなってる。
$ sudo atq
2 Sat Nov 14 19:40:00 2009 a root
$ sudo at -c 2
#!/bin/sh
# atrun uid=0 gid=0
# mail hoge 0
umask 22
LS_COLORS=no=00:fi=00:di=01\;34:ln=01\;36:pi=40\;33:so=01\;35:do=01\;35:bd=40\;33\;01:cd=40\;33\;01:or=40\;31\;01:su=37\;41:sg=30\;43:tw=30\;42:ow=34\;42:st=37\;44:ex=01\;32:\*.tar=01\;31:\*.tgz=01\;31:\*.svgz=01\;31:\*.arj=01\;31:\*.taz=01\;31:\*.lzh=01\;31:\*.lzma=01\;31:\*.zip=01\;31:\*.z=01\;31:\*.Z=01\;31:\*.dz=01\;31:\*.gz=01\;31:\*.bz2=01\;31:\*.bz=01\;31:\*.tbz2=01\;31:\*.tz=01\;31:\*.deb=01\;31:\*.rpm=01\;31:\*.jar=01\;31:\*.rar=01\;31:\*.ace=01\;31:\*.zoo=01\;31:\*.cpio=01\;31:\*.7z=01\;31:\*.rz=01\;31:\*.jpg=01\;35:\*.jpeg=01\;35:\*.gif=01\;35:\*.bmp=01\;35:\*.pbm=01\;35:\*.pgm=01\;35:\*.ppm=01\;35:\*.tga=01\;35:\*.xbm=01\;35:\*.xpm=01\;35:\*.tif=01\;35:\*.tiff=01\;35:\*.png=01\;35:\*.svg=01\;35:\*.mng=01\;35:\*.pcx=01\;35:\*.mov=01\;35:\*.mpg=01\;35:\*.mpeg=01\;35:\*.m2v=01\;35:\*.mkv=01\;35:\*.ogm=01\;35:\*.mp4=01\;35:\*.m4v=01\;35:\*.mp4v=01\;35:\*.vob=01\;35:\*.qt=01\;35:\*.nuv=01\;35:\*.wmv=01\;35:\*.asf=01\;35:\*.rm=01\;35:\*.rmvb=01\;35:\*.flc=01\;35:\*.avi=01\;35:\*.fli=01\;35:\*.gl=01\;35:\*.dl=01\;35:\*.xcf=01\;35:\*.xwd=01\;35:\*.yuv=01\;35:\*.aac=00\;36:\*.au=00\;36:\*.flac=00\;36:\*.mid=00\;36:\*.midi=00\;36:\*.mka=00\;36:\*.mp3=00\;36:\*.mpc=00\;36:\*.ogg=00\;36:\*.ra=00\;36:\*.wav=00\;36:; export LS_COLORS
MAIL=/var/mail/hoge; export MAIL
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin; export PATH
LANG=ja_JP.UTF-8; export LANG
HOME=/home/hoge; export HOME
LANGUAGE=ja_JP:ja:en_GB:en; export LANGUAGE
LOGNAME=root; export LOGNAME
USER=root; export USER
USERNAME=root; export USERNAME
SUDO_COMMAND=/usr/bin/at\ 19:40\ Nov\ 14; export SUDO_COMMAND
SUDO_USER=hoge; export SUDO_USER
SUDO_UID=1111; export SUDO_UID
SUDO_GID=11111; export SUDO_GID
cd /home/hoge || {
echo 'Execution directory inaccessible' >&2
exit 1
}
shutdown -h now
Linuxコンテナ用。¶
コンテナが動いているマシンはいきなりshutdownするわけにはいかんので、lxc-stopで停止してやる必要がある。なので、次のようなスクリプトを用意した。
(legal-inspection.sh)
#!/bin/sh
for i in `lxc-ls`
do
if (lxc-info -n $i | grep -q "RUNNING") then
echo -en $i"\t:"
lxc-stop -n $i
test $? -eq 0 && echo stopping ok.
sleep 3
fi
done
shutdown -h now
exit 0
ジョブの登録は以下の通り。
$ sudo at -m 19:45 Dec 5
warning: commands will be executed using /bin/sh
at> bash ~/legal-inspection.sh
at> <EOT>
job 3 at Sat Dec 5 19:45:00 2009
これで来年からmanマニュアルをいちいち見ないで済むだろう。
- 1
cronで事足りる、という話もあるけれど、ちゃんと運用している場合はそれでもよい。でも、一人で運用している場合は、後でcronのエントリ消し忘れとかありうるので、1回きりのatが結構便利だったりする。