Top / Installmemo / Linux

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS


#contentsx
***Link [#s9564d90]
-[[IBM Linux技術情報>http://www.ibm.com/developerworks/jp/views/linux/libraryview.jsp]]
-[[エラーメッセージ検索>http://ossmpedia.org/]]
-[[sysstat>http://perso.orange.fr/sebastien.godard/]]
-[[Linux入門Document>http://www.lain.org/winglab/Works/book.html]] (Vine3.2ベース)
***ブートローダー [#mee0352a]
-[[Grub>Installmemo/Grub]]
***Disk管理 [#md4bfea8]
-[[LVM,Filesystem>Installmemo/Linux/storage]]
-[[Software RAID>Installmemo/Linux/SoftwareRAID]]
-[[Storage Area Network(SAN)>Installmemo/Linux/SAN]]
-[[iSCSI>Installmemo/Linux/iSCSI]]
***Network関連 [#f777a483]
-[[Installmemo/Linux/Network]]
-[[Installmemo/Linux/L-05A]]
-[[Installmemo/Linux/Firewall]]
***Kernel [#d0d4bdf4]
-[[Kernel Build>Installmemo/Linux/Kernel]]


***チューニング [#iae792a6]
-IPv4関連
http://www.linux.or.jp/JF/JFdocs/kernel-docs-2.4/networking/ip-sysctl.txt.html

--martian sourceのエラーログ
発信元のIPが不正であることを示す.RFC1812によるとログに記録されることが求められるが、procファイルシステムのlog_martiansによってログへの出力をコントロールできる。
 /proc/sys/net/ipv4/conf/eth0/log_martians
 /proc/sys/net/ipv4/conf/all/log_martians


-最大プロセス数
Linuxにおける最大プロセス数の考え方は、プロセス数+スレッド数。また、glibcに関連する場合の最大スレッド数はPTHREAD_THREADS_MAXの定義を確認。
 /proc/sys/kernel/threads-max

-メモリオーバーコミット(Kernel 2.6 uppper)
メモリが逼迫した状況でも、memory overcommit によるプロセスの突然死を起こしたくな い状況ではproc/sys/vm/overcommit_memory を "2" にし、
かつ overcommit_ratio を調整して "malloc_limit"値 が物理メモリ量を超えないようにすれば良い
 malloc_limit[MB]= swap領域のサイズ[MB] + (物理メモリ量[MB] * overcommit_ratio / 100)
 
 # sysctl -w vm.overcommit_ratio=99
 # sysctl -w vm.overcommit_memory=2

-lowメモリ領域
 > cat /proc/sys/vm/lowmem_reserve_ratio
 256     256     32

-仮想メモリ管理
/proc/sys/vm/swappiness

-Oracle
OracleをLinux上で稼働させる場合、Kernelのチューニングを行う必要がある。
,kernel.sysrq,
,kernel.shmmax,
,kernel.sem,
,kernel.msgmax,
,kernel.msgmni,
,kernel.threads-max,
,kernel.shmmni,
,kernel.msgmnb,
,fs.file-max,
,net.ipv4.ip_local_port_range,
http://www.oracle.co.jp/2shin/no86/o35linux.html
-CPUSpeed
http://www.carlthompson.net/Software/CPUSpeed
CPUspeedで選択できるクロック数を確認する方法
 % cat //sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
 1600000 1400000 1200000 1000000 800000 600000

***ユーザーID管理のメモ [#xb8e7e02]
 # chage
 Usage: chage [-l] [-m min_days] [-M max_days] [-W warn]
        [-I inactive] [-E expire] [-d last_day] user

パスワード期限表示
 % chage -l user01
 パスワード:
 Minimum:        0
 Maximum:        90
 Warning:        7
 Inactive:       -1
 Last Change:             3月 07, 2012
 Password Expires:        6月 05, 2012
 Password Inactive:      Never
 Account Expires:        Never


 # usermod
 使用法: usermod [-u ユーザID [-o]] [-g グループ] [-G グループ,...]
                [-d ホーム [-m]] [-s シェル] [-c コメント] [-l 新規ユーザ名]
                [-f 無効日数] [-e 期限切れ日 ] [-p パスワード] [-L|-U] ユーザ名


-/etc/shadowファイルのフォーマット
username:passwd:last:may:must:warn:expire:disable:reserved
,username,passwd,last,may,must,warn,expire,disable,reserved
,ユーザ名,エンコードされたパスワード,1970年1月1日から、パスワードが最後に更新された日までの日数,何日前にパスワードが変更されたと思われるか,パスワードを変更しなければならない期限,パスワードの期限切れの何日前にユーザに警告するか,パスワード期限切れの何日後にアカウントを抹消するか,1970年1月1日から、アカウントが抹消された日までの日数,予約フィールド


-ロック
--状況表示
 # faillog -u username
--ロックの解除
 # faillog -r username

-rootユーザーのログインコンソール制限
/etc/securettyに記載されたコンソールのみrootユーザーはログイン可能である。
 #
 # This file contains the device names of tty lines (one per line,
 # without leading /dev/) on which root is allowed to login.
 #
 tty1
 tty2
 tty3
 tty4
 tty5
 tty6
 # for devfs:
 vc/1
 vc/2
 vc/3
 vc/4
 vc/5
 vc/6
 ttyS0
 ttyS1

***Timezoneの変更 [#v521534b]
/etc/localtimeファイルによってデフォルトのタイムゾーンが設定される。localtimeファイルを置き換えることでタイムゾーンの変更が可能である。
 # mv /etc/localtime /etc/localtime.est
 # cp -ip /usr/share/zoneinfo/Japan /etc/localtime
最後に/etc/sysconfig/clock を修正する。
 ZONE="Asia/Tokyo"



**RPM [#ufad3d5e]
***RPMのエラー [#l38c1314]
-キャッシュファイルが損傷した
 # apt-get update 
 取得:1 http://updates.vinelinux.org 4.1/i386 release [2254B]
 2254B を 0s 秒で取得しました (15.4kB/s) 
 取得:1 http://updates.vinelinux.org 4.1/i386/main pkglist [286kB]
 取得:2 http://updates.vinelinux.org 4.1/i386/main release [158B]
 取得:3 http://updates.vinelinux.org 4.1/i386/plus pkglist [484kB]
 取得:4 http://updates.vinelinux.org 4.1/i386/plus release [166B]
 取得:5 http://updates.vinelinux.org 4.1/i386/updates pkglist [47.0kB]
 取得:6 http://updates.vinelinux.org 4.1/i386/updates release [169B]
 取得:7 http://updates.vinelinux.org 4.1/i386/nonfree pkglist [5713B]
 取得:8 http://updates.vinelinux.org 4.1/i386/nonfree release [169B]
 取得:9 http://updates.vinelinux.org 4.1/i386/main srclist [121kB]
 取得:10 http://updates.vinelinux.org 4.1/i386/plus srclist [199kB]
 取得:11 http://updates.vinelinux.org 4.1/i386/updates srclist [10.4kB]
 取得:12 http://updates.vinelinux.org 4.1/i386/nonfree srclist [10.1kB]
 1164kB を 2s 秒で取得しました (389kB/s)
 セグメンテーション違反ですでいます... 0%
対応-キャッシュファイルを削除する。
 # mv /var/cache/apt/pkgcache.bin /tmp/
 # mv /var/cache/apt/srcpkgcache.bin /tmp/

-RPM DBが損傷した
表示されるメッセージ例
 rpmdb: PANIC: fatal region error detected; run recovery
 error: db4 error(-30977) from db->get: DB_RUNRECOVERY: Fatal error, run database recovery
対応
 # mv /var/lib/rpm/__db.001 /tmp
 # mv /var/lib/rpm/__db.002 /tmp
 # mv /var/lib/rpm/__db.003 /tmp
 # rpm --rebuilddb
***RPMオプション [#i6fa1c5b]
-PRMからインストールされるファイル一覧を表示する
 # rpm -qlpi パッケージ名.rpm
**Tips [#bd6ab050]
-キャッシュをクリアする
1=ページキャッシュ解放
2=ダーティキャッシュ、inode解放
3=ページキャッシュとダーティキャッシュ、inode解放
 # echo 1 > /proc/sys/vm/drop_caches
-HDDのパーティションにラベルを付ける
 # e2label /dev/hdaxx /labelname
-RAM tmpファイルシステムを使う
ファイルシステムタイプ tmpfsはメモリ上に展開される。/dev/shmにマウントされる。
実際にファイルI/Oに使うには下記のようにマウントする。(/tmpに32MB RAM上から割り当てられる)
サイズ指定しない場合は実メモリの半分が割り当てられる。
 # mount -t tmpfs -o size=32m tmpfs /tmp
/etc/fstabにも記述可能。
 /dev/shm             /tmp                    tmpfs    defaults,size=64m        0 0
-ISOイメージをマウントする
 # mount -o loop /tmp/IMAGE.iso /mnt/cdrom/

-ファイルを完全消去する
 $ shred --remove test.bin

-シリアルコンソール化
--inittabの追記
 co:2345:respawn:/sbin/agetty -h 115200 ttyS0 vt100
--liloの修正
カーネル指定のappendオプションに次を追加
 console=tty0 console=ttyS0,115200
--kuduzuの更新停止
 # vi /etc/sysconfig/kudzu
 SAFE=yes
--シリアルコンソールのログイン許可
 /etc/securettyにttyS0を追加
http://www.shoshin.co.jp/c/lsi/scs/faqlinux.html
--シリアルポートの設定
 # stty 転送レート -F デバイス名
現状の設定値確認
 # stty -a -F /dev/ttyUSB0
 speed 9600 baud; rows 0; columns 0; line = 0;
 intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>;
 swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W;  lnext = ^V; flush = ^O;
 min = 1; time = 0;
 -parenb -parodd cs8 hupcl -cstopb cread -clocal -crtscts
 -ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl -ixon  -ixoff -iuclc -ixany
 -imaxbel
 -opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
 -isig -icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke
コントロールをすべてoffにする場合
 # stty 9600 raw -F /dev/ttyUSB0

----
#counter