리눅스
rsync
명령은 강력한 파일 복사 및 폴더 동기화 도구입니다. 다음은 자신의 시스템에 잘 활용할 수있는 10 가지 일반적인 사용 사례입니다.
RSYNC 도구
그만큼
rsync
도구는 두 컴퓨터간에 파일과 디렉토리를 복사합니다. a
정교한 알고리즘
디렉토리 트리를 스캔하여 대상 컴퓨터에 존재하지 않는 소스 컴퓨터에서 파일을 찾습니다. 이 파일은 대상 컴퓨터로 전송됩니다. 무엇을 만드는 것
Rync
그래서 영리한 조각의
기존의
파일이 수정되었으며
변경된 부분
.
당신이 사용할 수있는
rsync
하드 드라이브의 다른 위치에 파일을 복사, 동일한 컴퓨터의 다른 하드 드라이브,
외부 연결 USB 드라이브
또는 다른 네트워크 접근 가능한 위치.
게다가
rsync
선택적으로 기호 링크, 하드 링크 및 파일을 보존 할 수 있습니다.
메타 데이터
파일 소유권, 권한 및 액세스 시간과 같은 이 모든 기능을 지원하기 위해
rsync
많은 옵션이 있으며 모두 알아내는 데 시간이 걸립니다. 시작하는 데 도움이되는 10 가지 예제를 수집했습니다. 우리는 이미 백업을하는 것에 대해 글을 썼습니다
rsync
우리는 여기서 다른 용도에 집중하고 있습니다.
모든 옵션 모두에 대해
rsync
명령은 간단합니다. 소스, 대상 및 사용하려는 옵션을 제공해야합니다. 당신은 아마 그것을 찾을 것입니다
rsync
이미 Linux 컴퓨터에 설치되어 있습니다. 모든 테스트 기계에 설치되어 있지만 그렇지 않은 경우 배포판의 저장소에있을 것입니다.
1. 파일을 다른 디렉토리로 복사합니다
다음은 우리를 갈 수있는 간단한 예입니다. "Project-Files"디렉토리에서 "문서"디렉토리에 파일을 복사 할 예정입니다. 우리는 두 가지 옵션을 사용하고 있습니다
-ㅏ
(아카이브) 옵션 및
-V
(Verbose) 옵션. 장점 옵션이 말합니다
rsync
그것이 무엇을하는지 설명하기 위해. 그만큼
보관소
옵션은 파일 소유권과 곧 살펴볼 기타 항목을 보존합니다.
사용
ls
"문서"폴더에서 파일이 복사 된 것으로 나타났습니다.
하는 동안
rsync
작동 중이며 파일은 복사 할 때 나열됩니다. 들었다:
- 전송 된 바이트 수.
-
수신 된 바이트 수. 파일 전송이 발생하기 전에
rsync어떤 파일을 전송 해야하는지 알아 내야합니다. 이를 위해서는 대상의 파일에 대한 일부 정보를 검색해야합니다.rsync. 이 정보는 수신 된 바이트에 포함되어 있습니다. - 전송 속도.
- 복사 된 파일의 총 크기.
- "속도를 높이십시오." 이것은 총 크기의 비율을 전송 및 수신 바이트의 합으로 나눈 값입니다. 이 숫자가 높을수록 전송이 더 효율적입니다.
소스 디렉토리에서 텍스트 파일을 수정하고
rsync
명령.
이번에는 업데이트해야 할 유일한 파일은 우리가 수정 한 텍스트 파일입니다. 속도 업 수치는 이제 30,850입니다. 이것은 모든 파일을 복사하는 것보다 해당 단일 파일의 수정 된 부분을 복사하는 것이 얼마나 효율적인지입니다.
그만큼
-ㅏ
(아카이브) 옵션은 실제로 다른 옵션 모음을 나타냅니다. 모든 옵션을 사용하는 것과 동일합니다.
- 아르 자형 : 소스 디렉토리의 디렉토리 트리를 통해 재귀 적으로 작업하여 대상 디렉토리로 복사하여 아직 존재하지 않는 경우 작성하십시오.
- 엘 : Symlinks를 Symlinks로 복사하십시오.
- 피 : 파일 권한을 보존하십시오.
- 티 : 파일 수정 시간을 보존하십시오.
- g : 그룹 권한을 보존하십시오.
- 영형 : 파일 소유권을 보존하십시오.
- 디 : 특수 파일과 장치 파일을 복사하십시오. 특수 파일 소켓과 선착순 파이프 (FIFOS). 장치 파일은 장치 및 의사 디바이스에 대한 액세스를 제공하는 특수 파일입니다.
이것은 자주 사용되는 조합입니다
rsync
제공
-ㅏ
(아카이브) 옵션 옵션은 모두를 호출하는 속기 방법입니다.
2. 디렉토리를 다른 디렉토리에 복사하십시오
이전을 보면
rsync
명령은 소스 디렉토리의 파일 경로에 앞으로의 전진 슬래시 "/"가 표시됩니다. 이것은 중요합니다. 그것은 말한다
rsync
복사합니다
내용물
디렉토리의. 후행 전진 슬래시를 제공하지 않으면
rsync
디렉토리를 복사합니다
그리고
내용.
이번에는 디렉토리 이름이 나열된 파일 이름에 추가됩니다. 대상 디렉토리 내부를 살펴보면 소스 폴더가 그 안에있는 파일과 함께 복사 된 것을 볼 수 있습니다.
3. 디렉토리를 다른 드라이브에 복사하십시오
동일한 하드 드라이브의 다른 위치에 파일을 복사하면 드라이브 실패 . 그 드라이브가 유령을 포기하면 해당 파일의 소스와 대상 사본을 잃어 버렸습니다. 다른 하드 드라이브에 복사하는 것은 데이터를 보호하는 훨씬 더 강력한 방법입니다. 우리가해야 할 일은 대상 드라이브로의 올바른 경로를 제공하는 것입니다.
다른 하드 드라이브를 보면 디렉토리와 파일이 복사되었습니다.
4. 먼저 드라이 런을합니다
우리가 방법을보기 전에
rsync
우리를 위해 파일을 유용하게 삭제할 수 있습니다. 우리가 어떻게 만들 수 있는지 살펴 보겠습니다.
rsync
드라이 런을 수행하십시오.
드라이 런에서
rsync
우리가 요청한 행동을 수행하는 동작을 겪지 만 실제로는 그렇게하지 않습니다. 명령이 실행되면 무슨 일이 있었는지보고합니다. 이런 식으로, 우리는 명령이 우리가 기대하는 것을 정확하게 수행하도록 할 수 있습니다.
드라이 런을 강요하기 위해 우리는 사용합니다
-건조
옵션.
복사 한 파일은 당사에 대해 나열되어 있으며 일반적인 통계를 받고 메시지가 이어집니다.
(드라이 런)
우리는 실제로 아무 일도 일어나지 않았다는 것을 알게되었습니다.
5. 대상 디렉토리에서 파일 삭제
그만큼
--삭제
옵션을 말합니다
rsync
지우는 것
파일 및 디렉토리
에서
목적지
소스 디렉토리에없는 디렉토리. 이는 대상 디렉토리가 소스 디렉토리의 정확한 사본이 될 것임을 의미합니다. 우리는 신중하고 사용할 것입니다
-건조
먼저 옵션.
우리는 두 파일이 삭제 될 것이라는 정보를 받았습니다. 우리가 그들이 삭제 될 것이라고 확신한다면, 우리는
-건조
옵션 및 Real의 명령을 수행하십시오.
이번에는 디렉토리의 내용이 동기화되고 두 개의 추가 파일이 삭제됩니다.
6. 소스 파일 삭제
다음에 소스 파일을 삭제하도록 선택할 수 있습니다.
성공적인 이전
, 만들기
rsync
사본보다 이동처럼 작동합니다. 전송이 성공하지 못한 경우 소스 파일이 삭제되지 않습니다. 우리가 사용해야 할 옵션은 다음과 같습니다
-리브 소스 파일
.
파일이 전송되지 않더라도 파일을 삭제할 수 있습니다. 그 이유는 그렇습니다
rsync
수표 및 모든 파일은 이미 대상 디렉토리에 있으며
rsync
할 것,
rsync
성공적인 이전으로 간주합니다.
또한,
rsync
만 삭제합니다
파일
소스 디렉토리에서. 소스 디렉토리 나 하위 디렉토리를 삭제하지 않고 파일 만 삭제하지 않습니다. 우리는 이것을 사용하여 이것을 볼 수 있습니다
-아르 자형
(재귀) 옵션
ls
소스 디렉토리에서.
7. 파일을 원격 컴퓨터에 복사합니다
폴더를 원격 컴퓨터와 동기화하려면
rsync
두 컴퓨터에 설치해야합니다. 사용하기 전에 두 컴퓨터간에 SSH 통신을 설정하십시오.
rsync
원격 컴퓨터에.
원격 컴퓨터의 일반 사용자로 원격으로 로그인 할 수 있어야합니다.
rsync
일하다. ID와 비밀번호를 사용하여 로그인하거나 SPH 키를 설정했는지 여부는 중요하지 않습니다.
비밀번호가 없습니다
액세스이지만 사용자로 로그인 할 수없는 경우
rsync
도 작동하지 않습니다.
비밀번호로 로그인하면
rsync
비밀번호를 촉구합니다. SSH 키를 사용하여 로그인하는 경우 프로세스에서 원활합니다.
당신이해야 할 유일한 일은 원격 컴퓨터의 사용자 계정 이름과 IP 주소를 대상 파일 경로 시작에 추가하는 것입니다. AT 부호를 사용하십시오.
@
”사용자 이름을 컴퓨터 이름 또는 IP 주소와 결장에서 분리하려면”
:
”컴퓨터 이름을 구분합니다
IP 주소
디렉토리 경로에서.
우리는 로컬에서 파일을 복사 할 때와 마찬가지로 우리에게 동일한 정보를 우리에게보고합니다.
8. 파일 또는 디렉토리를 포함 시키거나 제외합니다
대상 컴퓨터에 복사하지 않으려는 소스 디렉토리에 파일과 디렉토리가있을 수 있습니다. 당신은 할 수 있습니다
그들을 제외하십시오
사용
--들어오지 못하게 하다
옵션. 비슷한 방식으로 특정 파일과 디렉토리를
--포함하다
옵션.
기발한 것은 당신이 사용하는 경우입니다
--포함하다
자체 옵션 자체적으로 모든 파일은 구체적으로 포함 된 파일을 포함하여 정상적으로 복사됩니다. 포함 된 파일 만 복사하려면
--들어오지 못하게 하다
다른 모든 것.
당신은 많은 것을 사용할 수 있습니다
--포함하다
그리고
--들어오지 못하게 하다
원하는대로 명령의 옵션이지만
--포함하다
당신의 옵션
--들어오지 못하게 하다
옵션. 또한 소스 파일 경로에 앞으로 전방 슬래시가 있는지 확인하십시오.
이 명령은 C 소스 코드 파일 만 복사합니다 CSV 데이터 파일 대상 컴퓨터에.
복사 된 유일한 파일은 우리가 구체적으로 포함 된 파일입니다.
9. 전송시 파일을 압축합니다
그만큼
-지
(압축) 옵션 원인
rsync
전송 된 파일을 압축합니다. 대상 컴퓨터의 압축 파일로 저장되지는 않지만 전송 자체 중에 만 압축됩니다. 이것은 긴 전송 속도를 높일 수 있습니다.
10. 모니터링 진행
긴 전송에 대해 말하면, 우리는 전송의 진행 상황을 볼 수 있도록 약간의 통계를 추가 할 수 있습니다.
그만큼
-피
(부분, 진행) 옵션은 실제로 두 가지 옵션을 추가합니다.
-입자
그리고
--진전
. 그만큼
-입자
옵션을 말합니다
rsync
전송이 실패하면 부분적으로 전송 된 파일을 유지합니다. 전송이 다시 시작될 때 시간이 절약됩니다.
그만큼
--진전
옵션은 각 파일에 대해 바이트로 전송 된 데이터 및 백분율로 전송 속도, 전송 속도, 취한 시간, 전송되는 파일 수 및 나머지 파일의 수를 인쇄합니다.
출력은 지나치게 빠르게 스크롤되며 읽기가 어렵습니다. 제거하여 사물을 약간 향상시킬 수 있습니다
-V
(Verbose) 명령에서 옵션. 그럼에도 불구하고 여전히 읽기가 어렵습니다.
전체 전송의 진행 상황을 모니터링하는 것이 종종 더 유용합니다. –info 옵션 으로이 작업을 수행하고 "Progress2"를 매개 변수로 전달할 수 있습니다.
스테로이드의 CP처럼
그만큼
rsync
명령은 빠르고 유연하며 익숙해지는 데 걸리는 시간의 가치가 있습니다. An의 기본 형태
rsync
명령
-AV
옵션, 소스 디렉토리 및 대상 디렉토리는 전혀 기억하기 어렵지 않습니다.
많은 유스 케이스의 경우 이것이 필요한 전부입니다. 그것에 익숙해지면 나머지는 쉽게 올 것입니다.
- › 저렴한 VPN이 얼마나 비용이 많이들 수 있는지
- › Wyze가 다운되었습니다. 그것은 당신뿐만 아니라 당신만이 아닙니다
- › 게임 데스크톱 잊어 버린 게임 노트북은 거의 빠릅니다.
- › 다음 스마트 홈 장치에는 5G가있을 수 있습니다
- › PC와 함께 제공되는 키보드 및 마우스 사용 중지
- › Bose Quietomfort Eorbuds 2 리뷰 : 소음 취소 오디오를위한 한 걸음 앞으로