{{{#!wiki style="margin: -10px -10px;" | <tablebordercolor=#ffdf33> |
Linux 배포판 |
TinyCore Linux / Core |
TinyCore Linux / TinyCore - Apps |
1. 개요
TinyCore Linux는 busybox와 FLTK를 이용하여 기본 시스템을 제공하는데 초점을 맞춘 초소형 리눅스 운영 체제이다.2. 설명
개발 컨셉 자체가 하드디스크 등의 저장소를 최대한 이용하지 않는 것이다. 부팅시 운영체제[1]와 패키지[2], 설정 등을 통째로 RAM에 올리고 최대한 RAM 내에서 동작되도록 설계되었기 때문에 일단 부팅 후에는 저장소에 크게 의존하지 않게 된다. 물론 개인 파일이나 애드온 설치용 패키지, OS 종료 시의 설정 백업[3] 등은 당연히 저장소 내에 보관된다.[4]Core 버전은 순수하게 리눅스의 기본 기능만을 담고 있다.
레드햇의 rpm 패키지나 데비안의 deb 패키지를 tcz 패키지로 변환하는 스크립트도 있다.[6]
2023년 4월 현재 레포지토리를 검색해보면 Apache 2.4.46, Nginx 1.19.6, MariaDB 10.5, SqLite 3.31.1, PHP 7.4/8.0를 비롯하여, SMB, SSH, FTPS, SSL, iptables 등의 대중적인 네트워크 패키지를 충분히 제공하므로, 설정만 제대로 하고 보안문제만 잘 처리하면 N5105나 N100과 같은 저전력 미니PC를 활용하여 개인 NAS나 웹/클라우드 서버를 구축하는데에 상당한 이점이 있다. (365일 내내 구동시켜도 전기를 얼마 안 먹을테니)
최근에는 헤놀로지에 DSM 7.0을 구동하기 위해[8] TinyCore Redpill이라는 포크를 이용하고 있기도 하다.
이름에 걸맞게 리눅스 배포판 중에서 가장 용량이 작다.[9] 기본 기능만을 제공하면서도 적절한 수준의 레포지토리가 운영되고 있고 하드웨어 드라이버를 상당수 지원해 기기 호환성이 좋은만큼 리눅스를 배우는 입장에서는 나쁘지 않다.[10] 최소 요구 CPU 사양이 486DX까지 내려가기 때문에 현존하는 리눅스 중 10년 이상 개발이 중단된 몇 가지를 제외하고 리눅스의 최초 컨셉인 "개인용 컴퓨터에서 사용 가능한 유닉스 유사 운영체제"라는 개념의 적용 가능범위가
다만...
3. 사용을 어렵게 하는 특징들
- 배포판 자체의 크기를 위해 리눅스의 핵심/대중적인 기능을 거의 다 쳐낸 결과물이기 때문에, 필요한 기능이 생길 때 마다 매번 패키지 설치를 진행해야 한다.[12] 패키지가 차지하는 용량은 당연히 코어의 용량을 훨씬 상회하고, 매번 다운로드할 수는 없으므로 저장소 용량이 넉넉히 필요하다. 또한 매 부팅 시퀀스마다 필요한 패키지를 RAM에 올리는 과정이 필요하기 때문에 RAM 용량에 대한 의존도도 높다.[13] 너무 저사양 컴퓨터를 이용한다면 사용자의 입맛에 맞춰 빌드업하는 것 자체가 하나의 도전이다.
- 저장소의 역할이 단순히 코어/백업 용도이기 때문에, 패키지 설정파일을 수정하거나 이를 저장소에 유지하기가 상당히 까다롭다. 설정파일의 샘플만을 제공하거나, 패키지 내 기본 설정파일을 /tmp/tcloop 디렉토리같은 read-only 파티션에다가 박아넣고 /usr 디렉토리에 심볼릭 링크만 걸어놓는 패키지가 꽤나 많다.(수정을 위해 링크 지우고 복사하는 것도 일이다.) 그리고 /opt/.filetool.lst 파일에 기재되지 않은 모든 데이터는 백업이 수행되지 않기 때문에 재부팅 하는 순간 다 날아가버린다.
- 소수의 재능기부자들에 의해 구성되는 레포지토리의 특징과 더불어 전세계적으로 사용자가 많지 않은 마이너한 OS인 만큼, 우분투같은 메이저 배포판에 비하면 최신 패키지의 제공이 상당히 더디다. 특히 패키지 의존성에 일부 누락이 있는 경우가 발견되기도 한다.
- 국내에 잘 알려지지 않은 OS여서 관련 자료가 많지 않은데다 구글 검색을 통해 해외 웹사이트를 뒤져봐도 오래된 설명서들만이 나온다. 제작자별 개성이 반영되는 패키지 등 패키지가 파일을 풀어내는 구성 자체가 버전별로 달라지기에, 설정을 위한 가이드 자체가 설치된 버전과 맞지 않거나 설명서가 무용지물인 경우가 비일비재하다.
- 포럼이 운영되지만 이용자도 그리 많지 않고, 그나마 토픽을 작성하는 이용자들은 x86.co.kr 만큼은 아니더라도 나름 리눅스에 도가 튼 굇수들이기 때문에 초보자들이 접근하기엔 상당히 어렵다. 게다가 로그인이 안된 상태에서는 검색할 수 없게 막아놨는데... 2023년 4월 현재는 가입페이지의 capcha 오류 때문에 가입 자체가 불가능하다. 2023년 9월 현재는 포럼 자체가 유지보수를 위해 닫혀있었지만, 과거 오류가 있었던 그림 선택방식의 capcha 에서 영문자 입력 capcha 로 전환되어 정상 가입이 가능하다.
4. 필요 사양
최소 사양 | 권장 사양 | |
CPU |
Intel 486DX[14] with math processor |
Intel Pentium 2 이상 |
RAM | 46MB | 128MB 이상 |
저장소 |
배포판 용량 이상을 가진 모든 저장소 IDE, SCSI, SATA, NVMe, USB 등의 연결 방식 및 HDD/SSD/CD 등 메인보드가 인식할 수 있는 종류 무관 |
5. 배포판 목록
2024년 2월에 배포된 15.0 버전(6.6.8 커널)이 가장 최신으로, CLI 기반 배포판인 Core 버전의 용량이 17MB다. [15]2024년 5월 현재 공식 사이트 배포판 목록
- Ver 15.0
종류 | 용량 | 설명 | |
Core | 17MB |
CLI[16] 기반 32비트 OS 유선랜 기반. 무선랜 사용 시 패키지 다운로드 필요 kernel + core.gz |
|
TinyCore | 23MB |
GUI 기반 32비트 OS 유선랜 기반. 무선랜 사용 시 패키지 다운로드 필요 Core + Xvesa.tcz + Xprogs.tcz + aterm.tcz + fltk-1.3.tcz + flwm.tcz + wbar.tcz |
|
CorePlus | 248MB[17] |
GUI 기반 32비트 OS TinyCore 배포판에 더하여 다음의 패키지를 포함하며, 저장소에 설치 시 선택적으로 포함시킬 수 있다. |
|
CorePure 64 | 19.6MB | CLI 기반 64비트 OS | |
TinyCorePure 64 | 32MB | GUI 기반 64비트 OS | |
piCore | 40.1MB | 라즈베리 파이용 SD카드 이미지 | |
dCore | x86/x64/Arm V7 | Various | Live 부팅용 변형 배포판 |
6. 외부 링크
[1]
/mnt/(저장소)/boot/core.gz
[2]
/mnt/(저장소)/tce/onboot.lst를 참조하여 /mnt/(저장소)/tce/optional/ 내 tcz 패키지를 매번 읽어들인다.
정확히는 tcz 패키지를 하나의 가상디스크 파일로 받아들이고, 부팅 시 onboot.lst 파일에 기재된 패키지와 그에 대한 의존 패키지를 /tmp/tcloop 디렉토리에 순차적으로 마운팅하는 방식이다. [3] /mnt/(저장소)/mydata.tgz
종료 시 또는 filetool.sh -b 명령이나 filetool 창 실행 시 /opt/.filetool.lst 파일(포함 내역)과 /opt/.xfiletool.lst 파일(배제 내역)을 참조하여 백업을 수행한 저장파일이다.
초기 설치 시 /opt 디렉토리와 /home 디렉토리를 포함하도록 기본 설정되어 있고, 필요한 파일을 사용자가 지정할 수 있다. [4] 데이터 플로우를 참조하라. [5] 의존 패키지 포함 [6] Quick hack to convert Debian packages [7] 웹서버 구축 가이드에 기재된 dropbear 대신 사용 가능하다. [8]공식 헤놀로지는 DSM 6.2 이후로 버전업이 없다.
[9]
Docker 이미지에 삽입하는 기본 파일시스템이나 윈도우 WSL용으로 적절한
Alpine Linux miniroot가 있긴 하다. 하지만 여기에는 부트로더와 커널이 없기 때문에 배포판이라 부르기는 어렵다.
[10]
좋다는 의미가 아니다. 패키지 설치 후 시스템의 유기적인 안정화를 위해 손봐야 할 곳이 많다.
[11]
Alpine Linux가
i386에서 사용 가능하다고 적혀있...
[12]
하다못해 gcc나 Qt 같은 컴파일러도 없어서 패키지를 별도로 설치해야 한다.
[13]
486DX에서도 돌아간다는데 최소 요구 RAM이 46MB다...이게 가능한가??
46MB는 코어만을 돌리기 위한 필요 용량이고, X서버나 각종 패키지 등을 돌리기 시작하면 수백MB가 필요하다. [14] 공식 사이트 기재 내용. 다만 14.0 버전부터 6.1.2 커널로 올라온 이상, 최소 요구가 펜티엄 이상으로 올라갔다고 봐야 한다. Linux/커널 참조. 배포판 버전업은 주기적으로 하면서도 사이트 업데이트에는 신경쓰지 않는 듯 하다. 펜티엄 오리지널도 지원하지 않으며, 펜티엄 MMX부터 정상적으로 작동한다. [15] 동일한 컨셉의 GUI 기반 운영체제인 Damn Small Linux가 있으나, 2012년 배포판 이후 현재까지 개발이 중단된 상태이고, 여타 멀티미디어/인터넷 패키지를 포함하기 때문에 상대적으로 용량이 크다. [16] Command Line Interface [17] 점점 크기가 커져간다... [18] 현재의 데스크탑/패키지 설정이 적용된 새로운 CD를 굽거나 ISO 이미지를 제작해준다. 이를 USB나 CD에 입혀 부팅용 저장소로 이용할 수 있다.Live 부팅
[19]
타 저장소에 설치 지원
[20]
한글은 안된다. 한글 폰트 지원도 없다.
정확히는 tcz 패키지를 하나의 가상디스크 파일로 받아들이고, 부팅 시 onboot.lst 파일에 기재된 패키지와 그에 대한 의존 패키지를 /tmp/tcloop 디렉토리에 순차적으로 마운팅하는 방식이다. [3] /mnt/(저장소)/mydata.tgz
종료 시 또는 filetool.sh -b 명령이나 filetool 창 실행 시 /opt/.filetool.lst 파일(포함 내역)과 /opt/.xfiletool.lst 파일(배제 내역)을 참조하여 백업을 수행한 저장파일이다.
초기 설치 시 /opt 디렉토리와 /home 디렉토리를 포함하도록 기본 설정되어 있고, 필요한 파일을 사용자가 지정할 수 있다. [4] 데이터 플로우를 참조하라. [5] 의존 패키지 포함 [6] Quick hack to convert Debian packages [7] 웹서버 구축 가이드에 기재된 dropbear 대신 사용 가능하다. [8]
46MB는 코어만을 돌리기 위한 필요 용량이고, X서버나 각종 패키지 등을 돌리기 시작하면 수백MB가 필요하다. [14] 공식 사이트 기재 내용. 다만 14.0 버전부터 6.1.2 커널로 올라온 이상, 최소 요구가 펜티엄 이상으로 올라갔다고 봐야 한다. Linux/커널 참조. 배포판 버전업은 주기적으로 하면서도 사이트 업데이트에는 신경쓰지 않는 듯 하다. 펜티엄 오리지널도 지원하지 않으며, 펜티엄 MMX부터 정상적으로 작동한다. [15] 동일한 컨셉의 GUI 기반 운영체제인 Damn Small Linux가 있으나, 2012년 배포판 이후 현재까지 개발이 중단된 상태이고, 여타 멀티미디어/인터넷 패키지를 포함하기 때문에 상대적으로 용량이 크다. [16] Command Line Interface [17] 점점 크기가 커져간다... [18] 현재의 데스크탑/패키지 설정이 적용된 새로운 CD를 굽거나 ISO 이미지를 제작해준다. 이를 USB나 CD에 입혀 부팅용 저장소로 이용할 수 있다.