I. 리눅스 구조 및 일반 명령어.

 1598, 1/80 회원가입  로그인  
   괴도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 : 13652     Date : 2004/07/04 02:43



    
     [공지] 강좌를 올리실 때는 말머리를 달아주세요^ㅡ^ [29] 멍멍 02/27 19528
1597   [Write Up] Crypto Cat's CTF 2024 - BabyFlow     해킹잘하고싶다
12/29 78
1596   [pwnable.kr] bof     해킹잘하고싶다
12/25 76
1595   [pwnable.kr] Shellshock[1]     해킹잘하고싶다
11/23 197
1594   Shellshock의 기본 요약     해킹잘하고싶다
11/23 165
1593   [pwnable.kr] fd     해킹잘하고싶다
11/23 166
1592   VPN이 연결되었다가 도중에 꺼도 웹 브라우저상에서 유지되는 이유     해킹잘하고싶다
11/22 162
1591   해커들이 해킹시 사용하는 디렉토리 공간[1]     해킹잘하고싶다
11/22 207
1590   Keyboard Hooking -part2 - (Python3 ver)     해킹잘하고싶다
11/20 179
1589   [Windows API] Keyboard Hooking     해킹잘하고싶다
11/20 157
1588   [pwnable.kr] cmd1 공략     해킹잘하고싶다
10/23 334
1587   netdiscover 파이썬으로 구현하기     해킹잘하고싶다
08/13 600
1586   파이썬을 이용한 심플 웹 크롤러     해킹잘하고싶다
08/13 480
1585   파이썬 random모듈을 이용한 숫자맞추기 게임 구현     해킹잘하고싶다
05/30 1039
1584   파이썬 채팅 프로그램 구현     해킹잘하고싶다
05/28 938
1583   파이썬 소켓 프로그래밍의 기초     해킹잘하고싶다
05/26 1084
1582   리눅스 웹 로그 분석     해킹잘하고싶다
05/20 720
1581   리눅스/윈도우 보안 장비 로그     해킹잘하고싶다
05/20 871
1580   고수님들의 도움을 받고 싶습니다     vbnm111
02/11 957
1579   리눅스 커널 2.6 버전 이후의 LKM     jdo
07/25 1480
1 [2][3][4][5][6][7][8][9][10]..[80]

Copyright 1999-2025 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org