바이너리 패키지 포맷 영역에서 데비안은 독보적인 위치를 차지하고 있습니다. 수많은 소프트웨어 중에서도 DEB 파일 형식은 개발자들 사이에서 가장 큰 주목을 받고 있습니다. 그 결과, 데비안 기반 리눅스 운영체제는 일반적으로 다른 운영체제보다 먼저 새로운 기능을 접하게 됩니다. Steam, Spotify, Google Chrome, Skype 등이 그 예시이며, 목록은 계속해서 늘어나고 있습니다. Redhat 기반 리눅스 운영체제 또한 개발자들의 관심을 받지만, 데비안만큼은 아닙니다. 이러한 이유로 많은 사용자들이 데비안 프로그램을 디컴파일하거나 리버스 엔지니어링하는 방법을 찾습니다. 이를 수행하는 다양한 방법이 있지만, 리눅스 환경에서 데비안 프로그램을 Redhat 형식으로 변환하는 가장 효과적인 방법 중 하나는 Alien 패키지 변환기를 활용하는 것입니다.
사전 준비
Alien은 Perl 프로그래밍 언어로 작성된 프로그램입니다. PC에서 이 터미널 애플리케이션을 실행하려면 먼저 다양한 Perl 관련 패키지를 설치해야 합니다. 일부 리눅스 배포판에서는 Perl이 이미 설치되어 있을 수 있습니다. 본 가이드에서는 데비안 패키지를 Redhat 패키지 형식으로 변환하는 방법에 초점을 맞추고 있으므로, Fedora 및 OpenSUSE에서 Perl을 설치하는 방법에 대해서만 설명합니다.
Alien을 실행하기 위한 Perl 설치 도구가 이미 있는지 확인하려면 터미널 창을 열고 다음 명령을 입력하십시오.
perl --help
Perl 도구가 이미 설치되어 있고 정상적으로 작동하는 리눅스 PC에서 이 명령을 실행하면 도움말 메시지가 표시됩니다. 이 메시지는 사용자가 Perl 언어, 사용법 등에 대해 알아야 할 모든 세부 정보를 제공합니다. 만약 이 명령을 실행했을 때 아무런 반응이 없다면, Perl 도구가 설치되지 않은 것입니다.
Fedora용 Perl 설치
sudo dnf install perl-core
OpenSUSE용 Perl 설치
Perl은 OBS에서 사용할 수 있습니다. 여기로 이동하여 “직접 설치” 버튼을 클릭하여 설치를 진행하십시오.
Alien 빌드하기
Alien 프로그램을 빌드하는 과정은 매우 간단하며, 세 단계만 거치면 됩니다. 먼저 공식 Source Forge 페이지에서 소스 코드를 다운로드합니다. 다운로드 후 터미널 창을 열어 다음 작업을 수행하십시오.
먼저 Alien 소스 코드가 있는 다운로드 디렉토리로 이동합니다.
cd ~/Downloads
다음으로, tar 명령어를 사용하여 다운로드한 압축 파일의 내용을 추출합니다.
tar xvfJ alien_8.95.tar.xz
압축 해제가 완료되면 cd 명령어를 사용하여 코드 디렉토리로 진입합니다.
cd alien_8.95
이제 Perl을 사용하여 MakeFile을 생성합니다. MakeFile은 PC가 소프트웨어를 빌드하는 방법을 이해하는 데 필수적인 파일입니다.
perl Makefile.PL
생성된 MakeFile을 이용하여 소프트웨어를 빌드합니다.
make
Alien이 성공적으로 빌드되었으며 사용할 준비가 되었습니다. 다음 단계는 빌드된 소프트웨어를 소스 코드 디렉토리에서 시스템의 적절한 위치로 이동시키는 것입니다. 이는 “make install” 명령어를 통해 수행됩니다. 이전의 두 명령어와 달리, “make install” 명령어는 시스템 디렉토리에 소프트웨어를 설치하기 때문에 sudo 권한으로 실행해야 합니다.
sudo make install
make install 명령이 완료되면 다음 명령어를 사용하여 터미널에서 Alien을 실행할 수 있습니다.
데비안 패키지를 레드햇 패키지로 변환하기
데비안 형식의 패키지를 레드햇 형식으로 변환하려면 먼저 해당 패키지를 다운로드해야 합니다. DEB 파일 형식은 가장 널리 사용되는 리눅스 바이너리 형식이므로 쉽게 찾을 수 있을 것입니다. 만약 어떤 패키지를 다운로드해야 할지 모르겠다면, Ubuntu에서 필요한 소프트웨어를 찾는 방법을 참고해 보십시오.
데비안 패키지 파일이 준비되었다면 터미널을 열고 다운로드 폴더로 이동합니다.
cd ~/Downloads
-r 스위치를 사용하여 DEB 파일을 RPM 파일로 변환합니다.
sudo alien -r *.deb
이 명령어를 실행하면 Alien은 RPM 패키지를 생성합니다. 그러나 모든 데비안 패키지가 성공적으로 변환되는 것은 아니라는 점을 유념해야 합니다. 일부 데비안 패키지는 특수한 파일 구조를 가지고 있어 변환이 실패할 수 있습니다.
Alien의 추가 기능
Alien 패키지 변환기는 데비안에서 RPM으로의 변환 외에도 다양한 기능을 제공합니다. 다음은 몇 가지 사용 방법입니다.
RPM을 DEB로 변환
-d 스위치를 사용하면 RPM 파일을 데비안 파일로 변환할 수 있습니다.
sudo alien -d file.rpm
Slackware 패키지로 변환
-t 스위치를 사용하면 모든 패키지를 Slackware 리눅스 패키지로 변환할 수 있습니다.
sudo alien -t file
Solaris 패키지로 변환
-p 스위치를 사용하면 Alien에서 지원하는 모든 패키지 형식을 Solaris 패키지 형식으로 쉽게 변환할 수 있습니다.
sudo alien -p file
권한 수정
경우에 따라 바이너리 패키지 형식을 변환하는 과정에서 파일 권한이 잘못 설정될 수 있습니다. Alien은 이러한 문제를 해결하기 위해 다양한 권한 수정 기능을 제공합니다. –fixperms 플래그를 사용하여 권한 문제를 해결할 수 있습니다.
sudo alien file --fixperms
생성된 패키지 테스트
Alien을 사용하여 생성된 새로운 패키지를 테스트할 수 있습니다. 생성된 패키지를 테스트하려면 –test 플래그를 사용하십시오.
sudo alien file --test