conecta um script ao apt-get

17

Eu tenho /tmp em uma partição separada e montado com noexec . Eu estou usando o Debian.

A instalação de alguns pacotes falha, porque os scripts de pós-instalação de alguns pacotes precisam ser executados a partir de /tmp .

Eu queria saber se seria possível "enganchar" um script simples em apt-get , que seria executado toda vez antes de apt-get e remontar /tmp to exec . E da mesma forma, remonte para noexec após apt-get terminar.

    
por user1968963 18.05.2013 / 15:52

2 respostas

25

Você pode usar o sistema de gancho de dpkg para remontá-lo - coloque isso em /etc/apt/apt.conf.d/00exectmp :

DPkg::Pre-Invoke {"mount -o remount,exec /tmp";};
DPkg::Post-Invoke {"mount -o remount /tmp";};  
    
por 18.05.2013 / 16:29
-1

Mumble, você pode simplesmente substituir apt-get por um script seu.

Mova apt-get para real-apt-get e, em seguida, crie um script chamado apt-get como este:

#!/bin/sh

mount -o remount -o ... /tmp
real-apt-get "$@"
mount -o remount -o ... -o noexec /tmp

De qualquer forma, não gosto dessa solução. É mais fácil alterar a variável de ambiente do diretório temporário quando você precisar. Algo parecido com (estilo sh):

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

Desta forma, o apt-get usará /root/mytmp como diretório temporário. Não há necessidade de mudar o sistema.

    
por 18.05.2013 / 16:13

Tags