Co to są pliki .run?

17

Czym dokładnie są .runpliki i do czego służą? Ostatnio widziałem kilka z nich i po prostu zastanawiam się, do jakiego formatu pliku jest używany.

Olivier Lalonde
źródło
4
Pliki, które działają. Złap je!
Cody Harlow
@kalina Nie chodzi o instalowanie plików .run.
Seth

Odpowiedzi:

20

Plik .run jest zwykle niestandardowym programem, który należy wykonać, aby zainstalować program. Nie są one ogólnie obsługiwane, ponieważ nie śledzą, dokąd idą pliki i zwykle nie zapewniają metody odinstalowywania. nie ma sposobu, aby upewnić się, co skrypt zrobi z twoim systemem, więc są uważane za niebezpieczne.

Są one zbliżone do pliku exe systemu Windows i jako takie mają takie same problemy. Jeśli wiesz, co robisz i jesteś zadowolony z podejmowania ryzyka, możesz wykonać je za pomocą następujących poleceń:

chmod 755 programinstall.run
sudo ./programinstall.run
Martin Owens -doctormo-
źródło
Czy są to zwykle pliki binarne lub skrypty?
Olivier Lalonde
1
Mogą być albo, nie ma określonej metody lub formatu jako takiego.
Martin Owens -doctormo-
11

Zazwyczaj są to pliki wykonywalne w jakiejkolwiek formie. Nie są koniecznie instalatorami, chociaż większość z nich zobaczysz.

Jak mówi Martin i zakładając, że mówimy o instalatorze, zwykle nie są tak dobre, jak pakiety, gdy chcesz je usunąć, jednak istnieją pewne instalatory (myślę głównie o instalatorach gier Loki i LGP) śledź, gdzie się instalują i zapewnia całkiem solidny plik binarny odinstalowujący.

Martin twierdzi, że będzie działał dla większości plików binarnych, większość plików .run, które widziałem, to hybrydowy skrypt powłoki i skompresowane elementy binarne. Oznacza to, że możesz po prostu je uruchomić sh. Przykład z instalatorem sterownika NVIDIA:

sudo sh NVIDIA-Linux-x86_64-260.19.06.run

Możesz sprawdzić, co to naprawdę jest plik (dobrze działa przez większość czasu) za pomocą file:

file NVIDIA-Linux-x86_64-260.19.06.run

NVIDIA-Linux-x86_64-260.19.06.run: tekst wykonywalny skryptu powłoki POSIX

Oli
źródło
2
Nie wiedziałem o narzędziu „file”, dzięki!
Olivier Lalonde