W ścisłym znaczeniu plik binarny to taki, który nie jest zakodowany znakowo jako tekst czytelny dla człowieka. Mówiąc bardziej kolokwialnie, „plik binarny” odnosi się do pliku, który jest skompilowanym, kodem wykonywalnym, chociaż sam plik może nie być wykonywalny (odnosząc się nie tyle do uprawnień, ile do możliwości uruchamiania samego; niektóre pliki kodu binarnego, takie jak biblioteki, są skompilowane, ale niezależnie od uprawnień nie można ich wszystkie wykonać samodzielnie). Plik binarny, który działa jako samodzielny plik wykonywalny, jest „plikiem wykonywalnym”, chociaż nie wszystkie pliki wykonywalne są plikami binarnymi (dotyczy to uprawnień: wykonywalnych plików tekstowych, które wywołują interpreter za pomocą shebang, tak jak #!/bin/sh
pliki wykonywalne).
Co to jest pakiet binarny?
Pakiet binarny w kontekście linuksowym to pakiet aplikacji, który zawiera (wstępnie wbudowane) pliki wykonywalne, w przeciwieństwie do kodu źródłowego.
Zauważ, że nie oznacza to, że plik pakietu sam w sobie jest plikiem wykonywalnym. Plik pakietu to archiwum (coś w rodzaju a .zip
), które zawiera inne pliki, a „pakiet binarny” to plik, który zawiera pliki wykonywalne (chociaż znowu pliki wykonywalne niekoniecznie są naprawdę plikami binarnymi, aw rzeczywistości można użyć pakietów binarnych do biblioteki skompilowane, które są kodem binarnym, ale nie są plikami wykonywalnymi). Jednak pakiet musi zostać rozpakowany, aby uzyskać dostęp do tych plików.
Zazwyczaj zajmuje się to tobą system zarządzania pakietami (np. Apt / dpkg), który pobiera pakiet, rozpakowuje i instaluje pliki binarne wewnątrz ciebie.
Jaka jest różnica między pakietem binarnym a pakietem deb?
Nie ma - .deb
pakiety są pakietami binarnymi, chociaż istnieją takie, .deb
które zawierają źródło, zwykle -src
dołączane są do ich nazw.
Uruchamiam jakiś pakiet bezpośredni w formacie „xyz.linux.run” Co to za pakiet?
Są to zazwyczaj samorozpakowujące się pakiety binarne; działają poprzez osadzenie binarnego ładunku w skrypcie powłoki. „Samorozpakowujący się” oznacza, że nie trzeba wywoływać innej aplikacji (np. Menedżera pakietów) w celu rozpakowania i korzystania z nich. Ponieważ jednak nie działają one z menedżerem pakietów, rozwiązywanie ich zależności może być bardziej crapshoot, a zatem niektóre takie pakiety używają statycznie powiązanych plików wykonywalnych (mają wbudowane wszystkie niezbędne biblioteki), co marnuje trochę pamięci, gdy są używane .