사용자추가및삭제 ( useradd, userdel )

Posted by 주원이^^
2011. 2. 17. 09:18 리눅스/기본정보(OS)
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
 

★ 사용자 추가

 

   사용자를 추가하기 위해서는 강력한 권한을 가진 유저만이 가능하다.

   리눅스에서는 이런 강력한 권한을 가진 유저로서 "root"라는 수퍼 유저가 존재한다.

   그리고 리눅스에 존재하는 유저들에 대한 정보는 "/etc/passwd"라는 파일에 저장된다.

   그럼 일단 /etc/passwd란 파일을 열어보자~!!

 

   파일에 대해 알아보자~!! ( ":"단위로 알아보면~ )

   ▶사용자 이름 : 비밀번호 : 사용자 ID : 사용자가 소속된 그룹 ID : 설명 : home directory : 기본 shell

      ◈ 사용자 ID => 커널이 관리하는 사용자 번호이다.

        ( "0" => 루트 ; "1~14" => 시스템 ; "15~99" => 프로그램 ; "100~" => 일반 사용자 (대개의 일반사용자는 "500"부터이다.)

      ◈ 사용자가 소속된 그룹 ID => Linux의 모든 사용자들은 최소 1개 이상의 그룹에 소속된다.

      ◈ shell => bash : free server / ksh : 상용(콘셀)

 

   그럼 이제 본격적으로 사용자를 만들어 보자.

   일반 유저를 만드는 명령어는 "useradd"라는 명령어다. ("adduser"도 가능하나, useradd가 더 널리 쓰인다. )

   localhost ~ ]# useradd [옵션] (새로운 사용자 이름)

   위와 같은 방법으로 새로운 유저를 만들 수 있다.

   그러나 좀더 변경사항을 고려해서 옵션에 대해 이야기해보자

   useradd -c 설명            => Comment (사용자 설명 추가)

   useradd -d 디렉터리       => 계정에 대한 directory 위치를 지정 (미리 만들어놓은 directory만 가능)

   useradd -e 유효기간        => 지정된 날짜에 사용자의 계정을 삭제 ( chage -E와 동일 기능 )

   useradd -f 비활성 일수    => password가 만기된 후 계정이 영구히 말소될 때 까지의 기간

   useradd -u UID             => 사용자 UID에 대한 값

   useradd -s shell           => 사용자 로그인 shell을 지정

   useradd -n                  => 사용자 계정 추가 기본 모드를 지정하지 않을 때

   useradd -g 그룹명           => 지정한 그룹명에 속함

   useradd -G 그룹...           =>  사용자가 기본 그룹 이외의 다른 그룹에 추가하고자 할 때,

   useradd -M                  => 사용자 디렉토리 없이 계정을 생성

   useradd -D                  => useradd 명령의 기본 설정값 변경.

                             (-D 뒤에 옵션 명령 추가, 옵션없이 "useradd -D"만 입력시 기본설정값을 보여준다.)

                              ( => /etc/login.defs 란 파일에 useradd가 수행될 수 있게 해주는 기본 설정 파일이다.) 

   useradd -D -b 기본홈              => 기본 home directory 위치 변경

   useradd -D -e 기본만료일          => 계정이 말소되는 만료일

   useradd -D -f 기본 비 작동일     =>  패스워드가 만료되고 계정이 말소되기 전까지의 기간

   useradd -D -g 기본 그룹           =>  사용자의 그룹 변경

   useradd -D -s 기본 쉘            => 사용자의 로그인 쉘 변경

   useradd -D -m -k skel           => /etc/skel 대신 다른 경로의 skeleton을 이용하고자 할 때,

                                            ( 사용자의 고유영역권에 저장해줌 <useradd시> )

 

 ※ TIP

  1. passwd를 control해서 사용자를 유보(유예) 시킴

   localhost ~ ]# vi /etc/passwd

                  => test : x : ....... => "x"대신 "*"을 입력하면 어떤 패스워드로도 접속 불가능하다.

                                           "x"대신 공백없이 "x"만 삭제할 경우 어떤 패스워드로도 접속이 가능해진다.

  2. 좀더 간단하게 접속을 못하게 하려면 (shell을 이용)

    localhost ~ ]# vi /etc/passwd

                   => .......:/bin/bash => "/bin/bash"대신 "/bin/false"를 입력하면 shell을 사용하지 않음 ( 로그인 불가)

                                           "/bin/bash"대신 "/bin/nologin"을 입력시 로그인이 안되고 리셋시킨다.

 

  3. E-mail (mail user)

       => 사용자 개개인의 공간은 필요 없으므로 "useradd -M"옵션을 이용하여 계정을 만들자.

 

ex) localhost ~ ]# useradd test => 기본값으로 test유저를 만들어보자~!

     localhost ~ ]# mkdir /home/users

     localhost ~ ]# mkdir /home/users/test1 => test1이 사용할 홈 디렉터리를 미리 만들어 놓음

     localhost ~ ]# useradd -d /home/users/test1 test1

                      => test1의 홈디렉터리를 /home/users/test1을 가진 유저 생성

     localhost ~ ]# cat /etc/passwd => 생성된 계정의 홈디렉터리가 변경되었는지 확인

     localhost ~ ]# useradd -D -b /home/users => 기본 홈 디렉터리를 /home/users로 위치를 변경

     localhost ~ ]# useradd -D => 변경이 잘 되었는지 확인

     localhost ~ ]# useradd test3

     localhost ~ ]# tail -n 5 /etc/passwd => test3사용자의 홈디렉터리가 지정한 위치에 있는 폴더를 사용하는지 확인

           ( => /etc/passwd란 파일도 한 페이지를 넘어가기 때문에 tail을 사용해 아래서부터 지정한 줄 만큼만 보여준다.)

   ♣ 이 이외에도 옵션들이 많으니 옵션을 변경해가며 사용자를 생성하고 확인해보자~!!

 

 

★ 사용자 제거

   => 사용자를 생성하면 4개의 파일에 사용자의 정보가 담아진다.

      ( /etc/passwd, /etc/group , /etc/shadow , /etc/gshadow )

      사용자 제거는 위의 4개의 파일에서 사용자를 제거하게된다.

      사용자 제거시 사용하는 명령어는 "userdel"이란 명령어이다. ( 특별히 옵션은 사용하지 않는다.. )

   

ex) localhost ~ ]# userdel test1 => test1 유저를 삭제하자~!

     localhost ~ ]# tail -n 8 /etc/passwd => 제대로 삭제가 되었는지 확인

 


'리눅스 > 기본정보(OS)' 카테고리의 다른 글

(date , clock ) 시간 맞추기.  (1746) 2011.02.18
사용자 정보변경(usermod , group)  (0) 2011.02.17
VI 에디터  (936) 2011.02.17
텍스트보는 명령어  (0) 2011.02.17
기본적인 명령어  (1639) 2011.02.17

VI 에디터

Posted by 주원이^^
2011. 2. 17. 09:17 리눅스/기본정보(OS)
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

[ 이 동   명 령 어 ]
 
< 글 자  이 동 >
   h => 좌측으로 이동 / j => 아래로 이동 / k => 위로 이동 / l => 우측으로 이동
 
< 문 서   이 동 >
   w , W => 한 단어 앞으로 이동             /   b , B => 한 단어 뒤로 이동
   e , E  => 단어의 끝으로 이동
         => 다음 문장의 처음으로 이동        /   (     => 이전 문장의 처음으로 이동
        => 다음 문단의 처음으로 이동         /   }      => 다음 문단의 처음으로 이동
   ]]     => 다음 세션으로 이동                 /  [[     => 이전 세션으로 이동
   0(숫자) => 현재 라인의 처음 위치로 이동  /  $      => 현재 라인의 마지막 위치로 이동
 
< 라 인   이 동 >
   +      => 다음 라인의 처음으로 이동                  /    -    => 이전 라인의 처음으로 이동
   H   => 화면의 최상단으로 이동        /  M  => 화면의 중간으로 이동         /  L   => 화면의 최하단으로 이동
   nH    => 화면 상단으로 부터 n번째 라인으로 이동  /    nL   => 화면 하단으로 부터 n번째 라인으로 이동
 
< 화 면   이 동 >
   CTRL + F  => 한 화면 앞으로 이동              /   CTRL + B   => 한 화면 뒤로 이동
   CTRL + D  => 한 화면의 반만큼 앞으로 이동   /   CTRL + U   => 한 화면의 반만큼 뒤로 이동
   z ENTER   => 현재 커서의 위치를 화면의 첫 라인이 되게 이동
   z.            => 현재 커서의 위치가 화면의 중간 라인이 되게 이동
   z-            => 현재 커서의 위치가 화면의 마지막 라인이 되게 이동
 
< 검 색   이 동 >
   /검색어   => 검색어에 맞는 첫번째 위치로 이동 ( 아래쪽으로 이동 )
   ?검색어   => 검색어에 맞는 첫번째 위치로 이동 ( 위쪽으로 이동 )
   ※ 검색어로 찾아낸 것이 여러개일 경우~
   n          => 똑 같은 방향의 다음 검색 위치로 이동
   N          => 반대 방향의 다음 검색 위치로 이동
   /          => 아래쪽 방향으로 이전 검색을 재수행
   ?          => 위쪽 방향으로 이전 검색을 재수행
 
< 라 인   넘 버   이 동 >
   CTRL + G   => 현재 라인의 넘버를 출력
   nG            => 라인 넘버 n으로 이동
   G              => 버퍼에서 가장 마지막 라인으로 이동
   ``              => G 명령을 하기 전의 위치로 이동
   :n             => 라인 넘버 n으로 이동
 
 
[ 편 집   명 령 어 ]
 
< 편 집 >
   i    => 커서의 앞에 글자를 추가                             /  a    => 커서의 뒤에 글자를 추가
   I    => 라인의 처음에 글자를 추가                           /  A    => 라인의 끝에 글자를 추가
   o   => 현재 라인에서 앞에 한 줄을 추가한 후 글자 추가  /  O    => 현재 라인에서 뒤에 한 줄을 추가한 후 글자 추가
   R   => 기존 글자를 덮어씀
 
< 변 경 >
   r       => 문자 변경
   cw    => 단어 변경
   cc    => 라인 변경
   C      => 커서부터 현재 라인의 끝까지를 변경
   s      => 한 글자를 지우고 글자 추가
   S      => 현재 라인을 지우고 글자 추가
 
< 삭 제 >
   x      => 커서에 있는 글자 삭제
   X      => 커서 앞에 있는 글자 삭제
   dw    =>  단어 삭제
   dd     => 라인 삭제
   D      =>  커서부터 라인의 끝까지 삭제
 
< 붙 여   넣 기 >
   p      => 커서 다음에 복사한 내용 붙여 넣기
   P      => 커서 앞에 복사한 내용 붙여 넣기
 
< 복 사 >
   yw     => 단어 복사
   yy      => 라인 복사
   "ayy   => 버퍼 a에 현재 라인을 복사
 
 
[ 명 령   라 인   옵 션 ] ( 쉘모드에서 입력 )
   vi file               => file을 편집 대상으로 vi 에디터를 시작
   vi file1 file2      => file1과 file2를 편집 대상으로 vi 에디터를 시작
   view file           => 읽기 전용으로 file을 vi 에디터로 편집
   vi -R file           => file을 읽기 전용으로 vi 에디터를 시작
   vi -r file            => 최근의 file을 복구
   vi + file             => file을 vi 에디터로 편집할 때 처음 커서의 위치를 마지막 라인으로 이동
   vi + n file          => n번째 라인에서 커서를 위치한 후 file을 편집
   vi + /검색어 file   => 검색어에 해당하는 위치에서 file을 편집
   ex file               => ex 모드로 file을 편집
 
 
[ 종 료   명 령 어 ]
   ZZ                   => 현재 파일을 저장하고 종료
   :x                    => 현재 파일을 종료
   :wq                  => 현재 파일을 저장하고 종료
   :w                    => 현재 파일을 저장
   :w!                   => 읽기 전용을 무시하고 현재 파일을 저장
   :a,bw newfile    => a에서 b까지의 라인을 새로운 파일로 저장
   :a,bw >> file      => a에서 b까지의 라인을 file에 추가
   :w %.new         => 현재 편집 파일을 file.new라는 파일로 저장
   :q                    => 파일 편집 종료
   :q!                   => 파일 보호 제약을 무시하며 강제로 파일 편집 종료
   :Q                    => 파일 편집 종료하면서 ex를 기동
   :e file2            => vi에디터를 종료하지 않은 채 file2를 편집
   :n                    => 현재 로드된 다음의 파일을 편집
   :e!                   => 작업한 내용을 버리고 마지막 저장된 파일로 전환
   :e#                  => 다른 파일 편집
   %                    => 현재 파일 이름 출력
                     => 다른 파일 이름 출력
 
 
[ 기 타   명 령 어 ]
    u                                            => 마지막 명령 Undo
    U                                            => 현재 라인의 명령 Undo
    J                                            => 두 라인 합치기
    CTRL + L , CTRL + R(r의 대문자) => 현재 화면 다시 그리기 (Refresh)
   
----- ex 명령어 ---------
    :sh                                      => 쉘 명령 라인으로 잠시 빠져나감
    CTRL + D                              => 쉘 명령 라인에서 vi 에디터로 전환
    :!shell command(명령어)          => 쉘 명령어 실행
    :r filename                           => 현재 편집 파일의 마지막에 filename의 내용을 추가
    :r! shell command(명령어)        => 쉘 명령어의 결과를 현재 편집파일의 마지막에 추가
 
----- 북 마 크 -----------
    mx                                   => x로 현재 위치를 북마크
    x                                     => 저장한 x 북마크 위치로 이동
    ``                                     => 이동 후 이전 북마크나 내용으로 이동
    'x                                    => 북마크 x가 위치한 라인의 처음으로 이동
    "                                      => 이전 북마크가 위치한 라인의 처음으로 이동
 
----- 단 축 명 령 ---------
    :map x                               => x를 일련의 편집 명령어로 매핑
    sequence                           => x로 매핑된 명령어를 해제
    :ab abbr phrase                  => 특정 문구로 abbr로 축약해서 사용.
                                              Abbr이 입력이 되었을 때 특정문구로 대체되어 나타남
    :unab abbr                         => 단축어 해제
 
----- 환 경   설 정 --------
    :set option(옵션)                   => 옵션을 활성화
    :set option(옵션)=value          => 옵션에 value값을 설정
    :set nooption                      => 옵션 비활성화
    :set                                     => 사용자에 의해 설정된 옵션 출력
    :set all                                => 현재 설정된 모든 옵션 출력 ( 기본 옵션, 사용자 정의 옵션 )
    :set option?                        => 옵션에 설정된 값 출력

 

'리눅스 > 기본정보(OS)' 카테고리의 다른 글

사용자 정보변경(usermod , group)  (0) 2011.02.17
사용자추가및삭제 ( useradd, userdel )  (1) 2011.02.17
텍스트보는 명령어  (0) 2011.02.17
기본적인 명령어  (1639) 2011.02.17
리눅스디렉토리  (0) 2011.02.17

텍스트보는 명령어

Posted by 주원이^^
2011. 2. 17. 09:16 리눅스/기본정보(OS)
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

 

★ cat

    => Ascii code로 되어있는 file을 보여준다.(문서 file)

 

      cat -b => 공백라인 제외하고 행 번호를 붙여 화면에 출력

      cat -n => 공백라인 포함해서 행 번호를 붙여 화면에 출력

 

(ex) root@localhost ~ ]# cat /etc/passwd

        root@localhost ~ ]# cat -b /etc/passwd (행번호가 붙어서 나오는지 확인)

 

 

★ nl

    => 공백라인 제외하고 행 번호를 붙여 화면에 출력한다. ( = cat -b)

 

(ex) root@localhost ~ ]# nl /etc/passwd (행번호가 붙어서 보이는 지 확인)

 

 

★ more, less

    => 텍스트로 작성된 파일을 페이지 단위로 보여준다. ( "space"키 => 다음 페이지 , "b"키 => 이전 페이지)

 

   ※ more는 한번 본 페이지는 다시 보지 못하는 반면

      less는 한번 본 페이지도 다시 볼 수있다.("q"버튼을 이용하여 나갈 수 있다.) 

 

(ex) root@localhost ~ ]# more install.log (페이지 단위로 끊어서 화면으로 보여주는 것을 확인)

        roor@localhost ~ ]# less install.log (화살표 키나 "page up"키를 이용해서 지나간 페이지도 다시 확인)

 

 

★ head, tail

    => 텍스트로 작성된 파일을 화면에 행렬 수로 화면에 출력한다. (기본값 10행만큼)

 

    ● head -n 숫자 => 첫 행을 기준으로 위에서부터 숫자 행만큼만 출력한다.

         (ex) root@localhost ~ ]# head -n 7 install.log (첫행을 기준으로 위에서부터 7행까지만 화면에 출력)

    ● tail -n 숫자 => 마지막 행을 기준으로 아래서부터 숫자행만큼 화면에 출력한다.

         (ex) root@localhost ~ ]# tail -n 8 install.log (마지막 행을 기준으로 아래서부터 8행만큼 화면에 출력)

 

 

★ grep(필터)

    => 필요한 것만 걸러주는 명령어 (Global Regular Expression Print)

 

    (ex) root@localhost ~ ]# ls -l /etc | grep passwd

 

 

★ sort

   => 파일안의 내용을 정렬해서 보여준다.

 

    sort -r => 역방향 정렬해서 보여준다. 

 

   (ex) root@localhost ~ ]# sort install.log (안의 내용들이 A~Z까지 순차적으로 정렬)

           root@localhost~ ]# sort -r install.log (안의 내용을 Z~A까지의 순대로 정렬)

 

 

★ cut

    => 열 단위로 출력 가능~

 

   (ex) root@localhost ~ ]# cat /etc/passwd

           root@localhost ~ ]# cut -d: -f1,4 /etc/passwd (passwd파일에서 1열과 4열만 출력해서 보여줌)

 

 

★ sed

    => Streamining Editor 의 약어로 스트림 에디터로 볼 수 있다.

 

  (ex) root@localhost ~ ]# cat > test.txt

           abcd

           "ctrl + d"키를 누르세요

           root@localhost ~ ]# cat test.txt (abcd라고 나오는지 확인)

           rott@localhost ~ ]# sed 's/abcd/ABCD/g' test.txt ( 그럼 abcd대신 ABCD가 나오는 것을 확인)

 

 

★ uniq

    => 중복이 되는 것이 있는지를 파악하고 보여줌

 

     (ex) root@localhost ~ ]# cat > test.txt

             abcd

             abcd

             asdf

             asdf

             qwer

             "ctrl + d"버튼을 눌러서 빠져나오자~!

             root@localhost ~ ]# uniq test.txt (그럼 중복된 것은 하나로만 보여주면서 출력할 것이다.)

    uniq -c (카운트) => 중복된 갯수를 표현한다.

             (ex) root@localhost ~ ]# uniq -c test.txt (중복된 파일과 중복된 것이 몇개인지 보여줌)

 

    uniq -d => 중복된 행만 출력

             (ex) root@localhost ~ ]# uniq -d test.txt (중복된 단어들만 보여줄 것이다.)

 

 

★ diff

    => diff A B  => A를 기준으로 B를 비교해 틀린 것만 출력 ( 두개의 file을 비교한다.)

 

    (ex) root@localhost ~ ]# cp test.txt test1.txt

            root@localhost ~ ]# cat >> test.txt (기존 파일에 추가로 단어 삽입)

            kdmkorea

            "ctrl + d"를 눌러서 빠져나오자~!

             root@localhost ~ ]# diff test.txt test1.txt ( "<  kdmkorea"라고 보여질 것이다)

 

 

★ od , hex damp

     => 실질적으로 file안에 들어가 있는 것을 8진수 형태로 보여준다.

 

    (ex) root@localhost ~ ]# od -x /bin/ls (숫자들이 무지 많이 출력되는 것을 확인할수 있다..)

 

 

 

★ wc

    => 통계 명령어 ( 첫번째 숫자 : 라인수, 둘째 숫자 : 단어수, 셋째 숫자 : byte수(character 수))

 

    wc -l => 라인 수만 출력

    wc -m(c) => character 수 (문자수)

    wc -w => 단어수

 

    (ex) root@localhost ~ ]# wc install.log

            root@localhost ~ ]# wc -l install.log

            root@localhost ~ ]# wc -m install.log

            root@localhost ~ ]# wc -w install.log

 

★ 리다이렉션

    => 표준 입출력의 방향을 바꿔준다.

 

   ● "<" => 써도되고 안써도 무방하다. (일반 Command명령어의 기능과 동일하다.)

   ● ">" => 모니터로 출력될 내용을 파일(HDD)로 저장시에 사용 (HDD로 방향을 바꾼다.)

   ● ">>" => 위의 ">" 기능과 유사하지만 ">"는 새로 만드는 것이라면 ">>" 추가로 입력하는 형식이다.

 

  (ex) root@localhost ~ ]# ls -l > aa.lst (ls -l로 보여지는 결과물을 aa.lst파일로 저장)

        root@localhost ~ ]# cat aa.lst (ls -l의 결과가 맞는지 확인)

        root@localhost ~ ]# cat >> aa.lst

        abcd

        "ctrl + d"를 눌러서 빠져나옴

        root@localhost ~ ]# cat aa.lst (위의 aa.lst의 파일에 abcd가 추가되었는지 확인)

        root@localhost ~ ]# sort < aa.lst > bb.list (aa.lst 파일을 정렬해서 bb.list 에 저장한다.)

        root@localhost ~ ]# cat bb.list (aa.lst파일의 내용이 정렬되어 있는 것을 볼 수 있다.)

 

'리눅스 > 기본정보(OS)' 카테고리의 다른 글

사용자 정보변경(usermod , group)  (0) 2011.02.17
사용자추가및삭제 ( useradd, userdel )  (1) 2011.02.17
VI 에디터  (936) 2011.02.17
기본적인 명령어  (1639) 2011.02.17
리눅스디렉토리  (0) 2011.02.17

기본적인 명령어

Posted by 주원이^^
2011. 2. 17. 09:14 리눅스/기본정보(OS)
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

 

모든 명령어의 사용법이나 명령어의 옵션들을 알고자 할때

                   => 명령어 --help, man 명령어 (ex) ls --help 또는 man ls

 

★ ls

   => file 출력

  

 ●옵션

    ls -a, ls --all                 => 디렉토리 내의 모든 파일 출력

    ls -l, ls --format=long   => 파일 정보 (종류, 퍼미션, size등) 표시

    ls -s, ls --size              => 1k block 단위로 file크기 표시

    ls -t, ls --sort=time     => 최근 file부터 출력

    ls -c, ls --time             => 최근 변경 시간에 따라 정렬

    ls -C                             => 종류에 따른 color 표시

    ls -R(recursive)            => 현재 directory 와 하위 directory 모두 출력

 

 

★ pwd

    => Print Working Directory ; 현재 directory의 전체 경로 출력

 

(ex) root@localhost ~ ]# pwd

      /root                             => 현재 내가 위치한 directory는 "/root"이다.

 

★ mkdir

    => 새로운 directory 생성

 

  ●옵션

     mkdir -p            => 지저한 하위 directory까지 한번에 생성

 

(ex) root@localhost ~ ]# mkdir -p aaa/bbb/ccc

                                  => /root/aaa/bbb/ccc directory 생성

 

★ rm

   => file or directory 삭제

 

   ●옵션

      rm -f   => message 없이 그대로 삭제

      rm -i    => 삭제시 일일이 삭제할 것인지 물어본다.

      rm -r    => 하위 directory 포함한 모든 file을 삭제.

      rm -v   => 삭제 전 file을 보여준다. (과정, 상황)

 

★ rmdir

   => directory안에 아무런 file이 없는 경우 directory 삭제한다.

      (directory안에 file이나 다른 directory가 있는 경우 삭제되지 않는다.)

 

★ cd(change directory)

   => 경로를 변경시에 사용한다.(내가 있는 현재 directory를 변경할때...)

 

   ① 절대 경로 (ex) root@localhost ~ ]# cd /bin

                        root@localhost bin ]#

  

   ② 상대 경로

        (1) . => 현재 directory (ex) root@localhost ~ ]# cd .

                                           root@localhost ~ ]#        => 현재 디렉토리로 이동했으니 변화가 없다.

        (2) .. => 상위 directory (ex) root@localhost ~ ]# cd ..

                                            root@localhost / ]#       => 상위 디렉토리인 /로 이동했다.

        (3) ~ => 접속한 $USER의 고유 영역권(접속하면 처음 위치하게되는 디렉토리)

               (ex) root@localhost / ]# cd ~

                     root@localhost ~ ]#       => root가 처음 접속하면 위치하는 디렉토리인 /root로 이동되었다.

                    ※cd ~에서 '~'부분은 생략 가능하다. 즉, 그냥 cd라고 쳐도 cd ~와 동일한 기능을 갖는다.

 

★cp (copy)

   => 파일을 복사하는 명령어이다.( cp [옵션] 원본파일(디렉토리) 대상파일(디렉토리) )

 

   ● 옵션

     cp -a   => 원본 file의 속성, 링크 정보를 유지

     cp -b   => 백업 file을 만듦

     cp -d   => 심볼릭 file 자체를 심볼릭 정보와 함께 복사.

     cp -f   => 복사할 file이 존재할 때 삭제하고 복사(move와 동일)

     cp -i    => 복사할 것인지 물어봄

     cp -l    => directory가 아닌 경우 복사 대신 하드링크로 만듦

     cp -p   => 원본 file의 소유, 그룹, 권한, 허용 시간 보존한채 복사

     cp -r   => 하위 directory내에 있는 모든 file까지 통째로 복사

     cp -s   => directory가 아닌 경우 복사 대신 심볼릭 링크로 만듦

     cp -u   => 대상 file보다 원본 file이 새로운 것일때 복사한다.

 

(ex) root@localhost ~ ]# mkdir yyy

      root@localhost ~ ]# cp -r /etc/rc.d/*  yyy

      root@localhost ~ ]# cd yyy

      root@localhost yyy ]# ls -l (  => 폴더들이 복사가 되었는지 확인)

      root@localhost yyy ]# cd init.d

      root@localhost init.d ]# ls -l (  => 파일들이 복사되어 있는지 확인)

 

★ mv

    => 파일과 디렉토리의 이름 변경이나 위치 이동시 사용

        (cp 명령 후 rm 명령 수행 -> 원본 파일 삭제) => mv [옵션] 원본파일(디렉토리)  대상파일(디렉토리)

 

  ●옵션

     mv -b     => 파일이 지워지기 전에 백업 file을 만듦

     mv -f     => 대상 file이 있더라도 file을 강제로 삭제

     mv -i      => 대상 file이 있는 경우 덮어 쓸 것인가 물어봄

     mv -u     => 대상 file보다 원본 file이 최신 것일때만 upgrade

     mv -v     => file 옮기기 전의 과정을 보여 줌

 

(ex) root@localhost ~ ]# mv -fv yyy kkk (디렉토리 Move)

       root@localhost ~ ]# ls -l

       root@localhost ~ ]# cd kkk

       root@localhost kkk ]# ls -l

       root@localhost kkk ]# mv rc rc2 (파일 move)

       root@localhost kkk ]# ls -l

 

★ touch

   => 크기가 0인 새 파일을 생성하거나 이미 존재하는 파일인 경우 수정 시간을 변경

 

(ex) root@localhost ~ ]# touch abc.txt

      root@localhost ~ ]# ls -l (생성 시간을 기록)

      => 3 ~ 5 분 정도 지난 후에

      root@localhost ~ ]# touch abc.txt

      root@localhost ~ ]# ls -l (시간이 현재 시간으로 바뀌었는지 확인)

 

★ clear

   => 화면 지우기

 

(ex) root@localhost ~ ]# clear

 

★ cal

   => 달력보기

 

(ex) root@localhost ~ ]# cal

 

★ date

   => 시간, 날짜 보기

 

(ex) root@localhost ~ ]# date (날짜 및 시간 확인)

      시간 변경은 "월""일""시""분""년"순으로 입력

      2007년 7월 14일 22시 53분 => 071422532007

      root@localhost ~ ]# date 071422532007

      root@localhost ~ ]# date (날짜 및 시간 변경 확인)

 

★ man

   => 모든 명령어의 도움말(/usr/share/man에서 제공한다.)

 

(ex) root@localhost ~ ]# man date (종료시 "Esc" -> ":" -> "q" )

 

★ 파이프(pipe)

   => 두 프로그램을 연결해 주는 통로의 의미 (Command(출력단) | Command(입력단) | Com .....)

       " | " 문자를 사용(영문으로 "l"이 아니라 쉬프트를 누르고 "\"버튼을 누르면 나오는 문자)

 

(ex) root@localhost ~ ]# ls -l /etc | more (스페이스키나 커서키등을 이용해서 페이지 이동)

 

'리눅스 > 기본정보(OS)' 카테고리의 다른 글

사용자 정보변경(usermod , group)  (0) 2011.02.17
사용자추가및삭제 ( useradd, userdel )  (1) 2011.02.17
VI 에디터  (936) 2011.02.17
텍스트보는 명령어  (0) 2011.02.17
리눅스디렉토리  (0) 2011.02.17

리눅스디렉토리

Posted by 주원이^^
2011. 2. 17. 09:08 리눅스/기본정보(OS)
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

 

※ Directory 기능 및 내용

 

▶ "/"  → root directory (최상위 directory)

             설치시에 루트 디렉토리만 잡아도 상관 없는 이유는 최상위 디렉토리이기 때문이다.

             (단, 설치시 루트 디렉토리를 설정하지 않으면 깔리지 않는다...ㅡㅡ;)

 

▶ "/bin" → 2진 파일들이며 기본이 되는 명령어 들이 모여 있는 디렉토리이다.(binaries)

                이 디렉토리는 시스템, 즉 Root사용자가 사용하는 디렉토리이다.

 

▶ "/sbin"(System binaris) → System 관리(booting, 복구, 보수등등)를 위한 명령어를 모아놓은 디렉토리이다.

                                       이 디렉토리 역시 시스템, 즉 Root사용자가 사용한다.

 

▶ "/usr/sbin" → /usr이 Mount된 이후에 실행되는 Program들이 모여있는 디렉토리이다.(User가 사용한다.)

   "/usr/bin" → /usr이 Mount된 이후에 User들이 사용하는 기본 명령어들이 모인 디렉토리이다. 

  "/usr/local/sbin" → Local System을 위해 새로 설치한 관리 Program들이 모인 디렉토리이다.(역시 User가 사용한다.)

 

▶ "/etc" → Linux System에 관한 환경설정에 연관된 Files와 Directories를 가진 Directory이다.

                 /etc아래에 있는 대부분의 Files은 System관리자에 의해 관리되는 File이다.

              (ex) Web Server 환경설정, System 계정 사용자 정보, Password 관리, System의 File system 관리파일

                     System sercurity 에 관련된 File, System초기화 설정 File, TCP/IP설정 File 등등...

 

▶ "/mnt"(FedoraCore 2까지) → 외부장치(Floppy disk, CD-ROM, 삼바(Samba))등을 마운트하는 경로를 갖는 디렉토리.

    "/media"(FedoraCore 3부터) → /mnt와 유사한 기능을 갖는 디렉토리이다.(/mnt → /mount)

                                           (ex) /media/CDROM ,  /media/floppy....

 

▶ "/usr" → 시스템에 사용되는 각종 응용 프로그램들이 설치되는 디렉토리이다. 대부분의 프로그램과 그에 관련된 명령어 및

                 라이브러리들이 이 디렉토리에 위치하게 된다. 이외에도 커널 소스나 X 시스템의 Files, 각종 C언어 관련 헤더

                 파일들도 이 디렉토리안에 저장된다.

 

▶ "/usr/X11R6" → X윈도우 시스템에 사용되는 모든 파일들이 이 디렉토리안에 저장된다. 이 디렉토리는 X위도우 시스템의

                         개발과 설치를 좀 더 쉽게 하기 위해서 전체 시스템 디렉토리 구제에 통합되지 않고 독자적인 구조를

                          갖는다.

 

▶ "/lib" → 프로그램들의 각종 라이브러리들이 저장되어 있는 디렉토리이다.

 

▶ "/home" → 시스템 계정에  사용자들이 사용하게 될 Home directory와 Ftp, www등 과 같은 Service directory

                    들을 모아놓은 디렉토리이다.

                    (즉, 일반사용자들이 가장 많이 사용하게 될 공간이다. 다른 폴더는 사용자가 건드리지 못하게 제한이

                      걸려있기 때문에 대부분의 사용자들은 이 Home directory에서 작업을 하게 된다.)

 

▶ "/dev" → System의 각종 장치들에 접근하기 위한 장치 드라이버들을 모아놓은 디렉토리이다.

                  이 디렉토리안에 있는 파일들은 특수 파일로서 하드에 저장되지 않고, Memory가 가지고 있는 것이다.

                  (즉, 리부팅하면 초기화되는 파일들이다.)

                  bios에서 첫번째 OS에게 전달하게 되는데,(일반사용자는 사용할수 없다.)

                  전달 받은 파일을 Kernel이 운용하게 된다. 하드의 중요한 부분을 포함하고 있다.

                  (ex) /dev/tty → 콘솔(Konsole) ┏tty → 로컬 컴퓨터로 접속하는 경우(콘솔창)

                                                           ┗pts ┏X window에서 접속하는 경우

                                                                    ┗원격으로 접속하는 경우

 

▶ "/proc" → Memory에 존재하는 File들이다. (즉, 가상으로 만들어진 디렉토리이다.)

                  이 디렉토리는 Kernel이 사용하는 영역이다.(즉 일반사용자는 사용못하는 부분이다.)

 

▶ "/var" → 시스템에서 사용되는 동적인 파일들을 저장하는 디렉토리이다.

                 (주로, 메일 임시 저장 공간이나 프린터 임시 저장 공간으로 사용한다.)

                 (ex) /var/spool → printer가 사용하는 공간으로 사용한다.

 

▶ "/tmp" → 임시 파일들을 저장하는 디렉토리이다.

 

'리눅스 > 기본정보(OS)' 카테고리의 다른 글

사용자 정보변경(usermod , group)  (0) 2011.02.17
사용자추가및삭제 ( useradd, userdel )  (1) 2011.02.17
VI 에디터  (936) 2011.02.17
텍스트보는 명령어  (0) 2011.02.17
기본적인 명령어  (1639) 2011.02.17