필자는 애니메이션 신세기 에반게리온의 열렬한 팬이다. 이 애니메이션에 나오는 대사 중에서 "인간은 어둠을 두려워하여 그 가장자리에서 불로 어둠을 깎아낸다"는 대사가 기억에 남는다. 리눅스 세계에 처음 입문하는 초보자에게 터미널의 검은 화면은 깊고 불길한 어둠처럼 느껴질 수 있고, 그래서인지 가능하기만 하면 부리나케 GUI로 그 화면을 대체한다. 하지만 터미널 화면은 그렇게 무서운 것이 아니다. 그래픽 사용자 인터페이스는 현대의 컴퓨팅을 더 즐겁게, 더 사용하기 쉽게 해준다. 사실 터미널의 텍스트 모드 브라우저에서 아마존에 접속해 물건을 주문한다는 것은 열정이 지나쳐 자학이라고 할 만하다. 사람들은 GUI와 그래픽 브라우저를 좋아하지만 때로는 명령줄의 세계에 들어갈 필요도 있다. 새로운 도구가 모두 그렇듯이 기본 사항 몇 가지만 알면 문제가 발생해 GUI가 시작되지 않을 때, 또는 유지 보수 작업을 해야 할 때도 당황하지 않고 침착함을 유지할 수 있다. 리눅스 사용자로서 가장 먼저 익혀야 할 5가지 명령을 보자. 1. sudo /mnt는 루트 소유이므로 /mnt에 디렉토리를 만들려면 sudo를 사용해야 한다. 또한 sudo는 시스템을 파괴하거나 다른 사용자의 개인 정보를 침해할 수 있는 힘도 부여한다. 그래서 시스템에서 처음 sudo를 사용할 때, 다음과 같은 일종의 설교가 화면에 표시되는 것이다. 로컬 시스템 관리자에게서 이미 설교를 들었을 것입니다. 보통 그 내용은 다음과 같은 세 가지로 요약할 수 있습니다. 1) 다른 사용자의 프라이버시를 존중하십시오. 사용자 자신의 home 디렉토리를 벗어나서 파일을 편집하거나 수정해야 하는 경우 대부분은 sudo를 사용해야 한다. sudo를 사용하려면 사용자가 sudoers 파일에 있거나 슈퍼유저 그룹(보통 "wheel" 또는 "sudo")에 속해야 한다. 우분투는 sudoers 파일에 대한 유용한 가이드를 제공한다. 일반적인 sudoers 파일로, 루트 접근이 허용되는 그룹이 지정돼 있다. 암호 없이 사용자나 그룹에게 sudo 접근을 허용하는 것은 매우 현명치 못한 처사다. sudo는 그 힘이 큰 만큼 명령의 기능을 모르는 상태에서 명령 앞에 함부로 sudo를 사용해서는 안 된다. 온라인에는 초보자에게 sudo rm –R /을 입력하라고 장난치는 사람들이 있다(하지 말 것). 이 명령은 시스템의 모든 파일을 재귀적으로 삭제하는데, 추가 확인 절차도 없이 그 즉시 삭제를 실행한다. 설교 파일에도 나오지만 sudo를 사용할 때는 "입력하기 전에 생각해야 한다". 2. 패키지 관리자 도구(yum, apt, 또는 pacman) 아치(Arch) 리눅스에서 pacman을 사용한 시스템 업그레이드. pacman 명령 앞에 sudo를 사용했음을 볼 수 있다. yum(레드햇/페도라/센트OS) apt(데비안/우분투/민트) pacman(아치/만자로) 각 패키지 관리자에는 여기 나열한 것보다 훨씬 더 많은 기능이 있지만 이 세 가지가 가장 많이 사용되는 기능이다. 어느 리눅스 배포판을 선택하든 패키지 관리자를 익히고 관련 문서의 위치도 알아두어야 한다. 3. systemctl(Systemd) NetworkManager 서비스 비활성화와 부팅 시 실행되도록 재활성화 Systemd에 대한 가장 큰 불만 중 하나는 할 수 있는 일이 너무 많다는 것이다. (유닉스 프로그램은 보통 한 가지 일을 하되, 아주 잘 하는 것을 목표로 만들어진다.) 어쨌든 systemd에서 기억해야 할 키워드는 5가지다. 서비스를 시작하려면 start 키워드를 사용하면 된다. systemctl start <서비스 이름> 서비스가 실패하거나 구성이 변경된 경우 재시작하는 방법도 비슷하다. systemctl restart <서비스 이름> 서비스를 중지하려면 stop을 사용한다. systemctl stop <서비스 이름> 부팅 시 서비스를 활성화하려면 enable 키워드를 사용하면 된다. systemctl enable <서비스 이름> 마지막으로, 서비스를 비활성화해서 부팅 시 시작되지 않도록 할 수 있다. systemctl disable <서비스 이름> 원문보기: 4. Is Is에는 여러 가지 옵션이 있지만 가장 자주 사용되는 옵션은 파일 권한과 소유권을 보여주는 -l이다. 윈도우 dir 명령의 리눅스 버전이라고 할 수 있는 이 명령의 어떤 점이 그렇게 유용할까? 일단 하위 디렉토리에서 구성 파일을 찾을 수 있다. GUI가 없는 환경에서 파일 이름을 검색할 때도 유용하다. 리눅스 파일 이름과 명령은 대/소문자를 구분하므로 정확한 철자를 알 수 있다면 여러 가지로 도움이 된다. 간단히 말해 시스템 여기저기를 살펴보는 데 사용할 수 있는 정찰대라고 생각하면 된다. 5. man man 명령은 manual(매뉴얼)의 줄임말이며 컴퓨터에 저장된 온라인 명령 문서에 접근할 수 있게 해준다. chmod 명령의 기능이 생각이 나지 않을 때 터미널에 man chmod를 입력하면 명령에 대한 정보가 표시된다. 화살표 키 또는 PgUp/PgDn 키를 사용해서 man 페이지를 위아래로 스크롤할 수 있다. 다 읽고 나면 Q를 눌러 나오면 된다. Is의 매뉴얼 페이지 man은 인터넷에 연결할 수 없을 때 도움이 될 수 있지만 실제 온라인 환경에서는 구글이 훨씬 더 좋은 리소스가 된다. chmod와 같은 명령을 구글에서 검색할 때 얻는 처음 몇 개의 결과는 man 페이지의 웹 버전이라고 보면 된다. 정리 또한 콘솔 명령은 뭔가 잘못될 때 오류를 표시한다는 부가적인 이점도 있다. 예를 들어 업데이트가 실패할 경우 패키지에 문제가 있는지 아니면 단순히 인터넷 연결이 끊어진 것인지 등을 간단히 알 수 있다. 약간만 연습하면 누구나 자신감을 갖고 터미널 명령을 다루고 sudo 명령도 능숙하게 활용할 수 있게 된다. ※ 본 내용은 한국IDG(주)(http://www.itworld.co.kr)의 저작권 동의에 의해 공유되고 있습니다. |