2017年 3月 20日 月曜日 22:18:44 JST

!!draft: 2017年 3月 20日 月曜日 22:17:14 JST

SmartUPS の接続をスマートケーブルからUSBに変更.時代の流れである.
が,うごかねぇ….以下で解決.まさかカーネルとは….

CONFIG_USB_HIDDEV=y

Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

2016年 3月 23日 水曜日 00:16:31 JST

Gentoo の Font を美しくする

参考

# emerge artwiz-aleczapka-en dejavu freefonts ttf-bitstream-vera ## unifont(defauilt installed)
# emerge corefonts font-bh-ttf font-bh-type1 ## !!! none-free
# echo 'USE="$USE truetype type1 cleartype corefonts"'>>/etc/make.conf
# emerge -ND world
# emerge fontconfig
..
# eselect fontconfig list
# for a in `seq -w 1 <NN>`; do eselect fontconfig enable $a; done

~/.fonts.conf 編集.

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
 <match target="font">
 <edit mode="assign" name="rgba">
 <const>rgb</const>
 </edit>
 </match>
 <match target="font">
 <edit mode="assign" name="hinting">
 <bool>true</bool>
 </edit>
 </match>
 <match target="font">
 <edit mode="assign" name="hintstyle">
 <const>hintfull</const>
 </edit>
 </match>
 <match target="font">
 <edit mode="assign" name="antialias">
 <bool>true</bool>
 </edit>
 </match>
 <!-- Disable autohint for bold fonts so they are not overly bold -->
 <match target="font" >
 <test compare="more" name="weight" >
 <const>medium</const>
 </test>
 <edit mode="assign" name="autohint">
 <bool>false</bool>
 </edit>
 </match>
</fontconfig>

日本語フォントも入れるなら…

# emerge font-jis-misc fs-fonts ipaex ja-ipafonts jisx0213-fonts koruri mix-mplus-ipa monafont
# emerge mplus-fonts mplus-outline-fonts noto ricty 
# emerge sazanami shinonome source-han-sans umeplus-fonts vlgothic
# emerge acroread-asianfonts aquafont aquapfont ipamonafont kochi-substitute ## !!! none-free 
# emerge mikachan-font-otf mikachan-font-ttc mikachan-font-ttf ## !!! none-free

gtk-chtheme とかで指定する.
この none-free とゆうのは,LICENSE=as-is とかの,つまり改変不能なやつで,GNU 的には自由なソフトウェアとは言えないが,個人使用に限っては無料,なはず.
なので,どこまで不自由を受け入れるかとゆう話なので,人によっては気にせず入れても良いと思う.
個人的には?VL Gothic しか入れてない(笑).
noto とか巨大過ぎて要注意.

Emacs で Truetype を使うには?
色んな指定方法があるけど,なんとなく以下の様にした.
emacs-w3m とか使うなら,プロポーショナルフォントだと位置ズレするので激しくお勧め出来ない.等角必須.

# USE=xft emerge emacs

.emacs 内の font 指定は解除しておく.
フォント名は fc-list で調べる.
.Xdefauilt 編集.例えば,

Emacs.FontBackend: xft
Emacs.font: VL Gothic:style=regular

Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

2016年 3月 17日 木曜日 05:38:35 JST

最近の Xorg の intel ドライバについて.

最近の xorg は i945G のサポートを止めたらしく.
ドライバが intel だと動かなくなってて,しょうがなく vesa や fbdev で動かしてたのだが,以下の指定で intel でも動く様になった.

Section "Device"
   Identifier "Intel Graphics"
   Driver "intel"
   Option "NoAccel" "True"
##     or
#   Option "DRI" "False"
EndSection

Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

2016年 3月 15日 火曜日 17:43:49 JST

10年で何が変わったか?AOpen 製ベアボーン 復活への序章

親戚の為に10年前に組んだこのマシン

2年程前に帰ってきてて.
なんとなくバラして眺めているのだが,良いわこれ.自分でも欲しいと思っただけある.
当時から「ここまで来たか」「専用設計,美しい」とか言ってる位で,いま見ても美しい.合理的で完璧な設計.

な・の・に,ちょっと古くて遅くなっただけで,ゴミだとか使えねーとか言われるんだよ.
一回完成したものはもうそれで良いだろ.十分使えるじゃねーか.
PC なんて所詮は人間が使う道具.あーだこーだ車輪の再発明を繰り返し,ソフトをわざわざ重くして,PC 業界とやらを食わせる為に最新のマシンとやらに¥を払い続けなければならないんですか?

なんか違うんだよなあ.苦労して作り上げたものは,いつまで経っても同じだけの価値がなければならないだろう?
だからこいつ,とりあえず復活させてやるか.
M/B 死んでると思ってたんだが,なんかよく見たら,コンデンサ一個グラグラしてる.ハンダ浮いただけかも.
でももうダメだと思ってメモリ売却処分してるから,また買わないと(--;;
で,Socket 478 だと思ってたら,LGA 775 だった.とゆう事は,Pentium D が使える.ちょっとだけ希望が見えてきた.

ところで,Debian wheezy に compiz 入れて.80インチ画面で 3D デスクトップとかって遊んでるんだが(笑).
10年前のマシンでも VGA さえそこそこであれば十分動く.
とゆうか,compiz 動かしてるマシン,VGA 以外はまさに Pentium D と MEMORY 2GB だし(そりゃ多少 FSB とかメモリ規格は違うけど)

以下,compiz for Debian wheezy

## for Compiz Fusion.
## 1) Add the repo...
#deb http://snapshot.debian.org/archive/debian/20120616T042917Z/ wheezy main
## 2) Don't just apt-get update. 
## Do this or it will complain about the snapshot being out of date...
##   apt-get -o Acquire::Check-Valid-Until=false update
## 3) Install...
##   apt-get install compiz-gtk compizconfig-settings-manager compiz-fusion-plugins-main compiz-fusion-plugins-extra -t wheezy
## 4) Remove the repo and apt-get update
## 5) Run compiz...
##   compiz --replace

以下,10年前に撮影.
バラしてる現在の姿の写真も撮ろうと思ったが,まったく変わってない.ケースの黄ばみや傷さえない.
よって,撮影は省略.復活したら compiz 動かしてるところの動画でも撮るかも.









Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

2016年 3月 12日 土曜日 04:16:15 JST

最近構築したサーバー上の監視環境について

最近入れた or また使いはじめたもの.

X上の環境は Ratpoison + mrxvt(タブ機能は非表示にして使っていない) + GNU Screen
下記のように rpws でワークスペースを管理してる.sloppy は使ったり使わなかったり.

  • WORKSPACE 1: ログ,プロセス監視など以下の監視アプリケーション郡および常時実行(GNU screen 1).
    • multitail: 複数ログファイル監視.色を付けて見易くしてくれる.
      xtailも良いが,冗長だしけっこう融通が利かないので,multitail の複数ファイルマージ機能で.
    • htop: 超便利でカラフルな top 上位互換プロセス監視/操作ツール.
    • goaccess: Apache リアルタイムログ解析.
    • Mutt: メーラー.root 用..maildir 直接読む.
    • rtorrent: コンソール版のフル機能 torrent クライアント(ってかサーバー).合法ファイルの配布に常時稼働.
    • mpg123: BGM常時再生.mpg123.el はどうゆう訳かミキサー弄られて勝手に音量変わったので.
  • WORKSPACE 2: 通常の作業環境.書きものしながらファイル操作しながら emerge したり.(GNU screen 2)
  • WORKSPACE 3: ネットワーク越しの作業(接続先のGNU screen).
  • WORKSPACE 4: Emacs 関連アプリケーション(X使用/screen なし).
    • emacs-w3m: ブラウザ.
    • emacs -f w3m http://m.twitter.com/: ツイッター.モバイル版サイトからだと一応投稿も出来る(--;;
    • wanderlust: メーラー.通常ユーザー用.IMAP経由.
    • newsticker: RSS リーダー.
  • WORKSPACE 5: たまーに chroot で Debian に入って GUI アプリケーション起動(笑).
  • WORKSPACE 6: たいてい未使用.予備.

screen はマルチクライアントモードで起動してるので,アタッチ済みの screen を別のマシンから重複アタッチする事も出来る.
これは超便利.マシンを移動しながら同じ作業が継続して出来る.疑似マルチモニターとゆうか.

基本的に全てフルスクリーン表示である.
もちろん ratpoison も screen もやろうと思えば縦でも横でも分割出来るが,小賢しい分割などはあまりしない.
複数ファイル見比べたりする時くらいか.

GUI は完全 Emacs 依存である.それ以外の全てのアプリケーションは ncurses で実装されている.cool.

ミニマムパッケージである xorg-server とその依存以外は jpeg,png,gif ライブラリのみで,xv さえ入れてない.もちろんツールキットの類もフォントの類も一切インストールなし.
mrxvt は USE=truetype より等角フォントがもっとも美しく日本語を表示出来るのである(断言).

rpws でのワークスペース切替えは若干もっさりしてるので,mrxvt のタブ機能を使った方がいいかも知れない.
タブを使わない以上,より軽量なコンソールに置き換えられそうであるが,kterm とかより圧倒的にメモリ使用量小さいので.何げに背景画像もいい感じに表示出来るし.

dillo とゆう軽量ブラウザも試したが,他に誰も使ってない FLTK を連れてくる割りには大して高機能でもないので,もう割り切って捨てた.
USE=gtk であればもっと色々出来るのだが,それはサーバーマシンの美学に反するであろう.
もし GTK を入れるならウィンドウマネージャは Awesome とゆう事になるか.まあアレも悪くないんだけどなあ.
依存引き連れまくりの GTK である以上,どうせなら XFCE4 入れた方が….

逆に,また X そのものを捨てる事も考えられる.
とゆうのも,最近はカーネルに CJK なコンソールがまた取り込まれたとかなんとか.
2.4 の頃に UNICON だか便利なものがあったのだが,メンテナ不在でソースから消されたんだよなあ.

日本語入力について.
canna に接続出来る Emacs の内蔵機能のみ(Emacs へのユーザーパッチ).
kinput2 も一応スタンバイしてるが,まず使わない.
SKK の様なスタンドアロン IM にする事が出来れば Canna サブシステム全体を捨てる事が出来るのだが,そこまではなかなか.
もちろんキーボードは Happy Hacking Keyboard Lite2 であり,Emacs キーバインドであり,ローマ字変換は AZIK である.

とゆう訳で,他の誰にもこの端末は使えない,と断言出来る(--;;;;


Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

2016年 3月 11日 金曜日 06:24:56 JST

バイナリ共有とパッケージ一括生産,ifconfig 等重要コマンドについて.

BP6.
BIOS 起動画面で '99とか出てくるので,2019年まで使って20周年を祝うか(--;;
3年以上使ってなかった気がしたが,せいぜい2年少し放置しただけらしく.

システムの全てを更新し,カーネルを Linux-libre+BFS に.
と,書くと簡単だが,二日以上掛かったし,あの手この手で問題を回避しつつ(--;;

例えば,あまりにもビルドが遅過ぎて distcc だけじゃ我慢出来なくなった時に,サーバー側の package dir を NFS マウントしてバイナリを借りたり.
そんな時,ローカルには古いパッケージしかない訳で,例えば,

# for a in `equery -q -C list "*/*"`;do quickpkg =$a; done

とかでインストール済みのファイルからパッケージを作ったり.
ただし,ファイルシステム上の設定ファイルが更新されてると,それらはパッケージには格納してもらえなかったりもして.いまいちスマートではない.
むしろ rsync -ax --progress SERVER:/path/to/package/ /path/to/package/ とかして,eclean-pkg -d とかで冗長なの消した方が早い(--;

しばらく前から,sys-apps/util-linux が USE=tty-helpers じゃないと ifconfig/route/hostname/netstat などの重要コマンドがインストールされなくなってる.
しかも,/root/bin とかに配置されるとか,汚な過ぎるだろう(--;;
20年以上も使われている基本コマンドがサポートされなくなるとか,そもそもまったく意味が解らん.
そして,hostname も ifconfig もシステム起動に必要であり,それがないとインターフェイスをアップリンク出来ない訳で.

幸いサーバー側を更新した時は問題に気付いて亊無きを得たが,今回の BP6 はハマった(--;;
ルートファイルシステムを Debian な踏台にマウントして chroot して…っていつものアレだけども,dmcrypt + mdadm RAID + LVM とかやってるとメンドイ事この上なし(--;
しかもファイルシステムの全体構造をデザインしたの,何年も前だからコレどうだっけ???みたいな.
問題に気付く前にソース消しちゃったりして,次再起動した時にインターフェイスが死んでて大慌て,しょうがないからもいっかい util-linux コンパイルし直し,とかあり得る訳だが,ソース取りに行こうにもネットに繋がらなければ鶏が先か卵が先かになる訳だよ.アホかと.


Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

2016年 3月 10日 木曜日 03:41:36 JST

python ビルド時のロケールについて

ファッキン python-3.4
EUC-JP とゆうロケールを認識しやがらない(--;;
そんなロケールないぜ?とか言ってビルドに失敗する.何年も悩みまくり.どこにも答えはなかった.

端末の LANG が ja_JP.eucjp とかだとok.
しかしそんな LANG ではマニュアルさえまともに表示出来ないんだ.やれやれ.
Debian でも確か EUC-JP だったよな?
って事で,

~/.bashrc

## LANG.
export LANG=ja_JP.EUC-JP
export LC_ALL=ja_JP.EUC-JP

## Enable that for build FUCKIN PYTHON!!!
#export LANG=ja_JP.eucjp
#export LC_ALL=ja_JP.eucjp

/etc/locale.gen

## for FUCKIN PYTHON !!!
ja_JP.eucjp EUC-JP
ja_JP.utf8 UTF-8
#ja_JP.EUC-JP EUC-JP
#ja_JP.UTF-8 UTF-8
#ja_JP EUC-JP
#ja_JP UTF-8

下の方のコメントアウトしてるやつも冗長で作った方がいいかも.
locale-gen 実行.


Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

2016年 3月 9日 水曜日 01:26:02 JST

前世紀の遺物

3~4年は起動してない BP6 の Gentoo を再び起動してみた.
ルートファイルシステムは dm-crypt で暗号化プラス mdadm RAID1, 余った領域を LVM で二つ合わせて btrfs でストレージ化し,/usr/src やら /usr/portage などを効率よく格納してる.
HDDは クソうるさい 9GB+9GB だし,ハード自体が前世紀の遺物なのに,性能を極限まで引き出している.
ここまで手入れしてたとは驚いたな(--;;システムとして,完璧だ.
なんか愛着湧いてきたので,こいつをベースに,カーネルを Linux-libre+BFS にして,ハードを一新してグラフィカルクライアントにする…かも.

BP6 は昔 distcc に凝ってた時に買い集めて,実は三枚も持ってたりする(--;; 初期の Gentoo はこのマシンで開発されたと言われている.


Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

2016年 3月 8日 火曜日 23:02:53 JST

IM 起動キー

kinput2 とか canna とか Emacs for Canna(その昔 Emcws であったもの.誰かが 23と24に移植してくれてたので自分でebuild書いた) とかの悩みどころ.
それは,kinput2 も Emacs も どちらも C-o で IM が起動するのだが,他のキーに設定出来そうでうまく機能しなくて,kinput2 で入力したいのに kinput2 が起動しなかったり,Emacs は常に内蔵機能で入力したいのに kinput2 が邪魔しにきやがったり,イライラの極みなのである.
設定ファイルがそこら中に飛び散りまくってるうえ,どこをどう設定すればどこに反映されるかとかイマイチよくわからず,ネットを漁っても役に立つドキュメントは殆んどない.
しかも XMODIFIERS とゆう変数で指定するのだが,端末から起動したプロセスが親の環境変数を引き継いでたりして,もうまさにクソファッキンな症状に陥る事請け合いだ!

そんな訳で,やっと解決策を編みだした.以下,関連箇所のみ抜粋.

.xinitrc

## default is unset XMODIFIERS="@im=kinput2"
kinput2 -canna &

.Xdefault

## kinput2 keybind shift+space
#Kinput2*conversionStartKeys: Mod4<Key>o
Kinput2*conversionStartKeys: Shift<Key>space

.ratpoisonrc

## C-c:none, C-C:kinput2.
bind c   exec XMODIFIERS=@im=none    /usr/bin/mrxvt
bind C   exec XMODIFIERS=@im=kinput2 /usr/bin/mrxvt

.bashrc

## Emacs connect to canna using internal function always.
alias emacs='XMODIFIERS=@im=none emacs -nw'

kinput2 は常にスタンバってはいるのだが,ratpoison の端末起動キーを二つ用意し,はじめから端末そのものを kinput2 付きで起動するかそうでないかを使い分けて指定する仕様.


Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

2016年 3月 8日 火曜日 04:38:24 JST

USB メモリ上の Debian のプログラムを chroot で直接動かす.その2

処理を分けた方が使いやすいらしい.
一応 Debian アプリケーションはだいたい動く.ものすごく強引に(--;;
boot をマウントしなくなったのは,apt-get update とか動かさない前提に変更した為.
ブートローダーインストールしてもマップファイルが違うとか言われて起動しないので,アップデートする時は別マシンに USB メモリ差し替えてネイティブで起動すれば良いかな,と.

#! /bin/bash

BASE_DIR='/mnt'
DEB_ROOT="${BASE_DIR}/debian"

start(){
  (
  cd "${BASE_DIR}"
  if ! mountpoint -q "${DEB_ROOT}" ; then
    sudo mount "${DEB_ROOT}" || { echo "can not mount ${DEB_ROOT}"; exit 1; }
  fi
  if ! mountpoint -q "${DEB_ROOT}/proc" ; then
    sudo mount -t proc proc "${DEB_ROOT}/proc" || { echo "can not mount ${DEB_ROOT}/proc"; exit 1; }
  fi
  if ! mountpoint -q "${DEB_ROOT}/dev" ; then
    sudo mount -o bind /dev "${DEB_ROOT}/dev" || { echo "can not mount ${DEB_ROOT}/dev"; exit 1; }
  fi
  if ! mountpoint -q "${DEB_ROOT}/tmp" ; then
    sudo mount -o bind /tmp "${DEB_ROOT}/tmp" || { echo "can not mount ${DEB_ROOT}/tmp"; exit 1; }
  fi
  if ! mountpoint -q "${DEB_ROOT}/home/rock/_cifs" ; then
    sudo mount -o bind /home/rock "${DEB_ROOT}/home/rock/_cifs" || { echo "can not mount ${DEB_ROOT}/home/rock/_cifs"; exit 1; }
  fi
  )&& echo "ok, you can chroot type that: $0 chroot"
}

chroot(){
  (
  cd "${BASE_DIR}"
  echo 'install .Xauthority to Debian home' &&
  cp /home/rock/.Xauthority debian/home/rock/ &&
  sudo chroot debian /bin/su rock
  )
}

stop(){
  (
  cd "${BASE_DIR}"
  sync
  sudo killall dbus-launch
  sudo umount "${DEB_ROOT}/home/rock/_cifs"
  sudo umount "${DEB_ROOT}/tmp"
  sudo umount "${DEB_ROOT}/dev"
  sudo umount "${DEB_ROOT}/proc"
  sudo umount "${DEB_ROOT}"
  )&& echo 'done.'
}

help(){
  echo "ex: $0 start|chroot|stop"
}

case $1 in
  start | mount) start ;;
  chroot )       chroot ;;
  stop | umount)  stop ;;
  * )             help ;;
esac

で,親の端末で kinput2 動かしてても,chroot したらそこから起動した iceweasel とかに日本語入力出来ない.
ファイルだけでなく,プロセス単位で環境が jail しちゃうらしい(?).よく出来てんなあ.


Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

2016年 3月 7日 月曜日 20:00:23 JST

USB メモリ上の Debian のプログラムを chroot で直接動かす.

一応 X は入れてるとは言え,それは ratpoison と rpws の仮想画面と GNU screen で端末を複数起動するだけの為であり,デスクトップ用途はまるで想定していないこのマシン.
しかし,別のマシンを起動せずに,ちょっとだけなにかを使いたい時がある.
そんな時,USB メモリ内の Debian をマウントして chroot でアプリケーションを直接実行すれば良いんじゃね?
とゆう事でやってみた.

# mkdir -p /mnt/debian
# mount /dev/sdc2 /mnt/debian
# mount /dev/sdc1 /mnt/debian/boot
# mount -t proc proc /mnt/debian/proc
# mount -o bind /dev /mnt/debian/dev
# mount -o bind /home/rock/ /mnt/debian/home/rock/_cifs
# cp /home/rock/.Xauthority debian/home/rock/
# export XMODIFIERS="@im=kinput2"
# kinput2 -canna &
# sudo chroot debian /bin/su rock

基本的には,ブートレコードが飛んだ時にするアノ操作と一緒ですな.

で.うーん.iceweasel も icedove も一応動くことは動く.
が,まったく問題がない訳ではないな.特に日本語入力関係.とゆうかIMそのものが.kinput2 とかゆう前世紀の遺物が(--;;

あと,上記のディレクトリが,マウントされていなかった時にマウントし,変数で覚えておいて,chroot を抜けてきたときに,フラグが立っていればアンマウントする,とゆう自動化(バックアップスクリプトでよく使う手法)を書いてみた.
しかし,/dev/ 以下にアクセスした iceweasel の残りカスみたいなプロセスが邪魔して,正常に umount 出来ない.
なんか,あんまりスマートじゃないのでこれ以上は追求はしないかな.しかし動けばものすごく便利だと思う.
最低限の依存で無駄なパッケージを削ぎ落したクリーンな環境のサーバー上で,GTKベースの小綺麗なウィジェットとフォントで色々動くのはなかなか嬉しいものがある.Virtualbox とかじゃないネイティブな速度で.


Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

2016年 3月 6日 日曜日 23:45:57 JST

尊敬するハッカーTOP10

なんとなくまとめてみた.

  1. Richard Stallman: GNU創設者 / Emacs 開発者.
    あまりにも偉大なハッカーである.
  2. Daniel Robbins: Gentoo Linux 創設者.
    Gentoo Linux を開発した.この人が居なければ今頃何使ってたかな?
    現在は Funtoo のメンテナである.
  3. Chris Mason: BTRFS 開発者.
    マルチデバイス,サブボリューム,圧縮機能などを実装した優れたファイルシステム.
    24世紀のファイルシステムだと言っても信じられる.それくらい凄い.
    ただ,なんでもファイルシステムに実装すれば良いとゆうものでもない気もする(そのへんは ZFS の影響からか仕方ないか).
    ぶっちゃけ,デバイス単位で mdadm, LVM, dm_crypt があるから,足りないのはサブボリュームだけであり,もし EXT4 にそれが実装されるならば,要求は満たされるとも言う(--;;
  4. Theodore Ts'o: EXT4 メンテナ.
    ファイルシステムの開発はカーネルの開発より難しいとされている.
    どちらがより信頼性を必要とされるかという点で言えば,カーネルよりむしろファイルシステムな訳で.
    カーネルならその場で止まっても所詮それだけでしかないけど,ファイルシステムが破壊されれば人生が終わるだろう?
  5. Alan Cox: 元 Linux カーネルメンテナ.
    Linux-2.2時代,SMPやRAID対応など,多数のパッチにあまりにもお世話になった.Linux-2.4で殆んどは標準で使える様になった.
    LKML を去ったのは Linus との確執が原因だと言われている.
  6. Con Kolivas: Brain Fuck Scheduler 開発者.
    実際にカーネルのパフォーマンスが向上したので.
    LKML を去ったのは Linus との…(略)
  7. Alexandre Oliva: Linux-libre メンテナ.
    彼の作業そのものは,創造的とは言えないかも知れない.むしろ一度出来上がったものを破壊している訳だし.
    それでもなお,その作業には意味があり,それを要求する人はいる.
    Linux-libre は FSF 認定であるからして,それを搭載したシステムは世界初の GNU OS と呼べなくもない.
  8. Ian murdok: Debian GNU/Linux 創設者.
    本人がプロジェクトマネージャを努めていた頃の Debian はむしろ使いものにならなかった.
    カーネルは古くさいし,弄ろうと思っても必要なヘッダやらインクルードやらがなかったり.
    今の Debian は凄く良い.劣化コピーディストロが無数に量産されるくらい良い.
    しかし,重要なのはそこではなく,初期の Debian が Daniel Robbins に影響を与え,Gentoo 開発に繋がった点である.
  9. Shawn Betts: ratpoison 開発者.
    ratpoison は極限まで贅肉を削ぎ落した優れたウィンドウマネージャである.
  10. 和田英一: Happy Hacking Keyboard 開発者.
    このキーボードがなければ何も出来ない.
  11. こじまみつひろ: Plamo Linux メンテナ.
    ユーザーが自由に設定可能で,まともに動く Linux ディストリビューションが日本にまだなかった頃にお世話になった.

なお「ハッカー」と聞いて怪訝な顔をする人は,まだこのブログを楽しむレベルに到達していないと思われますのでこのへんを読んで勉強するかブラウザバックをお勧めします.

真のハッカーとその辺のクラッカーを区別しない,区別する努力をしないのは,日本のクソメディアとそれに毒されている愚民共にとって,要するにその問題が他人ごとだからである.
他人ごととゆうのはつまり,自身に何の生産性もない事を意味しているのであり,ゼロに何を掛けてもゼロはゼロなのである.やったね!


Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

2016年 3月 4日 金曜日 20:49:30 JST

このブログで使われている nanoblogger とゆうプログラムについて

nanoblogger はシェルスクリプトで書かれた,cat, grep, sed などといった基本的な Unix ツールのみを使用するシンプルで軽量な静的サイトジェネレーターである.
元々,日記やメモやウェブサイトはサーバーの端末上で Emacs で直接書いて,自分で作った CGI で HTML を動的生成していたので,この様なツールが欲しかった.
時代は再び静的コンテンツである?

Emacs 使い,Unix 哲学の信奉者にとっては賢明な選択である.が,そうじゃない人にとっては激しくお勧め出来ない.

メリット

  • 軽い.ただの静的ドキュメントなのでサーバーに負担が掛からない.
  • 改造が簡単.エンコードや出力形式(xml → html)に改造するのも簡単♪
  • コンソールから対話的にブログの更新が行える.お気に入りのエディッタで.
  • RSSが生成出来る.

デメリット

  • 重い.ただのシェルスクリプトなのでコンテンツ生成が遅い.記事が増えてきたら悪夢であろう.
  • ただ,その際もただの静的コンテンツなので,生成後のページを wget などで移動するなど対策はありそう.
  • てゆうか,それ以前に勝手に CGI をでっちあげてデータファイルを直接読む動的生成に移行してるかも(--;;
  • コメント投稿やサイト内検索は外部のプログラム依存(ただの静的ドキュメントなので).
  • ちょっと何か変更したあとにも自動的に記事生成が始まるので,nb コマンド経由ではサクサク管理出来る訳ではない.
  • が,格納データはただの text なので,ディレクトリ内を勝手に弄ってあとで一括生成しても特に問題はない.
  • バギーである.デフォルトでは使いものにならない.だから自分で好きにして良い.が,細かい所を完璧になるまで煮詰める様なものでもない.
  • 要は,端末からちょっと使うには良いですよ.って感じ.まだ設置したばかりなのに,長く使い続けられるとははやくも思えない(--;;

Gentoo にインストール

開発版はまだ色々と問題があるので使わない方が良い.
どうしてもとゆうなら

# echo 'www-apps/nanoblogger ~x86' >> /etc/portage/package.keyword

そしておもむろに

# emerge nanoblogger

使いかた

以下,使いかたコピペ.

The basic syntax is: nb [-b blog_dir] [options]

How to ...
  • create a new weblog (directory) = nb -b [blog_dir] -a
  • create a new entry = nb -a
  • create a new category = nb -c new -a
  • create a new entry for a category = nb -c [cat_id] -a
  • list current entries = nb -l [current|all]
  • list categories = nb -l cat
  • list entries by category = nb -c [cat_id] -l [current|all]
  • edit an entry = nb -e [entry_id]
  • move an entry to a category = nb -c [cat_id] -m [entry_id]
  • delete an entry = nb -d [entry_id]
  • delete a category = nb -c [cat_id] -d cat
  • delete an entry from a category = nb -c [cat_id] -d [entry_id]
  • force update of weblog = nb -u [current|all|main]

カスタマイズ

ページ生成の為のパーツやキャッシュや設定ファイルをウェブサーバーが読めるところに直接置くのはお勧めできない.
~/nanoblogger/ などに置いて,index.html, index.xml, archives/ や articles/ などの中身を ~/public_html/blog_dir/ のような場所にシンボリックリンクで飛ばせばok.

カテゴリー管理が面倒なので,書くであろうカテゴリーをあらかじめ決めておき,エイリアスを設定するのがお勧め.

alias nb='nb --blogdir ~/blog/ --author "`echo $USER`" --desc "`uname -a`" --title "`date`"'
alias nb-diary="nb -c 1"
alias nb-pc="nb -c 2"
alias nb-guitar="nb -c 3"

みたいな.


Posted by rock | Linux 3.10.97-ck-gnu i686 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux | Permalink | Categories: コンピューター

web design!! hosting service (~\500/m)