1580, 9/79 회원가입  로그인  
   괴도js
   I. 리눅스 구조 및 일반 명령어.

http://www.hackerschool.org/HS_Boards/zboard.php?id=Free_Lectures&no=207 [복사]


먼저 이글의 원본은 리눅스원에서 근무하시던 안민기님이 정리 하신 내용을 제가 원

문 그대로 혹은 약간 편집 한 것임을 밝힙니다..아마 아시는 분들도 있을 듯..

아...그리고 설치는 생략 하겠습니다...

리눅스 파일 시스템의 중요 디렉토리를 살펴보면

  /                                    루트 디렉토리(최상위 디렉토리)

  /home                           일반 사용자 홈 디렉토리

  /usr                               사용자가 평소에 사용하는 프로그램이나 라이브러리

  /usr/bin                        대부분의 사용자 프로그램이 존재하는 곳

  /dev                              모든 장치에 대한 장치파일이 들어있는 곳

  /var                               로그파일이나 spool 등에 이용

  /var/spool                     메일, 프린트 등에 사용되는 디렉토리

  /usr/sbin, /sbin            시스템 관리에 필요한 명령이 들어있는 곳

  /etc                               시스템 설정(Configuration)파일이 있는 곳

  /proc                            프로세스에 대한 정보가 있는 곳

  /root                             루트 사용자의 홈디렉토리

  /boot                             시스템 부팅에 필요한 파일

  /mnt                              파일시스템을 일시적으로 마운트할 때 사용

  /tmp                              일시적인 파일을 담아두는 곳


리눅스 파일 시스템의 디렉토리 구조

- /  - etc

     - usr

     - var

     - home - mk

             - hyuck

             - pk

     - tmp.....



prompt의 모양



사용하고 있는 shell의 종류에 따라 다르지만 일반적인 경우이다.



[root@localhost root] #   super user

user명   host명   현위치(directory)



[mk@localhost mk] $  일반 사용자


시작과 종료 명령

1) X-Window

l          X-Window 시작 명령 - startx

l          X-Window 종료 - logout

l          X-Window 강제 종료 – ctl + alt + (back-space)


2) 시스템 리부팅과 셧다운 명령

- Reboot 명령

  ① ctl + alt + del : console에서만 사용가능

  ② reboot

  ③ shutdown -r now

  ④ init 6

- Shutdown 명령

  ① halt

  ② shutdown -h now

  ③ init 0


기본 명령어

l          cd : 디렉토리 이동

l          ls : 리스트 출력

l          pwd : 현재 디렉토리 출력

l          cp : 파일 또는 디렉토리 복사

l          mv : 파일 또는 디렉토리 이동 및 rename

l          rm : 파일 및 디렉토리 삭제

l          mkdir : 디렉토리 생성

l          rmdir : 빈 디렉토리 삭제

l          man : 온라인 매뉴얼 보기
  

cd (Change Directory)

작업 directory 이동

다른 경로로 변경시에는 반드시 directory명 앞에 /를 붙여서 표현한다. 그러나, 하위 경로로 갈 때에는 /를 붙이지 않고 그냥 cd mk로 directory명만 사용한다. 이렇게 사용하는 것을 상대경로라고 부른다.

[root@localhost/root]# cd /                 /* 최상위 director로 이동 */

[root@localhost/]#

[root@localhost/root]# cd /home/mk        /*  /home/hyuck directory로 이동  */

[root@localhost/home/mk]# cd ..           /* 바로 윗단계의 directory로 이동 */

[root@localhost/home]#

[mk@localhost/etc]$ cd ~  /* 현재 사용자의 home directory로 이동 (그냥 cd만 써도 됨.) */

[root@localhost/home/mk]$

[참고]

절대 경로

- 사용자의 현재 위치와 관계없이 어떤 directory의 경로를 표시할 때 반드시 /를 붙이는 것.


상대 경로

- 사용자의 현재 위치에 따라서 “.”을 이용해서 그 때 상황에 맞게 경로명을 쓰는 것.


[명령어 쉽게 입력하는 tip!]

① [tab] key

긴 명령의 일부분만 입력 후, 탭키를 누르면 나머지 부분을 다 채워준다.

② history

기존에 사용했던 명령어를 저장해 놓은 history file을 이용하거나, 화살표 방향키를 이용해도 이전에 사용한 명령어를 재사용할 수 있다.

[몇가지 필요한 단축키]

  ① ctl + c : 명령어의 실행을 즉시 중지

  ② ctl + d : 문서나 mail등 text와 관련된 file 입력을 정상적으로 마침.

  ③ ctl + l  혹은 clear명령 : Clear Screen

  ④ ctl + z : 프로세스 일시 정지

  ⑤ shift + page_up or page_down  : ls등의 명령을 실행했을 때,

명령의 결과가 한 화면을 넘어갈 경우 위, 아래로 scroll.

ls(List)

작업하고 있는 directory의 file이나 directory들의 list를 출력한다.

DOS처럼 dir 명령을 사용해도 된다.

주요 옵션

① -a : directory의 모든 file과 directory list를 출력.

“.”이 붙은 hidden file 이나 hidden directory 까지도 화면에 출력한다.

② -i : file의 inode와 함께 list 출력.

③ -l : file의 권한, 소유자, group, 크기, 날짜 등의 자세한 정보 출력.

④ -F : file의 형태와 함께 list 출력.


pwd(Print Working Directory)

현재 작업중인 directory의 경로를 보여줌.


[root@www /root]# pwd

/root

cp(Copy)

파일 또는 디렉토리 복사

주요 옵션

① -a : -dpR 옵션과 동일

② -d : link 유지

③ -i : 존재하는 대상 file을 덮어쓰기 전에 사용자에게 어떻게 할 것인지 물음

(alias에 미리 저장되어 있다.)

④ -p : file의 소유자, group, 권한등의 file 속성을 함께 복사.

따라서 super user만 사용 가능하다.

⑤ -r : 하위 directory까지 복사

[root@localhost/root]# cp source.txt /tmp/target.txt

(/root에 있는 source.txt를 /tmp/target.txt로 복사)

[root@localhost/root]# ls /tmp/

target.txt

⑥ -R : -r 옵션에서 pipe(|)나 /dev/zero와 같은 특수 file을 복사할 경우에 사용된다.


mv(Move)

file이나 directory를 이동(move)시키거나, 이름을 변경(rename)할 때 사용


옵션

-i 옵션 : 이동 수행하기 전에 사용자에게 이동 여부를 물음. (alias에 지정)


[root@localhost/root]# mv  hee.txt  hyuck.txt  /*  hee.txt를 hyuck.txt로 file 이름 변경 */

[root@localhost/root]# ls

hyuck.txt

[root@localhost/root]#mv  hyuck.txt  /home/mk/

/*  /root에 있는 hyuck.txt를 /home/mk directory로 이동  */


[root@localhost/root]# ls /home/mk

hyuck.txt

rm(Remove)

file 삭제 또는 디렉토리 삭제 명령

주요 옵션

  ① -r : 사용하면 directory도 삭제 가능하다.

② -f : 삭제물음 없이 삭제함.

③ -i : file을 지울때 사용자에게 어떻게 할 것인지 물음 (역시 alias에서 지정)

[root@localhost/root]# rm source.txt    /* source.txt file 삭제 */

rm: 'source.txt'를 지울까요? y

[root@localhost/root]#rm -rf linux    

/* linux라는 directory를 지우면서 내부의 file들까지 지운다. */


mkdir(Make Directory)

directory 생성

주요 옵션

-p : 하부 디렉토리 까지 한번에 생성시키기

[root@localhost/root]# mkdir mk  /*  mk 라는 directory 생성  */

[root@localhost/root]# mkdir -p mk/pk/sk  

                    /*  mk/pk/sk 라는 directory를 생성하면서 하위로 자동으로 생성  */

rmdir(Remove Directory)

빈 디렉토리 삭제

주요 옵션

-p : 하부 디렉토리 까지 한번에 삭제시키기

[root@localhost/root]# rmdir temp/   /* temp라는 directory 1개 삭제 */

[root@localhost/root]# rmdir temp*  /* temp로 시작되는 이름을 가진 모든 directory를 삭제 */


man(Manual)

명령어나 각종 자원들의 매뉴얼을 출력

① man ls

② info ls

③ ls --help

매뉴얼 출력화면에서 쓰이는 key

  ① 엔터키: 한 줄 씩 위로 올리면서 내용확인

  ② 스페이스바: 한 page 단위로 올리면서 내용확인

  ③ b : 전화면으로 올라감.

  ④ q : exit

  ⑤ /찾을 문자

  ⑥ n : 위쪽으로 문자 검색, N : 아래쪽으로 문자 검색

  Hit : 10618     Date : 2004/07/04 02:43
[불법/스팸글로 신고하기]



    
1420   [펌]Ptrace를 이용한 재미는 해킹.[4]     ^^
02/08 10845
1419   해킹기법? (기발하다고 해야하나,웃기다고 해야하나)[35]     whqkdnf000
07/31 10816
1418   [Reverse Engineering] 리버싱의 기초 - 범용 레지스터와 Assembly(Pop,Mov)     zen0c1de
07/18 10764
1417   [펌]스니핑[1]     loveaaav
03/24 10702
1416   c언어 for문      hacs98
06/15 10672
  I. 리눅스 구조 및 일반 명령어.     괴도js
07/04 10617
1414   [C기초] 11 - 함수 매개변수로 배열을 넘기려면?      sihun1113
05/01 10574
1413   왠만한사람들은다알지도모르겠지만[6]     백룡출해
03/17 10561
1412   C언어(진법)[9]     whqkdnf000
02/25 10535
1411   메모리 덤프(블루 스크린=STOP 스크린) 코드 및 해결[1]     ROK.AF
02/09 10485
1410   네트워크 개념 휘어잡기 7[8]     소유
09/16 10451
1409   리눅스 명령어 한꺼번에(소유님꺼)[11]     ssakura
07/07 10407
1408   알기 어렵게 설명한 Buffer Overflow[4]     blackcoder
02/17 10348
1407   [동강]백트랙을 이용한 재밌는 놀이들![4]     cdpython
09/29 10293
1406   개발자가 알아야할 10가지 보안팁으로 코드를 보호하자.     푸른하늘
09/01 10281
1405   [자작]포렌식을위한NTFS구조[2]     havu
01/11 10273
1404   네트워크 개념 휘어잡기 6[10]     소유
09/15 10265
1403   배열 내에서 랜덤한 n개 추출하기[2]     kjwon15
12/05 10253
1402   D.Dolphin님 질문내용] LAN과 WAN의 차이점과 VAN의 정의[5]     푸른하늘
09/11 10223
1401   원격종료....[39]     bsjzzz
01/02 10155
[1][2][3][4][5][6][7][8] 9 [10]..[79]

Copyright 1999-2021 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org & Wowhacker.com