dpkg-architecture
и dpkg --print-architecture
работают для меня.
/root# chroot /f/32
{3}/# uname -m
x86_64
{3}/# file /bin/ls
/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=152184668fe2d58ef2ef49e8c40d044880f8e318, stripped
{3}/# dpkg --print-architecture
i386
{3}/# dpkg-architecture
DEB_BUILD_ARCH=i386
DEB_BUILD_ARCH_BITS=32
DEB_BUILD_ARCH_CPU=i386
DEB_BUILD_ARCH_ENDIAN=little
DEB_BUILD_ARCH_OS=linux
DEB_BUILD_GNU_CPU=i586
DEB_BUILD_GNU_SYSTEM=linux-gnu
DEB_BUILD_GNU_TYPE=i586-linux-gnu
DEB_BUILD_MULTIARCH=i386-linux-gnu
DEB_HOST_ARCH=i386
DEB_HOST_ARCH_BITS=32
DEB_HOST_ARCH_CPU=i386
DEB_HOST_ARCH_ENDIAN=little
DEB_HOST_ARCH_OS=linux
DEB_HOST_GNU_CPU=i586
DEB_HOST_GNU_SYSTEM=linux-gnu
DEB_HOST_GNU_TYPE=i586-linux-gnu
DEB_HOST_MULTIARCH=i386-linux-gnu
DEB_TARGET_ARCH=i386
DEB_TARGET_ARCH_BITS=32
DEB_TARGET_ARCH_CPU=i386
DEB_TARGET_ARCH_ENDIAN=little
DEB_TARGET_ARCH_OS=linux
DEB_TARGET_GNU_CPU=i586
DEB_TARGET_GNU_SYSTEM=linux-gnu
DEB_TARGET_GNU_TYPE=i586-linux-gnu
DEB_TARGET_MULTIARCH=i386-linux-gnu
Учитывая это, вам, вероятно, следует заставить программы в chroot думать, что они работают на 32-битной системе. Вы можете сделать это, запустив их с правильной индивидуальностью. Утилита setarch
(часть util-linux
) делает это, или просто
linux32 chroot /path/to/chroot
Если вы установили chroot с помощью schroot, объявление личности как linux32
в определении chroot позаботится об этом.
.*$
. /etc/logcheck/violations.d
и /etc/logcheck/cracking.d
на соответствие шаблонам, эти каталоги имеют приоритет над /etc/logcheck/ignore.d
. egrep -f /etc/logcheck/DIR/FILE
— хороший инструмент для проверки ваших правил.
Я просто добавил эту строку в файл /etc/rsyslog.conf и перезапустил его:
if ($msg contains "rsyslogd was HUPed") then stop
С меня достаточно.