[Çözüldü] rsync log dosyası oluşturma sorunu

Başlatan halimasa, 03 Haziran 2020 - 12:32:54

« önceki - sonraki »

0 Üyeler ve 3 Ziyaretçi konuyu incelemekte.

halimasa

https://forum.ubuntu-tr.net/index.php?topic=62121.0 şurada bir başlık açmıştım. Linux ta bulunan dosyalarımı usb diske yedeklerken rsync komutunu kullanıyorum. Ancak kopyalama işlemi bittiğinde hangi dosyaları kopyaladı kopyalamadı bunları görebilmek için bir log dosyası oluşturmasını nasıl sağlayabilirim?


haiko

sudo dd bs=4M if=<Path-To-ISO> of=/dev/sd<X>
conv=fdatasync status=progress


gibi bir olaydan bahsediyorsunuz zannedersem..
Koşuyorum dikenlerin üstünde...

halimasa

Alıntı yapılan: haiko - 03 Haziran 2020 - 15:21:37
sudo dd bs=4M if=<Path-To-ISO> of=/dev/sd<X>
conv=fdatasync status=progress


gibi bir olaydan bahsediyorsunuz zannedersem..

Yardımınız için teşekkür ederim. ubuntuda çok yeniyim, o sebeple benim sorunum ile mi ilgili tam anlayamadım. Bu çözümünüzü nasıl uygulayacağım.

Biraz açarak anlatmaya çalışayım.
Windows .bat uygulamamda şu kodlar var.
http://ROBOCOPY C:\HDATA G:\HDATA /E /MIR /XO /W:1 /R:5 /SEC /LOG:"C:\LOG_Degisenler.txt"
Burada c de ki dosyaları değişen var mı kontrol ediyor, silinen var mı kontrol ediyor. sonra g sürücüsünde değişen dosyaları silinen dosyaları kontrol edip c ile g deki veriyi aynı yapıyor. eşitliyor. sonra yapılanları hangi dosyalar silindi hangileri güncellendi, nekadar veri transferi yapıldı. kaç mb tuttu gibi verileri C: İÇİNDE LOG_Degisenler.txt dosyasına yazıyor bende oradan kontrol ediyorum. yapılanları

Aynı kodu linux ta şöyle kullanıyorum.
http://rsync -a --del /home/mnh/Masaüstü/test /media/mnh/'DATA HDD'/

ama burada yapılanları yani silinen ve eklenenleri tutan bir log dosyası için kod ekleyemedim. Kodun sonuna ne eklemeliyim ki logları kolay bir yerde görüntüleyip ne yapıldığını anlayabileyim.

mhmtkrktr

# -v , --verbose
Terminalde takip etmek istiyorsan -v seçeneğini kullanabilirsin.
Dosyaya yazmak istiyorsan yine -v seçeneğini ekleyip çıktıyı dosyaya yönlendirirsin. (>)
örnek
rsync -v -[seçenekler] /kaynak /hedef > log.file

halimasa

Alıntı yapılan: mhmtkrktr - 03 Haziran 2020 - 15:40:31
# -v , --verbose
Terminalde takip etmek istiyorsan -v seçeneğini kullanabilirsin.
Dosyaya yazmak istiyorsan yine -v seçeneğini ekleyip çıktıyı dosyaya yönlendirirsin. (>)
örnek
rsync -v -[seçenekler] /kaynak /hedef > log.file

Yardımınız için teşekkür ederim. verdiğiniz kodu şöyle kullandım
rsync -a --del -v /home/mnh/Masaüstü/test /media/mnh/'DATA HDD'/ log.file

usb diskimdeki tüm dosya isimlerini uç birimde gördüm umarım dosyalarda bir işlem yapmamıştır. normalde masaüstündeki test klasörü içindeki tüm dosyaları medya dosyası data hdd içindeki test klasörünün içine atacaktı ve logu yazacaktı ama data hdd içindeki (ana dizindeki) tüm dosyaların isimlerini sırasıyla aşağıya doğru akıyorken gördüm uç birimi kapatıp işlemi sonlandırdım.

mhmtkrktr

#5
Tek yönlendirme;
> = dosya yoksa oluştur ve çıktıyı dosyaya yaz, var ise içeriği temizle ve çıktıyı dosyaya yaz

Çift yönlendirme;
>> = dosya yoksa oluştur ve çıktıyı dosyaya yaz, var ise içeriği temizleme, çıktıyı eski içeriğe ekle

İhtiyacına göre yukardakilerden birini kullanabilirsin.

Alıntı Yap> log.file


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 03 Haziran 2020 - 15:59:33

Veya duruma göre de yönlendirebilirsin.

1> log.file
sadece normal çıktıyı yönlendir

2> log.file
sadece hata olursa yönlendir

&> log.file
Ekrana basma , tüm çıktıyı yönlendir

halimasa

#6
Alıntı yapılan: mhmtkrktr - 03 Haziran 2020 - 15:55:46
Tek yönlendirme;
> = dosya yoksa oluştur ve çıktıyı dosyaya yaz, var ise içeriği temizle ve çıktıyı dosyaya yaz

Çift yönlendirme;
>> = dosya yoksa oluştur ve çıktıyı dosyaya yaz, var ise içeriği temizleme, çıktıyı eski içeriğe ekle

İhtiyacına göre yukardakilerden birini kullanabilirsin.

Alıntı Yap> log.file


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 03 Haziran 2020 - 15:59:33

Veya duruma göre de yönlendirebilirsin.

1> log.file
sadece normal çıktıyı yönlendir

2> log.file
sadece hata olursa yönlendir

&> log.file
Ekrana basma , tüm çıktıyı yönlendir
Çok teşekkür ederim. deneyip bilgi vereceğim.

denedim ancak aşağıdaki gibi bir hata verdi
rsync -v -a --del /home/mnh/Masaüstü/test /media/mnh/'DATA HDD'/ &> log.file
bash: log.file: Bir dizin

mhmtkrktr

#7
Hiç bir fikrim yok  :)
rsync -v -a --del ~/archlive/out/archaide-03.06.20-x86_64.iso ~/Masaüstü  &>log.file
cat log.file

Alıntı Yapsending incremental file list
archaide-03.06.20-x86_64.iso

sent 999,537,002 bytes  received 35 bytes  285,582,010.57 bytes/sec
total size is 999,292,928  speedup is 1.00


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 03 Haziran 2020 - 17:01:48

log.file isminde bir dizin oluşturmuş olabilir misin?
ls -l $(pwd)/log.file

Bu arada log.file olması şart değil. Kendi belirlediğin herhangi bir isim olabilir. Uzantısı olması da gerekmez. örn: &>rsync_sonucu

erenseymen

@mhmtkrktr zaten gerekli yardımı yapmış. Yine de komutu biraz değiştirip tekrar yazayım. Alttaki şekilde dener misin? Masaüstünde rsync_log.txt dosyası oluşması lazım.

rsync -v -a --del /home/mnh/Masaüstü/test /media/mnh/'DATA HDD'/ &>> /home/mnh/Masaüstü/rsync_log.txt

halimasa

Alıntı yapılan: erenseymen - 04 Haziran 2020 - 13:13:11
@mhmtkrktr zaten gerekli yardımı yapmış. Yine de komutu biraz değiştirip tekrar yazayım. Alttaki şekilde dener misin? Masaüstünde rsync_log.txt dosyası oluşması lazım.

rsync -v -a --del /home/mnh/Masaüstü/test /media/mnh/'DATA HDD'/ &>> /home/mnh/Masaüstü/rsync_log.txt
Hem @mhmtkrktr hem size çok teşekkür ederim, sorunumu yardımlarınızla çözdüm.
sending incremental file list
test/
test/Adsız 1.odt
test/2/
test/yeni/

sent 8,821 bytes  received 51 bytes  5,914.67 bytes/sec
total size is 8,616  speedup is 0.97

erenseymen

Olayı biraz daha ileri götürelim :)

Eğer komutu her koştuğunuzda, dosya isminde tarih ve saat içeren ayrı log dosyası oluşmasını istiyorsanız:
rsync -v -a --del /home/mnh/Masaüstü/test /media/mnh/'DATA HDD'/ &> "/home/mnh/Masaüstü/rsync_log ($(date +"%F %T")).txt"

halimasa

Alıntı yapılan: erenseymen - 04 Haziran 2020 - 14:45:37
Olayı biraz daha ileri götürelim :)

Eğer komutu her koştuğunuzda, dosya isminde tarih ve saat içeren ayrı log dosyası oluşmasını istiyorsanız:
rsync -v -a --del /home/mnh/Masaüstü/test /media/mnh/'DATA HDD'/ &> "/home/mnh/Masaüstü/rsync_log ($(date +"%F %T")).txt"
Teşekkür ederim. (Verilen yanıtlara geri bildirim yapmayı seviyorum. İnsanlar değer verip sorularıma cevap veriyor, forumda verilen yanıtlara beğen işareti koyabileceğimiz bir teşekkür butonu olsa güzel olurdu. Bu özellik var mıdır? Yoksa yapılabilir mi öneri kısmı varsa oraya yazacağım)