[서버] 리눅스 기본명령어

2015. 1. 5. 10:52아직미정

리눅스 서버 사용 시 기본 명령어 정리



1. 기본 명령어


 명령어

 사용법

du

하드사용량 체크(chkdsk)

 

자신의 하드공간을 알려면

# du

특정 디렉토리의 사용량을 알려면

# du -s directory_name

 ls

파일 리스트 보기(dir) 


F : 파일 유형을 나타내는 기호를 파일명 끝에 표시

     (디렉터리는 "/", 실행파일은 "*". 심볼릭 링크는 '@'가 나타남)

l : 파일에 관한 상세 정보를 나타냅니다.

a : dot파일(.access 등)을 포함한 모든 파일 표시.

t : 파일이 생성된 시간별로 표시

C : 도스의 dir/w 명령과 같이 한 줄에 여러개의 정보를 표시

R : 도스의 dir/s 명령과 같이 서브디렉토리 내용까지


예)

# ls -al

# ls -aC

# ls -R

 cd

디렉토리를 변경


# cd cgi-bin : 하부 디렉토리인 cgi-bin으로 들어감.

# cd .. : 상위디렉토리로 이동

# cd 또는 cd~ : 어느곳에서든지 자기 홈 디렉토리로 바로 이동

 cp

화일 복사(copy)


# cp index.html index.old

  : index.html 화일을 index.old 란 이름으로 복사


# cp /home/test/*.* .

 : test 디렉토리내의 모든 화일을 현 디렉토리로 복사.

 mv

 파일이름(rename) / 위치(move) 변경


# mv index.html index.htm

: index.html 파일을 index.htm 로 이름 변경.


# mv file ../main/new_file

 : 파일의 위치변경

 mkdir

 디렉토리 생성


# mkdir download : download 디렉토리 생성

 rm

화일삭제


# rm test.html : test.html 화일 삭제

# rm -r <디렉토리> : 디렉토리 전체를 삭제

# rm -i a.*

 : a로 시작하는 모든 파일을 일일이 삭제할 것인지 확인하면서 삭제 

 rmdir

디렉토리 삭제


# rmdir cgi-bin : cgi-bin 디렉토리 삭제

 pwd

현재의 디렉토리 경로를 보여주기

 pico

 리눅스용 에디터

 put

 ftp 상태에서 화일 업로드

> put guestbook.tar.gz

 get

ftp 상태에서 화일 다운로드

> get guestbook.tar.ga 

 mput 또는 mget

 여러개의 화일을 올리고 내릴때 ( put, get 과 사용법 동일) 

 chmod

화일 pemission 변경

리눅스에서는 각 화일과 디렉토리에 사용권한을 부여.


예) -rwxr-xr-x guestbook.html

nwx : 처음 3개 문자 = 사용자 자신의 사용 권한

r-x : 그다음 3개 문자 = 그룹 사용자의 사용 권한

r-x : 마지막 3개 문자 = 전체 사용자의 사용 권한


읽기(read) -------------- 화일 읽기 권한

쓰기(write) -------------- 화일 쓰기 권한

실행(execution) ---------- 화일 실행 권한

없음)-) ---------------- 사용권한 없음


명령어 사용법

chmod [변경모드][파일]


# chmod 666 guestbook.html

 : test.html 화일을 자신에게만 r, w, x 권한을 줌.


# chmod 766 guestbook.html

 : 자신은 모든 권하능ㄹ 그룹사용자와, 전체 사용자에게는 일기와 쓰기 권한만 줌.

 alias

"doskey alias"와 비슷하게 이용할 수 있는 쉘 명령어 alias는 말 그대로 별명입니다. 사용자는 alias를 이용하여 긴 유닉스 명령어를 간단하게 줄여서 사용할 수 도 있습니다.

이들 앨리어스는 [alias ls "ls-al"] 같이 사용하시면 되는데, 한 번 지정한 alias를 계속해서 이용하시려면, 자신의 홈디렉토리에 있는 .cshrc(Hidden 속성)을 pico등의 에디터를 이용하여 변경 시켜면 됩니다. 

 cat

파일의 내용을 화면에 출력하거나 파일을 만드는 명령(도스의 TYTPE 명령)


# cat filename

 more

cat 명령어는 실행을 시키면 한 화면을 넘기는 파일일 경우 그 내용을 모두 볼수가 없다. 하지만 more 명령어를 사용하면 한 화면 단위로 보여줄 수 있어 유용.


# more <옵션>

옵션은 다음과 같습니다.


Space bar : 다음 페이지

Return(enter) key : 다음 줄

v : vi 편집기로 전환

/str : str 문자를 찾음

b : 이전 페이지

q : more 상태를 빠져나감.

h : 도움말

= : 현재 line number를 보여줌 

 who

who명령의 목적은 시스템에 로그인된 사람을 찾는 것입니다.

현재 로그인된 사용자들의 로그인 이름, 터미널 회선 및 로그인 시간을 나열합니다.


옵션 : -u 현재 로그인된 사용자만을 나열합니다.

         -H 각 열위에 헤더를 표시 합니다.



# who

 vi,
 touch,
 cat

 새로운 파일을 만드는 방법


# vi newfile : vi 편지기 상태로 들어감.

# touch newfile : 빈 파일만 생성됨

# cat > newfile : vi 편집기 상태로 들어감, 문자 작성 후 Ctrl+D로 빠져나옴.

 cat,

 head,

 tail

 파일 내용만 보기


# cat filename : 파일의 내용을 모두 보여줌

# head -n filename : n줄 만큼 위에서 부터 보져줌.

# tail -n filename : n줄 만큼 아래에서부터 보여줌 

 echo

 아큐먼트로 오는 문장이나 그 주소에 해당되는 값을 보여줍니다.

# echo [-ne] [string]


옵션 :

-e : 특수한 의미를 가지는 문자를 실행 합니다.

\a : 벨소리를 냅니다.

\b : 백스페이스

\f : 폼피드

\n : 새로운 라인

\r : 한 중릉 띄웁니다.

\t : 가로방향의 탭

\\ 역슬래시


 find

주어진 파일명과 동일한 파일을 찾고, 그 경로를 출력한다.

- 검색, 찾기


# find / -name newbie -print

최상위 루트 디렉토리 부터 검색하여 검색된 파일을 한 행에 하나씩 표준 출력

# find . -name newbie -print

현재의 작업 디렉토리에서 검색

#find / -size +1000 -print

현 디렉토리에서 크기가 1000블록 이하인 파일 검색

# find. -mtime +10 -print

10일 이전에 수정된 파일 검색

# find -mtime +10 exec rm {} \:

5분전에 마지막으로 수정된 파일을 검색하여 모두 지운다.

# find / -cmin 5 -print

5분전에 마지막으로 수정된 파일을 찾을 수 있다.

# find /home -empty -print

/home 디렉토리에 용량이 0인 파일과 디렉토리를 찾는다.

# find / -perm -4000 -print

퍼미션이 4000 이상인 파일을 모두 출력한다.


 free 메모리의 사용상태와 남은 상태, 버퍼의 상태등을 보여줍니다.

 grep

 파일 중에서 어떠한 패턴을 검색합니다. 입력으로 파일이 오지 않으면 표준 입력으로 부터 압력을 받습니다.

# grep 문장 파일명

옵션

-A [숫자] : 라인에서 패턴과 매치되는 문자열을 찾아서 그 이상의 라인을 전부 보여줍니다.

-B [숫자] : 라인에서 패턴과 매치되는 문장열을 찾아서 그 이하의 라인을 전부 보여줍니다.

-b : 매치되는 라인과 그 크기(bite)를 출력합니다.

-c : 매치되는 개수를 출력합니다.

-f : 파일로부터 패턴을 입력받아 들입니다.

-n : 매치되는 라인과 그 라인수를 출력합니다.

-v : 매치되지 않는 라인을 출력합니다.

-w : 주어진 단어와 완전히 매치되는 라인을 출력합니다.


ex) finger 가 들어있는 것들을 모두 보여주빈다.

# grep finger .bash_history

# grep finger *

# grep finger .*

# grep finger 

# grep finger newfile >fin

# history|grep finger

# history|grep finger | more

# finger

# finger | sort

 kill

 실행되어 있는 프로세서 ID를 입력해서 프로세서를 종료하는 명령입니다.


좀비 프로세스 또한 kill명령을 사용하여 끝낼 수 있는 데, kill -signal pid 와 가틍 ㄴ형식으로 사용하지만 -9(SIGKILL)이 무조건 종료시키기 위한 옵션으로 많이 쓰입니다.

다른 시그널은 프로세스에 따라서 무시도리 수도 있습니다.

꼭 kill이 아니더라도 프로세스에게 시그널을 보낼 수 있는 데, 컨트롤 Z(susp)를 누르면 SiGSTOP, quit(^)는 SIGQUIT, intr(^C)는 SIGNT가 실행중인 프로세스에게 전달됩니다.

 locate

저장 위치를 찾아줍니다.
목록을 DB화 시켜놓았기 때문에 빨리 찾습니다. 


# locate ls

/usr/lib/python1.5/mimetools.py

/usr/lib/python1.5/mimetools.pyc

 ps

프로세스에 관한 리스트를 보여줍니다.

 su

사용중에 다른 ID로 재접속하는 명령어 입니다.

형식 : su 사용자ID (그냥 su만 입력하면 root로 재접속하겠다는 뜻입니다.)

 tail

파일의 마지막 n개의 내용을 보고자할 때 사용하는 명령입니다.


ex)

# tail .bash_history

sdm

kdm

swapon....... 

 vi

 vi 에디터

 w

현재 로그인한 사용자가 무엇을 하고 있는지 보여줍니다.

uptime의 정보가 헤더로 쓰입니다.

JCPU는 사용자가 사용한 CPU 시간을 PCPU는 현재 작업에 쓰이는 CPU 사용 시간을 보여줍니다.

# w

 whereis

$PATH로 지정된 경로에서 찾아 전체 경로명을 보여준다.

ex)

$ whereis cat

cat: /bin/cat/usr/man/man1/cat.1







퍼미션( 권한 ) 이란?


Owner

 Group

 Other

Owner와 Group은 파일 소유자 자신과 속한그룹.

Other는 제3자, 웹사이트 방문객을 제3자로 nobody로 취급

 r

 w

 x

 r

 w

 x

 r

 w

 x

r은 파일 읽기(4), w는 파일 쓰기(2), x는 파일 실행(1)

 7

 5

 5

 파일 소유자는 그것을 읽고 쓰고 실행 시킬 수 있지만, 제3자는 일고 실행만 시킬 수 있다.

 7

 7

 7

 제 3자도 쓰기 권한이 주어진다.

*.html, *.cgi, *.pl, *.txt등의 파일은 업로드시 반드시 ascii로 하고 나머지 그림(*.gif, *.jpg)나 자바 애플릿(*.class), 실행파일 (*.exe, *.zip, *.rar)등은 binary mode로 업로드 할 것