Skip to content

LPIC 101チートシート#

環境変数#

name content
PWD カレントディレクトリの絶対パス
HOME ユーザのホームディレクトリ
PS1 プロンプトを定義
PS2 2次プロンプトを定義
PATH コマンドのパス
EDITOR デフォルトのエディタ
HISTFILE 履歴ファイルのパス (デフォルトで/.bash_history
HISTFILESIZE 履歴ファイルの保存履歴数
LD_LIBRARY_PATH 共有ライブラリの検索パス
デバイスファイル
device file content
/dev/sda 1番目のハードディスクドライブ
/dev/sdb 2番目のハードディスクドライブ
/dev/sdc 3番目のハードディスクドライブ
/dev/sr0 1番目のCD/DVDドライブ
/dev/st0 1番目のテープドライブ

bash#

name content
/.bash_history コマンドの実行履歴が保存されているファイル

ファイルシステム#

filesystem content
ext2 Linuxの標準ファイルシステム
ext3 ext2にジャーナリング機能を追加
ext4 ext3を機能拡張
XFS SGI社が開発したジャーナリングファイルシステム
Btrfs 高度な機能
iso9660 CD-ROM
udf DVD-ROM

ディレクトリ・ファイル#

path content
/proc 起動中のプロセスやカーネルが認識しているハードウェアの情報が格納されているディレクトリ
/proc/modules ロードされているカーネルモジュールの情報
/proc/cpuinfo CPUに関する情報
/proc/meminfo メモリの使用状況を確認できるファイル
/proc/bus/usb/devices USBデバイスに関する情報
/proc/bus/pci/devices PCIデバイスに関する情報
/proc/interrupts IRQに関する情報
/proc/ioports I/Oポートアドレスの情報
/proc/dma デバイスが使用中のDMAチャンネルに関する情報
/proc/scsi/scsi SCSIデバイスに関する情報
/proc/cmdline ブートローダからカーネルに渡されたパラメータ
/etc システムの設定ファイルなどが格納されているディレクトリ
/etc/inittab
/etc/rc[0-6].d SysVinitでランレベルに応じたスクリプトが格納されるディレクトリ
/etc/systemd/system/
/etc/udev/rules.d/(~.rules) udevが使用するデバイス設定情報
/etc/modprobe.d/(~.conf) modprobeの設定ファイル
/etc/default/grub GRUB2の設定ファイル
/etc/grub.d GRUB2の設定ファイルを配置するディレクトリ
/etc/ld.so.conf ldconfigで/etc/ld.so.cacheを作成するために参照
/etc/ld.so.cache プログラムの実行時に共有ライブラリの場所を検索するために使用
/etc/dpkg/dpkg.cfg dpkgの設定ファイル
/etc/apt/apt/conf.d/ aptの設定ファイル
/etc/apt/sources.list aptのパッケージ取得元を設定するファイル
/etc/yum.conf yumの設定ファイル
/etc/yum.repos.d yumで使用されるパッケージの取得元を設定するファイルを格納するディレクトリ
/etc/machine-id マシンIDが格納されているファイル
/etc/fstab ファイルシステムのマウント設定を記載するファイル
/etc/mtab 現在マウントされているファイルシステムの情報が格納されているファイル
/var
/var/log/messages カーネルのログが記録されるなど、Linuxでメインで使用されるログファイル
/boot
/boot/efi ESP(EFIシステムパーティション)のマウント先
/boot/grub/menu.lst GRUB Legacyの設定ファイル
/boot/grub/grub.conf GRUB Legacyの設定ファイル
/boot/grub/grub.cfg GRUB2の設定ファイル(変更不可)
/usr
/usr/share/man マニュアル

systemdのユニット#

unit content
device 各種デバイスを管理するUnit
mount ファイルシステムのマウントを管理するUnit
service サービスを制御するUnit
swap スワップ領域を管理するUnit
target 複数のサービスを一つのグループにするためのUnit

vi#

command content
ZZ 保存して終了(:wq)
:e! 最後に保存した内容に復帰
:r ファイル名 ファイルの内容をカレント行以降に読み込む
:!コマンド viを終了せずにシェルコマンドを実行
:r!コマンド シェルコマンドの実行結果を挿入
dw カーソル位置から次の単語までを削除
r カーソル位置の1文字を置換
:%s/A/B/ 最初に見つかった文字列Aを文字列Bに置換
:%s/A/B/g 全ての文字列Aを文字列Bに置換
:set nu (number) 行番号を表示
:set nonu (nonumber) 行番号を非表示
:set ts=タブ幅 (tabstop) タブ幅を指定

正規表現#

正規表現 説明
. 任意の1文字
* 直前の文字の0回以上の繰り返し
[ ] []内のいずれか1文字
[]内では以下の表現と併用可能
-範囲指定
^先頭にある場合は後続の文字以外
^ 行頭
$ 行末
| 次の1文字をエスケープ(通常の文字として処理)
+ 直前の文字の1回以上の繰り返し(拡張正規表現)
? 直前の文字0回もしくは1回の繰り返し(拡張正規表現)
| 左右のいずれかの文字列(拡張正規表現)

コマンド#

dpkg#

  • 設定ファイル /etc/dpkg/dpkg.cfg
action content
-i (--install) インストール
-r (--remove) 設定ファイルを残してアンインストール
-P (--purge) 完全にアンインストール
-l (--list) インストール済みパッケージを検索
-S (--search) ファイルがどのパッケージからインストールされたか表示
-L (--listFfiles) 指定パッケージからインストールされたファイル一覧を表示
-s (--status) パッケージ情報を表示する
--configure 展開されたパッケージを構成
--unpack パッケージを展開(インストールしない)
option content
-E 同バージョンがインストールされていればインストールしない
-G 新バージョンがインストールされていればインストールしない
-R (--recursive) 再帰処理

apt-get#

subcommand content
clean パッケージファイルを削除
dist-upgrade システムを最新にアップグレード
install パッケージをインストールまたはアップグレード
remove パッケージをアンインストール
update パッケージデータベースを更新
upgrade 他のパッケージを削除しないものをアップグレード
option content
-d ファイルをダウンロード(インストールしない)
-s システムを変更せず動作をシミュレート

apt-cache#

subcommand content
search キーワードを含むパッケージを検索
show パッケージの一般的な情報を表示
showpkg パッケージの詳細情報を表示
depends パッケージの依存関係を表示

apt#

  • 設定ファイル /etc/apt/apt/conf.d/
  • ソース /etc/apt/sources.list
subcommand content
update パッケージリストを更新
install パッケージをインストール
remove 設定ファイルを残してパッケージを削除
purge パッケージを完全に削除
upgrade システムをアップグレード(ファイル削除は行わない)
full-upgrade システムのメジャーバージョンを最新にアップグレード
show 指定したパッケージに関する情報を表示
list パッケージのリストを表示
list --installed インストールされたパッケージを一覧表示
list --upgradable アップグレード可能なパッケージを表示
search 指定したキーワードでパッケージ情報を全文検索
depends パッケージの依存関係を表示
autoremove 必須とされていないパッケージを自動削除
option content
-C 設定ファイルを指定
-d パッケージのダウンロードのみ行う
-y 自動的にyesを回答
--no-install-reccomends 必須でない推奨パッケージはインストールしない
--install-suggests 提案パッケージもインストール
--reinstall インストール済みパッケージの再インストールを許可

rpm#

  • 設定ファイル /usr/lib/rpm/rpmrc

  • 使い方

    # インストール
    $ rpm -ivh [パッケージ名]
    
    # どのようなファイルがインストールされるか表示
    $ rpm -qlp [パッケージ名]
    
    # 依存関係を調べる
    $ rpm -qR [パッケージ名]
    

option suboption content
-i (--install) パッケージをインストール
-U (--upgrade) パッケージをアップグレード(なければインストール)
-F (--freshen) パッケージがインストールされていればアップグレード
-v 詳細な情報を表示
-h (--hash) 進行状況を「#」で表示
--nodeps 依存関係を無視してインストール
--force 既存のファイルを新しいものに置き換える
--test 実際にはインストールせずテスト
-e (--erase) パッケージをアンインストール
--nodeps 依存関係を無視してアンインストール
-q 指定したパッケージがインストールされているか照会
-a (--all) インストール済みのすべてのパッケージを表示
-f 指定したファイルを含むパッケージ名を表示
-p 対象としてパッケージファイルを指定
-c (--configfiles) 設定ファイルのみ表示
-d (--docfiles) ドキュメントのみ表示
-i (--info) 指定したパッケージの情報を表示
-l (--list) 指定したパッケージに含まれるファイルを表示
-R (--requires) 指定したパッケージが依存しているファイル等を表示
--changelog 変更履歴を表示

yum#

  • 設定ファイル /etc/yum.conf
  • パッケージ取得元 /etc/yum.repos.d/
subcommand content
check-update アップデート対象のパッケージリストを表示
update 指定したパッケージをアップデート(指定しない場合は全パッケージ)
install 指定したパッケージをインストール
remove 指定したパッケージをアンインストール
info 指定したパッケージの情報を表示
list 全パッケージ情報をリスト表示
repolist リポジトリ一覧を表示
search パッケージ情報をキーワード検索
search all キーワード検索(パッケージ名、説明文等すべて)
groups list パッケージグループをリスト表示
graoups install 指定したグループのパッケージをインストール

dnf#

subcommand content
check-update アップデート対象のパッケージリストを表示
clean キャッシュデータを削除
upgrade (update) システムの全パッケージをアップグレード
upgrade 指定したパッケージをアップグレード
install 指定したパッケージをインストール
remove 指定したパッケージをアンインストール
info 指定したパッケージの情報を表示
list 全パッケージ情報をリスト表示
search パッケージ情報をキーワード検索
history 処理の履歴を表示
updateinfo パッケージのアップデート情報を表示
zypper
option content
install (in) パッケージのインストール
update (up) パッケージのアップデート
remove (rm) パッケージのアンインストール
info パッケージの詳細情報の表示
search (se) 指定したキーワードでパッケージの検索
list-updates (lu) アップデート可能なパッケージの表示
repos (lr) リポジトリの一覧表示
refresh リポジトリの更新

man#

  • ファイルの場所
    • /usr/share/man
    • /usr/local/share/man
section content
1 ユーザーコマンド
2 システムコール
3 ライブラリ
4 デバイスファイル
5 設定ファイル
6 ゲーム
7 その他
8 システム管理コマンド
9 Linuxカーネル用ドキュメント

cp#

option content
-f コピー先に同名のファイルがあれば上書きする
-i コピー先に同名のファイルがあれば上書きするか確認
-p コピー元ファイルの属性を保持
-r, -R 再帰的にコピー
-d シンボリックリンクをシンボリックリンクとしてコピー
-a できる限り元ファイルの構成と属性を保持(-dpRと同じ)

rm#

option content
-i ファイルを削除する前にユーザーへ確認する
-f ユーザへの確認なしに削除する
-R (-r) 指定されたディレクトリ内にファイル、ディレクトリが存在していてもすべて削除する

rmdir#

空のディレクトリを削除する

tar#

option content
-c アーカイブを作成
-x アーカイブからファイルを取り出す
-t アーカイブの内容を確認
-f アーカイブファイル名を指定
-z gzipによる圧縮/展開
-j bzip2による圧縮/展開
-J xzによる圧縮/展開
-v 詳細情報を表示
-u アーカイブ内にある同名のファイルより新しいものだけを追加
-r アーカイブにファイルを追加
-N 指定した日時より新しいデータのみを対象
-M 複数デバイスへの分割
--delete アーカイブからファイルを削除
  • 使い方
    # /homeのアーカイブをテープドライブに作成
    $ tar cvf /dev/st0 /home
    
    # アーカイブファイルをカレントディレクトリ上に展開
    $ tar xvzf software.tar.gz
    
    
    # file.tar.gzファイルに格納されたファイル名の一覧を表示
    $ tar ztf file.tar.gz
    

kill#

signal ID content
HUP 1 ハングアップ(端末が制御不能もしくは切断による終了)
INT 2 キーボードからの割り込み
KILL 9 強制終了
TERM 15 終了(デフォルト)
CONT 18 再開
STOP 19 一時停止

killall#

プロセス名で指定

grep#

option content
-c マッチした行の行数のみ表示
-f 検索パターンをファイルから読み込む
-i 大文字と小文字を区別しない
-n 先頭に行番号をつけて、マッチした行を表示
-v マッチしなかった行を表示
-E 拡張正規表現を使用(egrepコマンドと同様)
-F 検索パターンを正規表現ではなく、固定文字列とする(fgrepコマンドと同様)
type content
grep 正規表現でパターンマッチ
egrep 拡張正規表現
fgrep 正規表現を使わない
pgrep PIDを表示

fdisk#

パーティションの作成、削除、変更、情報開示など

subcommand content
l パーティションタイプを一覧表示
n パーティションを作成
d パーティションを削除
p パーティションテーブルを表示
t パーティションタイプを変更
a ブートフラグのON/OFF切り替え
w パーティションテーブルの変更を保存して終了
q パーティションテーブルの変更を保存しないで終了
m ヘルプメニューを表示

gdisk#

GPTに対応

parted
MBR、GPTに対応

subcommand content
check ファイルシステムの簡単なチェック
mklabel [gpt\ msdos]
mkpart 指定した種類のパーティションを作成
rm 指定したパーティションを削除
print, p パーティションテーブルを表示
quit, q 終了

fsck#

option content
-t ファイルシステムの種類を指定
-A 「/etc/fstab」に記述されている全ファイルシステムに対して実行
-N 実際には実行せず、実行する内容だけ表示
-a 問題を自動的に修復
-r 問題を対話的に修復

e2fsck#

option content
-y 全ての問い合わせに対し、自動的に「yes」と回答
-n 全ての問い合わせに対し、自動的に「no」と回答
-p 全ての問題を自動的に修復

nice#

  • nice [-n nice値] コマンド
  • nice [-nice値] コマンド
option content
-n nice値
renice
renice [-n] nice値 オプション
option content
-u 指定したユーザーが所有する全てのプロセスのnice値を変更
-p 指定したPIDのプロセスのnice値を変更(「-p」は省略可能)

sed#

option content
-e 編集コマンドを指定(コマンドが一つの場合は省略可)
-f 編集コマンドを記述したファイルを指定
edit command content
/s/文字列1/文字列2/ 各行の最初に現れる文字列1を文字列2に置換
/s/文字列1/文字列2/g 全ての文字列1を文字列2に置換
/文字列/d 文字列が含まれる行を削除
行番号1,行番号2d 行番号1から行番号2までの行を削除
y/文字1文字2/文字3文字4/ 文字1を文字3に、文字2を文字4に置換

cut#

option content
-c 抽出する文字位置を指定
-d 区切り文字を指定(デフォルトはタブ)
-f 抽出するフィールドを指定

mkdir#

option content
-m 指定したアクセス権でディレクトリを作成
**-p ** 引数に階層のあるディレクトリを指定した場合、存在しない中間ディレクトリも同時に作成

mv#

  • 構文:mv [オプション] 移動元ファイル名…n ディレクトリ名
  • 構文:mv [オプション] 移動元ディレクトリ名…n ディレクトリ名
option description
-i 移動先に同名ファイルが存在する場合、上書きするか確認する
-f 移動先に同名ファイルが存在しても、強制的に上書きする

その他#

ファイルの先頭から任意の行数を指定して、その内容を表示する。

tail#

テキストファイルの末尾を表示する

option description
-n 行数を数字で指定。末尾のn行部分を表示
-f ファイルの内容が増え続けているものと仮定し、常にファイルの最終部分を読み続けようとする

tr#

標準入力であるキーボードから入力した文字を指定した文字を変換して、標準出力であるディスプレイに表示することができるコマンド。

option description
-d 文字群1で合致した文字を削除する
-s 文字群1で合致した文字の繰り返しを1文字に置き換える

su#

su -root root ユーザーを指定して権限昇格

set#

「set」はシェルの設定を確認、変更するコマンドです set コマンドをオプションなしで実行するとシェル変数・関数の一覧が表示されます。

参考:

history#

  • コマンドの実行履歴を表示
  • -cオプションでそのシェルの実行履歴を削除
  • -d [履歴番号]オプションで指定した履歴番号のコマンドをそのシェルの実行履歴から削除する

export#

環境変数を設定するコマンドです。 シェル変数を環境変数に設定し、bashから起動するアプリケーションが参照できるようにします。

ldconfig#

共有ライブラリのパス構成 /etc/ld.so.conf を /etc/ld.co.cache に反映

nl#

行番号をつけて出力。cat -nでも行番号をつけて出力できる

file#

file の種類を調べる

od#

バイナリデータとして出力

chown#

所有者を変更

chgrp#

グループを変更

top#

実行中のプロセス監視

tee#

標準出力から読み込んだデータを標準出力とファイルの両方に出力します。

free#

メモリの利用状況、空き状況

uptime#

システムの稼働時間や平均負荷

uname#

システムアーキテクチャやOSを確認

nice, renice#

プロセスの優先度を変更(-19~20)

lsblk#

システムのブロックデバイス一覧

blkid#

デバイスファイルとUUIDの関係(/etc/fstabファイル)

locate#

あらかじめ作成したDBに基づいてファイルを検索

updatedb#

DBを更新 設定ファイル /etc/updatedb.conf

which#

コマンドの絶対パスを表示

type#

コマンドの種類を表示