Linux에서 lsyncd를 사용하여 파일을 동기화하는 방법
Lsyncd: Rsync를 대체하는 가벼운 동기화 솔루션
Lsyncd는 Rsync와 유사하게 작동하지만, 더 가볍고 효율적인 동기화 대안입니다. 지정된 디렉토리에서 변경 사항을 감지하고 사용자가 지정한 위치로 데이터를 실시간에 가깝게 동기화합니다. 이 프로그램은 백그라운드 서비스로 작동하며, 대부분의 주요 리눅스 배포판에서 쉽게 설치할 수 있습니다. 리눅스에서 Lsyncd를 사용하려면 터미널을 열고 다음 안내를 따르세요.
주의: 데이터를 동기화할 모든 컴퓨터에 이 프로그램을 설치해야 합니다.
주요 리눅스 배포판 설치 방법
| 우분투 | sudo apt install lsyncd |
| 데비안 | sudo apt-get install lsyncd |
아치 리눅스 설치 안내
Lsyncd는 아치 리눅스에서도 사용 가능하지만, 기본 소프트웨어 저장소에는 없으므로 Pacman 패키지 관리자를 통해 바로 설치할 수 없습니다. 아치 리눅스에서 Lsyncd를 사용하려면 AUR(Arch User Repository)에서 직접 다운로드, 빌드 및 설정해야 합니다.
다음은 아치 리눅스에서 Lsyncd를 설치하는 단계입니다.
-
1단계: Pacman을 사용하여
base-devel과git을 설치합니다. 이 패키지들은 Lsyncd AUR 패키지를 사용하기 위해 필수적입니다.sudo pacman -S git base-devel
-
2단계: Arch Linux User Repository 웹사이트에서 최신 Lsyncd AUR 스냅샷을 복제합니다.
git clone https://aur.archlinux.org/lsyncd.git
-
3단계:
cd명령어를 사용하여 터미널 디렉토리를 홈 폴더에서 복제된 "lsyncd" 디렉토리로 변경합니다.cd lsyncd
-
4단계:
makepkg명령어를 실행하여 설치 가능한 패키지를 컴파일하고 생성합니다.makepkg실행 중 오류가 발생하면 Lsyncd AUR 페이지를 참고하여 사용자 의견을 확인하세요.makepkg -sri
| 페도라 | sudo pacman -S lsyncd |
| 오픈수세 | sudo zypper install lsyncd |
기타 리눅스 배포판 설치 안내
Lsyncd 패키지를 찾을 수 없는 경우, 소스 코드에서 직접 빌드해야 할 수도 있습니다. 다음은 소스 코드에서 Lsyncd를 빌드하고 실행하는 방법입니다.
1단계: Lsyncd 설치에 필요한 의존성 패키지를 설치합니다.
- CMake
- Lua (5.2 이상)
- Liblua (5.2 이상)
- GCC 컴파일러
- Lua 컴파일러
- make
- Binutils
- Git
더 자세한 의존성 정보는 GitHub에서 확인할 수 있습니다.
-
2단계: Git을 사용하여 Lsyncd 소스 코드를 복제합니다.
git clone https://github.com/axkibe/lsyncd.git
-
3단계:
cd명령어로 Lsyncd 코드 폴더로 이동합니다.cd lsyncd
-
4단계: 코드 폴더 내에 새로운 "build" 디렉토리를 만듭니다.
mkdir build
-
5단계: 터미널 세션을 새로 생성한 "build" 디렉토리로 이동합니다.
cd build
-
6단계:
cmake를 실행하여 컴파일 프로세스를 시작합니다.cmake ..
-
7단계:
make명령어로 컴파일 과정을 완료합니다.make
-
8단계:
make install명령어로 Lsyncd를 시스템에 설치합니다.sudo make install
Lsyncd 설정
Lsyncd 서비스는 백그라운드에서 실행되지만, 수동으로 활성화해야 합니다. systemctl 명령어를 사용하여 서비스를 시작해야 Lsyncd를 사용할 수 있습니다.
sudo service lsyncd start
서비스가 시작되면 touch 명령어로 구성 파일을 생성합니다.
sudo touch /etc/lsyncd.conf
일부 운영 체제에서는 /etc/lsyncd.conf에 파일을 생성하는 것이 작동하지 않을 수 있습니다. 이 경우 /etc/lsyncd/ 디렉토리 안에 구성 파일을 생성해야 할 수 있습니다.
sudo mkdir -p /etc/lsyncd/ sudo touch /etc/lsyncd/lsyncd.conf.lua
Nano 텍스트 편집기로 구성 파일을 엽니다.
sudo nano /etc/lsyncd.conf
또는 /etc/lsyncd/에 파일을 생성한 경우:
sudo nano /etc/lsyncd/lsyncd.conf.lua
구성 파일에 다음 코드를 붙여넣습니다.
설정 {
로그 파일 = "/var/log/lsyncd/lsyncd.log",
상태 파일 = "/var/log/lsyncd/lsyncd.stat",
상태 간격 = 1,
노데몬 = 거짓
}
코드를 붙여넣은 후 Ctrl + O를 눌러 저장하고, Ctrl + X로 Nano 편집기를 종료합니다.
공유 폴더 설정
이제 동기화 시스템 설정을 위한 핵심 구성이 완료되었습니다. 동기화 시스템을 설정하려면 Nano 편집기를 다시 열고, 이전에 추가한 설정 바로 아래에 다음 코드를 붙여넣습니다.
주의: 아래 동기화 코드 예시를 참고하여 필요에 맞게 수정해야 합니다.
동기화 {
default.rsyncssh,
소스 = "/소스/폴더/위치",
호스트 = "원격 PC 또는 서버 IP",
targetdir = "/원격/디렉토리"
}
마찬가지로 Ctrl + O를 사용하여 lsyncd.conf 파일에 변경 사항을 저장합니다.
동기화 시작
Lsyncd가 설정 완료되었으니 이제 동기화 프로세스를 시작할 차례입니다. 터미널에서 restart 명령어를 사용하여 Lsyncd를 재시작합니다.
sudo service restart lsyncd
서비스 재시작 후 Lsyncd는 새로운 설정 파일을 읽고 즉시 데이터 동기화를 시작합니다.