리눅스의 특징
- 오픈 소스 운영체제.
- 멀티유저, 멀티태스킹(작업이 없는 상태에서도 다른 작업이 cpu 점유 가능) 운영체제.
- 다중 스레드를 지원하는 네트워크 운영체제.
여기서 스레드란 프로세스 내에서 실행되는 작업을 의미하고,
프로세스는 프로그램이 CPU를 할당받아 업무 처리하는 즉 동적 상태를 의미. - 여러 종류의 파일 시스템을 지원하는 운영체제(ex2, ex3, ex4, DOS, FAT16 FAT32, NTFS 등등)
리눅스의 장단점
- 유닉스와 완벽하게 호환 가능하며 POSIX 규격을 따르고 있음.
- PC용 운영체제보다 안정적. 특별한 사항을 제외하고 항상 켜 놓아도 안정적으로 운영됨.
- 하드웨어 기능을 효과적으로 사용. 즉 다른 운영체제보다 적은 양의 메모리를 필요로 함.
SWAP 방식을 통해 램이 부족한 경우 Swap 영역을 늘려 메모리 효율성 향상. - 공개 운영체제이기 때문에 문제점 발생 시 기술 지원을 받는 데 한계가 있음.
- 배포판마다 별도의 한글 지원 패키지를 설치한 후 사용해야 하는 한글 지원 미흡.
- 보안상의 취약점이 쉽게 노출될 가능성이 존재.
리눅스 디렉터리 종류와 특징
- 디렉터리란 파일 저장소를 의미하며,
리눅스 디렉터리는 최상위 디렉터리(/)를 기준으로 하위 디렉터리가 존재하는 계층적 트리구조. - /bin 디렉터리는 기본적인 명령어가 저장된 디렉터리.
- /lib 디렉터리는 공유 라이브러리 디렉터리로,
공유 라이브러리에는 많은 프로그램에서 공통적으로 사용하는 함수들이 들어있어 디스크 공간 절약 또한 가능. - /dev 디렉터리는 하드디스크, 프린터, 입출력장치 등과 같은 장치들을 파일화하여 관리하는 디렉터리.
- /root 디렉터리는 시스템 관리자용 홈 디렉터리.
- /usr 디렉터리는 일반 사용자들이 사용하는 디렉터리로 이 디렉터리 공유해서 설치된 프로그램들 활용 가능.
- /home 디렉터리는 사용자 계정 디렉터리로 계정들의 홈 디렉터리가 위치.
리눅스 배포판의 특징
- 리눅스 배포판은 리눅스 전체 시스템을 구성하는 소프트웨어 패키지 형태.
- 리눅스 커널 GNU 소프트웨어 및 여러 가지 자유 소프트웨어로 구성된 운영체제.
- 전 세계 300여 가지의 배포판이 있으며, 배포판을 구성하는 소프트웨어도 자유롭게 구성되어 있음.
리눅스 배포판의 종류
- 슬랙웨어 리눅스 - 배포판 가운데 가장 먼저 대중화된 배포판.
- 데비안(Debian) - 데비안 프로젝트에서 만들어 배포하는 공개 운영체제로 GNU의 공식적인 후원을 받는 유일 배포판.
- 우분투 - 고유한 데스크탑 환경인 유니티 사용 리눅스 배포판, 사용자 편의성에 초점.
- 레드햇 - 미국 레드햇사가 개발. 유료 기술지원 기업용과 페도라 프로젝트에서 개발하는 페도라로 구분.
- RHEL - 레드햇이 개발하여 판매하고 있는 상용 리눅스 배포판.
- 페도라 - 리눅스 커널에 기반한 운영체제와 레드햇의 후원과 개발 공동체의 지원 아래 개발된 배포판.
- CentOS - 플랫폼을 제공할 목족으로 만들어진 리눅스계 운영체제, 자체 커뮤니티에 의해 관리.
- 수세(SUSE) - 독일에서 출시된 배포판, 풍부한 기능과 안정성 및 보안 기능 포함.
리눅스의 역사
- 1960년대 후반 - 초기 형태 시분할 운영체제 만듬. 1969년 벨 연구소 연구원 켄 톰슨이 초기 형태의 유닉스 개발.
- 1970년대 - 벨 연구소의 데니스 리치가 C언어를 개발함으로써 어셈블리언어 UNIX -> C언어로 재작성.
- 1980년대 초중반 - 1985년 리처드 스톨먼이 자유 소프트웨어 재단 설립 후 GNU 선언문 발표,
1987년 앤드루 타넨바움은 미닉스 개발(교육용 유닉스 계열 운영체제) - 1990년대 초중반 - 리누스 토발즈가 Minix의 커널 소스를 고쳐 GNU 시스템에 적합한 커널 개발.
스톨먼과 FSF는 유닉스 커널과 호환 가능한 커널인 리눅스를 GNU 시스템의 커널로 채택.
1994년 리눅스 커널 버전 1.0 발표, 1996년에 리눅스 커널 버전 2.0 발표.
리눅스 라이선스
- GNU - 리처드 스톨만이 1983년에 GNU 개발을 처음 시작.GNU 프로젝트를 통하여 개발한 유닉스 계열 컴퓨터 운영체제로 '완전한 유닉스 호환 소프트웨어 시스템이 되는 것이 목표.
- 자유 소프트웨어 재단 - 자유 소프트웨어는 사용자가 소프트웨어를 실행하고, 복제하고, 배포하고, 학습하고, 개작하고, 향상시킬 수 있는 소프트웨어.
- 오픈 소스 소프트웨어 - 1998년 일부 커뮤니티에서 자유 소프트웨어 -> 오픈 소스 소프트웨어 용어 사용 시작.
자유가 가진 무료라는 의미가 일으키는 혼동을 피하기 위함. - GNU GPL - 다른 라이선스보다 강력한 라이선스.
GPL을 가진 프로그램을 유료로 판매하는 것은 가능하지만, 반드시 전체 소스코드는 무료로 공개해야 함. - GNU LGPL - LGPL이 적용된 라이브러리를 이용하여 개발하였을 경우 프로그램 소스 코드는 공개하지 않아도 되지만 코드를 사용했음을 명시는 해야 함.
- BSD - 버클리 캘리포니아 대학의 자유 소프트웨어 저작권자의 한 가지.
소스코드 공개 의무가 없으며 상용 소프트웨어에서도 무제한 사용 가능한 라이선스. - 아파치 라이선스 - 아파치 소프트웨어 재단에서 자체적으로 만든 소프트웨어에 대한 라이선스 규정으로 재배포 시 아파치 라이선스 버전 2.0을 포함시켜야 함.
- MIT - 해당 소프트웨어는 누구나 개작할 수 있고 수정본의 재배포 시 소스코드 비공개가 가능.
라이선스가 적용된 소프트웨어에는 JQuery, Node.js 등이 존재. - MPL - 오픈 소스와 자유 소프트웨어 라이선스. 소스코드와 실행파일의 저작권을 분리했다는 점이 특징.
'DevOps&Infra > Linux' 카테고리의 다른 글
02-1 파일 시스템 관련 명령어 (0) | 2022.08.28 |
---|---|
01-3 리눅스의 기본 명령어(3) (0) | 2022.07.30 |
01-3 리눅스의 기본 명령어(2) (0) | 2022.07.30 |
01-3 리눅스의 기본 명령어(1) (0) | 2022.07.27 |
01-2 리눅스의 설치 (0) | 2022.07.26 |