2011年5月11日水曜日

FHS ( Filesystem Hierarchy Standard )

組み込み系の開発で、ファイルの配置に迷ったら、これを読むべき。

Filesystem Hierarchy Standard

( 印刷して、風呂で読んどくか )

● ファイル, ディレクトリ, 配置, ファイルシステム, file, dhirectory, filesystem, hierarchy, standard, FHS,

Ubuntu syslog サーバを立てる

Ubuntu で syslog サーバを立てるときの設定。
リモートからのアクセス可にする設定。

Ubuntu 8.04 の場合

# vi /etc/default/syslogd
SYSLOGD="-r"

Ubuntu 10.04 の場合は、rsyslog になってるなぁ。
何もしなくてよいかも。
または /etc/default/rsyslog を設定すればいけそう (動作未確認)

■ 2014/05/05 追記

Ubuntu 12.04 (64bit) の場合は、/etc/rsyslog.conf を編集。

# vi /etc/rsyslog.conf

(下記のコメントを外す)
$ModLoad imudp
$UDPServerRun 514

あと、/dev/xconsole が必要。

# mkfifo /dev/xconsole

DNS の逆引きをさせないようにするには、/etc/default/rsyslog を編集して "-x" を追加すれば良い。

# vi /etc/default/rsyslog

("-x" を追加)
RSYSLOGD_OPTIONS="-c5 -x"

設定変更後、rsyslog をリスタートする。

# /etc/init.d/rsyslog restart

● syslog, 8.04, 12.04, server, サーバ, リモート, syslogd, remote, DNS, 逆引き, 重い, rsyslog

2011年5月3日火曜日

Ubuntu 10.04 で Canon PIXUS 850i を動かす

Ubuntu ってよくできてるなぁ。
「システム」→「システム管理」→「印刷」
「追加」 を選んで、
新規プリンタで 「Canon 850i」を選択して、
「Canon i850」を選べば OK 。
この組み合わせで使っている人は、あまりいないかもしれませんが…。

● Ubuntu, 10.04, Canon, PIXUS, 850i, キャノン, ピクサス, プリンタ, printer, ドライバ

2011年4月29日金曜日

scp コマンドのメモ

scp コマンドの使い方メモ

$ scp FILE_NAME USER@HOST_NAME:PATH

(例)

$ scp hogehoge.txt masao@192.168.0.10:/tmp/

● scp, ssh, copy, 転送, 使い方

svn: Can't convert string from native encoding to 'UTF-8'

Subversion を使っていて、このエラーが出るときがある。
svn: Can't convert string from native encoding to 'UTF-8'
ファイル名が SJIS のときに出る時がある。
LANG=ja_JP.UTF8 だけではだめで、
LC_ALL=ja_JP.UTF8 を設定すれば、とりあえず OK。
これで凌ぐか。

ファイル名の文字コードを調べるには kcc を使えば良い。
まさおのブログ (表): 日本語ファイル名の文字コードを変換 参照。

● Subversion, svn, convert, string, encoding, UTF8

2011年4月17日日曜日

任意サイズのファイルを作る

Linux で任意サイズのファイルを作る方法のメモ。

100MB のファイルを作る場合の例。

$ dd if=/dev/zero of=hogehoge bs=1M count=100

入力に、/dev/urandom を使うと中身がランダムなファイルができる。

$ dd if=/dev/urandom of=hogehoge bs=1M count=100

任意の 1 バイトのファイルを作る。(ファイルの中身を 0xff にしたい場合)

echo "010000: ff" | xxd -r -s -0x10000 > hogehoge

全データが 0x5A の 2112 バイトのファイルを作る。

for i in `seq 1 2112` ; do
    echo -en '\x5a'
done > All_0x5A_2112byte.bin

● 任意, バイト, サイズ, byte, size, 作る, 生成, 作成, dd, urandom, echo, バイナリ, binary

2011年4月10日日曜日

bootchart を手動で組み込む

bootchart を手動で組み込むときのメモ。

1. bootchart をダウンロード

ここからダウンロードする。
現在の最新バージョン Ver.0.9。
http://www.bootchart.org/

2. bootchart の準備

ダウンロードした tar.bz2 アーカイブを展開。

$ tar jxvf bootchart-0.9.tar.bz2

bootchartd, bootchartd.conf を対象システムのファイルシステムにコピー。

$ cd bootchart-0.9/script/
$ cp bootchartd TARGET_ROOT/sbin/bootchartd
$ cp bootchartd.conf TARGET_ROOT/etc/bootchartd.conf
  ( bootchartd.conf を編集し、ファイルの書き出し場所はシステムにあわせて変更する。 /tmp とか )

3. カーネルソースを編集 ( または、起動オプションを変更? )

TARGET_LINUX_SOURCE/init/main.c を編集し、/sbin/init を起動しているところを書き換え、
/sbin/bootchartd が起動するように変更する。

$ vi LINUXSOURCE/init/main.c
下記のように変更
(変更前) run_init_process("/sbin/init");
(変更後) run_init_process("/sbin/bootchartd");

4. ターゲットシステムを起動

bootchartd が init を呼びだすので、準備が整えば、起動するだけで OK。
ターゲットで /sbin/bootchartd stop を実行すると、/etc/bootchartd.conf 内の BOOTLOG_DEST で指定した場所に、bootchart.tgz が作成される。

# /sbin/bootchartd stop

5. bootchart.jar を生成

bootchart.tgz を /var/log/ ディレクトリにコピーしておく。

$ cp bootchart.tgz /var/log/bootchart.tgz

bootchart.tgz を PNG 形式に可視化する。

Java のソースをビルドしておく。

$ cd bootchart-0.9/
$ ant
  ( ant がインストールされていない場合は、apt-get install ant でインストール )

Java プログラムを実行する。
/var/log/bootchart.tgz の内容がパースされ、bootchart.png ファイルが生成される。

$ java -jar bootchart.jar

6. PNG ファイルを表示する。

$ display bootchart.png

● bootchart, 組み込み, Linux, ターゲット, target

2011年3月31日木曜日

date コマンド メモ

date コマンドの書式をメモ。

# date 033122152011
または
# date -s "2011/03/31 22:15:00"

busybox の date は、ちょっと違って下記。
ピリオドとハイフンで区切る。

# date -s "2015.01.30-11:39:00"

● date, コマンド, 書式, 設定, 日時, busybox, 時刻

2011年3月12日土曜日

32bit 版 Ubuntu で PAE を有効にして 3GB 以上のメモリを使う

32bit 版 Ubuntu で 3GB 以上のメモリを使用したい場合、kernel ビルド時に PAE オプションを有効にする必要があります。

1. CPU が PAE に対応しているか確認

# cat /proc/cpuinfo | grep pae

flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush
 dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc
 arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl
 vmx smx est tm2 ssse3 cx16 xtpr pdcm lahf_lm tpr_shadow vnmi flexpriority

2. kernel のコンフィグで PAE を有効にする

Processor type and features  --->
  High Memory Support (64GB)  --->
    -*- PAE (Physical Address Extension) Support

3. kernel をビルドして、再起動。

# cat /proc/meminfo

(PAE 無効の場合)
MemTotal:        3354200 kB
MemFree:          117236 kB
Buffers:          115572 kB
Cached:          2385400 kB
SwapCached:            0 kB
Active:          1807556 kB
Inactive:        1251840 kB
…

(PAE 有効の場合)
MemTotal:        4120476 kB
MemFree:         3674100 kB
Buffers:           36324 kB
Cached:           170856 kB
SwapCached:            0 kB
Active:           240784 kB
Inactive:         164056 kB
…

■ メモ
自宅の PC 環境 ( DELL Inspiron 530 + Ubuntu 10.04 ) で試したとき、
PAE 対応カーネルで起動しても 3GB までしか認識されず。
調べてみると、BIOS が Memory Remapping に対応してないと認識されないとのこと。
早速 BIOS をアップデート (1.0.3 → 1.0.18) してみたら、認識されました。

● kernel, PAE, 3GB, memory, 認識, 4GB, 32bit, BIOS, remapping, リマッピング

2011年2月28日月曜日

RAM speed と type をチェックする方法

Ubuntu で RAM speed と type をチェックする方法。

# dmidecode --type 17

出力例。

# dmidecode 2.9
SMBIOS 2.5 present.

Handle 0x0025, DMI type 17, 27 bytes
Memory Device
    Array Handle: 0x0024
    Error Information Handle: Not Provided
    Total Width: 64 bits
    Data Width: 64 bits
    Size: 1024 MB
    Form Factor: DIMM
    Set: None
    Locator: DIMM1
    Bank Locator:
    Type: DDR2
    Type Detail: Synchronous
    Speed: 667 MHz (1.5 ns)
    Manufacturer: 7F7F7F0B00000000
    Serial Number: EA0D2F3D
    Asset Tag: 0D0739
    Part Number: NT1GT64U8HB0BY-3C

Handle 0x0026, DMI type 17, 27 bytes
Memory Device
    Array Handle: 0x0024
    Error Information Handle: Not Provided
    Total Width: Unknown
    Data Width: Unknown
    Size: No Module Installed
    Form Factor: DIMM
    Set: None
    Locator: DIMM2
    Bank Locator:
    Type: Unknown
    Type Detail: Unknown
    Speed: Unknown
    Manufacturer: 7F7F7F7F7F510000
    Serial Number: 010AE026
    Asset Tag: 440725
    Part Number: 64T64000HU25FB

Handle 0x0027, DMI type 17, 27 bytes
Memory Device
    Array Handle: 0x0024
    Error Information Handle: Not Provided
    Total Width: 64 bits
    Data Width: 64 bits
    Size: 1024 MB
    Form Factor: DIMM
    Set: None
    Locator: DIMM3
    Bank Locator:
    Type: DDR2
    Type Detail: Synchronous
    Speed: 667 MHz (1.5 ns)
    Manufacturer: 7F7F7F0B00000000
    Serial Number: 200D2F3B
    Asset Tag: 0D0739
    Part Number: NT1GT64U8HB0BY-3C

Handle 0x0028, DMI type 17, 27 bytes
Memory Device
    Array Handle: 0x0024
    Error Information Handle: Not Provided
    Total Width: Unknown
    Data Width: Unknown
    Size: No Module Installed
    Form Factor: DIMM
    Set: None
    Locator: DIMM4
    Bank Locator:
    Type: Unknown
    Type Detail: Unknown
    Speed: Unknown
    Manufacturer: CE00000000000000
    Serial Number: 7311D115
    Asset Tag: 010636
    Part Number: M3 78T6553CZ3-CE7

● RAM, speed, type, DDR2, DDR3, スピード, タイプ, 種類, メモリ, memory