Wyświetl wszystkie wersje pakietu


18

Czy istnieje odpowiednik tego polecenia; yum list kernel-headers --showduplicatesna Ubuntu z apt-get, apt-cacheitp. Powyższe polecenie wyświetla listę różnych wersji rpm nagłówków jądra dostępnych na F20 / RHEL lub instalacjach.

Szafa, z której mogę korzystać apt-cache showpkg, nie jesteś pewien, czy istnieje lepszy sposób?

$ apt-cache showpkg linux-image  
Package: linux-image  
Versions:   

Reverse Depends:  
  firmware-crystalhd,linux-image  
  systemtap,linux-image  
  fiaif,linux-image  
Dependencies:  
Provides:  
Reverse Provides:  
linux-image-3.13.0-27-lowlatency 3.13.0-27.50  
linux-image-3.13.0-27-generic 3.13.0-27.50  
linux-image-3.13.0-24-lowlatency 3.13.0-24.47  
linux-image-3.13.0-24-generic 3.13.0-24.47  
linux-image-3.13.0-24-lowlatency 3.13.0-24.46  
linux-image-3.13.0-24-generic 3.13.0-24.46  

Oczekiwany podobny wynik:

$ yum list kernel-headers --showduplicates
Loaded plugins: langpacks, refresh-packagekit
Installed Packages
kernel-headers.x86_64 3.11.10-301.fc20 @fedora
Available Packages
kernel-headers.x86_64 3.11.10-301.fc20 fedora 
kernel-headers.x86_64 3.14.4-200.fc20 updates

Pomogłoby mi to po prostu obniżyć wersję lub uaktualnić do określonej wersji.


miałeś na myśli wymienianie wersji wszystkich zainstalowanych pakietów wraz z nazwami pakietów?
Avinash Raj

Zarówno zainstalowany, jak i odinstalowany, podobny do powyższego polecenia:
askb

Najbliżej udało mi się użyćdpkg --list | grep linux-image
askb

dpkg --listpokazuje szczegóły wszystkich zainstalowanych pakietów.
Avinash Raj

Odpowiedzi:


13

Masz poprawne polecenie, z tym wyjątkiem, że linux-image nie jest prawdziwą nazwą pakietu.

$ apt-cache show linux-image
N: Can't select versions from package 'linux-image' as it is purely virtual
N: No package found

apt-cache showpkgpowinien jednak działać dla prawdziwych pakietów. na przykład

$ apt-cache showpkg lyx
Package: lyx
Versions: 
2.1.0-1~trusty~ppa4 (/var/lib/apt/lists/ppa.launchpad.net_lyx-devel_release_ubuntu_dists_trusty_main_binary-amd64_Packages) (/var/lib/dpkg/status)
 Description Language: 
                 File: /var/lib/apt/lists/ppa.launchpad.net_lyx-devel_release_ubuntu_dists_trusty_main_binary-amd64_Packages
                  MD5: 8c75d53cfd29c5b19c2172cb07b7fe9a

2.0.6-1build1 (/var/lib/apt/lists/ftp.iinet.net.au_pub_ubuntu_dists_trusty_universe_binary-amd64_Packages)

Jeśli chcesz zobaczyć wszystkie wersje linux-imagepodobnych pakietów, możesz po prostu wyszukać, np

$ apt-cache search linux-image | grep '^linux-image'

Problem polega na tym, że różne wersje jądra ( linux-image) znajdują się w poszczególnych pakietach i mają nazwy niezależnie od wersji. Nie są to wszystkie wersje jednego pakietu.


EDYTOWAĆ

Zawiera listę wszystkich dostępnych pakietów. Aby pokazać, który jest zainstalowany, możesz użyć dpkg -l. na przykład

$ dpkg -l lyx
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                           Version                      Architecture                 Description
+++-==============================================-============================-============================-==================================================================================================
ii  lyx                                            2.1.0-1~trusty~ppa4          amd64                        Document Processor

EDYCJA 2

Innym sposobem uzyskania informacji o różnych, ale o podobnych nazwach pakietów (np. linux-image*) Jest użycie aptitude search.

$ aptitude search linux-image

Możesz także filtrować za pomocą grep przy użyciu tej niezręcznej składni, aby obejść błąd / funkcję aptitude.

$ aptitude -w $COLUMNS search linux-image | grep '32 bit'

iW pierwszej kolumnie informuje, że jest on już zainstalowany. Zobacz man aptitudeinne postacie.


dane wyjściowe, które otrzymuję, yumwyraźnie pokazują, co jest zainstalowane, odinstalowane i dostępne.
askb

W porządku. Prawdopodobnie powinieneś dodać to do swojego pytania, ponieważ wielu użytkowników Ubuntu (w tym ja) nie wie, co yumprodukuje. Dodałem więcej informacji w odpowiedzi.
Sparhawk

@askb Dzięki za edycję. Jak wspomniałem w mojej odpowiedzi, myślę, że część problemu polega na tym, że Ubuntu zmienia nazwę każdego jądra w zależności od wersji, podczas gdy Fedora używa tej samej nazwy niezależnie od wersji. Jedną z zalet tego pierwszego jest to, że możesz mieć zainstalowanych kilka wersji na raz i przywrócić starą wersję w Grub, jeśli występują problemy. W każdym razie apt-cache searchstrategia powinna działać.
Sparhawk

dzięki za odpowiedź, w przypadku rpminstalacji opartych jest możliwe, że zainstalowano kilka wersji jądra, o ile wersje są różne, ale zwykle nie dotyczy to wszystkich pakietów w instalacji opartych na rpm lub nie jest to prosty AFAIK. Jednak wciąż próbuję znaleźć czysty sposób, w którym mam szczegółowe informacje zarówno o zainstalowanych, jak i dostępnych (w repozytoriach) pkgs na ubuntu, jeśli chodzi o apt-cache search ideę , ma ona zastosowanie tylko do lokalnych pakietów i nie zajmuje się repozytoriami . Najbliżej mogłem dostać się zshowpkg
askb

@askb Nie, apt-cache searchszuka repozytoriów , nie lokalnie. AFAIK nie mówi ci nic o lokalnie instalowanych pakietach. Potrzebujesz dpkgtego, zgodnie z moją pierwszą edycją. Dodałem w drugiej edycji, która jest pojedynczym poleceniem mającym zastosowanie do jąder.
Sparhawk

8

Myślę, że szukasz komendy madison w apt-cache:

apt-cache madison chromium-browser

Wynik:

chromium-browser | 50.0.2661.102-0ubuntu0.14.04.1.1117 | http://archive.ubuntu.com/ubuntu/ trusty-updates/universe amd64 Packages
chromium-browser | 50.0.2661.102-0ubuntu0.14.04.1.1117 | http://security.ubuntu.com/ubuntu/ trusty-security/universe amd64 Packages
chromium-browser | 34.0.1847.116-0ubuntu2 | http://archive.ubuntu.com/ubuntu/ trusty/universe amd64 Packages

Pokazuje szybki przegląd wszystkich dostępnych wersji i repozytorium, z którego pochodzą. Jest to świetne, jeśli używasz PPA dla pakietu i chcesz sprawdzić różnicę wersji między PPA a głównymi repozytoriami.

Więcej informacji o madison ze strony man:

madison pkg...
           apt-cache's madison command attempts to mimic the output format and a subset of the functionality of the Debian archive management tool,
           madison. It displays available versions of a package in a tabular format. Unlike the original madison, it can only display information
           for the architecture for which APT has retrieved package lists (APT::Architecture).

0

Możesz użyć dpkg, aby zobaczyć wszystkie zainstalowane pakiety:

$ dpkg --get-selections | grep -v deinstall | grep linux-image

Meta-pakiet jądra Linux jest wywoływany w Debianie linux-image-generic.

$ apt-cache madison linux-image-generic

da ci wszystkie wersje dostępne w repozytoriach APT (niekoniecznie zainstalowane w twoim systemie).


-1

Czy próbowałeś uruchomić stare jądro, a w terminalu wpisz:

showpkg kernel-header.list

i myślę, że może znajdować się w katalogu rozruchowym, i tam znajduje się całe jądro, a to może działać dobrze.

a następnie możesz po prostu wpisać, aby obniżyć to w terminalu:

 sudo apt-get -y --force-yes purge linux-shim-efi shim-amd64-generic linux-shim-amd64 

i może tak działać dobrze.


Nie jestem pewien, co to znaczy. Nie ma /dirctory, /directorylub /grubw systemie, a nie plik o nazwie kernel-headers.list. Ponadto odczytanie pliku lokalnego prawdopodobnie nie powie, jakie są dostępne wersje zdalne. -1 (ale cofnę się, jeśli możesz to wyjaśnić).
Sparhawk

Mam na myśli prawdopodobnie katalog / boot, w którym znajduje się plik grub.
Michael

Nie mam pliku w /boot/kernel-headers.list. Możesz jednak uzyskać listę zainstalowanych jąder z (np.) /boot/grub/grub.cfg, Ale znowu jest to tylko jądro zainstalowane lokalnie, a nie zdalne wersje repozytoriów.
Sparhawk

Może nie, że jest to rozszerzenie .cfg / boot
Michael

Przeglądałem wszystkie pliki z find /boot -name '*.cfg', ale żaden z nich nie zawiera informacji o zdalnych wersjach jądra.
Sparhawk
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.