平成24年1月14日(土曜日)友引 やぎ座
注:イメージが、まだ、まともに流通していない時に、新たにさくらのVPS
をお試し(後にそのまま契約予定)でインストールした時のメモです。
その為、インストールイメージがまともに流通すれば、まだ、ましなインストールができるかと思います。
カスタムOSインストール (2012/01/14 00:44)
とりあえず、8.1-RELEASE amd64を選択し、適当にインストールする。
バイナリでアップデートできない (2012/01/14 00:57)
以前のバージョンであれば、sysinstall のオプションで、8.?-RELEASE の所を書き換えれば、別のバイナリを指定できたが、今回、インストールイメージが変更になっているので、この手が使えない。
ついでに、使ったことがないんだが、freebsd-updateコマンドでも、8.2系のパッチバージョンが当たってしまうようなので、却下
仕方ないので、cvsからアップデート (2012/01/14 01:09)
- csup releng-supfile
- csup ports-supfile
- cd /usr/src
- make buildworld (並列実行)
- cp /usr/src/sys/amd64/conf/GENERIC /usr/src/sys/amd64/conf/SAKURA9
- ee /usr/src/sys/amd64/conf/SAKURA9*1
- make buildkernel KERNCONF=GENERIC (並列実行)
- make buildkernel KERNCONF=SAKURA9 (並列実行)
カーネルコンフィグが間違っていることに気付く (2012/01/14 01:46)
- ee /usr/src/sys/amd64/conf/SAKURA9
- make buildkernel KERNCONF=SAKURA9 (並列実行)
GENERICカーネル作成完了 (2012/01/14 02:05)
ここで、まだ何もしない
カスタムカーネル作成完了 (2012/01/14 02:54)
ここでもまだ何もしない
make buildworld 完了 (2012/01/14 04:04)
DNSいじっていたので、Javaコンソールが切れていた
make installkernel KERNCONF=GENERIC~make installworld (2012/01/14 04:10)
1つのカーネルで、/boot がディスク満タンになるので、古いカーネルを削除
mergemaster -UPi 開始 (2012/01/14 04:22)
rootパスワードを保持する為、/etc/master.passwdだけ手動で書き換えた
reboot (2012/01/14 04:27)
設定しなおしたカーネルのインストール~reboot (2012/01/14 04:30)
容量が空いたので、再コンパイルしたGENERICも入れておく
起動しない! (2012/01/14 04:37)
エスケープして
unload
load /boot/kernel.org/kernel
boot
数回再起動したが、だめだったので、カーネルをおとなしくつくりなおす。
動いていた? (2012/01/14 04:48)
device sc
がコメントアウトされていたのを気づかず、コメントを外して、カーネル再コンパイル開始
また動かないが、懲りずに設定 (2012/01/14 05:38)
実際には、mountrootがハグるだけなで、ジャーナリングだけ生かせてきた
というわけで、必要っぽいports をインストール
再起動 (2012/01/14 08:10)
でも、カーネルがうまくいかない。カーネル設定ファイルを元に戻せばいけるんだが。。。
ふとおもったこと
- 今の全コンパイルって、途中からのやりなおしが、できないんですよね。ってか、やり方あったっけ?
- さくらのVPS
512だと、3つ同時にCコンパイラ走らせると、スワップ行き過ぎます。汗
え?金ないのに、2台目のVPS、何に使うん?
プライマリDNSは、一応存在するが、ネットから完全に切り離し・・・・
そして、この鯖を、プライマリDNSとして、見せたてます。
そして、更に、これぐらいなら、今更ながら、無料セカンダリDNSサービスと、DDNSサービスが立ち上げられるのではないかと。東京、大阪にサーバーが分散しているので、実質 100Mbpsに回線は絞られていても、これらのサービスぐらいは十分できるでしょうから。
まさか、ディスク容量ないなら、qmail/queue をNFS化して、セカンダリメールサービスなんて・・考えてませんよ?
と思ったが、容量制限をかけてしまえば、いいのかな。。。
- ここより
- スクリプト序盤に、環境変数 quota=10240 (10Mの場合)
- もしくは、.quata ファイルに書く
- dot-qmailをこうする
|mailquotacheck
./Maildir/
- メール一通あたりの制限は、.maxmsgsize に書く
うん。なにせ、1台の鯖に、メールバックアップ立ち上げたとして
3Gバイトとれれば良いほうだから
そうすると、1ユーザー10Mバイトと仮定して
3×1000×1000÷10×1000=300名でマンタンという計算
あ、こんなたわごと言っている訳だから、「とりあえず」は、インスト完了してます。
でも、鬼のチューニングが・・・・
今日だけで、昔取っていたドメインの復活含めて、9個ドメインとったわけだが・・・
あ、新コンテンツも立ち上げる準備はしてますよ。汗
寝坊したが・・・(2011/01/14 19:47)
実際はもっと早く起きていたわけではあるが、かなり遅くおきた。
というわけで、以下のオプションを /etc/make.conf に入れてお試し中
CPUTYPE?=core2
CFLAGS=\
-O2 -pipe -march=${CPUTYPE} -mtune=${CPUTYPE} \
-funroll-loops -fno-strict-aliasing
COPTFLAGS=\
-O2 -pipe -march=${CPUTYPE} -mtune=${CPUTYPE} -msse -msse2 -msse3 \
-fomit-frame-pointer -funroll-loops -fno-strict-aliasing
CXXFLAGS+= -fconserve-space
gcc コンパイラのオプションとして、以下のような候補があるんだが、どうだろう?
-march=nocona
-march=core2
-march=core2 -mcx16 -msahf -mtune=core2
-march=core2 -mcx16 -msahf --param l1-cache-size=32 --param l1-cache-line-size=64 -mtune=core2
-march=nocona -mfpmath=sse
-march=core2 -mfpmath=sse
-march=core2 -mcx16 -msahf -mtune=core2 -mfpmath=sse
-march=core2 -mcx16 -msahf --param l1-cache-size=32 --param l1-cache-line-size=64 -mtune=core2 -mfpmath=sse
-march=nocona -mfpmath=sse,387
-march=core2 -mfpmath=sse,387
-march=core2 -mcx16 -msahf -mtune=core2 -mfpmath=sse,387
-march=nocona -march=core2 -mtune=nocona -mtune=core2 -mfpmath=sse,387
http://gcc.gnu.org/onlinedocs/
ついでに、ゆみちゃん、みゆちゃん、まりちゃん もほぼ同じオプションにしてみる。ただし
ゆみちゃん、みゆちゃん:CPUTYPE?=k8-sse3
まりちゃん:CPUTYPE?=pentium3
が、違うかな?
IPV6開通 (2012/01/14 21:05)
ここの記事、間違ってました。涙
→
さくらのVPS FreeBSDチューニング
再度、カーネルチューニング (2012/01/14 21:12)
動かなくて、あえて生かせていたオプションを無効にした。
カーネルチューニング完了で2ちゃん書き込み (2012/01/14 22:43)
再び、全コンパイルチューニング (2012/01/14 22:44)
make.confを変えてあるので、一応コンパイル通してインストールするだけだろう。
再コンパイル後のベンチ結果(準備中)
再コンパイル前(-funroll-loops 等一部最適化がかかっています)
1秒間あたりの簡易RSA演算回数 316
1秒間あたりのプロセス実行回数 19025
1秒間あたりのファイルI/O実行回数 4156
1秒間あたりの正規表現文字列置換回数 3867
全チューニング完了&再起動後
1秒間あたりの簡易RSA演算回数 340
1秒間あたりのプロセス実行回数 25841
1秒間あたりのファイルI/O実行回数 5761
1秒間あたりの正規表現文字列置換回数 4179
おまけ、速いほうのさくらのレンタルライト
1秒間あたりの簡易RSA演算回数 476
1秒間あたりのプロセス実行回数 12003
1秒間あたりのファイルI/O実行回数 9551
1秒間あたりの正規表現文字列置換回数 6568
おまけ、tok2プロフェッショナル
1秒間あたりの簡易RSA演算回数 247
1秒間あたりのプロセス実行回数 34227
1秒間あたりのファイルI/O実行回数 6971
1秒間あたりの正規表現文字列置換回数 3458
ついで・・とても便利なシェルスクリプトというか、設定ファイル
bash専用でもいいんです。とても便利です。
# from: http://www.unixuser.org/~euske/doc/bashtips/cdhist.sh
### cdhist.sh
###
### Copyright (c) 2001 Yusuke Shinyama <yusuke at cs . nyu . edu>
###
### Permission to use, copy, modify, distribute this software and
### its documentation for any purpose is hereby granted, provided
### that existing copyright notices are retained in all copies and
### that this notice is included verbatim in any distributions.
### This software is provided ``AS IS'' without any express or implied
### warranty.
###
### WARNING: THIS SCRIPT IS FOR GNU BASH ONLY!
### What is this?
###
### Cdhist adds 'web-browser like history' to your bash shell.
### Every time you change the current directory it records the directory
### you can go back by simply typing a short command such as '-' or '+',
### just like clicking web-browsers's 'back' button.
### It's more convenient than using directory stacks when
### you walk around two or three directories.
###
### Usage
###
### Just call this file from your .bashrc script.
### The following commands are added.
###
### cd [pathname]
### Go to the given directory, or your home directory if
### pathname is omitted. This overrides the original command.
### You can use it by typing '\cd'.
###
### + [n]
### 'Forward' button. Go to the n'th posterior directory in the history.
### Go to the next directory if the number is omitted.
###
### - [n]
### 'Back' button. Go to the n'th prior directory in the history.
### Go to the previous directory if the number is omitted.
###
### = [n]
### Show histories with directory numbers.
###
### A directory number shows the index to the current directory
### in the history. The current directory always has directory number 0.
### For prior directories, a negative number is given.
### For posterior directories, a positive number is given.
###
### cdhist_reset
### Clear the cd history.
###
### Example
###
### /home/yusuke:$ . cdhist.sh
### /home/yusuke:$ cd /tmp
### /tmp:$ cd /usr/bin
### /usr/bin:$ cd /etc
### /etc:$ -
### /usr/bin:$ -
### /tmp:$ +
### /usr/bin:$ =
### -2 ~
### -1 /tmp
### 0:/usr/bin
### 1 /etc
### /usr/bin:$ - 2
### /home/yusuke:$
###
CDHIST_CDQMAX=10
declare -a CDHIST_CDQ
function cdhist_reset {
CDHIST_CDQ=("$PWD")
}
function cdhist_disp {
echo "$*" | sed "s $HOME ~ g"
}
function cdhist_add {
CDHIST_CDQ=("$1" "${CDHIST_CDQ[@]}")
}
function cdhist_del {
local i=${1-0}
if [ ${#CDHIST_CDQ[@]} -le 1 ]; then return; fi
for ((; i<${#CDHIST_CDQ[@]}-1; i++)); do
CDHIST_CDQ[$i]="${CDHIST_CDQ[$((i+1))]}"
done
unset CDHIST_CDQ[$i]
}
function cdhist_rot {
local i q
for ((i=0; i<$1; i++)); do
q[$i]="${CDHIST_CDQ[$(((i+$1+$2)%$1))]}"
done
for ((i=0; i<$1; i++)); do
CDHIST_CDQ[$i]="${q[$i]}"
done
}
function cdhist_cd {
local i f=0
builtin cd "$@" || return 1
for ((i=0; i<${#CDHIST_CDQ[@]}; i++)); do
if [ "${CDHIST_CDQ[$i]}" = "$PWD" ]; then f=1; break; fi
done
if [ $f -eq 1 ]; then
cdhist_rot $((i+1)) -1
elif [ ${#CDHIST_CDQ[@]} -lt $CDHIST_CDQMAX ]; then
cdhist_add "$PWD"
else
cdhist_rot ${#CDHIST_CDQ[@]} -1
CDHIST_CDQ[0]="$PWD"
fi
}
function cdhist_history {
local i d
if [ $# -eq 0 ]; then
for ((i=${#CDHIST_CDQ[@]}-1; 0<=i; i--)); do
cdhist_disp " $i ${CDHIST_CDQ[$i]}"
done
elif [ "$1" -lt ${#CDHIST_CDQ[@]} ]; then
d=${CDHIST_CDQ[$1]}
if builtin cd "$d"; then
cdhist_rot $(($1+1)) -1
else
cdhist_del $1
fi
cdhist_disp "${CDHIST_CDQ[@]}"
fi
}
function cdhist_forward {
cdhist_rot ${#CDHIST_CDQ[@]} -${1-1}
if ! builtin cd "${CDHIST_CDQ[0]}"; then
cdhist_del 0
fi
cdhist_disp "${CDHIST_CDQ[@]}"
}
function cdhist_back {
cdhist_rot ${#CDHIST_CDQ[@]} ${1-1}
if ! builtin cd "${CDHIST_CDQ[0]}"; then
cdhist_del 0
fi
cdhist_disp "${CDHIST_CDQ[@]}"
}
if [ ${#CDHIST_CDQ[@]} = 0 ]; then cdhist_reset; fi
### Aliases
###
function cd { cdhist_cd "$@"; }
function + { cdhist_forward "$@"; }
function - { cdhist_back "$@"; }
function = { cdhist_history "$@"; }
それはそうと、りそなダイレクト、面倒だな。
とりあえず、TLS1.0を無効にすれば、IEでいけるのだが、
りそなを利用するごとに、終了後、TLS1.0を有効にしなおすのも、どうだか。。。