본문 바로가기
UNIX 시스템

System Administration - 15주차 수업 - 1

by 세인트킴 2023. 6. 16.

시스템 관리자

시스템이 올바르게 동작할 수 있도록 시스템을 관리하고 운영하는 책임을 가진 사용자. 모든 권한을 가지고 있다.

계정 이름: root

시스템 관리자의 역할

  • 사용자 등록 / 삭제
  • 각종 소프트웨어 설치, 업그레이드, 제거
  • 각종 하드웨어 추가 설치(디스크, 프린터, 모뎀, 단말기 등)
  • 시스템 보안
  • 데이터 백업
  • 컴퓨터 자원의 감시
  • 하드웨어 / 소프트웨어 문제 발생 시 진단 및 문제해결

시스템 관리자 계정 - root

관리자 계정으로 작업하기

root 계정으로 로그인하기 

  • 로그인 이름: root, 암호: 시스템 설치 시 지정
  • 프롬프트: #

root 계정으로 변경하기 : Ubunto에서 추천되지 않는다.

  • 일반 계정으로 로그인 한 후 root로 사용자 변경
  • root계정으로 직접 로그인하는 경우보다 안전
  • 보안을 위해 root계정의 직접 접속을 막아놓은 경우에 사용
  • Ubunto Linux에서는 root계정 password는 기본적으로 locked

su(Switching to another user, or Super User)

su [-] [Login ID]
[-]: 초기화 파일 실행 후 홈 디렉토리로 이동 [Login ID]: 변경하고자 하는 ID, 생략 시 root

root 계정의 환경

프롬프트: #

홈 디렉토리: /root

기본 쉘: 시스템 설정에 따라 다름

root계정의 초기화 파일을 수정하여 다양한 엘리어스, 함수 등을 정의

sudo

sudo [-u user] command
  • 다른 사용자(또는 Super User)로서 명령을 실행
  • 주로 관리자 기능의 명령을 수행할 때 사용
  • /etc/sudoers 파일에서 설정

부팅과 종료

주변기기 전원 ON - 시스템 하드웨어 동작 테스트 - 부팅장치 위치 찾음 - 시스템 커널 로드 - 커널 초기화 - /etc/init 실행 - 로그인 창

시스템 종료하기

종료 시기

  • 시스템을 새로 설치하거나 업그레이드 할 때
  • 내장형 장치 추가 시
  • 커널의 구성을 변경할 때
  • 시스템에 이상이 생겨서 진단, 수정, 복구해야 할 때

종료시 고려 사항

  • 현재 사용중인 사용자에게 시스템 종료 사실 공지
  • 작업중인 사용자들이 작업을 정리하고 데이터를 저장할 시간 제공
  • 메모리에 있는 데이터를 디스크로 저장(sync 명령)

시스템 종료하기 - shutdown

shutdown [option] [TIME] [message]

지정한 시간이 지난 후 시스템 자동 종료, 시스템에 접속중인 사용자들에게 경고음과 메세지 출력 가능

-H Halt the machine
-P Power-off the machine(default)
-r Reboot the machine
-h -P와 동일(-H가 아닌 경우)
-c Cancel a pending shutdown +5 5분 후 now +0과 동일

사용자 관리 - 사용자 계정

사용자 계정의 구성 요소

로그인 ID - 시스템 안에서 사용자를 구분하는 이름. 시스템 내에서 유일해야 한다.

비밀번호 - 시스템에 로그인 허가를 받기 위해서 사용자임을 증명하는 문자열, 6~8자 사이의 영문자, 숫자, 특수문자의 조합

홈 디렉토리 - 로그인 한 직후 위치하는 디렉토리, 자신의 파일과 디렉토리를 저장한다.

로그인 쉘 - 로그인 할 때 자동으로 실행되는 쉘, 사용자의 명령 처리

사용자 초기화 파일 - 각 사용자가 자신의 작업환경을 구성하는 파일, 로그인 쉘이 자동 진행한다.

사용자 관리 - /etc/passwd 파일

사용자 계정 정보 관리

기본 시스템 계정

더보기
root	0	Superuser계정. 시스템 관리자로서 모든 권한을 갖는다.
daemon	1	Background processing 제어
bin     2	대부분의 명령어 소유 계정
sys     3	시스템 파일 소유 계정
adm     4	관리를 위한 파일 소유 계정
lp      71	프린터를 위한 파일을 소유하는 프린트 서비스 계정
smtp	0	메일 서비스 제공

로그인 ID

  • 사용자 이름
  • 영문자와 숫자의 조합. 시스템마다 허용 기준 다름

비밀번호

  • 최근 보안이 중요해짐에 따라 이 필드는 x로 표시하고 root만 읽을 수 있는 /etc/shadow 파일에 비밀번호 저장 추세
  • 리눅스나 이전 버전의 유닉스에서는 이 필드에 암호화된 비밀번호 직접 저장

UID

  • 시스템 내부적으로 사용자에게 부여하는 일련번호
  • 100~65534 사이 사용
  • 0~99, 60001, 60002, 65534: 시스템 사용

GID

  • 사용자가 속한 기본 그룹 ID
  • /etc/group에 정의

사용자 설명 

  • 사용자의 전체 이름, 계정 사용 목적 기재

홈 디렉토리

로그인 쉘

사용자 관리하기

사용자 추가하기 - useradd

사용자 정보 수정 - usermod

사용자 삭제하기 - userdel

사용자 메세지 전달 

  • 긴급 메세지 전달: wall
  • 공지사항: /etc/motd

사용자 추가하기 - useradd

useradd [option] Login ID

지정한 사용자 계정 생성

옵션
-D: 옵션을 지정하지 않을 때 사용하는 기본 값 출력
-u uid: UID 지정
-g gid: 기본 그룹 지정
-G gid: 보조 그룹 지정
-d dir: 홈 디렉토리 지정
-m: -d 옵션으로 지정한 홈 디렉토리가 없으면 생성
-s shell: 로그인 쉘 지정
-c comment: 사용자의 이름 등을 지정
로그인 ID: 사용자의 로그인 ID

 


실습1 - sudo

더보기

1. 다음 파일들의 내용을 확인해본다.

/etc/passwd 계정 정보

/etc/group 그룹 정보

/etc/shadow 비밀번호 정보. 읽기 불가능 내 그룹은 root가 아니고 student이기 때문에 볼 수 없다.

user1 계정으로 sudo /etc/shadow 하면 볼 수 있다.

 

2. root 계정으로 사용자 전환한다.

root 계정의 패스워드를 알고 있는가? 

123456

어떤 명령을 사용하였는가?

ssh user1@10.119.253.108로 들어갔다.

실습2 - 사용자 계정 생성

더보기

1. 다음 조건을 만족하는 일반 사용자 계정을 2개 생성하시오(다른 옵션은 디폴트)

로그인 ID: 본인 학번a, b(학번 뒤에 a, b 붙인다.)

bash shell

홈 디렉토리 생성

설명: 본인 이름

sudo useradd -s /bin/bash -m -c "김성인" 202121165a

sudo passwd 202121165a

PWD: facebook12!

sudo useradd -s /bin/bash -m -c "김성인" 202121165b

sudo passwd 202121165b

PWD: facebook12!

 

2. 사용자 계정 정보 파일에서 생성을 확인

sudo cat /etc/passwd | grep "김성인"

202121165a:x:1052:1052:김성인:/home/202121165a:/bin/bash

202121165b:x:1055:1055:김성인:/home/202121165b:/bin/bash

su 명령을 사용하여 생성된 두 개의 계정으로 전환하시오.

su 202121165a

su 202121165b