busybox 바이너리는 수많은 유닉스 프로그램들의 축소판을 하나의 패키지에 담고 있는 강력한 멀티콜 도구입니다. 일부 명령줄 유틸리티가 빠져 있는 초경량 리눅스 환경에서 특히 유용하며, 대형 배포판 사용자라도 특정 프로그램이 설치되어 있지 않을 때 손쉽게 활용할 수 있습니다. busybox 자체를 호출하기만 하면 현재 버전 번호와 설치된 애플릿 목록을 몇 분 안에 확인할 수 있습니다.
이 작업을 진행하려면 먼저 가상 터미널에 접속해야 합니다. Ctrl+Alt+T 키를 동시에 누르거나, 우분투 Unity Dash에서 '터미널'을 검색하면 됩니다. LXDE, Xfce4, MATE, KDE 사용자는 응용 프로그램 메뉴에서 시스템 도구(System Tools)로 이동한 뒤 터미널을 클릭하면 됩니다. 참고로 이 작업에는 root 권한이 필요하지 않습니다.
방법 1: 현재 busybox 기능과 버전 번호 확인하기
busybox 바이너리가 지원하는 전체 명령 목록을 확인하려면 busybox를 입력하고 Enter 키를 누르면 됩니다. 다만 출력되는 정보가 워낙 많아 화면을 한참 벗어나므로 주의하세요. 대부분의 시스템에는 util-linux나 GNU coreutils 패키지에 들어 있는 유틸리티를 대체하는 수십 개의 경량 명령이 포함되어 있습니다. 그래서 개발자들은 busybox를 '임베디드 리눅스의 맥가이버 칼'이라고 부릅니다. 최신 터미널 에뮬레이터 창이라면 스크롤을 올려 놓친 기능들을 언제든 다시 확인할 수 있습니다.
busybox | less를 입력해 실행하면 커서 키나 vi 방향 키로 위아래로 스크롤하면서 천천히 내용을 살펴볼 수 있습니다. 이렇게 실행한 경우에는 q를 입력하고 Enter 키를 눌러 스크롤 화면을 종료하면 됩니다.
임베디드 리눅스 시스템을 최신 상태로 유지하려는 사용자처럼 버전 번호만 필요하다면 busybox | head 명령을 사용하는 것이 좋습니다. 이 명령은 busybox가 출력하는 방대한 정보 중 첫 부분만 보여주며, 실제 버전 번호와 함께 (Ubuntu 1:1.22.0-15ubuntu1) 같은 배포판 정보가 함께 표시될 수 있습니다.
배포판 정보가 표시된다고 해서 문제가 있다는 뜻은 전혀 아닙니다. 오히려 busybox가 정상적으로 작동하고 있다는 증거입니다. 추가로 표시되는 숫자는 해당 리눅스 배포판의 사양에 맞춰 컴파일된 버전임을 나타낼 뿐입니다. Kubuntu, Xubuntu, Lubuntu 등 우분투 파생 배포판 사용자에게는 동일한 메시지가 나타나며, Red Hat이나 Fedora 사용자에게는 조금 다른 형태로 표시될 수 있습니다. 배포판의 표준 패키지 관리 시스템으로 업데이트하고 있다면 이 정보는 무시해도 안전합니다. busybox 역시 다른 패키지와 함께 자동으로 업데이트되며, 어차피 busybox 업데이트 자체가 드문 편입니다.
외부 도움 없이 busybox만으로 'busybox란 무엇인가'라는 질문에 스스로 답해준다고 할 수 있겠네요!
방법 2: busybox 애플릿 호출하기
busybox에 어떤 기능이 포함되어 있는지 파악했다면, 이제 언제든 원하는 명령을 실행할 수 있습니다. 방법 1에서 확인한 긴 목록에 있는 명령 앞에 busybox를 붙여 입력하기만 하면 됩니다. 예를 들어 안전한 명령인 busybox date를 입력하면 현재 시간을 알려줍니다.
이 기능은 평소 자주 쓰지 않는 명령어를 사용할 때 특히 유용합니다. 예를 들어 우분투와 Fedora 사용자 중 상당수는 dos2unix와 unix2dos가 설치되어 있지 않습니다. 이 두 프로그램은 유닉스/리눅스 텍스트 파일의 LF 줄바꿈 문자와 MS-DOS·Windows 파일의 CR+LF 줄바꿈 문자를 서로 변환해 주는 유용한 도구입니다. 리눅스에서 만든 myFile.txt 파일을 Windows에서 읽을 수 있도록 변환하려면 busybox unix2dos myFile.txt를 입력하면 되고, 반대로 되돌리려면 busybox dos2unix myFile.txt를 입력하면 됩니다. Windows 10으로 파일을 전송할 때도 마찬가지로 작동합니다.
busybox 바이너리에는 이 외에도 다양한 실용적인 도구가 탑재되어 있습니다. 다만 주의할 점이 있습니다. 축소판이라고는 하지만 이 명령들은 실제로 해당 프로그램의 핵심 기능을 모두 갖춘 완전한 버전입니다. dd와 fdisk는 경량화되었다 해도 여전히 dd이자 fdisk입니다. 이런 명령을 무심코 다루다가는 시스템 설치를 망칠 수도 있습니다. 일반 명령을 사용할 때와 동일한 수준의 주의를 기울이기 바랍니다.
저자 소개

Kevin Arrows (케빈 애로우즈)
케빈 애로우즈는 10년 이상의 업계 경력을 지닌 베테랑 기술 전문가입니다. Microsoft Certified Technology Specialist(MCTS) 자격증을 보유하고 있으며, 최신 기술 동향을 꾸준히 학습하는 데 큰 열정을 가지고 있습니다. 소프트웨어 개발, 사이버 보안, 클라우드 컴퓨팅 등 다양한 기술 분야에서 폭넓게 집필해 왔으며, 복잡한 기술 개념을 명확하고 간결하게 설명하는 능력으로 동료들에게 널리 인정받고 있습니다.