Definicje:
repository
GPG
dependency
rpm database
rpm query: -a all, -f plik (absolute path), -p package
rpm query: -i informacja, -l lista, -s stan plikow, -d dokumentacja, -cconfig files
rpm verify - porownuje informacje miedzy plikami z zainstalowanego pakeitu a tymi obecnymi w systemie. Różnice mają oznaczenia:
5 — MD5 checksum
S — file size
L — symbolic link
T — file modification time
D — device
U — user
G — group
M — mode (includes permissions and file type)
? — unreadable file
1. Zebranie informacji o pakiecie
rpm --query --info coreutils
um info coreutils
repoquery --info coreutils
repoquery --nvr lftp (name-version-release)
2. Wyswietlenie changelog
rpm --query --changelog coreutils
repoquery --changelog selinux-policy
Lista plikow w pakiecie
rpm --query --list coreutils
repoquery --list coreutils
Jaki pakiet posiada potrzebny plik?
yum provides "*/init.d/rsyslog"
Roznica --whatprovides i --provides
--whatprovides - przeszukuje pakiety, ktore zapewniaja capability/feature/ceche/funkcje.
Znalazlem biblioteke i nazwe pakietu w jaki jest, to sprawdze co jeszcze jest w pakiecie
--provides - co zapewnia pakiet (co znajduje sie w pakiecie), jakie features.
Szukanie pakietu kiedy mam podany modul
--requires - wyswietla dependancies dla pakietu
--whatrequires - listuje wszystkie pakiety, ktore posiadaja feature
--whatrequires CAPABILITY - wyszuka pakiety, ktore posiadaja CAPABILITY
--whatprovides CAPABILITY - wyszuka pakiety, ktore dostarcza CAPABILITY
rpm --query --whatprovides "/etc/init.d/rsyslog"
Lista dependencies pakietu?
rpm --query --requires coreutils
repoquery --requires coreutils (nazwy plikow)
repoquery --requires --resolve coreutils (nazwy pakietow)
repoquery --whatrequires openssl
Które pakiety potrzebują pliku/pakietu?
rpm --query --requires coreutils
repoquery --requires --resolve -f "/lib64/libselinux.so.1"
repoquery --whatrequires -f "/lib64/libselinux.so.1"
Co dzieje sie po zainstalowaniu pakietu?
rpm --query --scripts coreutils
Lista dependencies dla pakietu?
rpm -q --whatprovides bar.so.2
yum deplist coreutils
Skąd moge pobrac pakiet?
repoquery --location lftp
wget `repoquery --location lftp`
Co wlacza pakiet? Co jest wlaczane przez pakiet?
rpm --query --triggers -f /etc/inittab
Potencjalne konflikty
repoquery --conflicts rsyslog
rpm -ivh --replacefiles foo-1.0-1.i386.rpm - ignorowanie (na podstawie redhat.access.)
Importowanie bazy danych kluczy z nośnika
rpm --import /mnt/cdrom/RPM-GPG-KEY
Listowanie zainstalowanych w bazie kluczy
rpm -qa gpg-pubkey*
Sprawdzenie czego dotyczy klucz
rpm -qi gpg-pubkey-7fac5991-4615767f
Sprawdzenie GPG przed instalacja
[root@localhost tmp]# rpm --checksig -v rsyslog-gnutls-5.8.10-8.el6.x86_64.rpm
przyklad - pakiet openssl.x86_64 jest dostepny do zainstalowania.
1.
freshen/upgrade - freshen, jezeli pakiet jest juz zainstalowany. upgrade niewazne, czy pakiet jest zainstalowany czy nie
Praktyczne użycie rpm ze strony redhata
jezeli przypadkowo usunalem jakies pliki, albo brakuje jakichs plikow:
rpm -Va
jezeli jakies pliki brakuja, albo sa corrupted, prawdopodobnie trzeba reinstalowac pakiet
Jezeli widze plik, ktorego nie znam:
rpm -qf /sciezka/absolutna
dowiedzienie sie czegos o pakiecie
rpm -qdf /usr/bin/free
co robi dana paczka?
rpm -qip crontabs-1.10-7.noarch.rpm
yum - korzysta z repozytoriow
instalacja kingston spreadsheet:
1. pobranie pliku z linka http
wget http://kdl.cc.ksosoft.com/wps-community/kingsoft-office-9.1.0.4280-0.1.a12p4.i686.rpm
2. Informacje o pobranym pakiecie
rpm --query --info -p kingsoft-office-9.1.0.4280-0.1.a12p4.i686.
Lista plikow w pakiecie
rpm --query --list -p kingsoft-office-9.1.0.4280-0.1.a12p4.i686.rpm
3. Sprawdzenie dependancies
rpm --query --requires -p kingsoft-office-9.1.0.4280-0.1.a12p4.i686.rpm
instalacja
yum localinstall
|