将脚本挂接到 apt-get

将脚本挂接到 apt-get

我有/tmp一个单独的分区,并安装了noexec.我正在使用Debian。

某些软件包安装失败,因为某些软件包的安装后脚本需要从/tmp.

我想知道是否可以将一个简单的脚本“挂钩”到apt-get,该脚本将在之前每次运行apt-get,然后重新安装/tmpexec。同样,完成noexec后重新安装它。apt-get

答案1

您可以使用dpkg钩子系统重新安装它 - 将其放入/etc/apt/apt.conf.d/00exectmp

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

答案2

Mumble,你可以简单地apt-get用你自己的脚本替换。

转到apt-getreal-apt-get创建一个脚本,apt-get如下所示:

#!/bin/sh

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

无论如何,我不喜欢这个解决方案。当需要时更改临时目录环境变量会更容易。像(sh风格)的东西:

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

这样 apt-get 将用作/root/mytmp临时目录。无需更改系统。

相关内容