Che cos'è il formato di file RUN?
Un file .run è un file eseguibile che contiene codice e istruzioni per l'installazione di applicazioni software sulla piattaforma Linux. La maggior parte dei file .run è generata con Makeself (di Stéphane Peter) e segue una struttura in due parti: un'intestazione in script di shell in testo semplice che inizia con uno shebang #!/bin/sh, con un payload in archivio TAR compresso aggiunto direttamente dopo di esso. L'intestazione dello script verifica un checksum CRC incorporato (e opzionalmente MD5 o SHA-256), decomprime il payload in una directory temporanea e quindi esegue automaticamente un comando di configurazione integrato.
Il formato .run è ampiamente utilizzato per distribuire driver di dispositivo, SDK e programmi di installazione di grandi dimensioni - in particolare i driver GPU NVIDIA e i toolkit CUDA. Per avviare un programma di installazione, è necessario prima impostare il permesso di esecuzione se non è già presente (chmod +x file.run), quindi eseguirlo con ./file.run o sh file.run.
È anche possibile ispezionare o estrarre un archivio Makeself .run in modo sicuro senza eseguire l'installer:
- Elenca i contenuti:
./file.run --list - Solo estrazione:
./file.run --noexec --target /una/cartella
Per i sistemi Linux basati su gestione pacchetti, i formati come .deb o .rpm sono generalmente preferiti, ma il .run rimane comune per la distribuzione di software proprietario e cross-distribuzione.
Sicurezza e incolumità
RISCHIO: HIGHUn file .run è codice eseguibile: eseguirlo avvia comandi di shell arbitrari con i tuoi privilegi, e molti installer richiedono sudo, ottenendo i permessi di root. Ciò rende un .run dannoso o manomesso pericoloso quanto qualsiasi altro installer. Regole di sicurezza: (1) scarica i file .run solo dal fornitore ufficiale tramite HTTPS (es. NVIDIA, il sito dell'SDK); (2) trattandosi di uno script di shell, leggi la sua intestazione in un editor e usa «./file.run --list» / «--check» per ispezionare e verificare il checksum prima dell'esecuzione; (3) non eseguire mai tramite pipe o con sudo un .run di cui non ti fidi. Il wrapper Makeself verifica autonomamente l'integrità (CRC/MD5/SHA256) contro la corruzione, ma ciò non garantisce l'affidabilità della fonte.
Dettagli del formato
in sintesiProgrammi che aprono file RUN
Dettagli tecnici
specifiche approfondite| Tipo di formato | Script di shell eseguibile con un payload binario compresso aggiunto dopo il corpo dello script (intestazione in testo semplice + coda binaria) |
| Tipo MIME | application/x-makeself; anche application/x-shellscript, text/x-sh, o application/octet-stream |
| Firma del file | Inizia con lo shebang #!/bin/sh (hex 23 21 2F 62 69 6E 2F 73 68) all'offset byte 0; nessun numero magico binario fisso |
| Codifica | Intestazione script di shell in testo semplice UTF-8 seguita da un archivio binario compresso aggiunto senza un separatore fisso |
| Compressione | gzip per impostazione predefinita; Makeself supporta anche bzip2, xz, zstd, lzo o payload non compressi |
| Struttura del contenitore | Stub di shell che decomprime un archivio TAR incorporato in una directory temporanea, quindi esegue un comando di configurazione integrato |
| Verifica dell'integrità | Checksum CRC sempre incorporato nell'intestazione Makeself; opzionale MD5 o SHA-256; autoverificato prima dell'inizio dell'estrazione |
| Esecuzione | chmod +x file.run && ./file.run, oppure sh file.run - non è richiesto alcun gestore di pacchetti o strumento di installazione |
| Ispeziona / estrai senza eseguire | ./file.run --list per elencare i contenuti; ./file.run --noexec --target DIR per estrarre il payload senza eseguire il setup |
| Generatore dominante | Makeself di Stéphane Peter (makeself.io); il numero di versione di Makeself è incorporato nell'intestazione dell'archivio |
| Piattaforme associate | Linux (target primario); supportati anche BSD, Solaris e altri sistemi Unix-like |
| Dimensione tipica del file | Da poche centinaia di KB a diversi GB; i grandi installer di driver o SDK (NVIDIA, CUDA, giochi GOG) possono superare i 10 GB |
| Supporto crittografia | Nessuno per impostazione predefinita; Makeself supporta opzionalmente payload crittografati con GPG per la distribuzione sicura |
| Offset del payload | Il payload TAR interno non ha un offset fisso - lo script di shell lo calcola dinamicamente al runtime dai metadati dell'intestazione incorporata |
| Rilasciato | Makeself first released ~1998; the .run convention popularized by NVIDIA/3rd-party Linux installers (2000s) |
| Ultima versione | Makeself 2.7.1 (2025) |
| Standard aperto | Sì · royalty-free |
| Specifica | makeself.io |
Conversioni RUN
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file RUN.