【公開】lpic101_パッケージ管理基礎の攻略_ドクセル対応版

>100 Views

April 17, 26

スライド概要

profile-image

はじめまして、ALJ Education Plus 株式会社のyukikoと申します。 IT教育支援や、DX推進が可能です。 ◆ スキル LPIC レベル2 AI / Python Splunk BI(データ可視化・分析) ◆ その他 新卒・未経験の学生向けに、エンジニア転職を応援する資料を趣味で作成しています。 もしよろしければご活用ください。 ◆IT研修講師をお探しの方は [email protected] にお気軽にお問い合わせください。 ※ALJ Education Plus 株式会社を通して、ご支援させていただきます。 ◆Zenn https://zenn.dev/yukiko_sapporo/articles/46c13e9f98b110

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

ダウンロード

関連スライド

各ページのテキスト
1.

LPIC-1 Exam 101 パッケージ管理 基礎の攻略ガイド Topic 102 / 2.4〜2.6 dpkg・apt・rpm・yum・dnf・zypper・クラウド ALJ Education Plus株式会社 石黒友季子 法人・企業研修 未経験エンジニア IT学生向け

2.

パッケージ管理 全体像 パッケージとは ファイル名の読み方 実行ファイル・設定・ライブラリ・マニュアルを1つにまとめたファイ ル tree_1.6.0-1_i386.deb パッケージ管理システムにより、インストール・アンインストール・ アップデートと依存関係解決が自動で行われる。 2大形式の比較 ① tree パッケージ名 ② 1.6.0 バージョン番号 ③ 1 Debianリビジョン番号 i386 アーキテクチャ 項目 Debian形式 (.deb) RPM形式 (.rpm) ④ 対応ディストリ Ubuntu / Debian GNU RHEL / CentOS / Fedora / openSUSE ⑤ .deb 低レベルツール dpkg rpm 拡張子 RPM ファイル名 高レベルツール apt-get / apt yum / dnf / zypper ファイル名例 tree_1.6.0-1_i386.deb bash-4.2.46-30.el7.x86_64.rpm 依存解決 apt が自動解決 ① bash yum / dnf が自動解決 名称 ② 4.2.46 バージョン ④ el7 アーキテクチャ /etc/apt/sources.list ③ 30 /etc/yum.conf / yum.repos.d/ ⑤ .rpm リリース番号 リポジトリ設定 bash-4.2.46-30.el7.x86_64.rpm LPIC-1 Exam 101 パッケージ管理 拡張子 1/8

3.

パッケージ管理 全体像 パッケージとは 実行ファイル・設定・ライブラリ・マニュアルを1つにまとめたファイ ル パッケージ管理システムにより、インストール・アンインストール・ アップデートと依存関係解決が自動で行われる。 2大形式の比較 項目 Debian形式 (.deb) RPM形式 (.rpm) 対応ディストリ Ubuntu / Debian GNU RHEL / CentOS / Fedora / openSUSE 低レベルツール dpkg rpm 高レベルツール apt-get / apt yum / dnf / zypper ファイル名例 tree_1.6.0-1_i386.deb bash-4.2.46-30.el7.x86_64.rpm 依存解決 apt が自動解決 yum / dnf が自動解決 リポジトリ設定 /etc/apt/sources.list /etc/yum.conf / yum.repos.d/ 1/8

4.

dpkg コマンド Debian系の低レベルパッケージ管理ツール。.debファイルを直接操作する。 書式: dpkg [ オプション ] アクション コマンド 説明 使用例 dpkg -i pkg.deb パッケージをインストールする dpkg -i nginx_1.14_amd64.deb dpkg -r パッケージ名 削除(設定ファイルは残す) dpkg -r nginx dpkg -P パッケージ名 完全削除(設定ファイルも削除) dpkg -P nginx dpkg -l [パターン] インストール済み一覧を表示 dpkg -l 'nginx*' dpkg -L パッケージ名 管理ファイルの一覧を表示 dpkg -L nginx dpkg -s パッケージ名 パッケージの詳細情報を表示 dpkg -s nginx dpkg -S ファイルパス ファイルが属するパッケージを表示 dpkg -S /usr/sbin/nginx dpkg -x pkg.deb dir パッケージを展開(インストールなし) dpkg -x nginx.deb ./out 実行例 # dpkg -i tree_1.6.0-1_i386.deb # インストール # dpkg -l | grep nginx # 一覧からnginxを検索 $ dpkg -S /usr/bin/ls # /usr/bin/ls が属するパッケージを確認 → coreutils: /usr/bin/ls LPIC-1 Exam 101 パッケージ管理 2/8

5.

apt / apt-get / apt-cache コマンド Debian系の高レベルツール。インターネット経由で依存関係を自動解決しインストールする。 apt コマンド(推奨) apt-get コマンド サブコマンド 説明 サブコマンド 説明 apt update パッケージリストを更新する apt-get update DBを更新 apt install pkg パッケージをインストールする apt-get install pkg インストール apt remove pkg 削除(設定ファイルは残す) apt-get remove pkg 削除 apt purge pkg 完全削除(設定ファイルも削除) apt-get upgrade アップグレード apt upgrade 全パッケージをアップグレード apt-get dist-upgrade システム最新化 apt full-upgrade メジャーバージョンまでアップグ レード apt-get clean キャッシュ削除 apt show pkg パッケージの詳細情報を表示 apt-cache コマンド apt search キーワード パッケージを全文検索 サブコマンド 説明 apt list --installed インストール済み一覧 apt-cache search kw キーワードで検索 apt autoremove 不要パッケージを削除 apt-cache show pkg 一般的な情報を表示 重要: apt は apt-get と apt-cache を統合した新しいコマンド(Ubuntu 16.04以降推奨)。install の前に必ず update を実行すること。

6.

rpm コマンド RPM系の低レベルパッケージ管理ツール。依存関係は自動解決しない。 インストール・更新・削除 コマンド 説明 rpm -ivh pkg.rpm -i:インストール -v:詳細表示 -h:進捗表示 rpm -Uvh pkg.rpm -U:アップグレード(未インストールなら新規) rpm -Fvh pkg.rpm -F:アップグレードのみ(新規インストールなし) rpm -e パッケージ名 アンインストール rpm -e --nodeps pkg 依存関係を無視してアンインストール(注意) rpm -ivh --nodeps pkg 依存関係を無視してインストール(注意) 照会モード(-q) コマンド 説明 rpm -qa | grep pkg インストール済み全パッケージを検索 rpm -qi pkg パッケージの詳細情報(Name/Version/Size/License等) rpm -ql pkg パッケージが管理するファイルの一覧 rpm -qf /path/to/file ファイルが属するパッケージを逆引き LPIC-1 Exam 101 パッケージ管理 4/8

7.

yum / dnf コマンド RPM系の高レベルツール。依存関係を自動解決。dnf は yum の後継(基本的に同じ使い方)。 主なコマンド コマンド 説明 dnf での対応 yum check-update アップデート可能なパッケージ一覧を表示 dnf check-update yum update 全パッケージをアップデート dnf upgrade yum update pkg 指定パッケージをアップデート dnf upgrade pkg yum install pkg パッケージをインストール dnf install pkg yum remove pkg パッケージをアンインストール dnf remove pkg yum info pkg パッケージ情報を表示 dnf info pkg yum search kw キーワードでパッケージを検索 dnf search kw yum list 全パッケージ一覧を表示 dnf list yum list installed インストール済み一覧 dnf list installed yum groups list パッケージグループ一覧 dnf group list yum groups install グループ単位でインストール dnf group install yum clean all キャッシュを削除 dnf clean all — 処理履歴を表示(yumにはない) dnf history yum: /etc/yum.conf /etc/yum.repos.d/*.repo dnf: /etc/dnf/dnf.conf /etc/yum.repos.d/*.repo 5/8

8.

zypper / rpm 署名確認・展開 rpm 署名確認・展開 zypper(openSUSE) openSUSEで RPMパッケージを管理するコマンド。サブコマンドに短縮名あり。 コマンド(省略) 説明 zypper install(in) パッケージをインストール zypper remove(rm) パッケージをアンインストール zypper update(up) 全パッケージをアップデート zypper list-updates(lu) アップデート対象一覧 zypper search(se) パッケージを検索 zypper info パッケージ情報を表示 zypper dist-upgrade(dup) ディストリをアップグレード 署名確認(--checksig / -K) RPMパッケージが配布元により電子署名されているかを確認する。 改ざん防止のために使用する。 $ rpm --checksig httpd-2.4.6.rpm → rsa sha1 (md5) pgp md5 OK $ rpm -K httpd-2.4.6.rpm # 省略形 展開(rpm2cpio) インストールせずにパッケージの内容を展開する。 cpio コマンドと組み合わせて使用する。 # zypper in git $ rpm2cpio tree-1.6.0.rpm | cpio -id # zypper se web server # カレントディレクトリにファイル展開 dpkg(低)/ apt・apt-get(高) LPIC-1 Exam 101 パッケージ管理 RPM系(Red Hat) rpm(低)/ yum・dnf(高) 6/8

9.

仮想化ゲストOSとしての Linux / クラウドサービス(2.6) クラウドサービスの分類(図2-7) Infrastructure as a Service IaaS クラウド主要用語 PaaS Platform as a Service SaaS Software as a Service インスタンス クラウド上で動作す る個々の仮想マシン OSイメージ インスタンス作成の テンプレートとなる ディスクイメージ ゲストOS 仮想マシンにインス トールされたOS アプリ アプリ アプリ ミドルウェア ミドルウェア ミドルウェア OS OS OS ブロックストレー ジ 仮想的なディスク。 物理と異なり簡単に 容量追加可能 HW HW HW コンテナ VMより軽量なアプリ 実行環境。Dockerなど NW NW NW Cloud-init 例:AWS EC2 / GCE 例:He roku / Beanstalk 例:Gmail / Slack ゲストドライバ インスタンス初回起 動時に自動設定を行 う仕組み 仮想マシンがホスト デバイスにアクセス するソフトウェア Cloud-init(2.6.2) インスタンスの初期化ツール テンプレートをコピーしただけではホスト名・SSH鍵が重複する問題を解決。 OSイメージに組み込まれ、初回起動時にユーザーデータに基づいて自動設定(ホスト名・SSH公開鍵・ユーザー作成・パッケージインス トールなど)を行う。 重要: クラウド上のインスタンスはOSイメージから素早く作成できる。Cloud-init で初回起動時に自動設定される。 LPIC-1 Exam 101 パッケージ管理 7/8

10.

LPIC-1 Exam 101 試験対策チェックリスト dpkg apt / apt-get -i / -r / -P の違いを説明できる install 前に update が必要な理由を説明できる -l / -L / -s / -S を使い分けられる remove と purge の違いを説明できる -S でファイルの所属パッケージを逆引きできる apt と apt-get の関係を説明できる rpm yum / dnf -ivh の各オプションの意味を説明できる check-update と update の違いを説明できる -U と -F の違いを説明できる groups install でグループインストールできる -qa / -qi / -ql / -qf を使い分けられる yum と dnf の違い(history など)を説明できる クラウド・仮想化 zypper install(in) / remove(rm) / update(up) の省略名がわかる IaaS / PaaS / SaaS の違いを説明できる openSUSE で使うツールだと説明できる インスタンスとOSイメージの関係を説明できる Cloud-init の役割を説明できる 石黒友季子 / ALJ Education Plus株式会社 │ 全チェックが完了したら LPIC-1 Exam 101 合格に向けた準備完了です。