Это был аргумент в пользу добавления ограничения в правила безопасности Oracle (, и оно будет применимо ко всем системам ):
.
Limiting simultaneous user logins can insulate the system from denial of service problems caused by excessive logins. Automated login processes operating improperly or maliciously may result in an exceptional number of simultaneous login sessions.
Из технического руководства по внедрению безопасности Oracle Linux 6 Правило IDSV -65325r2 _правило
Вы можете использовать это как основу для ваших резервных копий. Это требует, чтобы исходная и целевая файловые системы могли обрабатывать жестко -связанные файлы, и чтобы вы не возражали против того, чтобы конечные файлы оставались жестко -связанными с рабочим каталогом между запусками. Существует зависимость от версии GNU find
для опции -printf
, которая записывает индексный дескриптор файла и относительный путь.
#!/bin/bash
# Usage: [<rsync_args...>] <src> <dst>
#
args=("$@")
src="${args[-2]}" # '.'
dst="${args[-1]}" # eg 'remote:/tmp/dest'
unset args[-1] args[-1] # Yes really
# Create the working set space
#
temp=".inodes"
mkdir -p "$src/$temp"
# Build the set of files indexed by inode
#
echo Create inodes >&2
find "$src" -path "$src/$temp" -prune -o -type f -printf "%i\t%P\0" |
while IFS= read -d '' -r line
do
inode="${line%%$'\t'*}" file="${line#*$'\t'}"
ln -f "$src/$file" "$src/$temp/$inode"
done
# Copy the index and then the full tree
#
echo Copy inodes >&2
rsync -avPR "${args[@]}" "$src/./$temp/" "$dst/"
echo Copy structure >&2
rsync -avHPR --delete-after "${args[@]}" "$src/./$temp/" "$src/./" "$dst/"
# Remove the working set on the source (not essential but you may prefer it)
#
echo Tidyup >&2
rm -rf "$src/$temp"
Если вы назовете его dsync
и поместите в свой путь, вы можете использовать его следующим образом
dsync /media/blueray/WDRed /media/blueray/WDPurple
или потенциально
dsync --info=PROGRESS2,BACKUP,DEL --backup --human-readable --inplace --delete-after --log-file=/media/blueray/WDPurple/rsync.log --backup-dir=red_rsync_bak.$(date +"%d-%m-%y_%I-%M-%S%P") --log-file-format='%t %f %o %M' --exclude='lost+found' --exclude='.Trash-1000' /media/blueray/WDRed /media/blueray/WDPurple