間違いだらけの備忘録

このページの内容は無保証でありこのページの内容によって直接、または間接に損害を受けられたとしても私は責任を取りません。

pdumpfs的動作をrsync sparseファイル対応

https://je1sgh.mydns.jp/je1sghblog/?p=8298

そうはいっても,rsyncを使いたいときもあります.そこで,ネット検索をすると,–sparse (-S)と–inplaceオプションを使うが,両方同時には指定できないとほとんどのサイトに書いてあります.

しかし,最新版のrsync 3.1.3では,この制限がなくなりました

めも、未検証

$ cat pdumpfs-rync.sh
#!/bin/sh
#https://dayflower.hatenablog.com/entry/20090513/1242194477

if [ $# -lt 2 ]; then
    echo "usage: $0 <SOURCE> <DESTINATION>"
    exit 1
fi  

force_trailing_slash() {
    case $1 in
        */) echo -n "$1"    ;;
        *)  echo -n "$1/"   ;;
    esac
}

SRC=`force_trailing_slash $1`
DST=`force_trailing_slash $2`

[ -d "${DST}3" ]      && rm -rf "${DST}3"
[ -d "${DST}2" ]      && mv "${DST}2" "${DST}3"
[ -d "${DST}1" ]      && mv "${DST}1" "${DST}2"
[ -d "${DST}latest" ] && mv "${DST}latest" "${DST}1"

[ -d "${DST}latest" ] || mkdir -p "${DST}latest"

#[ -d "${DST}1" ] && \      # missing --link-dest dir will be ignored
LINK_DEST="--link-dest=../1"

#https://je1sgh.mydns.jp/je1sghblog/?p=8298
echo "rsync -vvaHz --delete --sparse --inplace $LINK_DEST ${SRC} ${DST}latest/"
exec rsync -vvaHz --delete --sparse --inplace $LINK_DEST "${SRC}" "${DST}latest/"

めも、未検証

ファイルの中身に差分があるファイルだけrsyncする
https://kazmax.zpp.jp/linux/rsync_checksum.html

rsync --checksum -av source/test.txt dest/test.txt

めも、未検証

このページにはhatena以外のサービスからのコンテンツが埋め込まれています。 hatenaによりGoogle AdSense 広告が埋め込まれています。