Rsync neden ana dizini atlıyor?


47

Uzak bir dağıtım derleme komut dosyasını sınamak için yerel olarak (Windows makinede) uzak bir sunucuya (osx kutumda) rync kullanmaya çalışıyorum. Daha önce sadece 2 linux sunucu arasında rsync yaptım, fakat şimdi sorun yaşıyorum. İşte çıktı:

$ rsync -v -e ssh myuser@10.86.83.11:/Library/WebServer/sites/staging/app1/ ./export

skipping directory /Library/WebServer/sites/staging/app1/.

sent 8 bytes  received 13 bytes  3.82 bytes/sec
total size is 0  speedup is 0.00

$ 

veya

$ rsync -avz -e ssh myuser@10.86.83.11:/Library/WebServer/sites/staging/app1/ ./export

receiving file list ... done
./

sent 26 bytes  received 68 bytes  17.09 bytes/sec
total size is 0  speedup is 0.00


$ 

uzak dışa aktarma dizini 4 alt dizine ve daha sonra bunların her birinde bir sürü dosyaya sahipken uzak app1 dizini boştur

Yanıtlar:


64
rsync -v -e ssh myuser@10.86.83.11:/Library/WebServer/sites/staging/app1/ ./export

Onu -rveya gibi özyinelemeli moda koymak için hiçbir seçenek vermediniz -a.

uzak dışa aktarma dizini 4 alt dizine ve daha sonra bunların her birinde bir sürü dosyaya sahipken uzak app1 dizini boştur

Buradaki seçeneklerin arkasında geriye doğru var mı? Komut olmalı rsync [source] [DESTINATION]. Eğer app1 dizini boşsa ve boş bir dizini kopyalamaya çalışıyorsanız, o zaman yararlı bir şey yapmayacaksınız.

Belki bunun yerine böyle bir şeye ihtiyacınız vardır?

rsync -avz ./export/  myuser@10.86.83.11:/Library/WebServer/sites/staging/app1/ 

Ayrıca:

  • Neredeyse her zaman rsync bulunan dizinlere bir eğik çizgi eklemelisiniz.
  • Son 5-10 yıl içerisinde piyasaya sürülen hemen hemen her rsync sürümü, ssh kullanmak için varsayılan ayarlara sahiptir. Muhtemelen belirtmek zorunda değilsiniz -e ssh.

2
Vay ... bu oldukça utanç verici. Evet kaynak ve dest karıştırdım ...
chrisan

1
+1 "Neredeyse her zaman rsync bulunan dizinlere eğik çizgi eklemelisiniz."
Kedi

Mac'te -r bayrağını kullanıyor gibi görünüyor, ancak linux'da her zaman -R ("büyük R") kullanıyorum
Adam F

@Zoredache Neden neredeyse?
Nikhil

3

Komutunuza aşağıdaki seçeneği ekleyerek, rsync'lerin bir günlük dosyası çıktısı oluşturma özelliğini etkinleştirmeyi deneyin.

--log-file=/path/to/log.file

Ekstra bir -vseçenek ekleyerek ayrıntı ayrıntılarını da artırabilirsiniz , örneğin -avvz, man sayfasına göre, 'İki-v seçenekleri size hangi dosyaların atlandığı ve sonunda biraz daha fazla bilgi hakkında bilgi verecektir.'

Dönen bu bilgi sorunun tanımlanmasına yardımcı olmazsa, lütfen sorunuzu düzenleyin ve ek çıktılar ekleyin.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.