OT: automaticke zalohovani medii
josef dvoracek
josef.dvoracek na gmail.com
Pondělí Červen 11 22:02:13 CEST 2018
hmm, myslím, že váš skript kompletně vyignoruje symlinky, a zahodí metadata
všech souborů - což samozřejmě při určitých užitích může dávat smysl.
Chtěl jsem se spíše zeptat - při použití dd na kopírování pozorujete
výrazně vyšší rychlost než při rsyncu? Občas se nachomýtnu k kopírování
opravdu většího množství dat, a starý dobrý rsync většinou poskytuje
dostatečně dobré výsledky, takže mě Vaše metoda kopírování celkem zaujala.
JD
2018-06-10 21:14 GMT+02:00 Jaroslav Lukesh <lukesh na seznam.cz>:
> Dobrý den,
>
> udělal jsem si skript, který po strčení média do mechaniky toto
> automaticky zkopíruje, třeba se vám bude hodit. Po zkopírování ho na
> chvilku vysune a pak zase zajede. Zatím nejsou ošetřené vadné média a chyby
> čtení. To tam dodělám, až na nějakou chybu narazím.
>
> Divoké kopírování přes DD tam je proto, že přes CP trvá řádově 10x až 100x
> déle (nekecám, až tak MS zkurvil linux)
>
> Do /etc/crontab přidejte tento řádek:
>
> * * * * * root /opt/AUTO_DVD_COPY
>
> ===== SKRIPT /opt/AUTO_DVD_COPY ========
> #!/bin/bash
> # POSTUP kopírování z CD - tento skript bude spouštěný každou minutu
>
> OUTDIR="/media/usb0/DVD_COPY"
> STATUS="$OUTDIR/status_disk_archiv"
> touch $OUTDIR/ZKOPIROVANE.log
>
> if [ "`mount|grep "/dev/sr0 on /mnt/dvd"`" ]
> then # v 2. běhu se označí že je namontováno
> echo "NAMONTOVANO"
> touch $STATUS.MNT
> CD_ID=`blkid /dev/sr0 | cut -d"\"" -f 2`
> else # v prvním běhu se namontuje
> rm -f $STATUS.MNT
> echo "MONTUJI"
> mount -o iocharset=utf8 /dev/cdrom /mnt/dvd >/dev/null
> fi
>
> # a pokud je namontováno, ověří CD a spustí kopírování
> if [ ! -f $STATUS.COPY ]; then
> if [ -f $STATUS.MNT ]; then
> if [ "`cat $OUTDIR/ZKOPIROVANE.log | grep $CD_ID`" ]; then
> echo "CD je již zkopírované"
> #umount /mnt/dvd
> else
> echo "CD je připraveno"
> touch $STATUS.COPY
> echo "$CD_ID" > $STATUS.CD_ID # řádek: /dev/sr0:
> UUID="2013-04-09-23-38-27-00" LABEL="DVD" TYPE="iso9660"
> mkdir "$OUTDIR/$CD_ID"
> echo "$CD_ID"
> echo "KOPIRUJI"
> # cp -aR /mnt/dvd/ "$OUTDIR/$CD_ID"
>
> # kopie prázdné adresářové struktury
> rsync -a --include '*/' --exclude '*' "/mnt/dvd/" "$OUTDIR/$CD_ID"
>
>
> find "/mnt/dvd" -type f | awk "/^\//{print\"\"substr(\$0,10)}" |
> while read item
> do
> echo "$item"
> dd if="/mnt/dvd/$item" of="$OUTDIR/$CD_ID/$item" bs=32M
> iflag=nonblock oflag=nonblock
> done
>
>
>
> echo "VSE HOTOVO, VYSUNOUT"
> eject /dev/sr0
> echo "`cat $STATUS.CD_ID` `date`" >> $OUTDIR/ZKOPIROVANE.log
> rm -f $STATUS.MNT
> rm -f $STATUS.COPY
> rm -f $STATUS.CD_ID
> fi
> fi
> else
> echo "KOPIROVANI SE JIZ PROVADI"
> fi
>
>
>
> ===== KONEC ==========
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20180611/fb5d6b73/attachment.html>
Další informace o konferenci Hw-list