lpic101_パッケージ管理基礎の攻略

-- Views

April 16, 26

スライド概要

profile-image

はじめまして、yukikoと申します。 DX推進のお力になれれば嬉しいです! 気軽にLinkedinなどでお声がけくださいね! ★スキル LPICレベル2取得者 AI、Python、Splunk、BIが得意領域です。

シェア

または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リビジョン番号 項目 Debian形式 (.deb) RPM形式 (.rpm) ④ i386 対応ディストリ 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 が自動解決 bash-4.2.46-30.el7.x86_64.rpm ③ 30 リポジトリ設定 LPIC-1 Exam 101 パッケージ管理 /etc/apt/sources.list 名称 ② 4.2.46 バージョン リリース番号 ④ el7 アーキテクチ ャ /etc/yum.conf / yum.repos.d/ ⑤ .rpm 拡張子 1/8

3.

パッケージ管理 全体像 パッケージとは 実行ファイル・設定・ライブラリ・マニュアルを1つにま とめたファイル パッケージ管理システムにより、インストール・アンインストー ル・ アップデートと依存関係解決が自動で行われる。 2大形式の比較 ③ 項目 Debian形式 (.deb) RPM形式 (.rpm) ④ i386 対応ディストリ 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 LPIC-1 Exam 101 パッケージ管理 # dpkg -l | grep nginx # インストール # 一覧からnginxを検索 2/8

5.

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

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 パッケージが管理するファイルの一覧 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 # zypper se web server $ rpm2cpio tree-1.6.0.rpm | cpio -id # カレントディレクトリにファイル展開 LPIC-1 Exam 101 パッケージ管理 dpkg(低)/ apt・apt-get(高) RPM系(Red Hat) rpm(低)/ yum・dnf(高 6/8

9.

仮想化ゲストOSとしての Linux / クラウドサービス(2.6) クラウドサービスの分類(図2-7) IaaS Infrastructure as a Service クラウド主要用語 PaaS Platform as a Service SaaS Softwa re as a Service インスタンス クラウ OSイメージ インス ィスク アプリ アプリ アプリ ミドルウェア ミドルウェア ミドルウェア ゲストOS 仮想マ OS OS OS ブロックストレージ 仮想的 量追加 HW HW HW コンテナ VMより NW NW NW Cloud-init インス 仕組み 例:AWS EC2 / GCE 例:Heroku / 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 など)を説明できる --checksig で署名確認できる /etc/yum.conf の役割を説明できる zypper クラウド・仮想化 rpm2cpio | cpio -id で展開できる install(in) / remove(rm) / update(up) の省略名がわかる IaaS / PaaS / SaaS の違いを説明できる openSUSE で使うツールだと説明できる インスタンスとOSイメージの関係を説明できる Cloud-init の役割を説明できる 石黒友季子 / ALJ Education Plus株式会社 │ 全チェックが完了したら LPIC-1 Exam 101 合格に向けた準備完了です。