2012-02-16 13 views
21

Ho sviluppato pacchetti debian e ho errori di sintassi nel mio post/pre-script (postrm nel mio caso). Installare il pacchetto con successo, ma ora non riesco a rimuovere questo pacchetto:dpkg: come ignorare l'errore nei post/pre-script

/var/lib/dpkg/info/blablabla.postrm: 11: Syntax error: ";;" unexpected 
dpkg: error processing blablabla (--remove): 
subprocess installed post-removal script returned error exit status 2 

Come può ignorarlo e rimuovere completamente il pacchetto?

risposta

26

Beh, personalmente non ne ho idea. Se --force-all non funziona, vorrei semplicemente modificare /var/lib/dpkg/info/blablabla.postrm per farlo bene. Stai rimuovendo il pacchetto, quindi non sarai preoccupato per la sceneggiatura che verrà presto rimossa, vero?

+3

Grazie. Non prova la tua strada, la risolvo con creare un pacchetto con lo stesso nome e lo script postrm vuoto corretto e installarlo. Durante l'installazione di dpkg prova a rimuovere il mio pacchetto errato e ad avere un errore, quindi tenta di usare postrm dal mio nuovo pacchetto e non ha errori. – Reddy

+0

Nel mio caso era '/ var/lib/dpkg/info/blablabla.prerm' –

+0

@JeroenVermeulenBVBA La procedura per la disinstallazione è, in primo luogo, eseguire blablabla.prerm, quindi rimuovere i file dal pacchetto ed infine eseguire blablabla.postrm. Il comando può essere contenuto in uno degli script, a seconda che debba essere eseguito prima di rimuovere i file o dopo di esso. – wangguoqin1001