LoginSignup
1
0

More than 3 years have passed since last update.

2−2.WEB系エンジニアになるためのインプット(Linux基礎)

Posted at

はじめに

こちらの記事の続きとなる。
2−1.WEB系エンジニアになるためのインプット(Linux基礎)
Linux基礎を作るためにインプットとそのアウトプットの記事となります。
また、内容が多いため記事を分けて掲載する。

先の記事でも記載しておりますが、教材と環境は下記の通りです。
・教材はUdemy for businessを活用する。
 【5日でできる】はじめての Linux 入門(LPIC Level1対応)
 (講師:井上 博樹 (Hiroki Inoue))
・Linux環境(Ubuntu)はAWSのEC2インスタンスを活用する。
 -リージョン:アジアパシフィック (東京)ap-northeast-1
 -AMI:Ubuntu Server 20.04 LTS (HVM), SSD Volume Type
 -インスタンスタイプ:t2.micro

Linuxの管理業務

ユーザ・グループ管理

Linuxはマルチタスク・マルチユーザである。
ユーザアカウントとアプリケーションが使用するアカウントがある。

  • /etc/passwd
  • /etc/shadow (sudoとパスワード)

/etc/passwd

書式は次のようになっている。
ユーザ名:パスワード(x):UID:GID:GECOS:ホームディレクトリ:デフォルトシェル

アクセス制御

  • 一般ユーザと特権ユーザ(root)
  • グループ

また、パーミッションとはアクセス権限許可設定のことです。
パーミッションの確認は[ls -la]コマンドで確認できる。

r,w,xのアクセス権限設定について0,1で表現するため、下記のように表すことができる。

アクセス権限 2進数 10進数
rwx 111 7
rw- 110 6
-w- 010 4
r-x 101 5

chownコマンド

所有者の設定変更ができる。
例えば、ファイルの所有者をrootにするコマンドは以下

chownコマンド
sudo chown root:root test.txt

chmodコマンド

アクセス権限許可を設定できる。
例えば、ユーザに書き込み権限を付与するコマンドは以下

chmodコマンド
sudo chmod o+w test.txt

Debian系(Ubuntu)のパッケージ管理

パッケージ導入には3つ方法がある。

方法 内容
apt-getコマンド コマンドラインで一括実行
Ubuntuソフトウェアセンター GUIツールで一括実行
debファイルダウンロード&dpkgコマンド ダウンロード・インストールを独立

dpkgコマンドのオプションは下記

dpkgコマンド
dpkg [オプション] dpkgパッケージファイル.deb
オプション 機能
-i インストール
-r アンインストール(設定を残す)
-P アンインストール(設定も削除)
-l インストールパッケージの表示
-L インストールパッケージのファイル一覧表示
-s 指定されたパッケージ情報表示
-S インストールされたファイルを検索・表示
-E 同じバージョンなら上書きしない
-G 新しいバージョンがインストールされていたら上書きしない

apt-getコマンドのオプションは下記

apt-getコマンド
dpkg [オプション] dパッケージ名
オプション 機能
-i インストール
-r アンインストール(設定を残す)
-P アンインストール(設定も削除)
-l インストールパッケージの表示
-L インストールパッケージのファイル一覧表示
-s 指定されたパッケージ情報表示
-S インストールされたファイルを検索・表示

RedHat系(CentOS)のパッケージ管理

パッケージ導入には3つ方法がある。

方法 内容
yumコマンド コマンドラインで一括実行
パッケージマネージャ GUIツールで一括実行
rpmファイルダウンロード&rpmコマンド ダウンロード・インストールを独立

yumコマンドのオプションは下記

yumコマンド
yum [オプション] コマンド パッケージ名
コマンド 機能
install インストール
remove アンインストール
check-update アップデート対象リストの表示
update パッケージのアップデート
list パッケージの一覧表示
repolist 登録リポジトリの一覧表示
search キーワード キーワードのパッケージ検索

また[yumdownloader]というコマンドにより、ファイルのダウンロードのみを行える。

rpmコマンドのオプションは下記

rpmコマンド
rpm [オプション] パッケージ名.rpm
オプション 機能
-i インストール
-U アップグレード(なければインストール)
-F アップグレード(インストール済の場合)
-h 進捗状況の表示
--force インストールを強制
--nodeps パッケージ依存関係を無視
-e アンインストールされたファイルを検索・表示
-q 問い合わせ
-l インストールファイルの表示
-a 全情報の表示
-p パッケージの指定
-f 指定ファイルのパッケージの表示

ジョブスケジューリング

予め決めた時間に指定したコマンドを実行できる。

定期的に実行するプロセス一覧の表示
crontab -e

crontabの書式はこちらになる。
【分 時 日 月 曜日 実行ジョブ】
※曜日は0~6で0が日曜日

ファイルシステム管理

dfコマンド

dfコマンド
df [オプション] [ファイル名]
dfコマンドオプション 機能
-i iノードの使用状況を表示
-h M、Gを表示
-T ファイルシステムタイプを表示

duコマンド

du [オプション] [ディレクトリ・ファイル]
duコマンドオプション 機能
-a ディレクトリと全てのファイルの情報表示
-s 合計のみを表示
-h M,Gを表示

ファイルシステム管理コマンド

オプション 機能
fsck.e2fsck ファイルシステムチェック。
debugfs ext系ファイルシステムのデバッグ
dumpe2fs ext系ファイルシステムの情報表示
tune2fs ext系ファイルシステムのパラメータ操作

fsckコマンド

fsckコマンド
fsck [オプション] デバイスファイル
オプション 機能
-t ファイルシステム(ext2,ext3など)
-c ファイルシステム作成時に不良ブロックを調査
-b バックアップスーパーブロックを指定して復旧
-n コマンド実行確認(処理はしない)

dumpe2fsコマンド

dumpe2fsコマンド
dumpe2fs [オプション] デバイスファイル
オプション 機能
-b 不良ブロックを表示
-h スーパーブロック情報だけ表示

スーパーブロックのバックアップ場所は以下の通りである。

ブロックサイズ バックアップスーパーブロックの場所
1024(1kb) 8193
2048(2kb) 16384
4096(4kb) 32768

debugfsコマンド

debugfsコマンド
debugfs [オプション] デバイスファイル
オプション 機能
-b ブロックサイズの適用
-c 読み取り専用で開く
-R 対話式でなく、指定したコマンドを実行する
-n 読み取り

debugfs専用コマンド

debugfsコマンド
debugfs [-Rコマンド] デバイスファイル
コマンド 機能 コマンド 機能
ls ファイルリストの表示 chroot ルートディレクトリ変更
cat iノード情報を表示 pwd カレントディレクトリ表示
cd カレントディレクトリの変更 close ファイルシステムクローズ
-n 読み取り quit debugfsの終了

tune2fsコマンド

tune2fsコマンド
tune2fs [オプション] デバイスファイル
オプション 機能
-c 回数 ファイルシステムチェック実行までのマウント回数
-i d, m, w ファイルシステムチェック間隔d, m, w
-j ext3ジャーナル(変更履歴)を追加
-I スーパーブロック情報の表示
-L ボリューム名 ファイルシステムにボリューム名をつける

XFS管理ツール

XFS管理ツール
XFS(ジャーナリングファイルシステム,~500TB.CentOS7/RHEL7で標準)
ツール 機能
xfsinfo XFSファイルシステムに関する情報表示
xfs_metadump XFSファイルシステムのメタデータをファイル保存
xfs_mdrestore xfs_metadumpイメージを復元

ディスククォータの管理

クォータとはlinuxでユーザが使えるディスク領域の制御のこと

  • ハードリミット(制限):物理的に制御
  • ソフトリミット(制限):警告

クォータデータベースの作成

quatacheckコマンド(クォータの初期化)

  • -b:バックアップファイルの作成
  • -c:新規作成
  • -v:詳細表示

クォータ設定

edquato [オプション] ファイルシステム

  • -u:ユーザ名
  • -g:グループ名
  • -t:ソフトリミットの猶予期間

クォータ有効化

quotaon [option] ファイルシステム
quotaoff [option] ファイルシステム

  • -a:全ファイルシステムの設定を有効化
  • -u:ユーザクォータを有効化
  • -g:グループクォータを有効化
  • -v:メッセージの詳細表示

クォータ状況の確認

repquotaコマンド
|repquota [-a] ファイルシステム
  |-aオプション:全ファイルシステムを対象
quota {-u, g}:ユーザ・グループのクォータ設定表示

さいごに

Linuxの基礎はここまでとなる。
次回は、JavaScriptを学んでいく

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0