Yazılım Güncelleyici kullanmak, apt-get update ve apt-get upgrade komutunu çalıştırmakla aynı şey midir?


Yanıtlar:


21

Kısa cevap

Hayır, onlar aynı değil. apt-get upgradesürümler arasında değişen bağımlılıkları işlemez, bu nedenle bir paket bağımlılıkları değiştirdiyse yükseltilmez ("geri tutulur"). Daha fazla ayrıntı için uzun cevaba bakınız.

Yazılım Güncelleyicisini kullanmak ve kullanmak sudo apt-get update ; sudo apt-get dist-upgrade(notu not edin dist-), birinin açıkça bir GUI ve diğerinin bir konsol uygulaması olması ve aynı zamanda birkaç çok küçük bilgi farklılığı olması dışında neredeyse eşdeğer olacaktır .


Uzun cevap

Gönderen man apt-get,

  • apt-get upgrade:

    upgrade
               upgrade is used to install the newest versions of all packages
               currently installed on the system from the sources enumerated in
               /etc/apt/sources.list. Packages currently installed with new
               versions available are retrieved and upgraded; under no
               circumstances are currently installed packages removed, or packages
               not already installed retrieved and installed. New versions of
               currently installed packages that cannot be upgraded without
               changing the install status of another package will be left at
               their current version. An update must be performed first so that
               apt-get knows that new versions of packages are available.

    (bana göre vurgu)

    Eski sürümde gerekli değildir, yeni bir bağımlılık olan bir paketin daha yeni bir sürümü olduğu bu araçlar olmayacak (yeni bağımlılık zaten yüklü olduğu sürece) bu yöntemle yükseltilebilir. Bunlar "Geri çekildi" olarak gösterilecektir.

  • apt-get dist-upgrade:

    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.

    (bana göre vurgu)

    Bu, bunun yerine bu komutla upgrade, yeni (veya kaldırılmış) bağımlılıklara sahip paketlerin yükseltilebileceği anlamına gelir.

Örnek

İkisi arasındaki farkın güzel bir örneği, yeni bir Linux çekirdeğinin piyasaya sürülmesidir. Bu, linux-image-genericher zaman Linux çekirdeğinin en son paketine bağlı olan pakette paketlenir . Çünkü linux-image-genericher bir çekirdeğin yükseltilmesiyle değişimin bağımlılıkları upgradeonu yükseltmeyecek.


1
Yazılım Güncelleyici artık varolan paketleri güncellemek için kök şifre gerektirmediğinde (yani, yalnızca apt-get upgradegerekli olduğunda ) apt-getneden aynı işlemi yapamadığını açıklayabilir misiniz ? İkisi arasında kökten farklı bir şey var gibi görünüyor.
Jonathan Y.

4

Neredeyse aynı, ancak tam olarak değil. Örneğin, çekirdek güncellemeleri önerildiğinde, sudo apt-get update && sudo apt-get dist-upgradebu güncellemeleri almak için gereklidir.

sudo apt-get update && sudo apt-get upgrade size bazı paketlerin geri alındığını söyleyeceğim.

Yazılım Güncelleyicisini kullanmak her şeyi kusursuzlaştırır ve geride hiçbir şey kaldığını görmezsiniz.


3

İle aptmevcuttur, güncellemeler aşamalı ( pabouk tarafından bahsedilen ) Yazılım Güncellemesi ve komut satırı ile güncellenmesi arasındaki en belirgin fark vardır.

Bugünlerde, bu soru gönderildiğinde bulunmayan ancak büyük olasılıkla soruna dahil edilmişapt olan hizmet programı - paketleri geliştirmek için giderek daha popüler bir alternatif . Bunlar benzer: aynı paket (aynı zamanda denir ) her ikisini de sağlar ve her şey yapabilir, geleneksel araçlar da bazı durumlarda özel yapılandırma seçeneklerinden geçmek zorunda kalırsınız. Ancak Yazılım Güncelleyiciden daha yakın . Yazılım Güncelleyici gibi olan yeni paketlerin yüklenmesi yeteneğine varolan paketinin yeni sürümü bağımlılıkları olarak beyan zaman.apt-getaptaptapt-aptapt-getsudo apt upgrade

Bu günlerde Yani, bu ayrım ile ilgilenen kullanıcılar sadece çalıştırabilir sudo apt upgradeyerine sudo apt-get upgradeyeni bağımlılıklar otomatik olarak yüklenecek istiyorum. Sonuç olarak, Yazılım Güncelleyicisinin bazı durumlarda güncellemeleri biraz geciktirme özelliği , vahşi ortamda istikrarlı olup olmadıklarını belirlemek ve eğer yapılmadıklarında hasarı sınırlandırmak için belirlemek , şimdi Yazılım Güncelleyiciyi kullanmakla komut satırında güncelleme yapmak arasındaki temel fark.

Yazılım Güncelleyicinin bu davranışı aşamalı güncelleme politikasından kaynaklanmaktadır . Bu Politika - Yazılım Güncelleyicisinde uygulanan, ancakapt-get (veya apt) ' da uygulanmayan politika, politikanın yürürlüğe girmesinden bu yana iki yöntem arasında büyük bir fark yarattı ve pabouk birkaç yıl önce şöyle yorum yaptı :

Başka bir fark yoktur apt-getkullanmaz PhasedUpdates bazen Yazılım Güncelleyicisi gösterileri az güncellemeler daha apt-get. Bkz. Yazılım Güncelleyici Neden Güncelleme Yok Sayıyor, ancak apt-get upgrade diyor Güncelleme mevcut mu? .

- pabouk 25 Şubat'ta saat 15 : 15'te

Bu her zaman en önemli fark olabilir sudo apt-get dist-upgrade, çünkü upgradeyeni paket yükleme veya mevcut paketleri kaldırma konusundaki isteksizlikle karşı karşıya kaldığınızda her zaman biri çalışabilir . Ancak, komut satırından güncelleme yaparken , aşamalı güncellemelerin göreceli önemi şununla artar apt:

  • Gibi apt-get, aptkomut, Yazılım Güncelleyici yerine kullanılmış olsaydı, aşamalı güncellemeler politikası nedeniyle ertelenecek olsa bile güncellemeleri indirir ve kurar.
  • Ama aksine apt-get , aptkomutun upgradeeylem olacak önceden yüklenmiş değildi fakat yeni paket sürümlerine ait olarak gerekli olan yeni paketleri yükleme.

(A) grafik bir arayüz tercih etmenin yanı sıra (b) güncellemeler mevcut olduğunda bildirim sağlayan masaüstü entegrasyonu, ana güncellemenin Yazılım Güncelleyiciyi aşamalı güncellemelere katılmanın en kolay yolu olarak kullanması olabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.