매일 업데이트
2022-02-15 05:37 6 min

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. 1단계: Pacman을 사용하여 base-develgit을 설치합니다. 이 패키지들은 Lsyncd AUR 패키지를 사용하기 위해 필수적입니다.

    sudo pacman -S git base-devel
  2. 2단계: Arch Linux User Repository 웹사이트에서 최신 Lsyncd AUR 스냅샷을 복제합니다.

    git clone https://aur.archlinux.org/lsyncd.git
  3. 3단계: cd 명령어를 사용하여 터미널 디렉토리를 홈 폴더에서 복제된 "lsyncd" 디렉토리로 변경합니다.

    cd lsyncd
  4. 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에서 확인할 수 있습니다.

  1. 2단계: Git을 사용하여 Lsyncd 소스 코드를 복제합니다.

    git clone https://github.com/axkibe/lsyncd.git
  2. 3단계: cd 명령어로 Lsyncd 코드 폴더로 이동합니다.

    cd lsyncd
  3. 4단계: 코드 폴더 내에 새로운 "build" 디렉토리를 만듭니다.

    mkdir build
  4. 5단계: 터미널 세션을 새로 생성한 "build" 디렉토리로 이동합니다.

    cd build
  5. 6단계: cmake를 실행하여 컴파일 프로세스를 시작합니다.

    cmake ..
  6. 7단계: make 명령어로 컴파일 과정을 완료합니다.

    make
  7. 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는 새로운 설정 파일을 읽고 즉시 데이터 동기화를 시작합니다.

저자
Korea

기술 트렌드와 실용적인 팁을 전하는 लेखक입니다.