Jaki jest odpowiednik wiersza polecenia dla menedżera aktualizacji (Software Updater)?

25

Kiedy robię

sudo apt-get update
sudo apt-get upgrade

Czasami w Menedżerze aktualizacji GUI Ubuntu nadal pozostają pewne elementy. np. „Kompletne ogólne jądro Linuux”.

Wiem, że też sudo apt-get dist-upgrade, ale to dotyczy innych rzeczy.

Moje pytanie brzmi: jaka jest inna opcja wiersza poleceń, której mogę użyć, aby zaktualizować pozostałe elementy wyświetlane w menedżerze aktualizacji GUI (ale nie dotyka niczego innego). Innymi słowy, szukam ekwiwalentu wiersza poleceń.

EDYCJA: To pytanie dotyczy menedżera aktualizacji, który jest równoważny z Aktualizatorem oprogramowania w nowszych wersjach (np. 16.04), jak zauważył @Eliah Kagan .

Xah Lee
źródło
Pakiet menedżera aktualizacji Ubuntu jest oprogramowaniem typu open source, więc możesz znaleźć kod źródłowy, aby znaleźć odpowiedź. Rzuciłem okiem, ale nie zauważyłem nic niezwykłego w sposobie aktualizacji.
Po niektórych badaniach nie jest dla mnie jasne, że istnieje bezpośredni odpowiednik, ale istnieje bardzo pouczająca odpowiedź wyjaśniająca różnicę między apt-get a aptitude . Domyślam się, że Update Manager jest podobny do apt-get, ponieważ ma nieco bardziej wyspecjalizowany zestaw reguł, których używa do aktualizacji, z wyjątkiem tego apt-get update, że w przeciwieństwie do tego , jego zestaw reguł pozwala na instalowanie nowych pakietów w niektórych wyspecjalizowanych przypadkach, takich jak aktualizacje jądra. Mam nadzieję, że ktoś bardziej kompetentny
cha5on
3
Jestem prawie pewien, że odpowiedź brzmi apt-get dist-upgrade. Co masz na myśli mówiąc, że „dotyka innych rzeczy”?
Flimm

Odpowiedzi:

22

Jak zauważył Flimm , odpowiedź naprawdę brzmi sudo apt-get dist-upgrade( po uruchomieniu sudo apt-get updatenarzędzia do zarządzania pakietami GUI automatycznie robią to samo). Jest to przynajmniej najbliższa rzecz do uruchomienia Aktualizatora oprogramowania (w starszych wersjach zwanego Menedżerem aktualizacji).

Uruchomienie apt-get upgradespowoduje aktualizację pakietów, które można zaktualizować:

  • bez instalowania pakietów, które nie zostały jeszcze zainstalowane w niektórych wersjach, oraz
  • bez usuwania żadnych pakietów.

Menedżer aktualizacji jest w stanie wykonać obie te rzeczy, więc apt-get dist-upgradejest bardzo blisko.

  • Uruchamianie sudo apt-get dist-upgradesamo w sobie nie spowoduje aktualizacji systemu Ubuntu do nowszej wersji. W rzeczywistości, w przeciwieństwie do Debiana, apt-get dist-upgradenie jest obsługiwanym sposobem uaktualnienia do nowej wersji. W Debianie (i Ubuntu, chociaż czasami może się nie powieść i jest nieobsługiwany), zmiana wszystkich repozytoriów wymienionych w /etc/apt/sources.listrepozytoriach na następną wersję i uruchomienie sudo apt-get dist-upgradespowoduje próbę aktualizacji do następnej wersji.

Ponieważ apt-get dist-upgrademożna usunąć pakiet (i zainstalować nowe, których możesz nie chcieć), zawsze najlepiej jest przejrzeć opis tego, co zamierza zrobić przed naciśnięciem y.

Podczas gdy bieganie sudo apt-get -y upgradejest zwykle rozsądne, -yflagi rzadko należy używać z dist-upgrade.

Powodem nie dostaniesz nowe wersje jądra z sudo apt-get upgradedlatego, że każdy dostarczane są przez odrębne, inaczej nazwanych pakietach. (Wersja jądra jest częściowo niezgodna z nazwą.) Ma to na celu ułatwienie utrzymania starego jądra zainstalowanego obok nowszego jądra (oraz możliwość wyboru między nimi w menu GRUB).

Automatyczna oferta nowych pakietów jądra do instalacji jest realizowana przez zainstalowanie metapakietu (podobnego linux-image-generic). Kiedy pojawia się nowe jądro dla twojej wersji Ubuntu, twój metapakiet jądra jest aktualizowany, a uaktualniona wersja tego metapakietu wyświetla nowe jądro jako zależność (bez uniemożliwiania dalszego instalowania starego jądra).

Jeśli nie chcesz używać sudo apt-get dist-upgrade, zawsze możesz ręcznie zaktualizować poszczególne pakiety, które są wyświetlane jako wstrzymane podczas uruchamiania sudo apt-get upgrade. Aby to zrobić, „zainstalować” je: .sudo apt-get install packagename

Eliah Kagan
źródło
1
„Menedżer aktualizacji jest w stanie wykonać obie te rzeczy, więc apt-get dist-upgrade jest całkiem blisko”. - jest bardzo niejasny w kontekście.
mat
7

Jeśli chcesz otworzyć okno aktualizacji oprogramowania z wiersza poleceń (do tego właśnie się zbliżyłem, głównie dlatego, że szukałem tego i znalazłem się tutaj, ponieważ to jest mój cel), aby dać sobie root dostęp do okna GUI (miałem problem z uprawnieniami, próbując to zrobić po ponownym uruchomieniu)

sudo update-manager
Pytanie Rzeczywistość
źródło
Jeśli dobrze rozumiem pytanie, odpowiedź @ questionreality jest prawidłowa, przynajmniej mi się udało. Jedyne, co należy zrobić, jak kontynuować aktualizację bez przechodzenia przez okno dialogowe? Mam na myśli, czysto operacyjna linia poleceń?
nightcod3r
1

Właśnie znalazłem tę odpowiedź, ale zgubiłem źródło, więc nie mogę jej przypisać ...

Poniższe polecenie zainstaluje pakiet, który ma jądro jako zależność, i tym samym zaktualizuje twoje jądro, wybierając odpowiednie do tego.

Moja instalacja 14.4 została zaktualizowana do wersji 14.10, z wyjątkiem jądra. W moim przypadku jądro zaktualizowało się z wersji 3.13.x do 3.16.x, chociaż możliwe jest, że wersje 3.13.0.x mogły mieć aktualizacje. Najwyraźniej 3.13 nie było jednak jądrem LTS.

sudo apt-get install linux-image-generic
piekarnik
źródło
1
gdyby facet, który zagłosował negatywnie na tę odpowiedź, miał kilka podstawowych manier, by powiedzieć „dlaczego”, pomógłby uczniom Linuksa, takim jak ja, dowiedzieć się, dlaczego się myli.
Clain Dsilva,
0

Prawdopodobnie jest to złe miejsce, ale uważam, że chcesz to zrobić:

apt-get -f install

Spowoduje to wyczyszczenie zaległych zależności


źródło
1
dzięki. nie wydaje się, że tak jest. Zrobiłem apt-get -f installnastępnie zaktualizować i uaktualnić ponownie, a następnie przejść do interfejsu graficznego menedżera i sprawdzenie wciąż przedmiotów.
0

aptnarzędzia wiersza poleceń nie zapewniają dokładnie takiego samego poziomu komfortu, jak ich odpowiednik GUI (mianowicie software updater). Podczas gdy a apt-get dist-upgradezajmie się większością aktualizacji, to znaczy pobieraniem i instalowaniem nowszych pakietów, nie wykryje istnienia nowej wersji ubuntu (lub debian), co zrobi narzędzie Ubuntu gui. Brakuje części do edycji /etc/apt/sources.list(lub powiązanych plików /etc/apt/sources.list.d/- ale prawdopodobnie ich nie masz), aby powiedzieć, aptże nowa wersja istnieje i gdzie znajdują się repozytoria.

Na przykład dla opcji dist-upgradeod utopicznej do żywej można otworzyć /etc/apt/sources.list, przeprowadzić szybkie wyszukiwanie i zamienić utopicna vivid, a następnie uruchomić dist-upgradepolecenie CLI. Bezpieczniejszą ścieżką może być zduplikowanie linii w tym pliku, wyszukiwanie i zamiana tylko na tych zduplikowanych liniach, co pozwoli zachować utopie repozytoria.

Aby uzyskać więcej informacji, sugeruję zajrzeć na stronę podręcznika, na sources.listktórej opisano format pliku i sposób jego edycji.

didierc
źródło