web-dev-qa-db-ja.com

apt完全アップグレードとapt-get dist-upgrade

マニュアルページに従って:

  • aptにはパラメーターfull-upgradeがあります
  • apt-getにはパラメーターdist-upgradeがあります。

両方とも同じコマンドですか?

btw:Ubuntu 16.04で公式に推奨されているコマンドはどれですか? aptまたはapt-get

34
a903user

apt full-upgradeは、apt-get dist-upgradeと同じ機能を実行します。

ふさわしい男

   full-upgrade (apt-get(8))
       full-upgrade performs the function of upgrade but will remove currently installed packages if this is needed to upgrade the system as a whole.

男がガット

   dist-upgrade
       dist-upgrade in addition to performing the function of upgrade, also intelligently handles changing dependencies with new versions of packages; apt-get has a "smart" conflict resolution system,
       and it will attempt to upgrade the most important packages at the expense of less important ones if necessary. The dist-upgrade command may therefore remove some packages. The
       /etc/apt/sources.list file contains a list of locations from which to retrieve desired package files. See also apt_preferences(5) for a mechanism for overriding the general settings for
       individual packages.
22
schod

これらは同じコマンドではありません。ただし、一般的な使用法ではしばしば同じことを行います。この混乱には2つの理由があり、両方とも歴史的なものです。

1)dist-upgradeはDebian(Ubuntuではない)で使用されます。 StretchからBusterへのように、あるリリースから次のリリースへ移行するプロセスの一部です。 Ubuntuで最も近いコマンドはdo-release-upgradeです。

2)10年前のUbuntuの開発の初期に、dist-upgradeを使用する2番目の理由が現れました。カーネルのアップグレードは、通常のupgrade定義に該当しませんでした(依存関係のパッケージ名変更)、そのため、長年にわたってUbuntuでdist-upgradeを使用してカーネルパッケージをアップグレードすることが一般的でした。このカーネルワークフローの問題はfull-upgradeの導入により数年前に修正されましたが、多くの老人はまだdist-upgrade習慣にあり、古いアドバイスを若者に伝えています。

2016年以来、dist-upgradeは時代錯誤です Ubuntuに含まれています。aptパッケージがDebianからUbuntuにあまりパッチを当てずに同期するためだけに含まれています。同期中にコマンドを削除する理由はありません。誤用は十分な理由ではありません-誤用はyour問題であり、Ubuntuの問題ではありません。このような誤用は通常無害です。

使用法:upgradeの重要な行を見てください:

15 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
  • [15] upgradedは、通常のapt upgrade(Ubuntuのすべてのリリース)によって処理されます。
  • [3] not upgradedは、apt full-upgrade(Ubuntu 16.04以降)またはapt dist-upgrade(Ubuntu 14.04以前)で処理する必要があります。

スマートな人はunattended-upgradesを使用する傾向があり、これはデフォルトでUbuntuのすべてのリリースのすべてのデスクトップフレーバーに含まれています。通常のセキュリティ習慣の一部としてu-uを適切に使用している場合、これはすべて純粋に学術的なものであるため、おそらく10年間dist-upgradeまたはfull-upgradeを使用する必要はないでしょう。 u-uがすべてを処理します。

3
user535733

aptとapt-getは2つの異なるコマンドです。 aptは新しいコマンドであり、デフォルトとして使用する必要があります。 aptの方が適しているため、apt-getではなくaptの使用に変更する必要があります。

1
Mark Dymek

最初の選択肢としてaptを使用しますが、スクリプトを作成する場合はapt-getを使用します。 Apt-getの出力はより安定しています(つまり、出力を自動的に解析するスクリプトを壊さないように、出力形式は可能な限りそのままにしておきます)。 Apt-getには、aptでは使用できない低レベルのコマンドもいくつかあります。

Aptとapt-getのマニュアルページでは、full-upgradeとdist-upgradeの説明が少し異なりますが、おそらく同じコマンドです(aptはdist-upgradeをfull-upgradeのエイリアスとして受け入れます)。これは、apt-getsの安定性の良い例です。 aptでは、より使いやすい名前に変更されましたが、apt-getでは、古いスクリプトとの互換性を損なわないように名前が変更されません。

0
David Trammell

Aptはコマンドの新しいバージョンです。 apt-getの代わりにaptを使用するように切り替えて、コマンドが何をしているのかをよりよく理解してください。

Apt-full-upgradeとapt-get-distは同じコマンドです。しかし、新しいコマンドは再び適切です。

たとえば、aptを使用すると、進行状況バーが表示され、インストール/更新がどれだけ行われたかがわかります。

0
Mark