accrocher un script à apt-get

J'ai /tmp sur une partition séparée, et monté avec noexec . J'utilise Debian.

L'installation de certains packages échoue car les scripts de post-installation de certains packages doivent s'exécuter à partir de /tmp .

Je me demandais s'il serait possible de «hooker» un script simple à apt-get , qui serait exécuté à chaque fois avant apt-get , et remount /tmp à exec . Et de même, noexec à noexec après que apt-get ait terminé.

Vous pouvez utiliser le système de hook de dpkg pour le remonter – mettez ceci dans /etc/apt/apt.conf.d/00exectmp :

 DPkg::Pre-Invoke {"mount -o remount,exec /tmp";}; DPkg::Post-Invoke {"mount -o remount /tmp";}; 

Mumble, vous pouvez simplement replace apt-get par un de vos scripts.

Déplacer apt-get real-apt-get et, ensuite, créer un script appelé apt-get comme celui-ci:

 #!/bin/sh mount -o remount -o ... /tmp real-apt-get "$@" mount -o remount -o ... -o noexec /tmp 

En tout cas, je n'aime pas cette solution. Il est plus facile de changer la variable d'environnement de directory temporaire lorsque vous en avez besoin. Quelque chose comme (style sh):

 mkdir /root/mytmp TMPDIR=/root/mytmp export TMPDIR apt-get ... rm -rf /root/mytmp 

De cette façon, apt-get utilisera /root/mytmp comme /root/mytmp temporaire. Pas besoin de changer le système.