『1週間でLPICの基礎が学べる本（第二版）』自分用まとめ

# 目次
* 1日目
    * 1 linuxとオープンソース
        * 1-1  OSって何だろう？
        * 1-2  Linuxについて知ろう
        * 1-3  オープンソースとは？
    * 2 学習の準備
        * 2-1  学習環境の構築
* 2日目
    * 1 Linuxの基本操作
        * 1-1  Linuxのユーザインターフェース
        * 1-2  ログインとログアウト
        * 1-3  コマンドによる操作
        * 1-4　マニュアルを使ってみよう
        * 1-5  システムの終了と再起動
    * 2　ファイルとディレクトリ
        * 2-1  ファイル
        * 2-2  ディレクトリ
        * 2-3　ファイルの表示とディレクトリ移動
        * 2-4  ハードリンクとシンボリックリンク
* 3日目
    * 1 ファイル管理
        * 1-1　ファイルの基本操作
        * 1-2　ディレクトリの基本操作
        * 1-3　ファイルとディレクトリの圧縮と展開
    * 2　ユーザとグループ
        * 2-1　ユーザとは？
        * 2-2　グループとは？
        * 2-3　ユーザとグループの管理
* 4日目
    * 1　パーミッション
        * 1-1　所有者と所有グループ
        * 1-2　パーミッションの設定
    * 2　テキストファイルの編集
        * 2-1　viエディタの基本
        * 2-2　ファイルの保存と終了
        * 2-3　基本的な編集操作
        * 2-4　viエディタの便利な機能
* 5日目
    * 1　シェル
        * 1-1　シェルの役割と基本を知ろう
        * 1-2　シェルの便利な機能
        * 1-3　シェル変数と環境変数
    * 2　ファイルの操作
        * 2-1　ファイルの検索
        * 2-2　テキストファイルの内容検索
        * 2-3　テキストファイルを扱う便利なコマンド
* 6日目
    * 1　ソフトウェアとパッケージ
        * 1-1　パッケージとは
        * 1-2　パッケージの管理（CentOS）
    * 2　ファイルシステム
        * 2-1　ファイルシステムとは？
        * 2-2　マウントとアンマウント
        * 2-3　ディレクトリの配置と役割
* 7日目
    * 1 プロセスとジョブ
        * 1-1　プロセスの管理
        * 1-2　ジョブの管理
    * 2　ネットワークの利用
        * 2-1　ネットワークの基礎を理解しよう
        * 2-2　基本のネットワーク設定
        * 2-3　ネットワークを利用するコマンド

# Linuxを理解するうえで重要なこと
## Linuxの基本操作

**「ログインとログアウト」**
Linuxシステムの利用を開始するには、最初に`ログイン`（login）作業が必要です。
ログインには、システムに登録されたユーザー名とパスワードが必要です
>ユーザー名もパスワードも、大文字と小文字が区別されます

**「管理者ユーザーroot」**
Linuxには、`root`という名前の管理者アカウントがあります。rootユーザーは、
システムの設定変更や再起動、ソフトウェアのインストールや削除など、あらゆる管理作業を
する権限を持っています。rootユーザーは`スーパーユーザー`とも呼ばれます。
一方、rootユーザー以外のユーザーは`一般ユーザー`といいます。
>Linuxでは、rootユーザーでログインして作業を行うことは推奨されていません。
少しの操作ミスでシステム全体に致命的なダメージを与えてしまう可能性があるからです。

## ファイルとディレクトリ
**パス**
Linuxでは、ディレクトリはツリー状の階層構造になっています（ディレクトリツリー）。その頂点となるディレクトリ、すなわちすべてのディレクトリを格納しているトップディレクトリのことを`ルートディレクトリ`といいます。ルートディレクトリは「`/`」で表します。

>Windowsには「ドライブ」という概念がありますが、Linuxにはありません。すべてのディレクトリはルートディレクトリ以下に格納されます。

**「ハードリンク」**
iノード番号とファイル名の対応付けを`リンク`といいます。Linuxでは、1つのiノードに
複数のファイル名をリンクさせることもできます。これを`ハードリンク`といいます。
ハードリンクを使うと、1つのファイルに複数のファイル名でアクセスすることができます。
>1つの物理的なディスクを論理的に複数に分けた領域をパーティションといいます。
iノードはパーティションごとに管理されているため、ハードリンクは異なるパーティション間で
作成することはできません。パーティションが異なると、同じiノード番号であっても、
ファイルの実態は別々なのです。また、ディレクトリのハードリンクを作成することもできません。
次に紹介するシンボリックリンクでは、これらの制限はありません。

##ファイル管理
>ファイル名の変更はmvコマンドで行います。

>tarコマンドを使うときは、次の点に注意してください。
・ アーカイブの作成時はc、展開時はxオプションを使う。同時には指定しない。
・ vオプションは付けなくてもかまわない。
・ gzip圧縮アーカイブを扱うときはzオプションを使う

## パーミッション
**ファイルのアクセス権**
 大切なファイルは、ほかのユーザーに勝手に見られたり書き換えられたりしないようにしなければいけません。また、システム上の重要なファイルを自由に書き換えられてしまうと、システムに障害が出るおそれもあります。そのようなトラブルが起きないよう、ファイルやディレクトリには`アクセス権`が設定されています。アクセス権には「読み出せる」「書き込める」「実行できる」という3種類があります。
>rootユーザーは、ファイルに設定されているパーミッションにかかわらず、
すべてのファイルの読み取り／書き込み／実行が可能です。

## テキストファイルの編集
**viエディタの基本**
>挿入モードへの切り替えコマンドはいくつもありますが、もっとも使用頻度が高いのは「i」「a」です。
>変更を保存せずにviエディタを終了するのであれば、「*q!」を実行します。この操作は重要ですので、ぜひ覚えてください。viエディタを使い始めて間もない頃は、操作ミスによって訳のわからない状態になることがあります。そんなときはあせらずに「:q!」を実行してください。

##シェル
**シェル変数**
>「=」の前後にスペースを入れないようにしてください。

##ネットワークの利用
>ネットワークアドレスとブロードキャストアドレスはコンピュータに割り当てることができません。

#Linuxの階層ディレクトリ
##大まかなディレクトリ階層
>  /
  ┣boot/　Linuxカーネルなど起動に必要なファイル
  ┣bin/ 　 一般ユーザが利用できるコマンド
  ┣dev/　 デバイスファイル
  ┣etc/　  システム設定ファイルや起動スクリプトファイル
  ┣home/  ユーザのホームディレクトリ
  ┣lib/　　 ライブラリファイル
  ┣media/  外付けHDDやUSBメモリ、DVDドライブなど
  ┣proc/　 システム情報
  ┣root/　 rootユーザーのホームディレクトリ
  ┣sbin/　 システム管理者が利用する基本コマンド
  ┣tmp/　 一時ファイル置き場
  ┣usr/　  プログラムやライブラリなど
  ┣var/　  ログファイルなど頻繁に更新されるファイル

##ディレクトリの配置と役割

>|ディレクトリ名  | 役割 |
|---|---|
|/bin |一般ユーザーでも利用可能な、システム管理に必須のコマンドを格納 |
|/boot |Linuxの起動に必要なファイルやLinuxカーネルを格納 |
|/dev |デバイスファイルを格納 |
|/etc |システムの設定ファイルや、サービスの起動スクリプトファイルなどを格納 |
|/home |ユーザーごとのホームディレクトリを格納 |
|/lib |共有ライブラリファイル、カーネルモジュール(ﾃﾞﾊﾞｲｽﾄﾞﾗｲﾊﾞなど) を格納|
|/mnt |マウントポイントとなるディレクトリを格納 |
|/opt | ソフトウェアのインストール先|
|/proc |カーネル情報にアクセスするための仮想ファイルシステム |
|/root |rootユーザーのホームディレクトリ |
|/sbin |システム管理に必須のコマンドを格納。rootユーザーのみ利用可能 |
|/tmp |一時ファイルを格納 |
|/usr |プログラムやソフトウェア、ライブラリなどを格納 |
|/usr/bin |一般ユーザーコマンド(緊急時のシステム管理に必須でない) を格納|
|/usr/sbin |管理者コマンド(緊急時のシステム管理に必須でない) を格納|
|/usr/lib |共有ライブラリを格納 |
|/usr/local |システムごとにインストールしたプログラムやドキュメントを格納 |
|/usr/share |システムアーキテクチャに依存しないファイルやドキュメントを格納 |
|/usr/src |プログラムのソースコードを格納 |
|/var |頻繁に書き換えが発生するファイルを格納 |
|/var/cache |一時的なキャッシュファイルを格納 |
|/var/log |ログファイルを格納 |


#おわり
以上です。詳細は本書をお求めください。

「1週間でLPICの基礎が学べる本　第2版」
https://www.amazon.co.jp/1%E9%80%B1%E9%96%93%E3%81%A7LPIC%E3%81%AE%E5%9F%BA%E7%A4%8E%E3%81%8C%E5%AD%A6%E3%81%B9%E3%82%8B%E6%9C%AC-%E7%AC%AC2%E7%89%88-%E5%BE%B9%E5%BA%95%E6%94%BB%E7%95%A5%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-%E4%B8%AD%E5%B3%B6-%E8%83%BD%E5%92%8C-ebook/dp/B00IWNEWS8