さて、
昨日、swapが有効になってるカーネルのことをぼんやり考えてた。
busyboxにswap関係のコマンドがビルドインされてるのも知ってたので、手動でswap onできるだろうと踏んで作業してみた。
以下、root化必須です。
で、swapパーティションを切るんだけど、SDカードに入れるのもネタがかぶるので、USBメモリスティックに頑張ってもらうことにした。
まず、USBメモリを刺す。
今回は Buffalo RUF2-PS4G-BKが獲物w
小さい、これなら内蔵可能( ̄ー ̄)ニヤリ
でも、I/O速度がいまいち。
おもむろに、M001上でコンソール(ConnectBot)を起動。
コンソールから、su
USBメモリを最初に刺したときは、/udisk に自動的にmountされるのでumountする。
mountされてなかったら、以下の作業はいらん。
# umount /udisk一応、freeでメモリ状況を見ておく
# freeswapはゼロだね。
total used free shared buffers
Mem: 101472 99216 2256 0 192
Swap: 0 0 0
Total: 101472 99216 2256
USBメモリにパーティションを切る。
うちの環境では、USBメモリが /dev/block/sda にストレージとして認識されていた。
他の環境(例えばM001以外のデバイスとか)は違うプリフィクスになる可能性があるのでちゃんと調べたほうがいい。
具体的には、USBメモリを刺したときの dmesg を見ておく。
# dmesgこんな感じの出力があるハズ。
<略>
usb-storage: device found at 5
usb-storage: waiting for device to settle before scanning
scsi 0:0:0:0: Direct-Access USB 2.0 Flash Disk 2.00 PQ: 0 ANSI: 2
sd 0:0:0:0: [sda] 2062846 512-byte hardware sectors: (1.05 GB/1007 MiB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 0b 00 00 08
sd 0:0:0:0: [sda] Assuming drive cache: write through
sd 0:0:0:0: [sda] 2062846 512-byte hardware sectors: (1.05 GB/1007 MiB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 0b 00 00 08
sd 0:0:0:0: [sda] Assuming drive cache: write through
sda: sda1 ←コレコレ
sd 0:0:0:0: [sda] Attached SCSI removable disk
sd 0:0:0:0: Attached scsi generic sg0 type 0
usb-storage: device scan complete
<略>
流れる文字列の中から、USBメモリがデバイス認識された箇所を探し出すこと。
さて、fdisk
# fdisk /dev/block/sda以下、fdiskでの作業は省略。
要するに、現状のパーティションは全削除、Linux swap のパーティションを1つ切れば十分。とりあえず、128MBだけswapに割り当て。
残りのメモリはお好きなように。
今回の場合swapパーティションは /dev/block/sda1 となった。
パーティションテブールを書き込んでディスクがフラッシュされたところで、
#mkswap /dev/block/sda1これで、swap領域の完成。
Setting up swapspace version 1, size = 133762560 bytes
UUID=hogehoge-hogehoe
さて、いよいよ swap on。
# swapon /dev/block/sda1これだけw
本当にonになったか、freeで確認。
# freeを、swap 増えてる増えてるw
total used free shared buffers
Mem: 101472 97176 4296 0 16
Swap: 130620 0 130620
Total: 232092 97176 134916
しばらく、他のアプリなんかを動かしてみる。
USBのLEDがチカチカ光ってアクセスしに行ってるのがわかる。
swapしてる感じ。
再び free
# freeほほw
total used free shared buffers
Mem: 101472 97176 4296 0 16
Swap: 130620 2104 128516
Total: 232092 100668 131424
swapしてるねー
体感ですが、ややスムーズになるかな?って感じです。
ブックリーダー試してないので(^^ゞ
そんなわけで、手動でswap有効化は可能って事ですね。
ちなみに、swap off は
# swapoff /dev/block/sda1以上。
要するに、Swapper系のアプリは手動で行った設定をGUIでやってくれる便利なラッパーツールって事です。
もちろん、他に細やかなチューニングもしてくれるものもあるので、やっぱアプリ使ったほうが楽かも。
個人的には、このちっこいUSBメモリを内蔵して、swap領域固定でブート時にスクリプト叩いてswap onにすることを目論んでみたりします(笑)
あ!Wifi offのときは一緒にスリープされるんだった!!
これを何とかせねば・・・・(´・ω・`)
swap on手順は、他のマシンでも応用できるかもしれない。
M001以外の他のマシンでも頑張ってみてください。
\(^o^)/
0 件のコメント:
コメントを投稿