aptコマンドによるパッケージ更新メモ


はじめに

筆者の環境は以下のとおりです。
 ・Windows10にてWSL2でUbuntu20.04LTSを使用(ロケールはja_JP.utf8)
 ・Windows Terminalを使用

上記環境でのaptコマンド実行メモです。
あくまで筆者が通常実行しているコマンドのみの記載になります。
その他のコマンドや詳細情報についてはman aptや以下の公式ドキュメントを参照ください。
参考リンク:Ubuntu Server Guide

aptコマンド実行編

結論から書きます。
以下が実行しているコマンドになります。
※各コマンドの意味が分からない方はコピペで実行しないでください。
(実行した結果について責任を負いかねます)

sudo apt update && sudo apt upgrade -y && sudo apt dist-upgrade -y && sudo apt autoremove -y && sudo apt autoclean -y

解説編

apt以外のLinuxコマンド共通基礎的な部分

  • sudoについて
     スーパーユーザー(rootユーザー)の権限でコマンドを実行します。
     普段Windowsをそのまま使っていると意識しないかもしれませんが、
     Linuxだと色々なもの(例えばコマンドの実行など)に「権限」が関係してきます。
     別の記事を書くレベルになるので大幅に省略しますが、
     「管理者権限を持つ一番偉いユーザでコマンドを実行しますよ」ということだと思ってください。

  • &&について
     「AND制御演算子」と呼ばれる演算子で
     「&&で繋ぐ前のコマンドが成功したら次を実行」します。
     コマンドを連結するモノだと思ってください。

  • -yについて
     Linuxではコマンド実行中に「本当に実行しますか?」と問われることが度々あります。
     続行しますか? [Y/n]みたいなやつです。
     -yオプションを付けて実行することで全て「yes」で実行します。

  • おさらい
     最初に「コピペで実行しないでください」と書いた理由は
     「よく分からないコマンド」「複数」を「管理者」が「はいはい」言いながら
     実行することになるからなんですね。(職場風景でもありそうで怖いですね)
     「よく分からないコマンド」の部分については次で解説します。

aptコマンドの部分

aptコマンド実行編

に記述したコマンドは以下の5つを実行しています。

  1. apt update
    インストール可能なすべてのパッケージに関する詳細情報が表示されます。
    (ここまでなら実際にインストールされません、ただ表示されるだけです)

  2. apt upgrade
    パッケージを更新します。
    (上記で一覧を確認し、実際にインストールするフェーズになります)

  3. apt dist-upgrade
     ここが一番難しいです…(より良い記述を考えられたら修正します)
     upgradeで更新した新しいバージョンの
     パッケージとの依存関係の変更も「うまいこと」行ってくれます。
     「パッケージとの依存」というのは、
     あるパッケージが、特定の別パッケージがないシステムでは正しく動作しないこと表します。
     一応雑に例を書くと「TVリモコン」というパッケージが動くためには
     「電池」というパッケージが必要、ということみたいに考えてください。
     (「うまいこと」、というのは例に挙げた「TVリモコン」を更新したら、
     必要な「電池」が単3から単4に変わりました、じゃあ単4を入れます、と
     自動でやってくれるみたいな感じと考えてください…)

  4. apt autoremove
     パッケージの更新に伴い必要なくなったパッケージを削除します。

  5. apt autoclean
     これも難しいんですよね…(同じく、より良い記述を考えられたら修正します)
     意味で言うと
    「キャッシュされているが、インストールはされていないdebファイルを削除」なのですが…

  再び、雑な解説ですが、
  「キャッシュ」という「一回身近に記憶して、いちいち遠くから再読込する手間を省く記憶」
  みたいな領域があるのですがソレをリフレッシュする、というコマンドです。

 記述された時期が古い記事ですが以下を見ていただければ良いかと思います。
 参考リンク:aptキャッシュ再利用

補足

更新した後はOSの再起動をしないと基本的に更新完了しません。
ですので、各自の環境に合ったコマンドを実行してください。
(ここは、コマンドなど正確に調べてください)

# 例:Linuxの本番環境の場合(夜中の2:30に再起動をかける)
$ sudo shutdown -r 02:30

# 例:wslの再起動をする場合
$ wsl -t Ubuntu◯◯

wslコマンドについては以下を参照してください。
参考リンク:WSL の基本的なコマンド

備考

aptはAdvanced Package Tool (アドバンスド パッケージ ツール)の略らしいです。
Linuxのパッケージを操作するためのコマンドラインツールです。