2014년 12월 3일 수요일

리눅스의 시작6_리눅스명령어2

리눅스 명령어에 대해 알아 보자!2

전에 것과 이어서...

3. 기초 명령어2

* tar
 - 여러 개의 파일을 하나의 파일로 압축한다
    (단 용량은 줄어들지 않는다. 용량을 줄이기 위해서는 "gzip"을 이용하거나 특별한 옵션을 이용한다.)
 #tar [옵션] [압축파일명] [대상]
 > 옵션
  -c : 압축  
  -x : 풀기  
  -v : 작업내용을 출력
  -z : gzip를 이용 압축(압축해제)
  -j : bzip2 이용
  -f : 파일명을 지정
  -p : 퍼미션 유지

 tar 명령어를 이용한 백업
 백업 (백업은 주기가 짧아야 좋다 > 전체 백업의 시간과 용량이 커질 수 있기에)
  - 증분 백업 : 백업을 하고 또 다시 백업을 할 때, 변경된 내용만 다시 백업
  - 누적 백업 : 하나 하나 모두 다시 백업 하는 것 (리눅스에서는 지원하지 않음)
  -> 복구를 할 때는 압축 순으로 해제 (오래된 것부터 차례대로 복구)
 #tar [옵션] [압축파일명] -g [백업정보 파일] [대상]


* gzip
 #gzip a.txt                          : a.txt.gz로 압축
 #gzip -d a.txt.gz                 : a.txt.gz 압축 파일의 압축 해제

* bzip2, compress, cpio
 #bzip2, compress                : 압축
 #bunzip2, uncompress         : 압축 해제
 #cpio -idmv < [압축파일명]  : 압축 해제

* clock
 - 리눅스 시스템에  탑재된 BIOS의 시간을 출력하거나 변경
 #clock [옵션]
 > 옵션
   -r  : BIOS의 시간을 읽어 표준 출력
   -w : 시스템의 시간을 읽어 이용 시간 변경
   -s  : BIOS의 시간을 

* date 
 - 지정한 포맷으로 시스템의 날짜를 출력
 #date [+포맷('+'문자로 연결하여 사용)]

  > 포맷(시간)
    -    시 : %H(00, ..., 23), %I(01, ..., 12), %k(0, ..., 23), %l(1, ..., 12), %p(AM, PM)
    -    분 : %M(00, ..., 59)
    -    초 : %S(00, ..., 59)
    - 시간 : %r(hh12:mm:ss AM), %T(hh24:mm:ss), %X (로케일)
    - 기타 : %s(1970년 1월 1일 이후 경과된 초)
    포맷(날짜)
    -    년 : %Y(YYYY), %y(yy)
    -    월 : %m(01..12), %B(january, ..., December), %b(Jan, ...,  Dec)
    -    일 : %d(01..31)
    -  요일 : %A(Sunday, ..., Saturday), %a(Sun, ..., Sat), %w(0, ..., 6)
    -  기타 : %D(mm/dd/yy), %x(로케일), %j(00, ..., 365)

* rdate
  - 인터넷 상에 제공되는 서버로부터 시간정보를 받아 시간을 출력하거나 시스템의 시간을 재설정
 #rdate [옵션] [시간제공서버주소(한국은 time.bora.net)]
 > 옵션
  - p : 타임 서버로 부터 제공 된 시간을 출력
  - s : 타임 서버로 부터 제공 된 시간으로 이용시스템의 시간을 재설정




*vi 에디터
 - 반드시 파일명을 입력해서 사용
 #vi 파일명

* vi 모드
 - Window용 에디터와는 달리 에디팅하는 모드와 이를 편집하는 모드가 다름
  > 명령모드 : 입력 이외의 편집작업
  > 입력모드 : 데이터 입력 및 수정
  > 실행(라인)모드 : 파일 저장, 종료

 - 명령모드에서 삽입모드로 변경하는 명령어
  >  i : 커서 위치부터 입력
  >  a : 커서 다음 칸에 입력
  >  o : 커서 아래 새로운 라인을 삽입하고 입력
  >  l : 커서가 위치한 라인 맨 앞에 입력
  >  A : 커서가 위치한 라인 맨 뒤에 입력

 - 명령모드에서 실행모드로 변경
  > :

 - 삽입, 실행모드에서 명령모드로 변경
  > [ESC] 버튼

 - 삽입 모드에서 실행모드로 직접 변경은 불가능

 - vi 에디터 안에서의 이동
  > h (좌), j (아래), j (위), l (우) 방향
  > gg    : 문서의 맨 앞으로 이동
  > G     : 문서의 맨 아래로 이동
  > nG    : 해당 n행으로 이동
  > ^f    : 화면의 맨끝 ('^' 은 ctrl 버튼)
  > ^b    : 화면의 맨앞
  > ^d    : 아래로(화면단위 이동시)
  > ^u    : 위로 (화면단위 이동시)

 - vi 에디터 안에서의 삭제
  > x     : 커서 단위 글자 삭제 (행 삭제 불가)
  > dd   : 커서가 있는 라인의 라인 전체 삭제
  > dw   :  커서가 있는 곳에 해당하는 단어를 삭제
  > D     :  커서 뒷부분 모두 삭제 (행 삭제 불가)

 - vi 에디터 안에서의 검색
  > 명령어 = /문자열 : 문자열을 찾아 준다
  > n         :  찾을 문자열과 동일한 문자열을 순방향으로 찾아줌
  > N         :  찾을 문자열과 동일한 문자열을 역순방향으로 찾아줌

 - vi 에디터 안에서의 환경 설정
  > 명령어 = :set [환경변수] [값]
  > 환경변수
   - nu : 라인번호 표시
   - sm : 반대괄호 표시 (괄호가 제대로 되지 않은 곳이 있다는 것을 표시)

 - vi 에디터 종료
  > 명령어 = :wq
    - 저장 후 종료
  > 명령어 = :q!
    - 저장 하지 않고 종료
  > w [파일명(앞에 경로를 써주면 경로로 가서 파일 저장)]
    - 새 이름으로 저장하는 방법은 Windows와 다름으로 주의
    - 익숙하지 않다면 사용하지 않는 게 좋음

)vi 에디터를 이용 etc/rc.d/rc.local 파일을 수정하여 재부팅 시
  date를 Network 시간으로 고쳐 주는 코딩을 한 결과


4. 사용자 관리 및 관리 명령어

* 사용자 등록 정보
 - /etc/passwd 파일
 - 사용자의 기본 등록 정보가 저장
 - 암호의 경우 shadow password로 사용
 - useradd 명령어를 이용하여 등록
 - 사용자의 직접 수정이 가능 but 추천 하지 않음

 #cat /etc/passwd
 root:x:0:0:root:/root:/bin/bash
 ..........
 해석 : 계정:암호:UID(User or Uniqu ID):GID(GroupID):주석:홈디렉토리:

 - /etc/shadow
 #cat /etc/shadow
 .................
 ora9i:$1$EyiB87fi$VcYrH1VIxKKeqq9tq/:13443:0:99999:7:::
 계정 : 암호 : 최종변경일 : 암호변경까지 남은날 : 암호 유효기간 암호 만료까지 경고기간: 암호만료뒤 계정 폐쇠까지 기간 계정이 민료일 : 예비 
 (만료 기능은 비주류 사용)
* pwconv(pwunconv) 명령을 이용 활성화(비활성화)
* change명령을 이용, 내용을 수정

* 그룹의 등록 정보
 - /etc/group
 - groupadd 명령어를 이용 그룹 등록

 #cat /etc/group
 root:x:0:
 ............
 dba:x:1000:ora9i,ora19g,ora8i,root
 그룹명:암호:GID:소속 계정
 - 계정은 여러 그룹에 속하고 기본 소속 그룹은 /etc/passwd 파일에 등록

* groupadd
 - 그룹 등록
 - 사용자를 등록하기 전에 반드시 사용자가 속할 그룹은 먼저 만들어져 있어야 함
   (반드시! , 사용자 관리를 제대로 하고 싶다면)
 #groupadd [[옵션] [그룹번호]] [그룹명]
 ex)#groupadd st
 > 옵션
  -g : 생성 그룹의 GID 번호를 지정
   * 할당하지 않으면 500이상 중복되지 않은 값으로 GID가 자동으로 할당
   * GID 번호는 식별자 일 뿐 값 자체에는 의미 없음
  -r  : 499번 이하의 GID 번호를 자동으로 할당
   * 499번 이하의 GID는 시스템이 daemon이나 관리 목적으로 사용
   * 가능한 사용 하지 않는 것이 바람직함
  -o : 중복된 GID 번호 할당이 가능
   * GID가 같고, 이름이 같은 그룹 생성 가능
   * 이름이 같고, GID가 다른 그룹 생성은 불가
   * 사용하지 않는 것이 바람직

* groupdel
 - 그룹삭제
 - 그룹삭제는 반드시 그룹명을 이용
 #groupdel [그룹명]

* useradd(adduser)
 - 새로운 계정 생성

 #useradd [옵션] [사용자명]

 > 옵션
  -u : uid 지정
  -g : gid or 그룹명 지정 (default : 계정명)
  -d : 홈디렉토리 지정(default : /home/[계정명])
  -G : 보조 그룹 지정
  -D : 기본 설정 확인 및 변경 (설정옵션이 다르므로 주의 해야 함)
  -M : 메일 전용 계정 생성

* userdel
 - 계정 삭제
 #userdel -r [사용자명]

 > 옵션
  -r : 계정에 귀속된 홈디렉토리와 mailbox 등을 모두 삭제
   (계정 삭제시에는 무조건적으로 사용)




* passwd
 - 사용자의 암호 변경
 - 관리자는 다른 사용자의 암호를 임의로 변경가능
  (단 다른 사용자의 암호를 확인 불가)
 #passwd [사용자계정] (root 사용자가 암호 변경시)
 #passwd (일반 사용자가 암호 변경시)





  

댓글 없음:

댓글 쓰기