概要
LPIC1の勉強内容、知らなかったことを記載
ファイル
.bash_profile:ログイン時のみ読み込まれる
.bash_login:ログインして~/.bash_profileが存在しない場合に読み込まれる
.profile:ログインして~/.bash_loginが存在しない場合に読み込まれる
.bashrc:シェルを起動するたびに読み込まれる
### ブートローダーからカーネルに渡される値が記載されている ### root@hostname:/home/shimizu# cat /proc/cmdline BOOT_IMAGE=/boot/vmlinuz-3.16.0-4-amd64 root=UUID=4decf51c-2399-452e-99f9-58ba282d6d5b ro quiet ### デバイスとのやりとりのためのIOポートが記載されている ### root@hostname:/home/shimizu# cat /proc/ioports 0000-001f : dma1 0020-0021 : pic1 0040-0043 : timer0 ... ### dpkgコマンドの設定ファイル ### root@hostname:/home/shimizu# cat /etc/dpkg/dpkg.cfg # dpkg configuration file ... ### ユーザ作成時にホームディレクトリに置かれるファイルを設定可能 ### root@hostname:/home/shimizu# ls -al /etc/skel/ 合計 20 drwxr-xr-x 2 root root 4096 5月 5 00:59 . drwxr-xr-x 103 root root 4096 7月 10 09:16 .. -rw-r--r-- 1 root root 220 11月 13 2014 .bash_logout -rw-r--r-- 1 root root 3515 11月 13 2014 .bashrc -rw-r--r-- 1 root root 675 11月 13 2014 .profile ### シェル、コマンド実行前にsshが実行するファイル ### [root@ip-172-32-0-221 ec2-user]# ls /etc/sshrc ### wやwhoコマンドが確認しているファイル。ユーザがログインやログアウトすると、このファイルが更新される ### root@hostname:/home/shimizu# lv /var/run/utmp ... ### 送信待ちのメールキューが保存されているファイル ### root@hostname:/home/shimizu# ls /var/spool/mqueue/ dft589nhjk019447 qft589nhjk019447 ### 現在マウントされているファイルシステムの情報が格納されている ### root@hostname:/home/shimizu# cat /etc/mtab rootfs / rootfs rw 0 0 sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0 proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
ログ
### linuxで一般的なログが記載されている ### [root@ip-172-32-0-221 ec2-user]# tail -f /var/log/messages Jul 10 22:16:17 ip-172-32-0-221 yum[30362]: Updated: newrelic-daemon-4.23.0.102-1.x86_64 Jul 10 22:16:17 ip-172-32-0-221 yum[30362]: Updated: php55-pdo-5.5.26-1.103.amzn1.x86_64 ... ### プリンタやメールログが記載されている ### [root@ip-172-32-0-221 ec2-user]# tail -f /var/log/spooler ...
コマンド
### PCIデバイス情報を表示 ### root@hostname:/home/shimizu# lspci 00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02) 00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II] 00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II] ... ### 上と同義 ### root@hostname:/home/shimizu# cat /proc/bus/pci/devices ... ### 文字コードを変更するコマンド ### ### iconv:International Codeset Conversion Library ### ### 利用できる文字コードを表示する ### [root@ip-172-32-0-221 ec2-user]# iconv -l ... ### setコマンドのオプションを表示する ### root@hostname:/home/shimizu# set -o allexport off braceexpand on ### USBデバイス情報を表示 ### root@hostname:/home/shimizu# lsusb Bus 001 Device 002: ID 0627:0001 Adomax Technology Co., Ltd Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub ### ツリー状に表示する ### root@hostname:/home/shimizu# lsusb -t /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M |__ Port 1: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M ### ファイルシステム情報を表示### root@hostname:/home/shimizu# dumpe2fs /dev/vda1 Filesystem volume name: <none> Last mounted on: / Filesystem UUID: 4decf51c-2399-452e-99f9-58ba282d6d5b Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize Filesystem flags: signed_directory_hash ... ### プロセス番号11848を使用するプロセスを表示 ### root@hostname:/home/shimizu# lsof -p 11848 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME apache2 11848 www-data cwd DIR 254,1 4096 2 / apache2 11848 www-data rtd DIR 254,1 4096 2 / apache2 11848 www-data txt REG 254,1 654136 2500794 /usr/sbin/apache2 apache2 11848 www-data DEL REG 0,4 986349 /dev/zero ... ### ポートを開いているプロセスを表示する ### root@hostname:/home/shimizu# lsof -i:80 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME apache2 2091 www-data 4u IPv6 185548 0t0 TCP *:http (LISTEN) apache2 2101 www-data 4u IPv6 185548 0t0 TCP *:http (LISTEN) ### PIDが500のプロセスのnice値を-20に変更する ### root@hostname:/home/shimizu# renice --20 500 root@hostname:/home/shimizu# chage -l shimizu 最終パスワード変更日 : 5月 04, 2015 パスワード期限: : なし パスワード無効化中 : なし アカウント期限切れ : なし パスワードが変更できるまでの最短日数 : 0 パスワードを変更しなくてよい最長日数 : 99999 パスワード期限が切れる前に警告される日数 : 7 ### -Sオプションはディレクトリの容量にサブディレクトリの容量を含めずに表示する ### root@hostname:/home/test# du -ch 143M ./test1 200M . 200M 合計 root@hostname:/home/test# du -chS 143M ./test1 57M . 200M 合計 ### manページを検索する ### root@hostname:/home/shimizu# whatis uname uname (1) - システム情報を表示する uname (2) - 現在稼働中のカーネルについての名前と情報を得る root@hostname:/home/shimizu# man -f uname uname (1) - システム情報を表示する uname (2) - 現在稼働中のカーネルについての名前と情報を得る
パッケージ操作
### パッケージからインストールされたファイルを表示(--listfiles) ### root@hostname:/var/cache/apt/archives# dpkg -L apache2-utils /. /usr /usr/bin /usr/bin/rotatelogs ... ### パッケージに含まれるファイル一覧を表示 ### root@hostname:/var/cache/apt/archives# dpkg -c apache2-utils_2.4.10-10_amd64.deb drwxr-xr-x root/root 0 2015-03-15 18:52 ./ drwxr-xr-x root/root 0 2015-03-15 18:52 ./usr/ drwxr-xr-x root/root 0 2015-03-15 18:52 ./usr/bin/ ... ### パッケージ状態を表示 ### root@hostname:/home/shimizu# dpkg -l apache2-utils 要望=(U)不明/(I)インストール/(R)削除/(P)完全削除/(H)保持 | 状態=(N)無/(I)インストール済/(C)設定/(U)展開/(F)設定失敗/(H)半インストール/(W)トリガ待ち/(T)トリガ保留 |/ エラー?=(空欄)無/(R)要再インストール (状態,エラーの大文字=異常) ||/ 名前 バージョン アーキテクチャ 説明 +++-=================================-=====================-=====================-======================================================================= ii apache2-utils 2.4.10-10 amd64 Apache HTTP Server (utility programs for web servers) ### unameコマンドが含まれているパッケージを検索 ### root@hostname:/var/cache/apt/archives# dpkg -S /bin/uname coreutils: /bin/uname ### 指定したディレクトリに格納されているパッケージファイルを再帰的に検索し、パッケージをまとめてインストールする ### root@hostname:/var/cache/apt/archives# dpkg -Ri directory ... ### インストール済パッケージを表示 ### [root@ip-172-32-0-221 ec2-user]# rpm -qa yum-3.4.3-137.57.amzn1.noarch python27-botocore-1.0.1-1.15.amzn1.noarch ... ### 指定したファイルが含まれるパッケージを表示 ### [root@ip-172-32-0-221 ec2-user]# rpm -qf /etc/pear.conf php-pear-1.9.5-2.17.amzn1.noarch ### パッケージを検証(RPMデータベースと実際のファイルが一致するか検証) ### [root@ip-172-32-0-221 ec2-user]# rpm -V nginx S.5....T. c /etc/nginx/nginx.conf .M....G.. /var/log/nginx ### インストール済パッケージ詳細を表示 ### [root@ip-172-32-0-221 ec2-user]# rpm -qi nginx Name : nginx Epoch : 1 Version : 1.6.2 Release : 1.23.amzn1 Architecture: x86_64 Install Date: 2015年03月29日 21時22分09秒 Group : System Environment/Daemons ... ### インストール前パッケージ詳細を表示(--query --info --package) ### [root@ip-172-32-0-221 ec2-user]# rpm -qip xxx ... ### インストール前パッケージによってインストールされるファイルを表示(--query --list --package) ### ### インストール後はp(--package)は不要 ### [root@ip-172-32-0-221 ec2-user]# rpm -qlp xxx ... ### パッケージのアンインストール(--erase) ### [root@ip-172-32-0-221 ec2-user]# rpm -e xxx ... ### 既に同じバージョンのパッケージがインストールされている場合は、インストールを行わない ### dpkg -Ei procmail_3.22-16_i386.deb ... ### 「-h」オプションにて、進行状況を表示 ### rpm -ih nc-1.84-24.8.amzn1.x86_64 ... ### パッケージのアップグレード(なければインストール) (--upgrade)### rpm -U nc-1.84-24.8.amzn1.x86_64 ... ### パッケージのアップグレード(なければインストールしない) (--freshen) ### rpm -F nc-1.84-24.8.amzn1.x86_64 ... ### パッケージグループを一覧表示する ### [root@ip-172-32-0-221 ec2-user]# yum grouplist 読み込んだプラグイン:priorities, update-motd, upgrade-helper There is no installed groups file. Maybe run: yum groups mark convert (see man yum) 4 packages excluded due to repository priority protections 利用可能なグループ Console internet tools DNS Name Server Development Libraries Development tools Editors ...
chmod
### SUID(Set User ID) ### ### コマンドやプログラムが実行されると、ファイル所有者の権限で実行されたと見なされる ### chmod u+s でも可 root@hostname:/home/shimizu# chmod 4755 test root@hostname:/home/shimizu# ls -al | grep "test" -rwsr-xr-x 1 root root 0 7月 12 23:04 test ### SGID(Set Group ID) ### ### コマンドやプログラムが実行されると、ファイル所有グループの権限で実行されたと見なされる ### chmod g+s でも可 root@hostname:/home/shimizu# chmod 2755 test root@hostname:/home/shimizu# ls -al | grep "test" -rwxr-sr-x 1 root root 0 7月 12 23:04 test ### スティッキービット ### ### 書き込みを許可されたとしても、スティッキービットが設定されていた場合は所有者でなければ削除できない ### chmod o+t でも可 root@hostname:/home/shimizu# chmod 1755 test root@hostname:/home/shimizu# ls -al | grep "test" -rwxr-xr-t 1 root root 0 7月 12 23:04 test
ネットワーク
### 通信経路を表示(UDPを利用) ### root@hostname:/home/shimizu# tracepath www.google.co.jp 1?: [LOCALHOST] pmtu 1500 1: 49.212.204.1 0.688ms 1: 49.212.204.1 3.343ms 2: oshrt1b-hrt21e.bb.sakura.ad.jp 1.083ms 3: osnrt1s-hrt2b.bb.sakura.ad.jp 0.540ms 4: osdrt2-hrt1s-2.bb.sakura.ad.jp 0.613ms 5: no reply ### ネットワーク名とネットワークアドレスの対応を記載 ### root@hostname:/home/shimizu# cat /etc/networks default 0.0.0.0 loopback 127.0.0.0 ... ### ネットワークインターフェースの統計情報を表示 root@hostname:/home/shimizu# netstat -i カーネルインタフェーステーブル Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR フラグ eth0 1500 0 72911726 0 0 0 407806 0 0 0 BMRU lo 65536 0 100160 0 0 0 100160 0 0 0 LRU
atコマンド
### 利用方法 ### [root@ip-172-32-0-221 ec2-user]# at midnight at> shutdown -h now # 終了時は[Ctl]+[D] at> <EOT> job 1 at 2015-07-12 00:00 ### atq は at -l と同義 ### [root@ip-172-32-0-221 ec2-user]# atq 1 2015-07-12 00:00 a root [root@ip-172-32-0-221 ec2-user]# atrm 1 [root@ip-172-32-0-221 ec2-user]# atq
useradd
### デフォルトの値確認方法 ### [root@ip-172-32-0-221 ec2-user]# useradd -D GROUP=100 HOME=/home ... ### デフォルトの値が保存されているファイル ### [root@ip-172-32-0-221 ec2-user]# cat /etc/default/useradd # useradd defaults file GROUP=100 HOME=/home ...
lpq(プリントキュー)コマンド利用方法
root@hostname:/home/shimizu# lpr test print root@hostname:/home/shimizu# lpq Warning: no daemon present Rank Owner Job Files Total Size 1st root 5 (standard input) 11 bytes root@hostname:/home/shimizu# lprm 5 dfA005hostname dequeued cfA005hostname dequeued root@hostname:/home/shimizu# lpq no entries
テキスト整形
fmt:テキストを整形する
join:フィールドが共通する列を結合する
paste:複数ファイルを行ごとに連結する
tac:テキストを末尾から順に表示する
### 2行目から7行目を削除して表示する ### sed 2,7d test.txt ### 先頭が"#"を外して表示する ### sed /^#/d test.txt ### ファイルの行頭のタブをスペース2つ分に置き換えて表示 ### expand -i -t 2 tabfile.txt ### 行頭の空白は無視してソートする ### sort -b file ### 行番号を空行を除いた行につけて出力する ### nl file cat -b file
転送速度
SATA : 1.5Gbps
SATAⅡ : 3Gbps
SATAⅢ : 6Gbps
USB2.0 : 480Mbps
USB3.0 : 5Gbps
USB
USBデバイスはいくつかのデバイスクラス(種類)がある
Mass Storage Class:ハードディスク、USBメモリ
ACM Communication Device Class:モデムなど
Human Interface Device:キーボードやマウス
GRUB
GRUBのバージョンが0.9x系→GRUB Legacy
設定ファイルは /boot/grub/menu.lst、もしくは /boot/grub/grub.conf
1.9以降→GRUB2
設定ファイルは /boot/grub/grub.cfg
カーネルでルートパーティションを指定するには
「root (hdディスク番号,パーティション番号)」と指定する。その際、番号はどちらも0から数える
### GRUB Legacyの設定ファイル ### [root@ip-172-32-0-221 ec2-user]# cat /boot/grub/menu.lst # created by imagebuilder default=0 timeout=1 ... [root@ip-172-32-0-221 ec2-user]# cat /boot/grub/grub.conf # created by imagebuilder default=0 timeout=1 ... ### 「/sbin/init」の代わりに「/bin/bash」を起動 ### 何らかの理由で「/sbin/init」プロセスの処理の途中でシステムが停止し、起動に失敗する場合に有効 grub> kernel /boot/vmlinuz-2.6.35 init=/bin/bash
SCSI
8bitのSCSIでは8台の、16bitのSCSIでは16台のデバイスを扱うことが可能
1つはSCSIコントローラーになる
認証
ホスト認証
サーバの持つ公開鍵をクライアントに登録しておき、クライアントがサーバへSSH接続を行った際
クライアントは登録されている公開鍵とサーバの公開鍵が一致するかどうかを確認する(~/.ssh/known_hosts)
ユーザ認証
クライアントの持つ公開鍵をサーバに登録しておき、サーバがSSH接続を受け付けた際
サーバは登録されている公開鍵とユーザの公開鍵が一致するかどうかを確認
文字コード
ASCⅡ:7bitで表現される。128種類の英数字、記号、制御コードで校正
ISO-8859:ASCⅡコードを8bitに拡張し、256種類を表現可能
Unicode:1つの文字コード体系で多言語を扱うために作成
UTF-8:ASCⅡと互換性あり、Unicodeをベースに
XServer利用方法
Xserver# xhost +(XclientのIP) Xclient# DISPLAY=(XserverのIP):0 Xclient# export DISPLAY Xclient# xeyes &
xdm
/etc/X11/xdm
xdm-config:XDMの設定ファイル
Xresorces:XDMログイン画面のデザイン設定
Xacess:ホストからXDMへアクセス許可の設定
Xsession:XDMのログイン後に実行されるスクリプト
KDM(KDEディスプレイマネージャ)は、KDE標準のディスプレイマネージャ
XDM(Xディスプレイマネージャ)は、X.Org標準のディスプレイマネージャ
GDM(GNOMEディスプレイマネージャ)は、GNOME標準のディスプレイマネージャ
CUPS
CUPS(Common UNIX Printing System)は、これまで使われてきた「lpd」に代わる新しい印刷システム
・ネットワーク上のプリンタをサポートするプロトコル「IPP(Internet Printing Protocol)」を採用している。
・プリンタの機種依存情報を記述する「PPD(PostScript Printer Description)」ファイルをサポートしている。
・Webブラウザベースで設定できる。
・従来の印刷システム「lpd」との互換性を持っている。
atとcron 相違点
at は/etc/at.allowファイル、/etc/at.denyファイルのどちらもない場合、rootユーザだけが利用できる
cron は/etc/cron.allowファイル、/etc/cron.denyファイルのどちらもない場合、すべてのユーザが利用可能