나는 리눅스 클라이언트와 리눅스 서버를 가지고 있습니다. 둘 다 우분투 16.04입니다.
클라이언트에서는 거의 매초마다 .txt 파일을 생성하고 이를 서버로 전송하려고 합니다. 따라서 제 질문은 이 목적에 가장 적합한 솔루션은 무엇입니까?입니다.
나는 이 스크립트를 만들었습니다:
#!/bin/bash
path="/home/path"
while true
do
for entry in "$path"/*.txt
do
if [ -f "$entry" ]
then
scp "$entry" [email protected]:/home/4lkov/Desktop/scp && rm -f "$entry"
else
echo "No files";
fi
done
sleep 1
done
그렇다면 제가 사용하고 있는 SCP는 신뢰할 수 있나요? 아니면 최선의 방법(rsync 또는 이와 유사한 방법)이 있나요?
또한 저는 sleep 1을 사용하고 있습니다. 어쩌면 감시자가 있을까요? (즉 inotifywait -m /path -e create -e moved_to |
)
답변1
스크립트는 각 파일을 영원히 반복 $path
하고 SCP 연결을 열어 매초마다 일시 중지하여 각 파일을 개별적으로 전송합니다. 이는 오버헤드가 높습니다. rsync
서버에서 클라이언트로 디렉터리를 동기화하는 대신 사용하는 것이 더 좋습니다 .