유닉스 운영체제를 다룰때 전문성을 극대화해주는 명령어 해설서 “유닉스 리눅스 명령어 사전”

전공자들은 익히 아는 것이 현대의 전자식 디지털 컴퓨터의 기원은 폰 노이만 구조라는 사실이다. 폰 노이만 구조의 특징은 프로그램 내장형이라는 것이고 외부의 작동 제어가 필요한 구조라는데 있다. 1940~1950년대에 획기적인 발달을 촉진시킨 구조로, 에니악과 같은 컴퓨터를 거쳐 지금처럼 개인용 PC로 소형화, 고성능화된 시대에도 여전히 그 구조가 이어지고 있어서 중요도가 높다.

외부에서의 제어라는 것은 여러 형태가 존재하는데, PC에 설치되어 내장된 운영체제에서 제공하는 명령어를 터미널에서 입력해서 기능을 실행하는 형태가 주를 이루었었고 이를 CLI (Command-Line Interpreter, 명령행 실행방식) 이라고 한다. CLI는 유닉스 운영체제의 기본 제어 구조였고 지금도 윈도우나 리눅스와 같은 운영체제가 지원하고 있다. CLI는 명령어를 외어야 하고 조합해서 명령을 내리려면 IT 지식이 상당히 굳건해야 하기에 초기 접근이 조금은 어려운 측면이 있다. IT 기술자들은 IT 지식에 익숙하니 괜찮을 것 같아도 배움이 선행되어야 하는 필요성과 그 부하량은 큰 편이다.

리눅스 또한 유닉스 계열 호환 명령어 체제인 GNU의 여러 툴들과 여러 프로그래머들이 만들어 공헌한 쉘을 써서 명령어로 제어하도록 하고 있다. 다시 말해 방대한 수의 명령어를 빠릿하게 기억해두어야 하고, 파이프나 표준입출력 등의 체제 하에 명령어를 조합하는 것도 잘 해내야 운영체제를 잘 쓸 수 있게 된다는 것이다. 다들 주로 쓰는 cd, ls와 같은 쉬운 명령어도 옵션이 들어가면 첫접근시에는 어렵게 느껴질 수 있다. 그리고 대부분의 책들이 널리 알려진 명령어 위주로 소개하기에, 다들 아는 것이라 효능이 적은 것이다.

지금 소개하는 책 “유닉스 리눅스 명령어 사전”은 다르다. 다양한 리눅스 명령어를 아주 많이 소개하고 있고 그 해설 내용도 훌륭하다. 잘 알아보기 쉬운 레이아웃에 명령어의 필수 정보가 우선 보여지고 있고, 명령어를 실행하는 옵션주는 요령이나 실행 결과도 예시해주고 있어 첫접근시 정보 습득을 아주 편하게 해준다. 그리고 명령어에 관련된 일화나 상식도 알려주고 있으니, 이책 한권만 봐도 리눅스를 쓰는 것이 매우 편리해질 정도로 좋은 구성이다.

리눅스는 많은 부분 오리지날 유닉스와 호환되는 명령어 작동을 보여준다. 쉘스크립트가 sh로 작동하는 것도 그렇고 cd 나 ls 와 같은 명령어도 그러하다. 그보다 더 고도화된 명령어 또한 POSIX와 같은 표준에 의하기 때문에 이책 한권만 봐도 왠만한 유닉스 계열 운영체제들을 다 쓸 수 있게 될 것이다.

저자들은 리눅스 관련개발도 진행한 경험이 있고 해설력도 탁월하다. 믿을만한 저자와 책 내용이기에 초판부터 호평을 받은 책이다.

아래는 책 판매 페이지의 목차 해설이다.

1부 일반 명령어
유닉스, 리눅스 시스템을 얼마나 자주, 잘 사용하고 있는지를 알아보는 가장 좋은 방법은 이 사람이 어떤 상황에서 어떤 명령어로 어떻게 효과적으로 해결하는지 살펴보는 것이다. 많은 명령어를 아는 것도 중요하지만, 한 개의 명령어를 알더라도 주어진 상황에서 가장 효과적으로 사용하는 것이 더욱 중요할 것이다. 명령어와, 명령어를 사용하는 방법을 차근차근 따라가며 살펴 보자.


2부 데몬 및 서버설정
유닉스나 리눅스의 수많은 서비스 중 우리 눈에 보이는 것은 일부분에 지나지 않는다. 우리가 모르는 사이에 동작하며 서비스를 제공하고 시스템을 조화롭게 돌아가도록 하는 것이 바로 데몬이다. 사용자가 잊어 버릴 정도로 조용하지만 주어진 상황에서의 요청을 하나씩 처리해 내는 데몬을 살펴보자.


3부 RPM & DEB
RPM과 DEB는 리눅스 패키지 매니저의 양대 산맥으로 거의 모든 리눅스 배포판에서 사용한다. 패키지 매니저는 특정 소프트웨어를 구성하는 최소단위의 묶음으로 쉽고 빠르게 소프트웨어의 설치, 관리, 삭제를 수행할 수 있다.


4부 VI 에디터
이미 GUI 환경의 운영체제와 소프트웨어가 자리잡은 지 오래이기 때문에 텍스트 기반의 에디터가 낯설어 보이는 것은 당연하다. 그러나 아직까지도 서버 관리나 리눅스 혹은 유닉스 기반에서 개발할 때는 터미널 환경을 사용한다. 터미널 환경에서 VI 에디터만큼 빠르고 능률적인 작업을 할 수 있는 툴도 드물다. 원본 VI 에디터는 물론이고 다양한 VI 클론에서도 사용할 수 있는 VI 에디터의 사용법을 설명하고, VI 에디터를 사용하면서 유용하게 사용할 수 있는 단축키를 소개하고자 한다.


5부 SVN & Git
SVN과 Git는 소스 코드의 버전을 관리하는 소프트웨어이다. 소스 버전 관리 시스템(Source Version Control System)은 소스 코드를 저장하는 서버로 등록된 날짜, 시간 등의 정보를 코드와 같이 저장한다. 또한 새로운 소스 코드로 갱신 시에 수정 사항에 대한 로그를 저장하여 과거 소스로 복원하거나 버전별로 수정된 사항을 추적 비교할 수 있다. 소개하는 두 소프트웨어는 오픈 소스로서 대부분 오픈 소스 개발 프로젝트는 물론, 많은 소프트웨어 개발에 사용되고 있으므로 사용법을 익혀 두면 매우 유용하다.


6부 셸 프로그래밍
하나의 작업 명령을 반복적으로 실행하거나 다양한 명령어를 조합하여 사용할 때는 지루할 뿐만 아니라 오랜 시간이 걸릴 수 있다. 이럴 때 셸 프로그래밍(Shell Programming)을 사용하면 한 번의 작업으로 시간과 작업을 절약할 수 있다. 이 장에서 셸 프로그래밍의 모든 것을 말하지는 않는다. 일반적으로 많이 사용하는 내용을 중심적으로 차례대로 짚을 것이며, 본문의 내용만 알아도 개발에 많은 도움이 될 것이다.

리눅스에 관심이 많은 과학자, 일반인, 개발자, 연구자들 모두에게 강추하는 책이다.

Avatar photo
Author: 청색공책
청색공책은 프리랜서 프로그래머이자 정보 제공자입니다. 어린 시절의 몸 고생 마음 고생을 이겨내고 활로를 찾습니다. 평소에는 주로 탐구 생활을 하고 있으며 글쓰기를 즐기고 있습니다. 여러 분야를 넘나드는 관심분야가 특징이구요. 도서관 사서와 같은 삶을 살고 있습니다. 잘 부탁드립니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다