Alpine Linuxコンフィギュレーションテクニック【5 Mのみのオペレーティングシステム(回転)】
8146 ワード
転入先https://www.cnblogs.com/zhangmingcheng/p/7122386.html
Alpine Linuxは、セキュリティアプリケーション向けの軽量級Linuxリリース版です.musl libcとbusyboxを採用し、システムのボリュームと実行時のリソース消費を削減し、独自のパッケージ管理ツールapkを提供しています.
Alpine Linuxのカーネルにはgrsecurity/PaXパッチが適用され、すべてのプログラムはPosition Independent Executables(PIE)にコンパイルされ、システムのセキュリティを強化します.
優勢 Alpine LinuxのDockerミラーリングは、軽量(5 Mサイズ)で、完全なパッケージ管理ツール(APK)があるのが特徴です.Dockerの公式ミラーは、UbuntuをAlpine Linuxで置き換える可能性があります.問題 Alpine Linuxはmuslを使用しており、他のLinuxリリースで使用されているglibc実装とは異なる場合があります.
Apkパッケージ管理コマンドAlpineはapkを使用してパッケージ管理を行い、apk–helpコマンドで完全なパッケージ管理コマンドを表示します.次に、一般的なコマンドを示します.
update:リモートミラーソースからローカルミラーソースインデックスを更新する
updateコマンドは、各ミラーソースリストからAPKINDEXをダウンロードします.tar.gzはローカルキャッシュに格納され、一般的に/var/cache/apk/(Alpineはこのディレクトリの下にある)、/var/lib/apk/、/etc/apk/cache/の下にある.
apt-update
addコマンドは、倉庫から最新のパッケージをインストールし、必要な依存パッケージを自動的にインストールします.サードパーティの倉庫からパッケージを追加することもできます.add:PACKAGESをインストールし、依存関係を自動的に解決
指定されたバージョンのパッケージのインストール
del:PACKAGESをアンインストールして削除する
upgradeコマンドは、システムがインストールされているため、パッケージ(一般的にカーネルを含む)をアップグレードします.もちろん、一部のパッケージのみをアップグレードすることもできます(-uまたは–upgrade選択で指定します).upgrade:現在インストールされているパッケージをアップグレード
searchコマンドは、使用可能なパッケージを検索し、-vパラメータ出力記述内容、支出ワイルドカード、-dまたは-descriptionパラメータは、パッケージ記述クエリーを指定します.search:パッケージの検索
infoコマンドは、パッケージの情報を表示します.info:PACKAGESまたはミラーソースの詳細をリストする
公式ミラーリスト:http://rsync.alpinelinux.org/alpine/MIRRORS.txtミラーソース構成MIRRORS.txtは、現在のAlpineが公式に提供しているミラーソースです(Alpineがインストールされている場合、システムが最適なミラーソースを自動的に選択します)
国内ミラーソース清華TUNAミラーソース:https://mirror.tuna.tsinghua.edu.cn/alpine/中科大鏡像ソース:http://mirrors.ustc.edu.cn/alpine/アリクラウドミラーソース:http://mirrors.aliyun.com/alpine/
ソフトウェアソースの構成方法
中科大ソースを例にとると、/etc/apk/repositoriesファイルに対応するソースアドレスを入れればいい、1行1アドレス.
Alpine LinuxはGentooのようなOpenRCinitシステムを使用する.Alpine Linux initシステムの次のコマンドはinitシステムの管理に使用できます.
rc-update rc-updateは主に異なる実行レベルでサービスを追加または削除するために使用されます.
rc-update構文フォーマット
Options:[asuChqVv]-a,–all Process all runlevels-s,–stack Stack a runlevel instead of a service-u,–update Force an update of the dependency tree-h,–help Display this help output-C,–nocolor Disable color color color color color color color color color color color output-V,–version Displayソフトウェアバージョンバージョン-v,–verbose Run verbosely-q,–quiet Run quietly(repeat to to to to to to suppress errors)使用例
rc-update add docker boot#サービスrc-update add docker boot#サービスrc-update del docker boot#サービスrc-statusを追加主に実行レベルのステータス管理に使用します.
rc-status構文フォーマット
Usage: rc-status [options] … or: rc-status [options] [-a | -c | -l | -r | -s | -u]
Options: [ aclrsuChqVv ] -a, –all Show services from all run levels -c, –crashed Show crashed services -l, –list Show list of run levels -r, –runlevel Show the name of the current runlevel -s, –servicelist Show service list -u, –unused Show services not assigned to any runlevel -h, –help Display this help output -C, –nocolor Disable color output -V,-version Display software version-v,-verbose Run verbosely-q,-quiet Run quietly(repeat to suppress errors)使用例
rc-status#デフォルト実行レベルのステータスrc-status#デフォルト実行レベルのステータスrc-status-a#すべての実行レベルのステータスrc-service rc-serviceプライマリがサービスのステータスを管理するために使用することを確認
rc-service構文フォーマット
Usage: rc-service [options] [-i] … or: rc-service [options] -e or: rc-service [options] -l or: rc-service [options] -r
Options: [ e:ilr:INChqVv ] -e, –exists tests if the service exists or not -i, –ifexists if the service exists then run the command -I, –ifinactive if the service is inactive then run the command -N, –ifnotstarted if the service is not started then run the command -l, –list list all available services -r, –resolve resolve the service name to an init script -h,-help Display this help output-C,-nocolor Disable color output-V,-version Display software version-v,-verbose Run verbosely-q,-quiet Run quietly(repeat to suppress errors)使用例
rc-service sshd start#サービスを開始します.rc-service sshd start#サービスを開始します.rc-service sshd stop#サービスを停止します.$rc-service sshd restart#サービスを再起動します.Openrc openrcは主に異なる実行レベルを管理するために使用されます.
Openrc構文フォーマット
Usage: openrc [options] []
Options: [ a:no:s:SChqVv ] -n, –no-stop do not stop any services -o, –override override the next runlevel to change into when leaving single user or boot runlevels -s, –service runs the service specified with the rest of the arguments -S, –sys output the RC system type, if any -h, –help Display this help output -C, –nocolor Disable color output -V, –version Display software version -v, –verbose Run verbosely -q, –quiet Run quietly (repeat to suppress errors)
defaultAlpine Linuxで使用可能な実行レベル
Sysinit boot single reboot shutdown使用例
$openrc single#single実行レベルの他のコマンドに変更
reboot#shutdown-r nowに似たシステムを再起動します.reboot#shutdown-r nowに似たシステムを再起動します.halt#シャットダウン、shutdown-h nowに似ています.$Poweroff#シャットダウンリファレンスドキュメントhttp://www.google.com http://t.cn/RizgdLy https://wiki.alpinelinux.org/wiki/Alpine_Linux_Init_System https://wiki.alpinelinux.org/wiki/Alpine_Linux_package_management
変換元:https://www.hi-linux.com/posts/64839.html?utm_source=tuicool&utm_medium=referral
Alpine Linuxは、セキュリティアプリケーション向けの軽量級Linuxリリース版です.musl libcとbusyboxを採用し、システムのボリュームと実行時のリソース消費を削減し、独自のパッケージ管理ツールapkを提供しています.
Alpine Linuxのカーネルにはgrsecurity/PaXパッチが適用され、すべてのプログラムはPosition Independent Executables(PIE)にコンパイルされ、システムのセキュリティを強化します.
Alpine Linuxの利点と問題
Alpine Linuxパッケージ管理
Apkパッケージ管理コマンドAlpineはapkを使用してパッケージ管理を行い、apk–helpコマンドで完全なパッケージ管理コマンドを表示します.次に、一般的なコマンドを示します.
update:リモートミラーソースからローカルミラーソースインデックスを更新する
updateコマンドは、各ミラーソースリストからAPKINDEXをダウンロードします.tar.gzはローカルキャッシュに格納され、一般的に/var/cache/apk/(Alpineはこのディレクトリの下にある)、/var/lib/apk/、/etc/apk/cache/の下にある.
apt-update
addコマンドは、倉庫から最新のパッケージをインストールし、必要な依存パッケージを自動的にインストールします.サードパーティの倉庫からパッケージを追加することもできます.add:PACKAGESをインストールし、依存関係を自動的に解決
$ apk add openssh openntp vim
$ apk add --no-cache mysql-client
$ apk add docker --update-cache --repository http://mirrors.ustc.edu.cn/alpine/v3.4/main/ --allow-untrusted
指定されたバージョンのパッケージのインストール
$ apk add asterisk=1.6.0.21-r0
$ apk add 'asterisk<1.6.1'
$ apk add 'asterisk>1.6.1
del:PACKAGESをアンインストールして削除する
apk del openssh openntp vim
upgradeコマンドは、システムがインストールされているため、パッケージ(一般的にカーネルを含む)をアップグレードします.もちろん、一部のパッケージのみをアップグレードすることもできます(-uまたは–upgrade選択で指定します).upgrade:現在インストールされているパッケージをアップグレード
$ apk update #
$ apk upgrade #
$ apk add --upgrade busybox #
searchコマンドは、使用可能なパッケージを検索し、-vパラメータ出力記述内容、支出ワイルドカード、-dまたは-descriptionパラメータは、パッケージ記述クエリーを指定します.search:パッケージの検索
$ apk search #
$ apk search -v #
$ apk search -v 'acf*' #
$ apk search -v -d 'docker' #
infoコマンドは、パッケージの情報を表示します.info:PACKAGESまたはミラーソースの詳細をリストする
$ apk info #
$ apk info -a zlib #
$ apk info --who-owns /sbin/lbu #
公式ミラーリスト:http://rsync.alpinelinux.org/alpine/MIRRORS.txtミラーソース構成MIRRORS.txtは、現在のAlpineが公式に提供しているミラーソースです(Alpineがインストールされている場合、システムが最適なミラーソースを自動的に選択します)
国内ミラーソース清華TUNAミラーソース:https://mirror.tuna.tsinghua.edu.cn/alpine/中科大鏡像ソース:http://mirrors.ustc.edu.cn/alpine/アリクラウドミラーソース:http://mirrors.aliyun.com/alpine/
ソフトウェアソースの構成方法
中科大ソースを例にとると、/etc/apk/repositoriesファイルに対応するソースアドレスを入れればいい、1行1アドレス.
$ vi /etc/apk/repositories
# /media/cdrom/apks
http://mirrors.ustc.edu.cn/alpine/v3.5/main
http://mirrors.ustc.edu.cn/alpine/v3.5/community
Alpine LinuxはGentooのようなOpenRCinitシステムを使用する.Alpine Linux initシステムの次のコマンドはinitシステムの管理に使用できます.
rc-update rc-updateは主に異なる実行レベルでサービスを追加または削除するために使用されます.
rc-update構文フォーマット
Usage: rc-update [options] add [...]
or: rc-update [options] del [...]
or: rc-update [options] [show [...]]
Options:[asuChqVv]-a,–all Process all runlevels-s,–stack Stack a runlevel instead of a service-u,–update Force an update of the dependency tree-h,–help Display this help output-C,–nocolor Disable color color color color color color color color color color color output-V,–version Displayソフトウェアバージョンバージョン-v,–verbose Run verbosely-q,–quiet Run quietly(repeat to to to to to to suppress errors)使用例
rc-update add docker boot#サービスrc-update add docker boot#サービスrc-update del docker boot#サービスrc-statusを追加主に実行レベルのステータス管理に使用します.
rc-status構文フォーマット
Usage: rc-status [options] … or: rc-status [options] [-a | -c | -l | -r | -s | -u]
Options: [ aclrsuChqVv ] -a, –all Show services from all run levels -c, –crashed Show crashed services -l, –list Show list of run levels -r, –runlevel Show the name of the current runlevel -s, –servicelist Show service list -u, –unused Show services not assigned to any runlevel -h, –help Display this help output -C, –nocolor Disable color output -V,-version Display software version-v,-verbose Run verbosely-q,-quiet Run quietly(repeat to suppress errors)使用例
rc-status#デフォルト実行レベルのステータスrc-status#デフォルト実行レベルのステータスrc-status-a#すべての実行レベルのステータスrc-service rc-serviceプライマリがサービスのステータスを管理するために使用することを確認
rc-service構文フォーマット
Usage: rc-service [options] [-i] … or: rc-service [options] -e or: rc-service [options] -l or: rc-service [options] -r
Options: [ e:ilr:INChqVv ] -e, –exists tests if the service exists or not -i, –ifexists if the service exists then run the command -I, –ifinactive if the service is inactive then run the command -N, –ifnotstarted if the service is not started then run the command -l, –list list all available services -r, –resolve resolve the service name to an init script -h,-help Display this help output-C,-nocolor Disable color output-V,-version Display software version-v,-verbose Run verbosely-q,-quiet Run quietly(repeat to suppress errors)使用例
rc-service sshd start#サービスを開始します.rc-service sshd start#サービスを開始します.rc-service sshd stop#サービスを停止します.$rc-service sshd restart#サービスを再起動します.Openrc openrcは主に異なる実行レベルを管理するために使用されます.
Openrc構文フォーマット
Usage: openrc [options] []
Options: [ a:no:s:SChqVv ] -n, –no-stop do not stop any services -o, –override override the next runlevel to change into when leaving single user or boot runlevels -s, –service runs the service specified with the rest of the arguments -S, –sys output the RC system type, if any -h, –help Display this help output -C, –nocolor Disable color output -V, –version Display software version -v, –verbose Run verbosely -q, –quiet Run quietly (repeat to suppress errors)
defaultAlpine Linuxで使用可能な実行レベル
Sysinit boot single reboot shutdown使用例
$openrc single#single実行レベルの他のコマンドに変更
reboot#shutdown-r nowに似たシステムを再起動します.reboot#shutdown-r nowに似たシステムを再起動します.halt#シャットダウン、shutdown-h nowに似ています.$Poweroff#シャットダウンリファレンスドキュメントhttp://www.google.com http://t.cn/RizgdLy https://wiki.alpinelinux.org/wiki/Alpine_Linux_Init_System https://wiki.alpinelinux.org/wiki/Alpine_Linux_package_management
変換元:https://www.hi-linux.com/posts/64839.html?utm_source=tuicool&utm_medium=referral