유닉스
구분 | 설명 |
대화식 운영체제 | 사용자와 운영체제간의 상호작용은 명령어 해석기인 Shell에 의해 이루어짐 |
멀티태스킹 | 여러 개의 명령어를 동시에 처리하는 방식 |
멀티유저 | 동시에 여러 사용자가 하나의 컴퓨터를 사용 가능 |
호환성 및 이식성 | 하드웨어적인 구조에 독립적으로 응용프로글매을 작성할 수 있는 환경 제공 |
계층적 파일시스템 | 계층적 파일시스템은 정보의 고유구조를 반영하도록 그룹화하는 기능으로 파일관리에 상당한 유연성 제공 |
뛰어난 통신 기능 | TCP/IP에 기반한 통신기능을 운영체제 자체에 내장하고 있으며, 프로세스 간을 연결하는 파이프 기능이 있어서 명령어 간의 데이터 전달이 수월 |
다양한 기능의 유틸리와 개발환경 제공 | UNIX 시스템은 수백여 개의 명령어와 유틸리티를 사용자 및 개발자에게 제공하여 도움을 줌 |
커널
커널은 항상 메모리에 상주하여, CPU, 메인 메모리, 하드디스크 등의 하드웨어 자원을 제어하면서 프로세스 스케줄링, 기억장치관리, 파일관리, 시스템호출 인터페이스(System Call), 입출력서비스 등의 기능을 사용자에게 제공.
커널은 가장 하위수준(Level)에서 하드웨어와 직접 관계한다. 그러므로 커널의 일부분은 특정 컴퓨터 시스템의 하드웨어에 종속적, 그러나 UNIX는 현존하는 어떤 운영체제보다 다양한 종류의 컴퓨터에서 동작하도록 설계되어 있음.
파일시스템(File System)
디렉터리 구조
디렉터리 | 내용 |
/ | root 디렉터리나 최상위 디렉터리 |
/etc | 시스템의 환경 설정 및 주요 설정 파일(passwd, hosts 등) |
/dev | 프린터나 터미널 같은 물리적인 장치를 다루기 위한 특수 파일을 담고 있다. |
/usr/bin | 기본적으로 실행 가능한 파일을 담고 있다(echo, mv, copy, pwd 등) |
/usr/include | C언어 라이브러리 헤더 파일이 저장되는 디렉터리 |
/usr/lib | 기본 프로그램의 모듈을 담고 있다. |
/usr/sbin | 시스템 관리 명령어가 저장되는 디렉터리 |
/home | 사용자 홈 디렉터리가 저장되는 디렉터리 |
/tmp | 프로그램 실행 및 설치 시 생성되는 임시 파일을 담고 있다. 이 디렉터리에 파일을 저장하면 재부팅 시 임의로 삭제될 수 있다. |
/var | 시스템 로그가 저장되는 디렉터리이다. |
파일시스템 구조
파티션에 생성된 파일시스템은 부트 블록(Boot Block), 슈퍼 블록(Super Block), i-node 리스트, 데이터 블록(Data Block)의 네 가지 영역으로 분리된 자료구조를 가짐
i-node
i-node(index node)는 유닉스에서 각 파일에 대한 정보를 기억하는 약 120byte의 고정된 크기의 구조체.
일반 파일이나 디렉터리 파일의 i-node는 각 파일의 디스크 블록의 위치를 포함하고 있으며, 특수파일의 i-node는 주변장치를 식별할 수 있는 정보를 포함하고 있다.
슈퍼블록
파일시스템의 정보를 유지하는 자료구조. 이런 슈퍼 블록의 정보는 좀더 빠르고 효과적인 파일시스템의 관리 가능
사용하지 않는 디스크 블록과 i-node를 할당받기 위해서 i-node리스트와 데이터 블록을 순차적으로 하나씩 비교하는 방식은 효율적인 방법은 아니다. 따라서 슈퍼블록에는 파일시스템의 요약정보와 함께 사용하지 않고 있는 i-node와 디스크 블록의 위치정보도 가지고 있음
파일과 디렉터리 관리
특정 디렉터리에 있는 디렉터리와 파일을 열거하고 추가 옵션으로 이들에 관한 여러가지 정보(크기, 소유주, 만든 시간, 변경 시간, 이름, 접근권한 등)도 알 수 있다. 여기서 ls 명령어는 List의 약자이다.
접근권한
Unix운영체제에서는 권한 부여의 대상을 세 종류로 구분
user: 파일을 만든(생성) 소유주
group: 파일을 만든 소유주가 속한 그룹
other: 기타 사용자
접근권한의 종류: 파일이나 디렉터리는 모두 사용자 카테고리로 구분된 접근 권한을 가짐, 접근 권한은 읽기, 쓰기, 실행 권한 등 세 가지로 구성되며, 파일이냐 디렉터리냐에 따라 그 의미가 다름
파일 권한 관리
접근권한변경(chmod)
#chmod o-w daemon.c. /* daemon.c에 대한 other의 쓰기권한을 제거 */
#chmod 664 daemon.com /* daemon.c의 접근권한은 664(rw-rw-r---) */
접근권한을 기호로 기술하는 방법
대상 : u(user), g(group), o(other), a(all)
연산자: +(추가), -(제거), =(지정)
접근권한 : r(read), w(write), x(execute)
소유권 또는 그룹 변경(chown/chgrp)
파일이나 디렉터리의 소유주나 그룹을 변경할 때 사용. 명령을 실행하고 나면 파일의 이전 소유주는 해당 파일에 이 명령을 다시 실행할 수 없다.
#chown infosec daemon.c /* daemon.c 파일의 소유주를 infosec로 변경 */
#chgrp other daemon.c /* daemon.c 파일의 소유그룹을 other로 변경 */
'정보보안기사' 카테고리의 다른 글
정보보안기사 - 해시함수 (0) | 2023.06.05 |
---|---|
정보보안기사 - 유닉스/리눅스 서버보안(3) (0) | 2023.05.30 |
정보보안기사 - 유닉스/리눅스 서버보안(2) (0) | 2023.05.30 |
정보보안 - 보안운영체제 (0) | 2023.05.27 |
정보보안기사_네트워크보안 개념정리 (0) | 2023.05.27 |