Вы не должны создавать файл tar прежде, чем отправить его. Можно сделать его на лету:
cd /source/dir
tar -cf - . | ssh 'cd /destination/directory && tar -xf -'
Это действительно требует, чтобы удаленный сервер принял соединения оболочки ssh, не только scp соединения. В теории возможно отправить произвольные деревья файла удаленной стороне, которые не соответствуют ничему как локальная файловая структура, но я не знаю ни о каком существующем инструменте, чтобы сделать это.
Если символьные ссылки являются проблемой, можно сделать копию дерева каталогов, которое не включает символьные ссылки, и это израсходовало незначительное пространство, предполагая, что исходное дерево находится в файловой системе, которая поддерживает жесткие ссылки (так любая собственная файловая система Unix, или NTFS, но не FAT). Я принимаю утилиты GNU здесь:
cd /source/dir
mkdir ../regular-files-only
cp -al . ../regular-files-only
find ../regular-file-only \! -type f \! -type d -delete
Вы могли также использовать sftp. sftp -r
не переходит по символьным ссылкам, в отличие от этого scp -r
.
Лучший способ состоит в том, чтобы, вероятно, создать Ваш собственный емкостно-резистивный сценарий, который Вы будете использовать вместо "официальный один".
Иначе Ваш емкостно-резистивный сценарий, вероятно, включает внешний файл "конфигурации" при проверке его. Включение может быть похожим на это:
. /etc/default/mydaemon-config
Так, чтобы можно было отредактировать /etc/default/mydaemon-config
и сделайте что-то как:
export LD_PRELOAD=whateveryouwant
Но будьте осторожны, это не может быть тем, что Вы хотите, потому что каждый процесс, запущенный со сценария, будет иметь это конфигурацией LD_PRELOAD.
Иначе исходный сценарий может иметь что-то как:
DAEMON=/usr/bin/mydaemon
Таким образом, Вы смогли изменять его от /etc/default/mydaemon-config
с:
DAEMON="LDPRELOAD=whateveryouwant $DAEMON"
Это зависит от Вашего исходного емкостно-резистивного сценария, который мы не имеем, таким образом, это - только предположение...
Так или иначе это все обходные решения, и по моему скромному мнению, необходимо скорее искать решение избегать использования LD_PRELOAD во-первых.