Задний план:
Мы используем PHP CacheLite. Чтобы иметь удобный для чтения путь к файлам кеша cache_ {hash} _ {hash}, существует символическая ссылка, которая более подробно описывает содержимое кеша.
Мы развернули новый сервер и вместо того, чтобы нагревать кеш с помощью запросов к базе данных, мы решили скопировать каталоги / файлы / символические ссылки локального кеша.
У нас было десятки миллионов файлов и символических ссылок, которые делали rsync невозможным. Мы использовали scp с некоторым успехом, но, похоже, вместо символических ссылок он создал реальные файлы. В итоге мы получили дубликаты файлов с разными именами, а не файл и соответствующую символическую ссылку.
Я создал сценарий bash для локальной замены файлов символическими ссылками после scp. Но я заметил через df, что использование диска не уменьшается, а растет. Я бы подумал, что символическая ссылка займет меньше места, чем файл. Есть ли способ вернуть пространство?
Команда, используемая для замены файла символической ссылкой
ln -sf nameofpermanentfile nameofsymlinkwhichreplacesfile