Jaka jest różnica między tworzeniem plików .deb a instalowaniem ich i uruchamianiem tylko pliku .run ?
package-management
Mandar Shinde
źródło
źródło
Odpowiedzi:
.deb
pliki są pakietami dla dpkg , niskiego poziomu menedżera pakietów Debiana (który jest wywoływany pod maską przez APT i jego krewnych)..deb
Plik jest pakiet Debiana lub pochodne, takie jak Ubuntu lub Mint.Pakiety Debiana zawierają pliki, które należą do pakietu, a także „plik kontrolny”, który opisuje zależności pakietu i inne meta-informacje oraz skrypty instalacyjne, które są wykonywane, gdy pakiet jest instalowany, aktualizowany lub odinstalowywany.
Możesz spojrzeć na zawartość
.deb
pliku za pomocądpkg -c
idpkg -I
. Jeśli nie maszdpkg
, możesz użyć,ar t foo.deb
aby wyświetlić listę części.deb
pliku iar x foo.deb control.tar.gz
wyodrębnićcontrol.tar.gz
część (i podobnie w przypadku innych części).Red Hat (i krewni, tacy jak CentOS i Fedora), SuSE i inni używają rpm , innego formatu o podobnych cechach. Są inne na innych systemach uniksowych.
.run
nie jest standardowym rozszerzeniem..run
Plik jest przypuszczalnie coś można wykonać. Może zainstalować program lub zrobić coś zupełnie innego.źródło
Ogólnie plik .deb jest podobny do pliku zip, który zawiera pliki wraz z krótkimi skryptami, które można uruchomić po instalacji, aby dodać użytkowników, grupy itp. Do systemu po instalacji.
Plik .run jest zwykle pojedynczym binarnym plikiem wykonywalnym lub skryptem powłoki zawierającym binarny obiekt blob, który można zainstalować. Jeśli jest to odmiana skryptu powłoki, często zawiera binarny obiekt blob, który często jest synonimem rekurencyjnego pliku zip lub pliku tar. Innymi słowy, będzie zawierać struktury katalogów plików.
Innym razem ten typ pliku .run będzie po prostu zawierał pliki .deb lub .rpm, które zostaną zrzucone na dysk i mogą być instalowane indywidualnie lub skrypt, który je zawiera, zrzuci je na dysk, a następnie spróbuje zainstalować je za pomocą oprogramowania do zarządzania pakietami w systemie.
Przykładem może być pobranie Java JDK z Oracle. To zazwyczaj pojedynczy plik wykonywalny, który po uruchomieniu będzie zrzucić .deb lub .rpm pliki na dysk, a następnie zainstalować je za pomocą
the package management tools: dpkg
,apt
,yum
lubrpm
.Przykład
Oto przykład, jak wyglądałoby pobieranie / instalacja z jednym z tych plików .run. Rozszerzenie to .bin, ale jest to po prostu kosmetyczne, rozszerzenie nie ma tak naprawdę żadnego innego znaczenia, jak pomóc użytkownikom w rozróżnieniu różnych typów plików.
Tutaj powyższy plik zrzuci pakiety dla różnych komponentów tworzących JDK, po czym możesz zainstalować wszystkie lub tylko te, których potrzebujesz.
Zrób to w ten sposób, umożliwiając wykonanie dodatkowych czynności poza instalacją pakietu. Na przykład Oracle ma umowę licencyjną, którą chcą zaakceptować:
Dzięki powyższemu instalatorowi możesz zobaczyć, że zawiera on tylko binarną kroplę katalogów plików:
W takim przypadku instalacja tego typu nie ma na celu przywoływać menedżera pakietów, ale po prostu zrzucić zawartość do jednego drzewa katalogów, aby można było przenosić ją w dowolne miejsce.
W środowiskach produkcyjnych często zdarza się, że nie chcesz używać menedżera pakietów, ale raczej mieć większą kontrolę nad wdrożeniami. Być może masz kilka aplikacji, które wdrażasz i każda z nich wymaga innej wersji JDK. Korzystając z tej metody, możesz sprawić, by wszystkie one współistniały łatwiej niż powiedzą to przez menedżera pakietów.
Bibliografia
źródło