Yerel bir debian deposunu güncel tutmak için rsync (1) kullanıyorum . Son zamanlarda, depolamak için kullandığım disk alanı azalmaya başladı, bu yüzden bazı dizinleri benzer boyuttaki bir diske taşımama izin vermek için simgeleri kullanmaya karar verdim.
Ne yazık ki, rsync sembol bağlantılarını siliyor ve neredeyse tam diski yeniden dolduruyor gibi görünüyor. Biraz arama yaptıktan sonra, --keep-dirlinks
sorunumu düzeltmek için özel yapılmış gibi görünen rsync seçeneğini keşfettim .
Sadece öyle değil. Hedefteki semboller hala siliniyor.
İşte benim rsync komutu:
rsync --recursive --keep-dirlinks --links --hard-links --times --verbose \
--delete --delete-excluded $EXCLUDE $SOURCE_EXCLUDE \
$RSYNC_HOST::$RSYNC_DIR/pool/ $TO/pool/
EXCLUDE'lar, ilgimi çekmediğim çok sayıda mimariyi ortadan kaldırmak için genişliyor --exclude binary-alpha/ --exclude disks-alpha ...
. Rsync başlatılmadan önce, havuz dizinim şöyle görünür:
lrwxrwxrwx 1 root root 23 2014-09-22 13:58 contrib -> /u2/debian/pool/contrib
drwxrwxr-x 62 root root 4096 2012-04-09 03:02 main
lrwxrwxrwx 1 root root 24 2014-09-22 13:58 non-free -> /u2/debian/pool/non-free
Bir kez rsync başladı, ben bunu elde:
receiving incremental file list
deleting non-free
deleting contrib
./
contrib/
contrib/a/
Ve böylece, semboller dosyalarla dolu dizinlerle değiştirilir.
Diğer rsync seçeneklerinden bazıları karışıyor --keep-dirlinks
mu? Hangilerini birleştiremiyorum? Yoksa sorunuma neden olan seçeneklerin sırası mı?