Я бы сделал это с помощью цикла оболочки:
for dir in example.com/*; do
prefix=${dir##*/}
cp "$dir"/orm-mysql/build/conf/"$prefix"-conf.live.php \
example_dev.com/"$prefix"/orm-mysql/build/conf/$1-conf.live.php
done
Это выдаст сообщение, если целевой каталог не существует, но будет работать как положено, если он существует. Если вы хотите избежать жалоб, используйте это:
for dir in example.com/*; do
prefix=${dir##*/}
target=example_dev.com/"$prefix"/orm-mysql/build/conf/
if [ -d "$target" ]; then
cp "$dir"/orm-mysql/build/conf/"$prefix"-conf.live.php "$target"
fi
done
Я думаю, что самый простой вариант для вас — собрать версию Debian 9sudo
:
apt-get install devscripts libpam0g-dev libldap2-dev libsasl2-dev libselinux1-dev autoconf autotools-dev bison flex libaudit-dev
dget -u http://security.debian.org/pool/updates/main/s/sudo/sudo_1.8.19p1-2.1+deb9u3.ds
cd sudo-1.8.19p1
debian/rules binary
Если тесты не пройдены (они провалились для меня на /dev/console
), отключите их и соберите заново:
sed -i '/build-simple check/d' debian/rules
debian/rules binary
В конечном итоге вы получите пакеты в родительском каталоге, вы можете установить оттуда те, которые вам нужны, с помощью dpkg -i
.
Как только все это будет сделано, вы можете удалить зависимости сборки -:
apt-get purge devscripts libpam0g-dev libldap2-dev libsasl2-dev libselinux1-dev autoconf autotools-dev bison flex libaudit-dev
apt-get --purge autoremove
То же самое можно сделать, используя последние исходники нестабильной версии Debian, как предложил Артём:
apt-get install devscripts libpam0g-dev libldap2-dev libsasl2-dev libselinux1-dev autoconf bison flex libaudit-dev zlib1g-dev
dget -u https://deb.debian.org/debian/pool/main/s/sudo/sudo_1.9.5p2-1.dsc
cd sudo-1.9.5p2/
debian/rules binary
(Традиционно можно было бы использовать apt-get build-dep
и dpkg-buildpackage -uc -us
, но здесь это не сработает без дополнительных изменений в пакете — у него есть некоторые зависимости сборки -, которые не могут быть удовлетворены в Wheezy, но пакет прекрасно строится без них.)
Я бы посоветовал просто собрать и установить пакет из Debian Unstable:
Исходные файлы:https://packages.debian.org/source/unstable/sudo
Создание пакета:https://www.debian.org/doc/manuals/maint-guide/build.en.html
Причина, по которой я предлагаю последнюю и самую лучшую, заключается в том, что :новый пакет содержит новые удобные функции, например. поддержка /etc/sudo.d/
и, возможно, другие исправленные уязвимости, о которых вы еще не знаете.