Debian 9 "stretch"には次のものがあります。
# apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
linux-image-marvell
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
このコマンドは「Debianをアップデートする公式の方法」に基づいていますが、アップデートはインストールされません。Debian マニュアルのセキュリティ(読み込み中のスナップショット)ここ)。
対照的に、両方のコマンドとaptitude
最新のapt
コマンドの両方をインストールする準備が整いました。つまり、この特定のバージョンはセキュリティ更新プログラムではありません。私はこれを理解apt
し、aptitude
他のデフォルト値があるかもしれません。これらのDebianの行動はよく考えたものかどうか尋ねたいです...
aptitude
Debian セキュリティマニュアルでは、アップデートの適用方法を説明する際に、これらの事項を最初にリストします。apt
ユーザーフレンドリーにするために、デフォルト値にいくつかの変更があることがわかります。現在のDebianインストールガイドを詳しく見てください。新しいユーザーにapt
またはを案内していますaptitude
。apt
今、すべてのサンプルコマンドがapt-get
。
私の開始仮説は安全Debian Security Manualで承認されたアップデート方法は、カーネルアップデートを妨げません。 (私の考えが間違っている場合は教えてください:-)しかし、Debianシステムを更新する方法を確実に理解したいと思います。
質問
- 新しいユーザーのための最新のDebian設定を取得するには、代わりに指で
apt
入力する方法を学ぶことをお勧めしますapt-get
。そうですか? apt-get
以前のインストールガイド(Debian 8用)とDebian 8からDebian 9にアップグレードするためのドキュメントを参照してください。したがって、広く言えば、apt
Debian 8 -> Debian 9に切り替えるまで使用しないことが最も安全な方法だと思います。- 現在のソリューションは、いくつかのタスクで使用されている1つ以上のよく知られたケースに注意を払うことを提案していますか
apt-get
? - もっと積極的にアップデートを適用することを選択することに対するDebianのコメントはありますか
apt
?特に、セキュリティ更新プログラムと非セキュリティ更新プログラムの間に違いがあることを確認するためのコメントはありますか? apt-get
少し異なる観点から、私のシステムで使用されている一般的な設定と一緒に適用されるのを避けるために、そのような(非セキュア)カーネルアップデートをスケジュールするDebianの選択に関する情報はありますか?
今回のアップデートの詳細
# apt-cache policy linux-image-marvell
linux-image-marvell:
Installed: 4.9+80+deb9u4
Candidate: 4.9+80+deb9u5
Version table:
4.9+80+deb9u5 500
500 http://ftp.uk.debian.org/debian stretch/main armel Packages
*** 4.9+80+deb9u4 500
500 http://security.debian.org stretch/updates/main armel Packages
100 /var/lib/dpkg/status
使用されている「apt-get」バージョン
# apt-cache policy apt
apt:
Installed: 1.4.8
Candidate: 1.4.8
...
更新方法によって動作が異なります。
# aptitude upgrade
Resolving dependencies...
The following NEW packages will be installed:
linux-image-4.9.0-7-marvell{a}
The following packages will be upgraded:
linux-image-marvell
1 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/21.9 MB of archives. After unpacking 91.2 MB will be used.
Do you want to continue? [Y/n/?] n
Abort.
# apt upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following NEW packages will be installed:
linux-image-4.9.0-7-marvell
The following packages will be upgraded:
linux-image-marvell
1 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/21.9 MB of archives.
After this operation, 91.2 MB of additional disk space will be used.
Do you want to continue? [Y/n] n
Abort.
答え1
まず、現在見ている動作を説明することから始めます。デフォルトでは非常に保守的で、apt-get
新しいパッケージはランタイムにのみインストールされません(オプションで変更できます)。一方、(とにかく他の解像度アルゴリズムを使用して)同様に(このオプションはデフォルトで有効になっています)になります。カーネルでABIがクラッシュするため、アップグレードするには新しいパッケージをインストールする必要があります。upgrade
dist-upgrade
--with-new-pkgs
apt
APT::Get::Upgrade-Allow-New
aptitude
技術的には、このカーネルアップデートをセキュリティ修正として受け取るのではなく、先週末の9.5ポイントリリースの一部として受け取ることです。しかし、ここでもそこでもありません。優先順位が同じだからです。 (あなたはすでにこれを知っており、私はこれを他の読者に言及しました。)カーネルセキュリティアップデートにABI競合が含まれる可能性があるしたがって、これはセキュリティアップデートとポイントリリースアップデートで発生する可能性があります。 Debianのカーネルパッケージの場合、違いは主に機会とタイミングです。とにかく、すべてのカーネルアップデートはセキュリティアップデートだからです。
今、あなたの質問に答えてみましょう。
apt
推奨されるAPTフロントエンドは、少なくともインタラクティブな使用のためにユーザーフレンドリーなデフォルト値を持つ必要があります(両方のツールはapt-get
同じアルゴリズムを使用し、apt-get
次のように機能するように構成できます。)apt
有効なapt-config dump | grep Binary::apt
特定の設定を表示するには、実行しますapt
。aptitude
引き続き使用できます。私の知る限り、Debian 8では
apt
まったく同じなので、apt-get
あなたも使えます。apt
Debian 9 は開発者の努力以来、最も便利なユーザー向けツールとなりました。Debian FAQapt
代わりにDebian 8(Jessie)を使用apt-get
し、apt-cache
Debian 8(Jessie)で起動することをお勧めします。 (説明が少し間違っているようですapt update
。)現在のアドバイスは、
apt
インターフェイスが変更される可能性があるため、スクリプトで使用しないことです。それ以外にはいかなるシナリオもあってはなりません。必要apt-get
代わりにapt
。apt
特に設定しない限り、セキュリティ更新プログラムと非セキュリティ更新プログラムは区別されません。意識的な決定かどうかはわかりませんが...最後の更新Debian マニュアルのセキュリティDebian 9 よりずっと古い。
apt-get
ご利用時に参考にしてくださいDebian FAQapt-get dist-upgrade
Debian システムを最新の状態に保つことを指します。このFAQもDebian 9より前のバージョンですが、最近更新されました。