2학년 2학기 기말 컴퓨터 시스템 일반 - 2

사용자 계정 관리
  • 사용자 계정
    • 여러 사용자가 동시에 하나에 시스템에 로그인 가능
    • 각각의 사용자는 id라고 불리는 고유한 식별자인 계정이 필요
    • 각 사용자는 적어도 하나의 그룹에 속함
    • 그룹은 그룹 id로 구분
    • 각 사용자는 자신의 홈 디렉토리와 환경 설정 파일 소유
    • 각 사용자는 허가권을 가진 파일에만 접근 가능
  • root 계정
    • 시스템을 관리할 수 있는 유일한 계정
계정 관련 파일
  • /etc/passwd 파일
    • 사용자 계정, 패스워드를 포함한 7개의 필드 저장
    • 사용자 계정 : 패스워드 : UserID : GroupID : 설명 : 홈 디렉토리 위치 : 쉘 종류
      • ex) user01:x:500:501::/home/user01:/bin/bash
    • 사용자 계정
      • 사용자의 고유한 계정, 사용자 개개인에게 부여
    • 패스워드
      • 패스워드의 존재를 나타냄
      • 패스워드를 x로 대체하여 저장, 패스워드는 /etc/shadow에 저장
    • UserID
      • 프로세스 진행 시 사용자 계정 확인 용도
      • 개인의 신분증 (사용자 계정은 관리자가 사용하는 ID)
      • 0~99는 root 혹은 시스템 관리상 필요한 특별한 사용자에 할당
    • GroupID
      • 그룹의 신분증
      • 하나의 그룹에는 한 사람 이상의 사용자 존재 => 여러 사람이 같은 GroupID 공유 가능
    • 설명
      • 사용자에 대한 간단한 설명 저장
    • 홈 디렉토리 위치
      • 사용자의 기본 디렉토리
      • 처음 로그인할 때 지정되는 디렉토리
    • 쉘 종류
      • 로그인했을 때 활성화되는 쉘
      • /bin/bash : Bourne Again Shell
      • /bin/csh : C Shell
      • 현재 쉘은 echo $SHELL로 확인 가능
      • 사용 가능한 쉘 목록은 cat /etc/shells로 확인 가능
  • /etc/group 파일
    • 그룹 정보 저장
    • 그룹명:패스워드:GroupID:그룹에 속산 사용자명
      • ex) bin:x:1:Root, bin, demon
  • /etc/shadow
    • 사용자의 패스워드가 암호화되어 저장
    • 사용자 이름:암호화된 비밀번호:최근에 암호를 바꾼 날:암호 변경 수 최소로 사용해야 하는 날짜 수:현재 암호의 유효기간:만료전 경고 기간:만료 후 유예기간:계정 만기일:여분
      • ex) root:$1$XNsC3XaDH:15728:0:99999:7:::
  • grep 명령
    • 패턴과 매칭되는 라인 출력
    • grep 패턴 파일
    • 옵션
      • -c 검색할 문자열이 속한 행의 수 출력
      • -H 파일 이름 함께 출력, -n 행 번호 함께 출력
      • -i 대소문자 구분x
      • -r 하위 경로까지 검색
      • -v 찾으려는 문자열이 없는 행 출력
      • -w 패턴 표현식을 하나의 단어로 취급
      • . 한 글자 와일드카드, * 여러 글자 와일드카드
      • ^ startWith, $ endWith
      • [] 문자 하나 이상 일치, [^] 입력된 문자들의 여집합
      • \< 단어의 시작, \> 단어의 끝
계정 관련 명령어
  • useradd
    • 새로운 사용자 생성
    • 관리자용 명령
    • 옵션
      • -c 설명 추가
      • -d 홈 디렉토리 위치 지정
      • -e 패스워드 만료 일자 지정
      • -u userID 지정
      • -s 기본 쉘 지정
      • -g 그룹 지정
  • usermod
    • 사용자 정보 변경
    • 옵션
      • -c 설명 변경
      • -d 홈 디렉토리 변경
      • -e 패스워드 만료 일자 변경
      • -g 소속 그룹 변경
      • -s 기본 쉘 변경
      • -u userID 변경
  • userdel
    • 계정 삭제
    • -r 옵션으로 홈 디렉토리 삭제
  • groupadd
    • 그룹 생성
    • 계정 생성 시, 동일한 이름의 그룹 자동 생성
    • GroupID 0~499는 시스템용
    • -g 옵션으로 GroupID 부여
  • groupmod
    • 그룹 정보 변경
    • 옵션
      • -g GroupID 변경
      • -n 그룹명 변경
  • groupdel
    • 그룹 삭제
퍼미션
  • 사용자(user), 그룹(group), 기타(other) 로 분류
  • 권한은 읽기(read), 쓰기(write), 실행(execute) 3가지 존재
  • root는 모든 권한 보유
  • chmod 명령어
    • chmod 옵션 파일/디렉토리
    • 기호 모드, 8진수 모드 제공
    • 기호 모드
      • chmod [ugoa][+-=][rwx] 파일/디렉토리
      • User, Group, Other, All
      • Append, Delete, All Cancel
      • Read, Write, execute
    • 8진수 모드
      • chmod 8진수 파일/디렉토리
      • r - 4, w - 2, x - 1
  • chown 명령어
    • root만 사용 가능
    • 파일의 소유자 변경
    • chown 새로운사용자/그룹 파일명