LABORATORY

검색 :
RSS 구독 : 글 / 댓글 / 트랙백 / 글+트랙백

글 검색 결과

리눅스
글 38개

lpic05일차_연습문제

2011/01/24 22:39, 글쓴이 prizm

 

계정, 그룹 연습 테스트

 

1. 그룹추가 - 그룹명(GID) : linux(600), windows(601), unix(602), solaris(603), other(700)

 

2. 그룹추가 - 그룹명(GID) : drum(604), star(605), diy(606)

 

3. 유저추가, 기본그룹(other) - 유저명 : ruby, diamon, perl, python, opal, mixed, clock, ton

 

4. 유저 암호 추가

 

5. 그룹지정

 

     계정들         -    적용 그룹(primary)

 ruby,diamond   -         linux

  python, perl     -         windows

   clock, opal     -           unix

    mixed, ton     -           other

 

     계정들         -   적용 그룹(secondary)

    ruby, ton       -            diy

   perl, clock     -            star

mixed,clock,python,ruby - drum

        ton           -    rnd, evel, market

 


 

1. groupadd -g 600 linux;groupadd -g 601 windows;groupadd -g 602 unix;groupadd -g 603 solaris;groupadd -g 700 other

 

2. groupadd -g 604 drum;groupadd -g 605 star;group -g 606 diy

 

3. useradd -g other ruby;useradd -g other diamon;useradd -g other perl;useradd -g other python;useradd -g other opal;useradd -g other mixed;useradd -g other clock;useradd -g other ton;

 

4. passwd ruby, passwd diamon, passwd perl, passwd pyton, passwd opal, passwd mixed, passwd clock, passwd ton

 

5.

1) usermod -g linux ruby; usermod -g linux diamon; usermod -g windows python;usermod -g windows perl; usermod -g unix clock;usermod -g unix opal;usermod -g other mixed;usermod -g other ton

2) usermod -G diy,drum ruby; usermod -G diy ton; usermod -G star perl;usermod -G star,drum clock;usermod -G drum mixed; usermod -G drum python;

 


모범답안

1.

groupadd -g 600 linux

groupadd -g 601 windows

groupadd -g 602 unix

groupadd -g 603 solaris

groupadd -g 700 other

 

2.

group -g 603...(생략

 

3.

useradd -g other ruby

useradd -g other diamon

useradd -g ohter perl

useradd -g other python

useradd -g other opal

useradd -g other mixed

useradd -g other clock

useradd -g other ton

 

4.passwd로 일일이 해줘야만 한다.

passwd ruby

 

5.usermod -g linux ruby ..생략 : primary

secondary : vi로 해도 된다.

 

이 글은 스프링노트에서 작성되었습니다.

크리에이티브 커먼즈 라이센스
Creative Commons License
2011/01/24 22:39 2011/01/24 22:39

맨 위로

lpic05일차

2011/01/24 22:39, 글쓴이 prizm

04일차에 이어서..


1. useradd

    • 계정을 추가하는 명령
    • 사용법 : useradd [op] [account name]
    • 계정이 추가될 때에는 다음과 같은 정보가 생성된다.

      1. /etc/passwd
      2. /etc/shadow
      3. /etc/group
      4. /home에 계정의 이름으로 된 home directory가 생성된다.
    • 옵션

      • -u [UID] : UID값을 지정하여 계정을 생성
      • -g [GID] : GID(primary group)값을 지정하여 계정을 생성

        • group는 미리 만들어 져야만 한다.
        • GID숫자 대신 그룹이름도 가능하다.
      •  -s [shell] : 로그인시 사용할 default shell을 지정한다.

        • 만약 다른 shell을 쓰고 싶다면, /etc/passwd를 vi로 열어서 shell을 다른걸로 지정하면 된다. ex) 콘셀(ksh)
      • -d [dir]: home directory를 따로 지정한다.
      •  -G [GID] : secondary group를 설정한다.

        •  /etc/group에 그룹이 설정되어 있어야만 한다.
        • secondary group info : /etc/group에 있다.
        • primary group info : /etc/passwd에 있다.
        • ex) useradd -g linux -G solaris, ccna test4
      • 패스워드 설정 : passwd [계정명] 으로 설정한다.(옵션으로 하는건 특수한경우에만 쓰인다.)

        • 일반사용자의 경우, 사전적이거나 너무 짧은 password는 사용 불가
        • root의 경우 그냥 사용 가능.
  1. passwd

    •  계정에 비밀번호를 부여하는 명령어
    • 명령어만 사용하면 현재 로그인한 게정의 암호를 변경하게 된다.
    • 옵션 : passwd [옵션] [계정] on the root user

      • -l : 지정한 계정의 암호를 잠금. shadow파일의 2nd field의 제일 앞에 !!가 있어서 암호가 잠긴다.(결국 해당 계정으로 로그인이 안된다.)
      • -u : 암호가 잠긴 계정의 암호를 푼다.
      • -d : 지정한 계정의 암호를 삭제한다.(특별한 일이 있을때만 사용한다.) : 비밀번호 없이 로그인 가능하다.
  2. chage

    •  계정 암호 정보(/etc/shadow)를 대화식으로 입력하는 명령어
    • 사용법 : charge [옵션] [계정]
    • 옵션

      • 옵션을 거의 쓰지 않는다.
      • -l : 옵션을 보기만 한다.
  3. finger

    • 실무에서는 거의 쓰지 않는다.

      • 이유 : 계정정보를 그냥 볼수 있기 때문에 막아놓는다.
    • 계정의 일반 정보를 확인하는 명령
    • finger [계정명]
  4. chfn

    • 계정의 일반 정보를 대화식으로 지정할 수 있는 명령
    • /etc/passwd에 지정되어 있다.
    • vi로 편집해도 된다...
    • chfn [계정명]
    •  [사용자이름 -> 사용자부서 -> 사용자부서 전화번호 -> 사용자 개인전화번호] 순으로 입력된다.

 

 


  1. 계정수정 : usermod [계정명]

    • 계정명을 받아서 옵션에 적용된 값을 지정 계정정보로 변경하는 명령어
    • /etc/passwd에 적용되므로 로그인 할 때 적용된다. 즉, 변경 즉시 시스템에 받아들여 적용되는 것이 아니라, 재 로그인을 해야만 적용된다.
    • 옵션 : useradd 옵션과 똑같다.(거기에 하나 더 추가된다.)

      • -u [UID] : UID값을 지정하여 계정을 생성
      • -g [GID] : GID(primary group)값을 지정하여 계정을 생성

        • group는 미리 만들어 져야만 한다.
        • GID숫자 대신 그룹이름도 가능하다.
      •  -s [shell] : 로그인시 사용할 default shell을 지정한다.

        • 만약 다른 shell을 쓰고 싶다면, /etc/passwd를 vi로 열어서 shell을 다른걸로 지정하면 된다. ex) 콘셀(ksh)
      • -d [dir]: home directory를 따로 지정한다.
      •  -G [GID] : secondary group를 설정한다.

        •  /etc/group에 그룹이 설정되어 있어야만 한다.
        • secondary group info : /etc/group에 있다.
        • primary group info : /etc/passwd에 있다.
        • ex) usermod -g linux -G solaris, ccna test4
        • 한 계정이 여러개의 secondary group에 속하게 하려면 usermod -G [GID1],[GID2] [계정] 의 형식으로 써야한다.
      • 패스워드 설정 : passwd [계정명] 으로 설정한다.(옵션으로 하는건 특수한경우에만 쓰인다.)

        • 일반사용자의 경우, 사전적이거나 너무 짧은 password는 사용 불가
        • root의 경우 그냥 사용 가능.
      • -l : 계정명을 바꾼다.. 그러나 home directory는 바뀌지 않는다.
    •  usermod -l [변경될 계정 이름] [변경할 계정의 이름]
  2. 계정 삭제

    • userdel
    • 옵션이 없으면, home directory는 삭제되지 않음.

      • 이유 : 나중에 그 자료가 쓸모가 있을지도 모르므로, 기본적으로 삭제하지는 않는다.
    • 옵션

      •  -r : home directory까지 삭제된다.
  3. 그룹

    1. 그룹추가 : groupadd [그룹명]

      • 그룹추가 명령어
      • /etc/group파일에 정보가 생성된다.
      • 옵션

        • -g : 그룹을 생성할때, 특정 GID값을 부여해야할 경우 사용한다.
        • ex) groupadd -g 800 linux : linux라는 그룹을 GID값 800번을 부여하여 생성
    2. 그룹삭제 : groupdel [그룹명]

      • 그룹삭제 명령어
      • 해당 그룹을 primary group으로 사용하는 계정이 있다면 해당 그룹은 삭제가 되지 않는다.
  4. 계정관리

    • usermod 명령어를 통해서 계정 막기

      • usermod -s /bin/false [계정명]
      • usermod -s /sbin/nologin [계정명]
    • passwd 명령어를 통해서 계정 막기

      •  passwd -l [계정명]
      • passwd -d [계정명] 암호삭제 
    • /etc/nologin 생성

      • touch /etc/nologin 생성
      • 이 파일이 생성되면 관리자를 제외한 모든 사용자가 접근이 금지된다.

 

이 글은 스프링노트에서 작성되었습니다.

크리에이티브 커먼즈 라이센스
Creative Commons License
2011/01/24 22:39 2011/01/24 22:39

맨 위로

lpic04일차

2011/01/24 22:38, 글쓴이 prizm

리눅스 디렉토리 구조에 대해서.....

vim편집기..

 

directory 구조와 vi editor설명


  1. Linux Directory 구조

    1. 파티션을 따로 나누어서 사용한다. : mount필요
    2. 설치를 하면서 파티션을 지정한 디렉토리만 본다.
    3. 리눅스는 기본적으로 windows의 드라이브 개념과 달리 모든 파티션은 Directory 형태로 지정되어 사용되는 것이 일반적이다.
    4. 각각의 Directory는 용도에 맞게 정의 되어 있으며, 관리자는 Directory의 용도에 대해서 정확하게 숙지 하고 있어야 한다.
    5. 설명

      1. / : 최상위 directory. 모든 파일들이나 Directory는 /이하에 구성된다.
      2. /root  : root유저의 home directory.

        • home directory에는 각 계정에 관련된 파일들이 있다.
      3. /home : 일반 사용자 계정의 home directory
      4. /etc : system 설정값들이 있는 directory. 대부분 [.conf]의 형태이다.
      5. /usr :  Windows의 Program files와 비슷한 부분. Linux의 기본 package와 외부 프로그램들이 설치되는 default경로
      6. /bin : system 설정과 관련 없는 실행명령어들이 있는 부분

        • ex) cp, ls 와 같은 명령어들
      7. sbin : system binary --> system 설정과 직접적인 관련이 있는 실행명령어들

        •  ex) poweroff, reboot, init 와 같은 명령어들
        • 시스템의 종료, 재부팅 명령어 등등.
      8.  /dev : 리눅스에서는 모든 장치들을 파일로써 관리한다. 장치의 정보를 file의 형태로 놓고 사용한다.
      9. /var : system의 로그들이 쌓이는 곳
      10. /boot : Booting 에 필요한 정보들이 들어있는 곳. 부트로더도 같이 설치된다.
      11. /proc : Linux에서 Process들을 관리하기 위해서 File형태로 위치시킨 Directory

        • 숫자로 되어 있는 디렉토리는 프로세스이다. 해당 프로세서의 대한 내용은 모두 해당 번호의 디렉토리에 들어 있다. 프로세스가 사라지면 삭제된다.
      12.  /etc/skel : 어쨋든 설정과 관련된 것이긴 하지만 조금 더 중요하다.

        • 일반 사용자 계정 생성시 자동으로 복사될 Data들이 위치하는 곳
      13. /misc :  media랑 같다. 자동으로 마운트 되어야 하는 장비들을 여기에 숨겨뒀다가 필요시에 로딩한다.

        •  misc에서 cd cd하면 cd디렉토리로 들어가진다.
        • 2~3분 지나면 사라진다.
        • CD-ROM, Floppy 등 외부 장치가 Mount되면 자동연결 지정 되는곳.
        • centos는 fedora에서 넘어옴. fedora에서는 media디렉토리. centos에서는 misc가 사용.
  2. Vi editor

    1. a

      •   Emacs(프로그래머 전용)와 함께 unix계열 운영체제 환경에서 가장 많이 사용되는 문서 편집기
      • 1976년 빌 조이가 초기 bsd 출시에 포함될 편집기로 개발함
      • 한줄씩 편집하는 줄 단위 편집기가 아닌 한 화면에서 편집할 수 있는 visual editor라는  뜻에서 이름이 유래
    2. b

      •  command mode : 줄단위 편집을 할 수 있다..

        • 해당 줄에서 yy : 해당 line복사하기
        •  p를 누르면 붙여넣기가 된다.
        • 지우려면 해당라인에서 dd를 누른다. (원래는 잘라내기이다.)
        • 여러줄 복사하기 : 만약 5줄을 복사하고 싶으면 숫자 5 + yy
        • 여러줄 삭제하기 : 5 + dd
      • insert mode : command mode에서 i를 누른다.

        •  command mode에서 위치한 곳에서부터 시작할수 있다.
        • 다시 command mode로 가고싶으면 esc를 누른다.
        • a를 누를경우, 그 앞부분은 개행이되고 그 다음부터 된다.
        • o를 누를경우 아랫줄부터 입력시작
        • 대문자 I 는 그 행의 가장 앞쪽으로, 대문자 A는 그 행의 가장 뒷쪽으로, 대문자 O는 가장 아랫줄로간다.
      • last line mode : insert mode에서 바로 last line mode로 갈 수 없다. : 반드시 command mode에서 가야한다.

        • : 을 누르면 가장 아랫줄에 개행된다.
        • :q를 누르면 그냥 저장. 강제종료는 :q!
        • :wq : 저장하고종료
        • :wq! : 강제로 저장하고 종료
        • :set nu : 라인번호 출력 (<-> :set nonu)
        •  슬래쉬로 가면, 검색으로 사용할수 있다.
        • /root : 커서가 위치한 곳 아래서부터 root를 검색한다.. n을 누르면 다음으로 넘어간다.
        • ?root : 커서가 위치한 곳 위로 root를 검색한다.. n을 누르면 다음으로 넘어간다.
      •  
    3. 사용법

      • insert <-> command <-> last line 모드
      • command mode에서 insert mode : i (<-> esc)
      • command mode에서 last line mode(/ or :)
      • insert mode에서 last line mode : 한번에 갈 수 없다. 반드시 command mode를 거쳐야만 한다.
  3. 계정(account)

    •  /etc/passwd안에 모든 게정 정보가 관리된다
    •  계정이 추가되면 4가지 정보가 추가된다.

      • /etc/passwd에 일반정보 생성
      • /etc/shadow에 정보생성
      • /etc/group에 변화
      • /home에 디렉토리 추가
    • 명령어 : useradd(=adduser) [계정명]
    •  새로 추가된 것들은 text파일의 가장 마지막에 추가된다.
    • /etc/passwd

      • zombie:x:501:501::/home/zombie:/bin/bash
      • 1st field : 계정명
      • 2nd field : 비밀번호 -> 현재는 사요하지 않으며 /etc/shadow 파일에 정보를 따로 관리
      • 3rd field : UID(User ID) user account number -> 유저 계정 번호
      • 4th field :GID(Group ID) Primary group -> zombie라는 계정이 속해 있는 기본 그룹
      • 5th field: 계정의 일반정보 -> 이름, 부서, 부서 전화번호, 개앤 전화번호 등등..
      • 6th field :홈디렉토리위치
      • 7th field :해당ID가 사용할 기본 shell -> 로그인할때 로딩될 default shell의 실행파일 경로
      • 참고 : 홈디렉토리, shell은 바꿔줄수도 있다.
    • /etc/shadow

      •  비밀번호 정보가 들어가 있다.
      • zombie:!!:14987:0:99999:7:::
      • 1st  field 게정명
      • 2nd field : 비밀번호 -> !!는 비밀번호 입력이 안되었다는 말이다.(계정생성 되었지만, 로그인불가). 암호는 MD5로 암호화되어 있다.
      • 3rd field는 계정을 만든시간이다. : 기준은 1970년 1월 1일이 기준으로 몇일이 지났는가를 나타낸다.(사실 비번이 변경된 시간이다.)
      • 4th field : 암호 변경후 변경 가능한 최소 일수

        •  ex) 3이면 3일후에 password 변경 가능. 0이면 언제든지 변경 가능
      • 5th field : 암호 변경 유예 기간( 이 시간이 지나면 반드시 암호를 변경해야만 한다.)
      • 6th field : 암호 변경 유예기간이 지난후 경고일수
      • 7th field : 계정사용 불가 날짜. 암호에 lock이 걸리는 형태로 계정 정지
      • 8th field : 계정 만료 날짜. 계정이 사라진다.
      • 참고 : 대략 3~4번째field까지 알아두면 된다.
    • /etc/group

      •  zombie:x:501:aa,bb,cc,dd
      • 1st field : zombie라는 그룹. useradd를 옵션없이 썼기 때문에 id와 같은 그룹이 생긴다.
      • 2nd field : 그룹 암호로 사용되었지만, 현재는 /etc/gshadow에서 따로 관리한다.
      • 3rd field : GID. 500번 이상부터 쓰인다. 나중에 따로 설명
      • 4th field : zombie라는 그룹을 secondary group로 사용하고 있는 계정들.
      • 계정이름 : 0~99번은 시스템에서 예약

        • 100번부터 사용가능. 총 65535개 생성가능
        • 하나의 계정이 여러개의 그룹에 속할수 있는 방법 : secondary group
        • 권한은 똑같다.
        • 나중에 많이 할것이다. : 좌절금지!!!
    • /home디렉토리 : 알아서 만들어지는 공간.

이 글은 스프링노트에서 작성되었습니다.

크리에이티브 커먼즈 라이센스
Creative Commons License
2011/01/24 22:38 2011/01/24 22:38

맨 위로

lpic03일차_명령어 종합문제

2011/01/24 22:38, 글쓴이 prizm

 문제

 

1. /usr/local/Redhat/sources/color/ 라는 디렉토리 구조가 있다.
    현재의 작업 위치가 /usr/local/redhat/ 일 때,
    /usr/local /redhat/sources/color/
    로 상대경로 이동을 하려면 명령어를 어떻게 입력하면 되는가.
 
2. 로그인한 계정의 홈 디렉토리로 이동하려면 명령어를 어떻게
    입력하면 되는가.


3. cat과 같은 출력 명령을 사용할때 > 와 >>의 차이점을 기술하시오


4. /etc/group 파일의 마지막 5줄을 /tmp/tmp_group 이라는 파일로,
    /etc/passwd 파일의 마지막 7줄을 /tmp/tmp_passwd 라는 파일로
    만들어보세요. (한줄 명령어 사용)

 

5. /tmp Directory 에 /mail 디렉토리를 만들어 보시오.

 

6.  /etc/services 라는 이름의 파일의 79, 80번째 줄
    내용을 5번에서 만든 /tmp/mail 디렉토리에 /tmp/mail/select 라는
    이름으로 만들어 보세요 (한줄 명령어 사용)

 

7. 다음 디렉토리 구조를 생성해 보시오.
 
    /tmp
   |     |
 /aa  /test
   |     |
 /bb  /test_tmp
   |
 /cc/

 

8. 위 구조에서 각각 조건에 맞는 파일들을 복사, 생성하세요
  1) /aa 디렉토리  ->  /etc 와 /bin 의 a로 시작하는 모든 파일들
  2) /bb 디렉토리  ->  /etc 와 /bin 의 b로 시작하는 모든 파일들
  3) /cc 디렉토리  ->  /etc 와 /bin 의 c로 시작하는 모든 파일들
  4) /test 디렉토리 -> linux, unix, solaris 라는 0 byte 짜리 파일 생성하고,
                             cat 명령어를 이용해 hello 라는 내용을 입력한 파일 생성
  5) /test_tmp 디렉토리 -> /bin 디렉토리를 통째로 복사

 

9. 아래에 내용과 같이 축약명령들을 작성하시오.
  1) clear -> c
  2) ls -a -> la

 

10. time.bora.net이라는 시간서버와 리눅스의 시간 정보를 동기화시키시오.

 

11. /etc/passwd 파일에서 "nologin"이라는 문자열이 들어가지 않은
     모든 라인들을 찾아보시오.

 

12. 같은 파일에서 sync로 시작되는 라인을 찾아보시오.

 

13. 같은 파일에서 halt로 끝나는 라인을 찾아보시오.

 

14.  /etc 디렉토리에 있는 파일들 중, 이름이 r로 시작하며 링크파일 인
      것들을 찾아 출력해 보시오.

 

15. /tmp/test에 있는 0byte짜리 파일들을 찾아 /tmp/test/test_tmp/ 디렉토리로
     복사해 보시오. (find를 이용한 한줄 명령어 사용)

 

16. /tmp/test 에 있는 0byte 짜리 파일들을 모두 삭제 (find를 이용한 한줄 명령어
     사용)

 

 


 답

1 cd sources/color

2 cd ~

3 >는 새로만들기 혹은 덮어쓰기, >> 새로만들기 혹은 추가하기

4 tail -5 /etc/group > /tmp/tmp_group;tail -7 /etc/passwd > /tmp/tmp_passwd

5 mkdir /tmp/mail

6 head -80 /etc/services | tail -2 > /tmp/mail/select

7 mkdir -p /tmp/aa/bb/cc;mkdir -p /tmp/test/test_tmp

8 cp -rf /etc/a* /tmp/aa;cp -rf /bin/a* /tmp/aa;
  cp -rf /etc/b* /tmp/bb;cp -rf /bin/b* /tmp/bb;
  cp -rf /etc/c* /tmp/cc;cp -rf /bin/c* /tmp/cc;
  cd /tmp/test;touch linux unix solaris;cat >> ss(hello 입력. ctrl +d)
  cp /bin/* /tmp/test_tmp

9 alias c='clear';alias la='ls -a'

10 rdate -s time.bora.net

11 grep -v "nologin" /etc/passwd

12 grep "^sync" /etc/passwd

13 grep "halt$" /etc/passwd

14 find /etc -name r* | ls -F ??

15 find /tmp/test -size 0 -exec cp {/tmp/test/test_tmp/} \;

16 find /tmp/test -size 0 -exec rm {} \;


모범답안

  1. cd (./)sources/color
  2. cd ~
  3. > : 새로만들기혹은 덮어쓰기, >> 새로만들기 혹은 추가하기
  4. tail -5 /etc/group > /tmp/tmp_group;taill -7/etc/passwd > /tmp/tmp_passwd
  5. mkdir /tmp/mail
  6. head -80 /etc/services | tail -2 > /tmp/mail/select
  7. mkdir -p /tmp/aa/bb/cc;mkdir -p /tmp/test/test_tmp
  8. 세부문제있음.

    1. cp -rf /etc/a* /tmp/aa;cp -rf /bin/a* /tmp/aa
    2.  cp -rf /etc/b* /tmp/aa/bb;cp -rf /bin/b* /tmp/aa/bb
    3. cp -rf /etc/c* /tmp/aa/bb/cc;cp -rf /bin/c* /tmp/aa/bb/cc
    4.  touch /tmp/test/linux /tmp/test/solaris /tmptest/unix
    5. cat > /tmp/test/hello -> 이후 hello입력후 ctrl +d
    6. cp -r /bin /tmp/test/test_tmp
  9. 넘어감
  10. 넘어감
  11.  grep -v "nologin" /etc/passwd
  12.  grep "^sync" /etc/passwd
  13. grep "halt$" /etc/passwd
  14. ls -F /etc | grep "@$" | grep "^r"
  15. find /tmp/test -size 0 -exec cp -rf {} /tmp/test/test_tmp \;
  16. find /tmp/test -size 0 -exec rm -rf {} \; 

이 글은 스프링노트에서 작성되었습니다.

크리에이티브 커먼즈 라이센스
Creative Commons License
2011/01/24 22:38 2011/01/24 22:38

맨 위로

lpic03일차_명령어 연습문제

2011/01/24 22:38, 글쓴이 prizm

 문제

 1. clear 명령어와 ls -F 명령어를 자신만이 사용하는 축약 명령으로
   만들어 보세요.

 

2. 서버 시간을 time.bora.net 서버와 동기와 시켜보세요.

 

3. /tmp/test
    /tmp/aa/bb/cc/dd/
    /tmp/silentclass
   디렉토리를 생성해 보세요

 

4. /tmp/test 디렉토리안에 testfile 이라는 0byte 파일을 만들어 보세요

 

5. /tmp/test 디렉토리에 /sbin 디렉토리 안에 있는 'r' 로 시작되는
   파일들을 모두 복사해보세요

 

6. /tmp/aa/bb/cc/ 디렉토리 안에 /etc/group 파일을 grouptest
   라는 이름의 파일로 바꾸어 복사해 보세요

 

7. 6에서 복사한 파일의 내용에서 아래 5줄을 /tmp/aa/bb/cc/dd
   디렉토리에 grouptest1 이라는 이름의 파일에 작성해보세요

 

8. /etc/fstab 이라는 파일이 몇개의 단어로 되어 있는지 확인해보고
   /tmp/silentclass/ 디렉토리에 fatabword 라는 파일로 만들어
   보세요


답안 

alias c='clear';alias lf='ls -F'

rdate -s time.bora.net

mkdir -p /tmp/test;mkdir -p /tmp/aa/bb/cc/dd;mkdir -p /tmp/silentclass

cat > /tmp/test/testfile

mkdir /tmp/test;cp /sbin/r* /tmp/test

cp /etc/group /tmp/aa/bb/cc/grouptest

tail -5 /tmp/aa/bb/cc/grouptest > /tmp/aa/bb/cc/dd/grouptest1

wc -w /etc/fstab; wc -w /etc/fstab > /tmp/slintclass/fatabword


모범답안

alias c='clear'; alias lf='ls -F'

 

rdate -s time.bora.net

 

mkdir tmp/test;mkdir -p tmp/aa/bb/cc/dd; mkdir /tmp/silentclass

 

touich라는 명령어 사용..(22번에..)

touch /tmp/test/testfile

 

cp -rf(r옵션 : 디렉토리까지 한번에 복사.. f 질의없이 강제) /sbin/r* /tmp/test

 

cp /etc/group /tmp/aa/bb/cc/grouptest

 

tail -5 /tmp/aa/bb/cc/grouptest > /tmp/aa/bb/cc/dd/grouptest1

 

wc -w /etc/fstab; wc -w /etc/fstab > /tmp/silentclass/fatabword

 

이 글은 스프링노트에서 작성되었습니다.

크리에이티브 커먼즈 라이센스
Creative Commons License
2011/01/24 22:38 2011/01/24 22:38

맨 위로

lpic03일차

2011/01/24 22:37, 글쓴이 prizm

 명령어 계속

 


19. alias & unalias

  •  복잡한 명령과 옵션을 간단한 문자열로 치환하여 사용 가능하게 하는 명령어
  •  명령어 형식 : alias [치환문자]='[치환명령어]'

    • ex) alias C='clear'
  • unalias [치환문자]
  • alias를 이용하여 문자열을 치환하고, unalias를 이용하여 치환한 문자열을 해제한다.

20. rdate

  • 인터넷 연결된 상태에서, 시스템의 시간정보를 시간서버와 동기화 시킨다.
  • 대표적인 시간서버 : time.bora.net
  • rdate -p : 시간서버의 시간을 출력한다.

    • ex) rdate -p time.bora.net
  • rdate -s : 시스템의 시간을 시간서버와 동기화 시킨다.

    • ex) rdate -s time.bora.net

 

기본명령어 끝!


 21. 단축키

  •  ctrl + c : 현재 작업하고 있는 작업 강제 종료.

    • process를 모를경우, ctrl +  c로써 작업을 종료할 수 있다.
  • ctrl + d : EOF 또는 logout 및 종료.
  • ctrl + z : 작업을 back ground로 전환 후 전환한 작업 멈춤.
  • ctrl + u :  명령줄에 적힌 내용을 커서가 위치한 부분부터 시작하여 앞으로 전부 지운다.
  • ctrl + s : 화면 멈춤. 풀려면 ctrl + q를 누른다. 화면만 멈추는것이다. 입력되는 것들이나 화면에 출력되는건 계속 출력되고 있다.

22. touch

  • 0바이트짜리 파일을 만들어야 하는 경우도 있다.
  • touch /etc/nologin <-- 이런거 만들어주면, 관리자 빼고는 접속불가.
  • touch [경로][이름]
  • touch 11 22 33 44 55 <-- 이런것도 가능
  • 만약 다른 경로에 여러개의 파일을 만들경우.. touch /tmp /qq /tmp/ww <--이런식으로 일일이 다 해줘야만 한다.
  • 로그 팡리이나 보안에 관련된 설정 파일을 생성해 낼 때 사용된다.

23.  grep

  •  대상 (텍스트)파일에서 원하는 문자열을 찾아서 그 라인을 출력.
  • file이나 출력된 내용에서 정규에 맞는 식에 따라 텍스트 라인을 찾아 출력하는 명령.
  • 정규 표현식을 사용.
  • 정규 표현식

    • '^'  : 문자열의 시작 부분을 나타낸다.
    • '$'  : 문자열의 끝 부분을 나타낸다.
    • '*'  : wildcard. 모든것을 나타내는 정규 표현.
  • 옵션

    • -n : 일치하는 문자열의 라인 번호를 같이 출력한다. ->(cat -n을 사용했을 때 나오는 실제 line number가 출력된다.)
    • -i :  대소문자를 가리지 않고 검색하여 출력.
    • -v : 패턴에 맞지 않는 부분을 출력.
    • -c : 검색된 문자열의 개수만을 출력. (거의 쓰지 않는다.)
  • 형식 : grep "^root" /etc/passwd -> etc/passwd 텍스트파일중, 시작이 root로 시작되는 line을 출력하라
  • 옵션이 가장 먼저다.
  • 알아둘걸 :

    • |(pipe) : 명령어를 조합할 수 있는 meta character 로써, 기호 전 명령 수행 결과를 뒤의 명령이 값을 받아 그 명령에 맞게 수행하게 된다.

      • 예제 : ls -F /etc | grep "/$"  -> 끝이 /로 끝나는 것들을 찾아내라(디렉토리만 찾는것이다.)
      • ls -F /etc | grep "/$" | grep "^d" -> 디렉토리중, 시작이 d로 시작되는것을 출력한다.
      • head - 4001  /etc/services | tail -2  : /etc/services에서 4000, 4001번 line만 출력한다.

24. find

  • 해당 파일을 리눅스 전체 시스템에서 찾아주는 명령어.
  • 원하는 파일을 찾고자 할 때 사용하는 명령어
  • 지정한 directory 에서부터 하위 directory까지 검색
  • 많은 옵션들이 존재하고, 그 옵션을 이용하여 찾은 파일들에 대한 명령을 조합하여 사용 가능하다.
  •  옵션

    • -size n : n 크기 파일을 검색하여 출력
    • -name [패턴] : 패턴에 맞는 이름의 파일을 검색하여 출력
    • -user [user id] : 특정 사용자의 파일을 검색(보안을 비롯한 여러가지 이유로..)
    • 나머지는 나중에 하나씩 추가한다.
  • 검색내용을 가지고 뭔가를 할 수 있다 : action이라고 한다.

    • -ls : 검색한 결과를 자세하게 출력( ls -l 과 같은 효과)
    • -exec :  검색한 파일들을 action뒤에 오는 명령어에 적용. 중간에 {}는 찾은 파일중에서 찾으라는 의미.
  • 최종 형식 : find [경로] [옵션] [action]

    • 예제 : find /etc -name passwd -ls : etc안에 있는 파일중 passwd라는 파일을 검색하되, 출력은 자세하게 나타낸다.
    • find /etc -size 0 -exec cp -rf {} /tmp \; -> /etc에서 크기 0인 파일을 찾아서 /tmp안에 복사한다.. 끝에 \;는 항상 exec 액션과 항상 같이 있어야만 한다.
  • 예시

    • find . -name aaa : 현 위치부터 aaa의 패턴을 가진 파일들을 검색하여 출력
    • find /tmp -zise 0 -exec rm {} \; : /tmp 디렉토리 내에서 크기가 0 byte인 파일들을 찾아 검색하고 이를 삭제

25. man page

  • 명령어 도움말 페이지
  •  서버 관리시 숙달되지 않는 명령어의 사옹볍이나 옵션들을 알고자 할 때 손쉽게 알아 낼 수 있는 NIX계열 운영체제
  • cp명령어의 자세한 내용을 보고 싶다. : man cp
  • q를 누르면 종료한다. 

 

이 글은 스프링노트에서 작성되었습니다.

크리에이티브 커먼즈 라이센스
Creative Commons License
2011/01/24 22:37 2011/01/24 22:37

맨 위로

lpic02일차

2011/01/24 22:37, 글쓴이 prizm

 지금 배우는건 fundamental : 기본 명령어같은것을 배운다.

                                         account, permission(ownership), file management, fs(file system)을 배우게 될 것이다.

 


 Shell

  1. user interface

    • 사용자가 리눅스를 사용하기 위해서 필요한 중개자 역할을 하는 프로그램
    • 2가지 갈래

      • GUI : Graphic User Interface.. 그림으로 사람들이 보고 쉽게 편리하게 사용할 수 있는 인터페이스.
      • CUI : Console User Interface.. 순수하게 글자만을(ASCII code) 이용하여 사용하는 인터페이스.
  2. 인터페이스 이동

    •  GUI에서 CUI로 이동하는 방법

      • ctrl + alt + shift + F1~F6
      • tty창은 total 6개..(단, 하나의 콘솔에서..)
      • 일반적으로 1st tty부터 쓴다.
      •  원격접속은 얼마든지 많이 할 수 있다.
      • 각기 창은 tty라는 차으이 형태로 표현되고 하나의 콘솔에는 6개의 CUI 창이 존재한다.
    • CUI에서 CUI로 이동하는 방법

      • alt + F1~F6
    • CUI에서 GUI로 이동하는 방법

      • alt + F7
  3. shell

    • os의 다양한 기능을 사용하기 위해서, 사용자에게 제공되는 인터페이스를 말한다. 논리구조성 kernel을 감싸고 있기 때문에, shell이라는 이름이 붙게 되었다.

기본 명령어

  1. pwd : 현재 작업 위치를 알수 있게 하는 명령어. 대소문자 구분. 파일과 디렉토리는 전부 파일로 인식한다.

    모든 계정은 로그인시, 자신의 home디렉토리에 위치하게 된다.

    ~ 라는 것이 디렉토리명에 있으면 home디렉토리에 있게 된다.

  2. data : 현재 시간을 출력
  3. cal : 현재 달력을 출력한다.
  4.  uname : 현재 쓰는 OS가 뭔지를 알려준다.(실무에서 때에 따라서는 unix일수도 있기 때문에..)

    모든 명령어는 옵션을 집어 넣을 수 있다.

    ex) uname -[option]

    ex) uname -a : 자세한 정보

    gnu? : Gnu is Not Unix

  5. clear : 화면을 청소한다.

    shift + page up : 이전의 것을 볼 수 있다.

  6. ;(세미콜론) : 한줄에 많은 명령어를 수행하기 위해서 사용

    ex) pwd;cal;uname -a

  7.  ls : 도스의 dir.. 현재 디렉토리의 팡리 정보를 출력하는 명령어

    • 옵션

      1.  -F : 파일 종류를 기호로써 확인

        •  파란색 : 디렉토리
        • 하늘색 : 링크파일
      2. -a :  해당 디렉토리 내의 모든 파일을 확인할수 있다.(숨김파일까지 표현 가능)

        • .xxx : 숨김파일을 나타낸다.
      3. -l : 파일에 대한 정보를 자세히 출력한다.
      4. -c : 파일이 변경된 시간 순으로 출력
  8.  cd : 디렉토리 이동

    • 설명

      1. 작업을 위해 원하는 디렉토리 위치로 이동하기 위한 명령어
      2. 상대경로와 절대경로를 이용.
      3. 상대경로

        1.  .(dot)/하위경로 : .(dot)은 자신의 경로를 나타냄
        2. .(dot)는 생략할수도 있다.
        3.  ..(double dot)은 상위 경로를 나타낸다.
        4. ex) ../.. : 2개 위의 상대경로로 이동.
      4. 절대경로 : 진짜 전부 다 쓰려고 해야한다
  9.  file : 파일의 종류를 자세하게 확인할 때 사용하는 명령어
  10. wc :  word count

    • 지정한 파일의 line, word, character 들의 수를 출력한다.
    •  누군가 고정된 파일을 수정했을 시 손쉽게 정보 확인용으로 사용하는 명령어.
    • 명령어를 사용하면 기본적으로 3가지의 정보가 정부 출력되지만, 옵션을 사용하여 원하는값만 출력할 수 있다.
    • 옵션

      • 옵션은 이니셜을 사용한다.
      • ex) wc -c /etc/passwd
      • -l : 파일 내부 줄 수를 출력한ㄷ.
      • -w : 파일 내부 단어 수를 출력한ㄷ.
      • -c : 1 byte단위의 수를 출력한다.
  11. cat

    • 지정된 파일 내의 내용을 출력
    • 내용을 보는 것만이 아니라 간단한 파일 생성에도 사용가능하다.
    • 옵션 n : 라인 번호를 같이 출력해준다.
    • cat >(single redirection) /tmp/ss : /tmp에 ss라는 파일 생성. 이미 파일이 있다면 파일을 지우고 다시 생성
    • 참고사항 : ctrl + c : 프로세스 종료, ctrl + d : EOF
    • cat >>(double redirection) /tmp/ss : ss라는 파일의 추가..
    • cat /etc/passwd > /tmp/pass   : /etc/passwd의 내용이 /tmp/pass라는 파일로 복사(?) 된다.
    • wc -l /etc/passwd >(or >>) /tmp/pass  : 이런것도 가능..
  12. head & tail : 실무에서 가장 많이 쓴다.!!!!!

    • text 출력
    • 내가 보고 싶은 text의 크기가 상당히 클 경우,  앞 or 뒷쪽의 몇번째만 볼수 있는 명령어
    • head or tail /etc/services
    • 옵션추가가 없으면 각각 앞, 뒤 10줄만 출력
    • 옵션은 숫자만 써주면 됨
    • head or tail -100 /etc/services
    •  cat은 파일 내부 정보를 모두 출력하지만, head와 tail을 사용하여 원하는 위치만을 출력하여 확인해 볼 수 있다.
  13. more

    • 지정한 파일 내용을 출력하되, cat과 달리 한 페이지씩 출력되며 그에 따라 간단한 제어도 가능한 명령어.
    •  이후, 스페이스키는 한페이지씩, 엔터키는 줄단위로, 뒤로 갈려면 B, 끝내려면 q를 누른다.
  14. cp(copy)

    • 원본 파일 및 directory를 지정한 위치로 복사
    •  cp /etc/passwd /tmp
    • cp /etc/passwd /tma : /에 tma라는 파일을 만든다.
    •  이름을 바꿔서 복사할수도 있다. : cp /etc/passwd /tmp/pass
    • 만약 내 위치에다가 복사하려면 : cp /etc/passwd .
    • cp /etc . : 디렉토리를 복사할때는 옵션 필요  : 옵션 r ---> cp -r /etc .
    • 옵션을 이용하지 않으면 디렉토리는 복사가 불가능하다.
    • parameter * : wildcard...

      • cp /bin/a* : /bin에 있는 a로 시작하는 모든 파일 복사
    • 예문

      • cp /etc/passwd  /tmp   : /etc/passwd 파일을 /tmp 안에 복사
      • cp /etc/passwd /tmp/pass : 이름이 변경되여 /tmp로 복사
      • cp /bin/a* /tmp : /bin안에 a로 시작되는 이름의 파일을 모두 복사
    •  f옵션 : 덮어쓰기를 해야할 상황이면 강제로 진행
  15. mv(move)

    • 파일이나 directory의 위치를 변경할 때 사용하는 명령
    • 파일의 이름 바꾸기도 사용가능.
    • 사용법은 cp와 거의 동일!
    • mv /tmp/etc babo(./babo가 정석) at /tmp
  16. mkdir(make directory)

    • 디렉토리 만들기
    • 주요 옵션
    •  aa/bb/cc/dd/ee를 한번에 만들기..  : -p옵션 사용.. mkdir -p /tmp/aa/bb/cc/dd/ee
  17. rm(remove)

    • 파일을 삭제하는 명령
    •  디렉토리 삭제 : r옵션.
    • f : 확인하지 않고 강제삭제
    •  rm /tmp/* or rm *(at /tmp)
    • 주의점 : 루트에서 할때는.. 그냥 다 삭제된다..

 


심화된 명령어는 내일부터

 

이 글은 스프링노트에서 작성되었습니다.

크리에이티브 커먼즈 라이센스
Creative Commons License
2011/01/24 22:37 2011/01/24 22:37

맨 위로

lpic01일차

2011/01/24 16:05, 글쓴이 prizm

 기본 명령어.. 잘하면 설치까지.


system - linux

            - windows


network - ccna - ccnp -ccie


unix중 IBM호환컴퓨터에서 쓰이는것은 solaris밖에 없다.(그래서 많이 쓰인다.)


linux ; CUI기반.

windows ; GUI기반.


unix : ken thomson ---------------at&t에 있던 인간이 만들었다.

        bsd와 svr4.1 두가지로 나누어진다.

        bsd : 버클리대학

        svr4.1 : att자체..

        두가지를 통합하면 solaris..


vmware로 수업.

E:\수업용\CentOS-5.4-i386-bin-DVD.iso


version설명

2.6.x버전이용..

일종의 프로그램 규약.

2 : major 변화

6 : minor 변화

x : hotfix 변화


참고할만한 책 : 더러운공룡책(?)

operating system concepts 3만원정도.. 7th edition.(중고나라에서도 판다.)

원서로..


설정구성

IDE, 하드 10기가..


hda의 의미

하드디스크(type ide)는 총 4개의 하드 설치 가능.

primary와 secondary각각 2개씩.


primary master slave

            0:0        0:1                        <---------컴퓨터에서 인식하는 방법

secondary master slave

           1:0         1:1


hd : IDE형태의 하드디스크

a : primary master            hda 1,2,3,4...이런식으로 가는것.

b : primary slave

c : secondary master

d : secondary slave


파티션 나누기

physical로 3개, secondary slave 논리로 해서 12개..

총 15개 파티션 가능.



root : /

윈도의 내컴퓨터의 C드라이브를 말한다.

리눅스는 디렉토리를 마운트를 해서 쓸수 있다.

                                                                  : 하드디스크가 폴더가 된다.


swap : 리눅스에서 쓰는 가상메모리.. physical memory의 2배정도 해준다.

마운트지점에 대해서..

/boot : 부팅에 관한 부트로더가 있는곳... 200메가정도 필요..

/home : 400메가 설정

        윈도우와 다른것 중 하나는 multi user system.

        account의 자원할당이 생성되는 곳. 계정 a가 생기면, /home/a가 생긴다. 이 안에서는 파일을 만들고 뭘 하고 다 할 수 있다. b라는 인간이 만질수 읍다!!!!

 /tmp : 임시파일 디렉토리. 모든 파일들을 복사하고 하는곳이 tmp이다.

           윈도에서는 registry가 없기 때문에 중요한것이 삭제되면 부팅이 안된다. 그렇기 때문에 tmp아래에서 뭐든걸 한다. 1기가설정

/etc : 윈도의 system32폴더와 같다. /etc지우면 망한다.망한다.망한다.망한다. :D(여기에선 설정 안함..)

/usr : 윈도우의 program files와 같다. 각종 프로그램이 깔린다. 윈도 기본 패키지가 깔려야하기 때문에, 그리고 추가되는 경우도 있기 때문에 용량을 크게 설정해야만 한다. 4096메가 설정

/var : log파일 저장용. 이 아래에는 모든 개별 로그정보가 디렉토리 형식으로 기록된다. 500메가 설정

/ : 루트에도 용량이 설정되어 있어야 한다. 나머지 용량을 루트에다가 설정한다.



부트로더

master boot loader : 하드디스크의 0번 트렉은 무조건 부트로더용으로 예약됨..(표준이다.)

설치않는 옵션이 있는 이유: 멀티OS일경우..


관리자는 root계정이다.


그놈버전, kde버전 (그래픽요소를 포함한 것들.. gnome버전으로 한다.)


GUI : x11(x윈도우)

우리는 cui(shell)를 사용한다.


user  -              os      -                  H.W

              shell                   kernel    


shell은 C언어로 만들어 졌다..

리눅스에서 쓰느느것 : bash(Bourne again shell)

최초의 shell은 bsh.

유닉스에서는 korn(ksh)를 쓴다. -> solaris에서 쓸수 있다.

다만, solaris에서 bash를 쓸수 있지만.. solaris에서는 ksh를 쓴다. 이유는? 프라이드 때문에.. 지랄같은 프라이드..

sheel : tty.. tty는 총 6개까지 가능하다..


ctrl + alt + shift + F1  :  shell prompt상태로 넘어간다.

#이 나온다 : hash라고 한다. hash가 표시되면 관리자로 로긴했다는것을 의미. 총 6개까지 가능..

일반계정일경우, $가 표시됨.


alt + F1~F6 : tty를 넘어간다..

처음에 GUI에서 CUI로 넘어올때만 ctrl + alt + shift + F1을 쓴다.


학원주소



이 글은 스프링노트에서 작성되었습니다.

크리에이티브 커먼즈 라이센스
Creative Commons License
2011/01/24 16:05 2011/01/24 16:05

맨 위로