2010年12月13日月曜日

hMailServer ( Windows )

Windows 上で動くフリーの Mail サーバー
hMailServer
メモしておこう。
Linux でやるより手軽かも。

● Windows, Mail, IMAP, SMTP, POP, Free, フリー, hMailServer, メールサーバー

2010年12月11日土曜日

Lenobo IdeaPad U150 に Ubuntu 10.04 LTS をインストール

Ubuntu をインストールしていたセカンドマシン Dell Inspiron 5100 の調子がおかしくなってきたので、
ノート PC を買い換えました ( ポイントで )。
Ubuntu でしか使わないから、安いやつでいいやってことで、2 週間ぐらい検討した結果、
Lenobo IdeaPad U150 にしました。
Atom の Netbook じゃちょっとなぁ、i3,i5,i7 ノートはでかすぎ。
丁度良いサイズってことで、これに。
CPU: Intel Celelon SU2300 1.2GHz
RAM: 2GB DDR3×1 (Max 4GB)
HDD: 250GB
LCD: 11.6inch 1366×768ドット
無線: 802.11b/g
小ぶりながら、キーピッチも大きめで打ちやすいです。



この天板の素材とデザインがいまいちという意見もありますが、そこは全く気にならない。
中身が重要。
裏蓋を開けると HDD、メモリ、PCI スロットに簡単にアクセスできるのが良いです。
早速、Ubuntu 10.04 LTS (32bit) をインストールしました。
64bit 版にするか悩んだんですが、ググると対応してないパッケージがあったりとか、
特別なんかしないといけない場合があるらしいとかあるようで、32bit 版にしときました。
32bit 版でも特に問題ないらしい。
今のところ、問題ないです。

以下、インストール時のメモです。

1. まず、Windows7 で最低限の動作確認をしておく

インストールしてある Windows7 を起動して、無線 LAN、有線 LAN、スピーカぐらいは、動作確認しておきます。
特に問題なし。

2. Ubuntu 10.04 LTS インストーラの準備

Lenobo IdeaPad U150 には、CD/DVD ドライブが搭載されていません。
USB メモリ等にインストーラを準備します。
今回は UNetbootin で、microSD にインストーラを入れ、
USB-microSD アダプタからブートしました。
UNetbootin から、直接 ISO イメージをダウンロードして、microSD に書くこともできますが、
途中で書き込み失敗とかもあり得るので、ISO イメージをあらかじめダウンロードしておきます。
Ubuntu Japanese Team
インストーラの作成に、ちょっと時間がかかります。

3. Ubuntu 10.04 LTS をインストール

USB-microSD アダプタ を PC に挿入し、起動時に BIOS の設定で (F12 か F2 キー)、USB-microSD アダプタから起動します。
一応、Windows7 も残しておきたかったので、デュアルブート設定にします。
パーティションは、Windows7 100GB、Ubuntu 100GB ぐらいに配分。
パーティション設定のときに、スライダーで簡単にパーティション設定ができます。
すばらしい。
あらかじめ、GNU parted とかでパーティション切り直さなくていいんだ (感涙)。
特にトラブルもなく、インストールできました。

4. 無線 LAN について

Lenobo IdeaPad U150 の無線 LAN は、Broadcom BCM4312 802.11b/g (rev 01) でした。
インストール直後は、動かなかったんですが、apt-get update すると、
ドライバのインストールウィンドウが出てきました。
Broadcom STA ドライバ を選択して、有効化すると使えるようになります。
Broadcom B43 Wireless Driver だと、つながったように見えるものの、通信できませんでした。


5. その他メモ

sfdisk と df の結果を貼り付けておきます。
リカバリ用のパーティションも保持されているようです ( たぶん )。
あとは自己責任でどうぞ。
( Windows7 は使わない、最悪リカバリできなくてもいいやってことでやってます )

# sfdisk -l
Disk /dev/sda: 30401 cylinders, 255 heads, 63 sectors/track
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

   Device Boot Start     End   #cyls    #blocks   Id  System
/dev/sda1   *      0+     25-     26-    204800    7  HPFS/NTFS
/dev/sda2         25+  12227-  12203-  98014471    7  HPFS/NTFS
/dev/sda3      12227+  28475-  16248- 130505729    f  W95 Ext'd (LBA)
/dev/sda4      28475+  30401-   1927-  15471800   12  Compaq diagnostics
/dev/sda5      24523+  28475-   3952-  31737856    1  FAT12
/dev/sda6      12227+  24018-  11791-  94706688   83  Linux
/dev/sda7      24018+  24522-    505-   4051968   82  Linux swap / Solaris

# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda6             93219808   2767284  85717192   4% /
none                    958376       324    958052   1% /dev
none                    962592       184    962408   1% /dev/shm
none                    962592       116    962476   1% /var/run
none                    962592         0    962592   0% /var/lock
none                    962592         0    962592   0% /lib/init/rw

6. 最後に、起動の高速化設定等々。

あとは、以下のリンクから順番に設定していけば OK。
まさおのブログ (表): Ubuntu インストール後にする設定

Bootchart の結果は、19.23 秒。
実測で、電源 ON から 「 テケテン 」 まで 35 秒。

● Lenobo IdeaPad U150, 10.04 LTS, デュアルブート, Windows7, Ubuntu, パーティション, リカバリ

2010年12月2日木曜日

Ubuntu で VLAN

Ubuntu で VLAN 設定をするときのメモ。

■ (前準備) vlan パッケージをインストールする。

# apt-get install vlan

■ eth0 に VID=2 の VLAN を設定する場合。

WARNING が出るけど、これは気にしなくていい。
eth0.2 というインターフェイスが作成される。

# vconfig add eth0 2
WARNING:  Could not open /proc/net/vlan/config.
Maybe you need to load the 8021q module, or maybe you are not using PROCFS??
Added VLAN with VID == 2 to IF -:eth0:-

■ eth0.2 に IP アドレス 192.168.22.10/24 を付ける場合。

# ifconfig eth0.2 192.168.22.10 up
# ifconfig eth0.2
eth0.2    Link encap:Ethernet  HWaddr XX:XX:XX:XX:XX:XX
          inet addr:192.168.22.10  Bcast:192.168.22.255  Mask:255.255.255.0
          inet6 addr: fe80::xxxx:xxxx:xxxx:xxxx/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:25 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:3996 (3.9 KB)

■ リオーダー設定をする場合。

デフォルトの 0 でも、大抵の場合は大丈夫なはず (未確認)。
パケットがうまくキャプチャできないときは設定してみる。

# vconfig set_flag eth0.2 1
Set flag on device -:eth0.2:- Should be visible in /proc/net/vlan/eth0.2

■ 設定を確認する場合。

# cat /proc/net/vlan/eth0.2
eth0.2  VID: 2   REORDER_HDR: 1  dev->priv_flags: 1
         total frames received            0
          total bytes received            0
      Broadcast/Multicast Rcvd            0

      total frames transmitted           25
       total bytes transmitted         3996
            total headroom inc            0
           total encap on xmit            0
Device: eth0
INGRESS priority mappings: 0:0  1:0  2:0  3:0  4:0  5:0  6:0 7:0
 EGRESS priority mappings:

■ eth0.2 を削除する場合。

# vconfig rem eth0.2
Removed VLAN -:eth0.2:-

■ その他メモ。

動作確認は、試しに ping を打ってみる (同じネットワーク内の存在しない IP アドレスでいい)。
wireshark とかで、ARP パケットをキャプチャして、802.1Q Virtual LAN が見えると OK。
NIC によっては、802.1Q ヘッダが付かないやつがあるので注意。

● VLAN, 802.1Q, VID, vconfig,

2010年10月2日土曜日

シェルでビープ音を鳴らす

シェルで、時間がかかるコマンドが完了したときにビープ音を鳴らすようにしておくと、
そのコマンド実行中に、他の作業に集中することができます。

.bashrc に下記の alias を設定しておきます。

alias beep='echo -e "\a"'

コマンド hogehoge 実行後にビープを鳴らして欲しいときには以下のようにします。

$ hogehoge; beep

1 回じゃ気づかん! って場合は、カスタマイズすればよいでしょう。
(他にもいろいろ方法はある)

$ hogehoge; beep; sleep 1; beep

実際にやる前に、テストはしておきましょう。音量設定のチェックとかも重要。

● beep, shell, bash, ビープ, シェル

2010年9月30日木曜日

シェルスクリプトで set -e

シェルスクリプトで set -e を実行すると、コマンドが失敗したときに、それ以降の処理を実行せずに終了する。
おぼえとこ。
set -x (各コマンドを表示しながら実行) をぐらいしか使ってなかったなぁ。

● shell, script, シェル, スクリプト, set, "set -e"

2010年9月26日日曜日

Linux で 1 つの NIC に複数 IP アドレスを割り当てる ( IP alias )

1 つの NIC ( Network Interface Card ) に対して複数の IP アドレスを割り当てる方法。

# ifconfig eth0:1 192.168.1.1

eth0 のあとに : ( コロン ) を付けて、適当な番号を割り当てれば OK。

● IP alias, NIC, 複数, IP アドレス, IP address, ifconfig

2010年9月25日土曜日

英語-日本語電気専門用語辞書

専門用語を英語でどう表現するか悩むことがあります。
先輩に教えてもらったこのサイトが使えます。

英語-日本語電気専門用語辞書

電気系の用語が多そう。

● 電気, 専門, 用語, 英語, 日本語, 中国語

2010年9月23日木曜日

uuidgen で 16 進数の乱数を生成

Linux で 16 進数の乱数を生成する方法。
uuidgen を使ってみる。

$ uuidgen | sed s/-//g

uuidgen は 32 桁のランダムな 16 進数を出してくれるので、必要な桁数に応じて cut するってのもあり。
16 桁必要な場合の例。

$ uuidgen | sed s/-//g | cut -c 1-16

それ以上必要な場合は…、cat でくっつけるか? (未確認)

● 16 進数, Linux, uuidgen, ランダム, 乱数, 生成

2010年9月5日日曜日

mongoose httpd


mongoose httpd ってのを発見。

http://code.google.com/p/mongoose/

軽量 (Linux 40KB) で、シングルバイナリで、Windows、Mac、Linux でも動作。
大概のことはできるみたい。
ライセンス形態 = MIT。
素性も良さそう。
すばらしい。
デフォルトの port は 8080 でした (オプションで変更可能)。

● Linux, Windows, 軽量, httpd, MIT, mongoose, Web, サーバ, server

2010年9月3日金曜日

[Obsolete] Ubuntu で tftp サーバ (tftpd)

この投稿は古くなりました (2013/03/30)。
こちらを参照してください。
まさおのブログ (表): Ubuntu で tftp サーバ (tftpd)

Ubuntu で tftpd を設定する方法。

1. tftpd をインストール

# apt-get install tftpd

2. inetd.conf の設定を確認

デフォルトの設定では、/srv/tftp ディレクトリにファイルを置くことになるようだ。
/tftpboot じゃないのね。

# cat /etc/inetd.conf | grep tftp
tftp            dgram   udp     wait    nobody  /usr/sbin/tcpd  /usr/sbin/in.tftpd /srv/tftp

3. /srv/tftp ディレクトリを作成&パーミッション設定

# mkdir /srv/tftp
# chmod 777 /srv/tftp

■ 2012/02/02 追記 Ubuntu 10.10 (以降?) だと、xinetd で設定するようだ。 Ubuntu 10.04 までは、この方法でいい。

● tftpd, tftp, サーバ, tftpboot