리눅스 - 멀티유저, 멀티태스킹을 지원하는 유닉스와 유사한 운영체제(개발자 : 리누스 토발즈)
리눅스의 특징
* 멀티유저 - 여러 사용자가 동시에 같은 시스템에 접근할 수 있는 것
* 멀티태스킹 - 여러 개의 태스크를 동시에 실행하고, 교대로 컴퓨터의 자원을 사용할 수 있게 하는 것
* 신뢰성과 최고의 성능을 보장(시스템의 자원을 효율적으로 관리 및 사용)
* CUI 및 GUI의 지원
* 리눅스 관련 소스가 많이 공개되어 있다
* 여러 종류의 파일 시스템을 지원한다
* 사용자들에게 가장 중요한 유틸리티는 쉘(shell)이다(터미널)
* 리눅스는 하드웨어의 기능을 효과적으로 사용한다(swap)
* 인터넷의 모든 기능을 지원한다
공개용 운영체제, 프리 소프트웨어로서 GNU 공개 라이센스 정신에 따라 누구에게나 자유롭게 배포될 수 있기 때문에 현재까지 지속적으로 개발되어 오고 있다
리눅스 배포판
-각 회사에서 리눅스 커널을 포함한 각종 응용프로그램과 설치 프로그램을 결합하여 만든 상품
(데비안, 페도라 , Centos, 슬랙웨어, 수세 등등)
**커널은 한 마디로 운영체제에서 가장 핵심적인 역할인 자원을 관리하며 시스템이 원활히 돌아갈 수 있도록 제어 해주는 것이다
** 리눅스의 특징 중 멀티 유저라 함은 여러 사용자가 동시에 같은 시스템에 접근할 수 있는 것을 말한다
** 쉘은 사용자들의 명령을 받아서 이를 실행하는 프로그램을 뜻한다
** 리눅스 배포판은 리눅스 커널을 포함한 각종 응용프로그램과 설치 프로그램까지 포함하여 각 회사에서 만든 리눅스 운영체제의 상품 이름들을 말한다
* 리눅스 설치시 충분한 디스크 공간을 확인하고 최소한 두 개의 파티션(/ 과 /swap)이 리눅스용으로 확보되어야 한다
(/swap의 경우 메모리가 부족할 때 하드디스크의 일부를 대신 사용하는 기능으로 성능은 많이 떨어지나 큰 용량을 지원한다 - RAM의 2배 용량으로 설정)
파티션
- 파티션 용량이 클수록 클러스터의 용량이 커져서 메모리의 낭비가 심해진다
- 클러스터는 파티션 용량에 비례해서 증가한다
(만약, 50GB일때 클러스터가 10이면 12의 용량을 저장하면 10+2 이렇게 저장이 되어 8을 낭비하게 된다. 하지만 파티션 용량이 적어 클러스터가 적어지면 낭비하는 용량이 줄어든다)
primary 파티션
- 파티션이 가능한 최대 개수는 4개
- 4개 중 하나의 파티션은 extened 파티션으로 사용하여 logical 파티션이 가능하다
logical 파티션
- 4개까지 밖에 안되는 파티션의 개수를 늘릴 수 있는 방법
- extend 파티션에서 추가적으로 파티션을 할 수 있다
SCSI 하드 - 15개, IDE 하드 - 63개 가능
디렉터리(~)
1)루트 디렉터리(/) - 리눅스 파일시스템이 있는 디렉터리, 파일시스템의 바탕을 이루는 중요한 디렉터리
2)부트 디렉터리(/boot) - 리눅스가 부팅될 때 핵심적인 커널 이미지와 부팅 정보 파일이 있는 디렉터리
3)시스템 설정 파일 디렉터리(/etc) - 중요한 시스템 환경 설정 파일이 있는 디렉터리
4)바이너리 디렉터리(/bin) - 리눅스의 기본적인 실행 명령어들이 있는 디렉터리
5)사용자 계정 디렉터리(/home) - 계정을 부여받은 사용자들만이 사용할 수 있는 독립적인 공간으로 작용하는 디렉터리
6)시스템 정보 디렉터리(/proc) - 커널에 대한 정보를 가지는 가상 파일시스템
7)가변 자료 저장 디렉터리(/var) - 시스템 운영 중에 시스템 자료 데이터가 변경되면 변경된 자료들을 저장시키는 디렉터리
8)디바이스 디렉터리(/dev) - 디바이스 드라이버들과 관련된 파일들을 저장하는 디렉터리
**파티션 정보를 포함하는 파티션 테이블에는 파티션 정보를 4개까지밖에 저장할 수 없는 제한이 있었으며, 이 4개의 파티션을 primary 파티션이라 부른다
**LILO (릴로)는 리눅스에서 사용되는 부트로더이며, 특정 파일 시스템에 의존하지 않고, 하드디스크에서 리눅스 커널 이미지를 부팅할 수 있을 뿐만 아니라 다른 운영 체제도 부팅할 수 있다
**파티션이란 하드디스크를 논리적으로 나눈 구역을 말한다
** swap이란 물리적인 메모리 부족으로 말미암은 고생을 대비해 가상으로 메모리를 사용할 수 있게 해 주는 파티션이다
**/bin는 리눅스의 기본 실행 명령어들이 있는 디렉터리로, 대부분의 명령을 수행하는데 관여한다
'C & Docker & LINUX' 카테고리의 다른 글
C언어 마방진(MAGIC SQUARE) (0) | 2016.05.15 |
---|---|
C언어 - 최대공약수 구하기 (0) | 2016.04.18 |
리눅스 - find명령어 (0) | 2016.04.06 |
리눅스 - 사용자 생성 및 계정 관리 (0) | 2016.04.02 |
리눅스의 부팅과정 (0) | 2016.03.30 |