理工系研究者のための Mac OS X, Windows, Linux メモ
 
ホーム >> Linux関連 >> Tips
このエントリーをはてなブックマークに追加

Linux Tips

  1. NTPの設定
  2. サービスの起動、停止
  3. ウインドウ・バーにホスト名、ファイル名などを表示したい
  4. tail -f と同じ動作を less で行う
  5. 空きメモリ容量を調べる
  6. ログインできないユーザーを作る
  7. rootでrshできるようにしたい
  8. ユーザーをグループに追加する
  9. Linux上でディスクイメージを作成する
  10. FreeBSDのディスクをマウントする
  11. ハードウエア情報を表示する
  12. ファイル名の大文字を小文字に変換する
  13. テキストファイルの中間部分だけ切り出す
  14. デフォルトロケールをEUCにかえる
  15. 複数台のPCがネットワーク接続されているかどうか調べる
  16. runlevel の変更
  17. ビープ音を消す
  18. USBフラッシュメモリを使う

NTPの設定

作成日:2010.4.9

環境:Vine Linux 5.1

ntpサーバはインストールされているとします.

/etc/ntp.confに,NTPサーバ(IPアドレス: 192.168.1.1とする)を設定します.

server 192.168.1.1

ntpdを起動するには,

# /etc/rc.d/init.d/ntpd start
とします.停止するにはstartのところをstopとします.

ntpのデーモン(ntpd)が起動時に立ち上がるようにします.

# chkconfig --level 35 ntpd on

手動でNTPサーバと同期するにはntpdを停止してから,

# ntpdate 192.168.1.1
とします.定期的に時刻合わせをしたい場合にはこれをcronで実行するようにします.

サービスの起動、停止

作成日:2007.2.4
# /sbin/chkconfig httpd on
# /sbin/chkconfig --list
# /sbin/chkconfig --level 345 httpd off
など。

ウインドウ・バーにホスト名、ファイル名などを表示したい

作成日:2007.2.4

確認環境:Cygwin

echo -e "\033]2; $USERNAME@$HOSTNAME:$PWD \077"

このようにエスケープシーケンスを含むコマンドをechoでxtermに送ればタイトルバーを書き換えることが出来る。ここで\033はエスケープシーケンスの8進数表示でESCを表す。\077はBELを表す。\033]2;と\077で挟んだ部分がタイトルバーに表示される。

ディレクトリを変更した場合に、即座にウインドウバーに変更を反映したい場合は、環境変数のPROMPT_COMMANDにセットする。

export PROMPT_COMMAND='echo -ne "\033]2; $USER@$HOSTNAME:$PWD \077"'

参考: Xterm-Title mini-HOWTO

tail -f と同じ動作を less で行う

作成日:2007.2.4
less 起動中に SHIFT+f。

空きメモリ容量を調べる

作成日:2007.2.4

freeコマンドを用いる。

$ free

             total       used       free     shared    buffers     cached
Mem:       1047548     463192     584356          0          0          0
-/+ buffers/cache:     463192     584356
Swap:      1572864      28508    1544356

-/+ buffers/cache: の行の free の値がバッファやキャッシュで使われた分を差し引いた実際の空きメモリ量に相当する。

ログインできないユーザーを作る

作成日:2007.2.4

シェルに/bin/false を指定する。

# useradd -s /bin/false

rootでrshできるようにしたい

作成日:2006.12.12

外部ネットワークから切り離された状態にあるクラスターコンピュータなどを管理するとき、rootユーザーで複数PC間を移動できると便利。

host1からhost2にrootでrshを行う場合を考える。

# rsh host2

これを実現するには、host2において、

/etc/pam.d/rlogin
を開き、
auth required pam_securetty.so
をコメントアウトする。さらに、
/root/.rhosts
にhost1を書く。さらに、rootユーザーでrcp等を実行するためには
/etc/pam.d/rsh
を開き、同じく
auth required pam_securetty.so
をコメントアウトする。

ユーザーをグループに追加する

作成日:2006.11.19

環境:Vine Linux 3.2

sudo の権限を与える時などに、ユーザーをグループwheelに加える時には、

# gpasswd -a hoge wheel

又は、

# usermod -G wheel hoge

削除する時には、

# gpasswd -d hoge wheel

確認するには

# more /etc/group

Linux上でディスクイメージを作成する

cdromのディスクイメージを作成する。

# dd if=/dev/cdrom of=LinuxDisk.img

マウントするには、

# mount -o loop LinuxDisk.img /mnt/diskimage

など。

FreeBSDのディスクをマウントする

参考:The Linux+FreeBSD mini-HOWTO/ 5. ファイルシステムのマウント

# mount -t ufs -o ufstype=44bsd  /dev/hda5 /mnt

ハードウエア情報を表示する

lshw (Hardware Lister)を使う。

ファイル名の大文字を小文字に変換する

#!/bin/sh 
 for file in *
 do
   mv $file `echo $file | tr '[A-Z]' '[a-z]'`
 done

※echoの前の引用符`は実際は半角。

テキストファイルの中間部分だけ切り出す

例えばファイルの 1000〜2000行だけ切り出して tmp.txt に入れるには、

cat file | head -2000 | tail -1000 > tmp.txt

デフォルトロケールをEUCにかえる

参考:UNIXな生活

デフォルトはUTF-8になっている。/etc/sysconfig/i18n を変更するには

#LANG="ja_JP.UTF-8"

 LANG="ja_JP.eucJP"

 #SUPPORTED="ja_JP.UTF-8:ja_JP:ja"
SUPPORTED="ja_JP.eucJP:ja_JP:ja"

と書き換える。このままでは man が文字化けするので、/etc/man.config の中の次の部分を変更する。

#PAGER /usr/bin/less -jsr
PAGER /usr/bin/lv

複数台のPCがネットワーク接続されているかどうか調べる

$ nmap -sP 192.168.1.1-250

pingが通るかどうか調べている。

runlevel の変更

参考:MM-LABO.COM

環境:FedoraCore1

/etc/inittab をひらいてファイルの中の

id:5:initdefault:

id:3:initdefault:

とする。

ビープ音を消す

環境:FedoraCore1

ターミナルで鳴るビープ音を消すには ~/.inputrc に次のように記述する。

set bell-style none

システム全体に適用するには /etc/inputrc を書き換える。

USBフラッシュメモリを使う

参考:@it

rootになってマウントポイントを作成する。

# mkdir /mnt/usbfm

USBフラッシュメモリを差す。認識されたかどうかは、

# dmesg

または

# tail /var/log/messages

で調べる。マウントするには

# mount -t vfat /dev/sda1 /mnt/usbfm/

とする。アンマウントするには、

# umount /mnt/usbfm

/etc/fstab に自動マウントの設定がされている場合は、フラッシュメモリは設定してあるマウントポイントに自動的にマウントされる。