※ 요약


리눅스 명령어 jobs는 작업이 중지된 상태, 백그라운드로 진행 중인 작업 상태, 변경 되었지만 보고되지 않은 상태 등을 표시하는 명령어다.


※ 경로


내부 명령어


※ 사용법


jobs [옵션] [job ID]

jobs -x command [args]



※ 옵션


 옵션

 설명

 -l

 프로세스 그룹 ID를 state 필드 앞에 출력

 -n

 프로세스 그룹 중에 대표 프로세스 ID를 출력

 -p

 각 프로세스 ID에 대해 한 행씩 출력

 command

 지정한 명령어를 실행



※ jobs로 알 수 있는 세션의 상태 값


 상태

 설명

 Running

 작업이 일시 중단되지 않았고 종료하지 않고 계속 진행 중임

 Done

 작업이 완료되어 0을 반환하고 종료 했음을 의미

 Done(code)

 작업이 정삭적으로 완료되었으며, 0이 아닌 코드를 반환 했음을 의미

 Stopped

 작업이 일시 중단

 Stopped(SIGTSTP)

 SIGTSTP 신호가 작업을 일시 중단

 Stopped(SIGSTOP)

 SIGSTOP 신호가 작업을 일시 중단

 Stopped(SIGTTIN)

 SIGTTIN 신호가 작업을 일시 중단

 Stopped(SIGTTOU)

 SIGTTOU 신호가 작업을 일시 중단



※ 요약


리눅스 명령어 hostid는 현재의 호스트 정보를 16진수 형태로 보여준다. 이 정보는 호스트 고유의 번호로써, 다른 호스트들과 구별되며 주로 인터넷 주소를 부여할 때 사용된다.


참고로 호스트ID는 네트워크 내에서 워크스테이션, 서버, 라우터, 기타 TCP/IP 등의 각 서버들을 구분하는 역할을 한다. 각 호스트의 주소는 반드시 네트워크 ID를 기준으로 정확한 값을 가져야 하며 동일한 네트워크 안에서 유일해야 한다.



※ 경로


/usr/bin/hostid


※ 사용법


hostid [옵션]


※ 옵션


 옵션

 설명

 --help

 hostid 명령어의 사용법 출력

 --version

 hostid 명령어의 버전 정보 출력



※ 사용예


아래는 필자의 리눅스 시스템에서 간단히 사용해본 화면이다.


※ 관련 페이지





※ 요약


도메인(호스트)명은 알고 있는데 ip주소를 모르거나 혹은 그 반대의 경우에 사용하는 명령어다. 호스트명을 이용하면 ip주소 뿐만이 아니라 하위 호스트명도 조회할 수 있다. 호스트는 시스템에 등록된 DNS서버를 이용하여 검색하는데, 다른 DNS 서버를 이용하고 싶다면 따로 지정해 줄 수도 있다.


※ 경로


/usr/bin/host


※ 사용법


host [옵션] [도메인 혹은 IP주소] [DNS서버]



※ 옵션


 옵션

 설명

 -a

 -t ANY와 같은 기능

 -d

 디버깅 모드로 출력

 -l zone

 zone 아래 모든 시스템을 출력

 -r

 반복 처리를 안 함

 -t type

 type을 지정하여 정보를 얻음

 (A:호스트ip주소, NS:검색한 호스트의 네임 서버 호스트명, PTR:도메인 네임 포인터, ANY:타입의 모든 정보)

 -w

 DNS 서버의 응답을 기다림

 -v

 자세한 정보 출력



※ 사용예


아래는 간단한 사용예다. host 명령어를 이용하여 네이버의 ip를 조회하여 보았고 아래와 같이 4개의 ip정보를 얻을 수 있었다. 당연한 얘기지만 네이버 같이 사용자가 많은 사이트는 여러 개의 서버를 이용한다.


아래는 kornet의 DNS 서버를 이용하여 조회해본 화면이다.



※ 요약


리눅스 명령어 ex는 라인 단위의 대화식 텍스트 에디터로써, 현재는 거의 사용되지 않고 vi에 내장되었다.


※ 경로


/bin/ex


※ 사용법


ex 파일명


※ 변천사


 ed

 유닉스 기본 행 단위 편집기

 ex

 발전된 형태의 ed(Extended ed)

 vi

 화면 편집기, ex의 명령들을 채택

 vi 클론

 vi가 발전된 형태로써 vim, elvis 등이 있음



※ 요약


리눅스 명령어 rdate는 remote date의 줄임말로써, 원격지의 타임서버에서 시간 정보를 가져와 로컬 시스템의 시간과 동기화를 하는 명령어다. 타임 서버에서 시간 정보를 가져오는 이유는 정확한 시간을 제공해주기 때문이다.


※ 경로


/usr/bin/rdate


※ 사용법


rdate [옵션]... [타임서버 주소]


※ 옵션


 옵션

 설명

 -4

 IPv4만 사용

 -6

 IPv6만 사용

 -o num

 지정한 포트(num)으로 연결

 -p

 호스트의 정보만 출력하고 설정은 안 함

 -s

 설정만 하고 내용은 출력 안 함

 -u

 TCP 대신 UDP 사용

 -v

 상세한 정보 출력



※ 사용예


빨간 줄은 필자의 서버 시간이고 파란 줄은 타임 서버(time.bora.net)의 시간이다. 보면 알겠지만 3분 30여 초의 차이가 나는데, rdate 명령어를 통해 시간을 동기화 시키도록 하겠다.



rdate -s time.bora.net 이라고 입력한뒤 date 명령어로 시스템 시간을 확인해보니 타임서버와 시간이 동기화된걸 확인할 수 있었다. 2초 차이는 명령어 입력에 따른 지연 시간이니 참고하기 바란다.




※ 요약

리눅스 명령어 cd는 디렉토리를 이동할때 사용하는 명령어다. 


※ 사용법

 항목

 설명

 cd [디렉토리 경로]

 이동하려는 디렉토리로 이동

 cd .

 현재 디렉토리

 cd ..

 한 단계 상위 디렉토리로 이동

 cd /

 최상위 디렉토리로 이동

 cd $변수명

 변수에 저장된 경로로 이동

 cd ~

 cd $HOME

 cd 

 사용자 홈 디렉토리로 이동

 cd ~계정명

 입력한 사용자의 홈 디렉토리로 이동

 cd -

 이전 경로로 이동



※ 사용예

cd는 간단한 명령이라 사용예는 굳이 필요없지만 그래도 올려본다.


아래는 cd ~를 입력하여 사용자 홈 디렉토리로 이동하는 사용예다.



pwd로 현재 위치를 확인했을때 ~디렉토리인데, ~디렉토리 이전에는 /에 위치하고 있었다. 이때 cd -를 입력하여 이전 경로인 /로 다시 이동하는 모습이다.


아래는 cd [이동하려는 디렉토리 경로]를 입력하여 임의의 위치로 이동하는 모습이다.




※ 요약

얼마 전 파일 압축 명령어인 compress를 알아보았다. 이번에는 반대로 압축 해제 명령어인 uncompress를 알아보도록 하겠다. 참고로 압축 해제는 compress 명령어에 옵션 -d를 하면 풀리기도 하며, 이 두 명령어는 자주 사용하지 않는 명령어들이다. 보통은 tar와 gzip을 많이 이용하는 걸로 알고 있다.


※ 경로

/usr/bin/uncompress


※ 사용법

uncompress [옵션]... 압축파일명



※ 옵션

 옵션

 설명

 -f

 강제로 압축 해제, 기존에 같은 파일명이 있을 경우 덮어씌움

 -v

 압축 해제 진행 과정을 출력

 -c

 원본 파일이 변경되지 않고 해제되는 내용만 출력

 -V

 uncompress 명령어의 버전 정보를 출력



※ 사용예

아래는 간단한 압축 해제 예제다. compress명령어로 압축한 test.tar.Z 파일을 uncompress 명령어로 해제하였고, 제대로 해제된 걸 알 수 있다.


아래는 옵션 -c를 주어 압축해제는 하지 않고 파일 내용을 확인하는 모습이다. 간단하지 않은가?





※ 요약

리눅스 명령어 compress는 하나 이상의 파일을 압축할때 사용하는 명령어로써 압축된 파일의 확장자는 .Z다. 압축 해제는 uncompress 명령어로 하거나 compress 명령어에 옵션 -d를 붙여 압축을 해제하면 된다. 이 명령어는 잘 쓰지 않는 명령어인데, 보통은 tar 명령어로 파일들을 묶고 compress 명령어 대신 gzip이나 bzip2으로 압축을 하는 편이다. 물론 케바케겠지만 말이다.



※ 경로

/usr/bin/compress


※ 사용법

compress [옵션]... 파일명...


※ 옵션

 옵션

 설명

 -b maxbits

 최대 비트 수를 제한

 -c

 기본 생성 파일인 .Z가 아닌 지정한 파일로 생성

 -d

 압축된 파일의 압축을 해제, uncompress 명령과 같은 효과

 -f

 기존에 압축한 파일이 존재해도 이를 무시하고 압축 파일을 생성(f는 force의 약자)

 -r

 디렉터리를 압축할때 하위 디렉토리 및 하위 파일들도 같이 압축

 -v

 압축 진행 여부를 표시

 -V

 compress 명령어의 버전 정보 출력



※ 사용예

이미지에 설명이 있으므로 길게 설명하지 않겠다. 노락 박스만 보면 용량이 압축되어 확실히 줄어든 것을 볼 수 있을 것이다. 또 알아둬야할께 compress 명령어는 -f 옵션을 붙이면 압축을 한뒤 기존 파일을 덮어 씌운다는 걸 알아두기 바란다. 또! 압축하려는 파일이 하나라면 굳이 tar로 묶지 않아도 된다.



※ 관련 페이지

- [리눅스 명령어] uncompress - 파일 압축 해제



※ 요약

리눅스 명령어 look은 파일에서 주어진 문자로 시작하는 라인을 검색하여 출력하는 명령어다. 글로 설명하는 것보다 예제를 직접 보는 것이 직관적이므로 설명은 여기까지 하고 다음으로 넘어가도록 하겠다.


※ 경로

/usr/bin/look


※ 사용법

look [옵션]... 문자열 [파일명]



※ 옵션

 옵션

 설명

 -b

 주어진 워드 리스트에서 이진 검색을 이용

 -d

 알파벳 문자만을 비교 검사

 -f

 알파벳 문자의 대소문자를 구분하지 않음

 -t character

 문자열의 마지막 문자(character)를 지정


※ 사용예

아래는 look 명령어의 간단한 사용 예제다. 이미지에 설명이 있으므로 따로 설명은 하지 않겠으며, 보면 알겠지만 아주 간단한 명령어다.



아래 예제는 파일명을 지정하지 않았다. 파일명을 지정하지 않으면 /usr/share/dict/words 파일 안에서 검색을 하여 결과를 출력해준다. 필자는 이 명령어를 거의 사용하지 않지만 특정 문자나 문자열로 시작하는 단어가 궁금할 때 가끔 사용한다.



필자는 이 명령어를 거의 사용하지 않지만 특정 문자나 특정 문자열로 시작하는 영단어가 궁금할 때 가끔 사용한다. 아래처럼 말이다! 아래는 ar로 시작하는 단어가 궁금하여 look -f ar로 검색해본 예제다.




※ 요약

리눅스 명령어 chroot는 가상의 root를 만드는 명령어다. 가상으로 설정할 루트 경로에 시스템 운영에 필요한 라이브러리와 실행 파일을 복사해 놓고 chroot [새로운 루트 경로] 명령을 내리면 가상 root 시스템으로 들어가게 된다. 시스템 / 아래의 구조가 같고 환경이 구성되면 그 위에서 프로그램을 동작 시킬수 있는데, 이때 실행되는 프로그램들을 통해 기반 시스템의 쉘에 접근하지 못하므로 보안상 유리하다. 또한 chroot [새로운 루트 경로] [명령어]로 지정한 새로운 루트 경로상에서 실행할 수 있다. 현재는 버추얼 머신(VMWare, VirtualBox 등)이 더 나은 보안성과 편리성을 주기 때문에 chroot는 잘 쓰이지 않는 추세다.


※ 경로

/usr/sbin/chroot


※ 사용법

chroot [새로운 루트 경로] [명령어]

chroot [옵션]


※ 옵션

 옵션

 Long옵션

 설명

 

 --help

 chroot 명령어의 사용법 출력

 

 --version

 chroot 명령어의 버전 정보 출력


※ chroot 이용 목적

- 테스트 및 개발

- 의존성 제어

- 호환성

- 복구

- 권한 분리



※ 사용예

아래는 chroot --version로 버전 정보를 확인하는 사용예다.



+ Recent posts