Jestem nowy w Linuksie i korzystam z CentOS. Znalazłem cztery sposoby aktualizacji lub instalacji oprogramowania.
Do tej pory widziałem:
yum install [program]
apt-get install [program]
rpm -i [program].rpm
wget [program].tar.gz
->unpack
->./configure
->make
->make install
Ten ostatni to prawdziwy ból, szczególnie pochodzący z systemu Windows, gdzie instalacja programu to zwykle jedno kliknięcie i miły kreator instalacji.
Tak więc moje pytania to:
- Dlaczego jest tak wiele różnych sposobów, aby to zrobić w systemie Linux?
- Którego polecasz użyć i dlaczego?
- Czy istnieją inne sposoby instalowania programów w systemie Linux?
linux
installation
package-management
yum
rpm
Saif Bechan
źródło
źródło
yum
vsup2date
. Nigdy nie wyjaśniłem różnicy.apt-get
jest dla Debiana i naprawdę nie powinien pojawić się na CentOS ....Odpowiedzi:
Wszystkie te narzędzia instalują oprogramowanie w systemie, ale działają na różnych poziomach.
./configure && make install
Uruchamianie
./configure && make install
kompiluje i instaluje biblioteki lub pliki wykonywalne bezpośrednio z kodu źródłowego.Ten
make install
krok polega po prostu na skopiowaniu końcowych plików do systemu. Wiele źródeł ma specjalnąmake uninstall
regułę, aby je ponownie usunąć, ale nie jest to gwarantowane i oczywiście działa tylko tak długo, jak długo masz skonfigurowane źródła. Nie rozwiązuje to również wymaganych zależności.Często dla danego pakietu dostępny jest tylko kod źródłowy, więc jest to jedyna droga. Ponadto,
./configure
zazwyczaj przyjmuje wiele opcji pozwalających na dostosowanie pakietu.Brak możliwości sprawdzenia, które oprogramowanie zainstalowało dany plik, oraz brak niezawodnego sposobu usunięcia ich z systemu to główne wady tego podejścia.
RPM (Menedżer pakietów Redhat)
rpm
instaluje skonfigurowane i skompilowane oprogramowanie w twoim systemie, a także zawiera dezinstalację, aby się go pozbyć. Pakiety muszą być przez kogoś stworzone. Ta osoba już zdecydowała, jakie funkcje należy uwzględnić i jak najlepiej zintegrować pakiet z układem systemu. Zawiera również listę zależności.Ponieważ rpms są używane w wielu dystrybucjach, często będziesz chciał się upewnić, że rpm został napisany dla twojej dystrybucji, aby ścieżki instalacji, zależności i inne czynności porządkowe dobrze się integrowały.
W systemach Debian równoważny format pakietu to narzędzie, które
.deb
obsługuje instalację i bazę danychdpkg
.Mniam
yum
to dodatkowe opakowanierpm
. Utrzymuje własną bazę danych plików rpm dostępną dla twojej dystrybucji, zazwyczaj w repozytoriach internetowych. W przypadku stabilnych wersji większości dystrybucji wszystkie pakiety w tej bazie danych będą ze sobą dobrze współpracować. Tę bazę danych można przeszukiwać (np. Za pomocąyum search some_name
).To również automatycznie rozwiąże zależności dla Ciebie. Pakiety (i przy dodatkowej pomocy ich zależności) można również łatwo odinstalować.
W systemach Debian równoważne repozytorium i narzędzia do rozwiązywania zależności są dostarczane przez Apt (
apt-get
iaptitude
).Podsumowując: jeśli chcesz tylko oprogramowanie, spróbuj
yum
najpierw. Jeśli nie jest tam dostępny, możesz spróbować znaleźć istniejącyrpm
pakiet. Jeśli nie ma żadnych wymagań lub masz jakieś specjalne wymagania, buduj ze źródła.źródło
apt-get
czy nadal jest to zalecane?apt-get
nie rejestrował automatycznych zależności i pozostawił je po odinstalowaniu, aaptitude
następnie wprowadził odpowiednie śledzenie zależności. Oprócz tego zapewnił także dodatkowe funkcje niedostępne wapt-get
. Nie jestem pewien, ale myślę, że w pewnym momencieapt-get
i poaptitude
aktualizacji został użyty ten sam, zaawansowany backend zapewniający dużą część tej funkcjonalności.Yum są RPM, to samo, z tym że yum automatycznie pobiera pakiety z sieci i instaluje je (używa
rpm -i
) w jednym kroku. W miarę możliwości należy go używać, aby ułatwić aktualizację. Używajrpm
tylko wtedy, gdy nie ma pakietu do znalezieniayum
, i używaj tejmake
metody tylko wtedy, gdy nie ma dostępnego pakietu .rpm lub musisz zmienić niektóre opcje czasu kompilacji.źródło