以前使ってたディスクから環境を新しいディスクに移すことにした。手順をメモ。
新しいディスクのファイルシステムは新しいbtrfsを使用することにした。btrfsのwikiに
"Btrfs is under heavy development, but every effort is being made to keep the filesystem stable and fast. As of 2.6.31, we only plan to make forward compatible disk format changes"
ってあったし。
まずカーネルコンフィグでbtrfsにチェックを入れ、btrfs-progsをインストール。自分の環境ではバージョンは0.19だった。ディスクのパーティションテーブルはMBR(msdos)じゃなくてGUIDパーティションテーブル(gpt)にした。
gptではmsdosと違って:基本パーティション"とか"論理パーティション"とかの区別は必要ない。grubをgptのディスクで使うためにはbios_grubフラグのついた空のパーティションが必要になる。
今まで使っていたディスク:/dev/sda、これから使う新しいディスク:/dev/sdb
# parted /dev/sdb
(parted) mklabel gpt #gptパーティションを使用する。MBRにしたいときはmsdos。データは全て消える。
(parted) unit GIB #ギビバイトを使用
mkpartですきなように分ける。ファイルシステムは聞かれるが反映されない。
(parted) toggle 1 bios_grub #先頭にbios_grubフラグをつける。このパーティションは31kb以上ないといけない。
(parted) toggle 2 boot #/bootのマウントポイント。vmlinuzが入る場所
(parted) print
Number Start End Size File system Name Flags
1 1049kB 8389kB 7340kB bios_grub
2 8389kB 2147MB 2139MB ext4 boot
3 2147MB 8590MB 6442MB linux-swap(v1)
4 8590MB 81.6GB 73.0GB
5 81.6GB 90.2GB 8590MB
6 90.2GB 107GB 17.2GB
7 107GB 1000GB 893GB
(parted) quit
# mkfs.btrfs /dev/sda4 等
これを書く現時点ではgrubはbtrfsに完全には対応していないのでext4にした。
# mkfs.ext4 /dev/sda2
# mkswap /dev/sda3
ここでシステムをログオフして/dev/sdaの内容を/dev/sdbにコピー。
作業用の環境としてSystemRescueCdを使用した。btrfsにも対応してていい感じ。
/dev/sda1(/mnt/sda1)の内容を/dev/sdb1(/mnt/sdb1)にコピーする場合は
# cd /mnt/sda1
# tar cpf - ./ | tar pfxvC - /mnt/sdb1
とすればよい。tarはpオプションでパーミッションを保存してくれる。
今回は/dev/sdb4が新しい/になる。
終わったら/以下の/bootとか/tmpとか/dev、/procをマウントさせてから新しい環境の/となる場所にchroot。
/dev、procをマウントさせるには
# mount -o bind /dev /mnt/sdb4/dev
# mount -t proc none /mnt/sdb4/proc
その後
# chroot /dev/sdb4
/etc/fstabを書き換えて、/usr/src/linuxでmake && make install && make modules_installして、grub-install /dev/sdbすればOK。
BIOSでbootを/dev/sdbのディスクから行うようにすれば新しいディスクに乗り換えることができる。足りない所があったらもう一度SystemRescueCdでブートして作業。
SystemRescueCd便利だわ。
2011/04/03
2011/01/22
HHK Professional 2分解洗浄&組立
HHKBのProfessional 2を使っているが分解洗浄してみた。
まずキートップをはずす。スペースキーにはスプリングがついている。
無刻印モデルでもキートップの裏側に"E16"みたいな刻印があるので忘れず配置をメモしておく。自分はメモしなかったので組立時には完全に元通りにはなっていないw。
裏面のネジをはずしオープン、基盤についている沢山のネジをはずしていく。全部のネジをはずしたらそっと基盤とキーボード上面を分離。
ここでラバーカップとコイルスプリングが飛びだしてきやすいが予備はないので必ずなくさないようにする。キートップとキーボード上面は水で洗浄できるので洗剤と水で洗った。
コイルスプリングの静電容量の変化でon、offを読みとるこの形式、コイルスプリングを紛失するとそのキーは入力できなくなる。自分は一つどこに入るのかよくわからないコイルスプリングが出てしまったのでxevで一つ一つのキーを確認し、ようやく"-"のコイルスプリングがないことに気づいた。
組立はラバーカップ、コイルスプリングがずれないようにキーボード上面をそっと基盤にのせる。分解よりはるかに難易度が高かった。基盤にネジをはめて固定、キーボード裏面のネジを3つはめてクローズ。
ラバーカップがキー一つ一つで独立している部分があるのが組立が難しい理由かと思った。
キーボードがきれいになると気分がいいわ。
まずキートップをはずす。スペースキーにはスプリングがついている。
無刻印モデルでもキートップの裏側に"E16"みたいな刻印があるので忘れず配置をメモしておく。自分はメモしなかったので組立時には完全に元通りにはなっていないw。
裏面のネジをはずしオープン、基盤についている沢山のネジをはずしていく。全部のネジをはずしたらそっと基盤とキーボード上面を分離。
ここでラバーカップとコイルスプリングが飛びだしてきやすいが予備はないので必ずなくさないようにする。キートップとキーボード上面は水で洗浄できるので洗剤と水で洗った。
コイルスプリングの静電容量の変化でon、offを読みとるこの形式、コイルスプリングを紛失するとそのキーは入力できなくなる。自分は一つどこに入るのかよくわからないコイルスプリングが出てしまったのでxevで一つ一つのキーを確認し、ようやく"-"のコイルスプリングがないことに気づいた。
組立はラバーカップ、コイルスプリングがずれないようにキーボード上面をそっと基盤にのせる。分解よりはるかに難易度が高かった。基盤にネジをはめて固定、キーボード裏面のネジを3つはめてクローズ。
ラバーカップがキー一つ一つで独立している部分があるのが組立が難しい理由かと思った。
キーボードがきれいになると気分がいいわ。
2011/01/16
jpg画像をpdf化する
Imagemagickのconvertは画像フォーマットを変更したりサイズを変えたりできるコマンドだがpdf化もできる。
まずスクリーンの解像度を確認。
$ xdpyinfo | grep resolution
resolution: 96x96 dots per inch
96x96が望ましいので違う場合は変更。
convertの'-density'でdpiを設定。デフォルトは72x72っぽい。
'-resize'で画像の大きさを変更。自分の場合は1920x1200だから縦幅を960pixelsくらいにしたいと思った。
画像のサイズを変更するので'-unsharp'でシャープ化する。
-unsharp radiusxsigma{+amount}{+threshold}
radiusは (dpi / 30) * 0.2くらいがいいらしい。
sigma > 1の場合はsqrt(radius)
sigma <= 1の場合はsigma = radius
自分は(96 / 30) * 0.2なのでradius = 0.6にした。
結局
$ convert *.jpg -density 96x96 -resize x960 -unsharp 0.6x0.6+0.4+0 foo.pdf
にした。
マジ便利だわ。
2010/08/28
Kensington Expert MouseをLinuxで使う。
トラックボールは前から興味があって使ってみたいと思ってた。
今回KensingtonのExpert Mouse 7を買ったので設定をメモしておく。
右上のボタンを押すとスクロールのスイッチが入るようにするためには以下のようにすればいいようだ。
xorg.confに記述
Section "InputDevice"
Identifier "Mouse0"
Driver "evdev"
Option "Name" "Kensington Kensington Expert Mouse"
Option "CorePointer"
Option "Protocol" "auto"
Option "Device" "/dev/input/by-id/usb-Kensington_Kensington_Expert_Mouse-event-mouse"
Option "Buttons" "9"
Option "Emulate3Buttons" "true"
Option "EmulateWheelButton" "8"
Option "EmulateWheel" "true"
Option "YAxisMapping" "4 5"
Option "XAxisMapping" "6 7"
EndSection
udevが割り振るトラックボールのデバイスファイルを以上のようにOption "Device"の後に指定する。
ネーミングルールは自分の環境では/lib/udev/rules.d/60-persistent-input.rulesに書いてあった。
トラックボール便利だなー。Slimbladeすごい欲しくなってしまった。
今回KensingtonのExpert Mouse 7を買ったので設定をメモしておく。
右上のボタンを押すとスクロールのスイッチが入るようにするためには以下のようにすればいいようだ。
xorg.confに記述
Section "InputDevice"
Identifier "Mouse0"
Driver "evdev"
Option "Name" "Kensington Kensington Expert Mouse"
Option "CorePointer"
Option "Protocol" "auto"
Option "Device" "/dev/input/by-id/usb-Kensington_Kensington_Expert_Mouse-event-mouse"
Option "Buttons" "9"
Option "Emulate3Buttons" "true"
Option "EmulateWheelButton" "8"
Option "EmulateWheel" "true"
Option "YAxisMapping" "4 5"
Option "XAxisMapping" "6 7"
EndSection
udevが割り振るトラックボールのデバイスファイルを以上のようにOption "Device"の後に指定する。
ネーミングルールは自分の環境では/lib/udev/rules.d/60-persistent-input.rulesに書いてあった。
トラックボール便利だなー。Slimbladeすごい欲しくなってしまった。
2010/08/04
msdl-1.2.7-r2 release
先日msdl-1.2.7-r2をリリースした。
http://downloads.sourceforge.net/msdl/msdl-1.2.7-r2.tar.gz
$ msdl -o - http://www.foobar.co.jp
みたいにした時にアウトプットがstdoutに出力されないバグがあったのでそこを修正。
オオカミさんと七人の仲間たち面白いなー。
http://downloads.sourceforge.net/msdl/msdl-1.2.7-r2.tar.gz
$ msdl -o - http://www.foobar.co.jp
みたいにした時にアウトプットがstdoutに出力されないバグがあったのでそこを修正。
オオカミさんと七人の仲間たち面白いなー。
2010/02/25
msdl-1.2.7レリース
msdlというLinux/BSD用のストリーミング保存用プログラムをつくっているが、先日1.2.7をリリースした。
主にmmshプロトコル実装を改善した。mmshのシークも全てのケースではないがなんとか対応させた。他に通信の途中でkeep-aliveパケットを定期的に送信するようにしておいた。
プロジェクトページ
https://sourceforge.net/projects/msdl/
一騎当千のラジオが最近再開したけどはやっぱ面白いわー。来期は恋姫無双と一騎当千XXすごい楽しみです。
主にmmshプロトコル実装を改善した。mmshのシークも全てのケースではないがなんとか対応させた。他に通信の途中でkeep-aliveパケットを定期的に送信するようにしておいた。
プロジェクトページ
https://sourceforge.net/projects/msdl/
一騎当千のラジオが最近再開したけどはやっぱ面白いわー。来期は恋姫無双と一騎当千XXすごい楽しみです。
2009/12/30
tmuxに乗りかえた
結構長い間GNU screenを使っていたが先日tmuxに乗りかえた。
tmuxはterminal multiplexerでGNU screenみたいな感じだが使いやすい印象を受けた。
まず画面の分割がしやすかった。自分が無知なだけかもしれないがscreenで画面を分割しシェルを立ち上げるには
C-z C-S -> C-z Tab -> C-z C-c と6手順が必要だった。水平に分割できるようにするパッチもあるようだが、デフォルトではできない。
tmuxでは
C-z C-"で縦分割、C-z C-%で水平分割でのシェル起動ができ非常に使いやすい。ショートカットもscreenと基本的なキーバインドが似ており移行もスムーズだった。
分からなくなればC-z ?でキーバインドが確認できる。
C-z tで現在時刻を表示なども面白いと思った。
screenを使いながら開発されたためscreenと衝突しないようにデフォルトのエスケープがC-bである(と書いてあった気がした)。
これは少し困るので以下の設定を~/.tmux.confに書けばC-zをエスケープにできた。
set-option -g prefix C-z
unbind-key C-b
bind-key C-z send-prefix
tmuxはterminal multiplexerでGNU screenみたいな感じだが使いやすい印象を受けた。
まず画面の分割がしやすかった。自分が無知なだけかもしれないがscreenで画面を分割しシェルを立ち上げるには
C-z C-S -> C-z Tab -> C-z C-c と6手順が必要だった。水平に分割できるようにするパッチもあるようだが、デフォルトではできない。
tmuxでは
C-z C-"で縦分割、C-z C-%で水平分割でのシェル起動ができ非常に使いやすい。ショートカットもscreenと基本的なキーバインドが似ており移行もスムーズだった。
分からなくなればC-z ?でキーバインドが確認できる。
C-z tで現在時刻を表示なども面白いと思った。
screenを使いながら開発されたためscreenと衝突しないようにデフォルトのエスケープがC-bである(と書いてあった気がした)。
これは少し困るので以下の設定を~/.tmux.confに書けばC-zをエスケープにできた。
set-option -g prefix C-z
unbind-key C-b
bind-key C-z send-prefix
登録:
投稿 (Atom)