it-swarm-ko.tech

가능한 가장 작은 Linux 구현은 무엇입니까?

Linux OS가 작동하고 Linux를 배우고 이해와 요구가 증가함에 따라 확장 및 개선을위한 기반으로 사용할 수있는 최소 구성 요소는 무엇입니까?

21
slashmais

소스 코드를 알기 위해 Linux를 배우는 것을 의미한다면 Linux를 처음부터 시도해 볼 수 있습니다.

26
Tobias Kienzler

배우고 싶다면 Gentoo가 좋은 선택입니다. 최소한의 Gentoo 설치는 루트 셸과 패키지 관리자이고 나머지 시스템은 거기에서 빌드합니다. 젠투는 또한 패키지의 업스트림에 매우 가깝기 때문에 일부 패키지를 직접 다운로드하고 빌드하려는 경우 너무 많은 문제가 발생하지 않을 것입니다 (실제로 /etc/portage/package.provided 파일에 추가 할 수 있습니다). 설치 후 종속성으로 사용하십시오!)

가능한 가장 작은 Linux 시스템을 찾고 있다면 자체 커널을 빌드하고 사용하지 않을 모든 드라이버와 기능을 제거한 다음 비슷하게 최소화 된 Busybox 빌드를 포함하는 initramfs를 추가하십시오. 그 결과 단일 실행 파일 (부트 로더를 가리킬 수 있음)에서 완전히 부팅 가능한 Linux 시스템이 만들어지며 시도하지 않고도 10MB 미만으로 들어갈 수 있습니다.

9
p-static

단일 실행 가능 rootfs

Single Application Linux | Super User 에서 설명한대로 절대 최소 시스템은 단일 /init 프로그램을 실행합니다.

최소 Linux Live

https://github.com/ivandavidov/minimal

보다 흥미로운 대화 형 시스템을 위해 다음과 같은 (대부분 교육적인) 작은 스크립트입니다.

  • 커널 및 busybox의 소스를 다운로드합니다.
  • 그들을 컴파일
  • 그들과 함께 부팅 가능한 8Mb ISO를 생성합니다.

그런 다음 ISO는 busybox가있는 최소한의 셸에 남겨 둡니다.

QEMU를 사용하면 시스템으로 쉽게 부팅 할 수 있습니다.

커널 소스 디렉토리에서 실행할 수 있도록 수정했습니다. https://github.com/cirosantilli/runlinux

용법:

git clone https://github.com/ivandavidov/minimal
cd minimal/src
./build_minimal_linux_live.sh
# Wait.
# Install QEMU.
# minimal_linux_live.iso was generated
./qemu64.sh

그리고 당신은 새로운 최소 시스템과 함께 QEMU 창 안에 남겨질 것입니다. 대박.

크기가 작기 때문에 소스를 읽고 무슨 일이 일어나고 있는지 이해하는 데 좋은 옵션입니다.

Ubuntu 16.04에서 테스트되었습니다.

Buildroot

https://buildroot.org/

다음을 관리하는 대규모 Makefile 스크립트 세트 :

  • GCC 크로스 컴파일 툴체인
  • 커널 컴파일
  • 부트 로더 컴파일
  • rootfs 생성
  • gTK와 같은 복잡한 것들을 포함하여 소스 트리에 수많은 패키지 다운로드/빌드 레시피가 있습니다. 의존성 시스템이 있습니다.

최소한의 예 :

git clone git://git.buildroot.net/buildroot
cd buildroot
git checkout 2016.05
make qemu_x86_defconfig
# Can't use -jN, use `BR2_JLEVEL=2` instead.
BR2_JLEVEL=2 make
# Wait.
# cat board/qemu/x86_64/readme.txt
qemu-system-x86_64 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append root=/dev/vda -net nic,model=virtio -Net User
# You are now in a Shell with BusyBox utilities.

X11을 처음부터 빌드하는 방법도 있습니다. 내 Linux Buildroot 시스템에 X11을 설치하는 방법?

일부 대기업에서 사용하는 전문 전투 테스트.

Alpine Linux

https://github.com/gliderlabs/docker-Alpine

웹 사이트에서 미리 컴파일 된 바이너리를 제공하는 패키지 관리자가 포함 된 임베디드 배포.

도보기

Archlinux는 최소 설치를 위해 base 파일 그룹을 사용합니다.

base-devel 그룹과 함께 시스템 개발을 수행하려는 경우.

8
Stefan

정말 최소한의 Linux 시스템을 원한다면 라우터와 같은 임베디드 시스템 용 배포판을 사용해 볼 수 있습니다. 그들은 일반적으로 최소한의 소프트웨어만을 가지고 있으며 그래픽 사용자 인터페이스가 없기 때문에 명령 줄에 익숙해 져야합니다. 한 가지 단점은 이러한 시스템이 일반적인 Linux 배포판의 규칙을 깨는 경우가 많다는 것입니다. 드문 장소에 소프트웨어를 설치하거나 단순화 된 init 시스템을 사용합니다.

한 번 시도해보고 싶다면 예를 들어보십시오. 가상 머신의 openwrt .

8
fschmitt

아무도 언급하지 않은 것이 어떻게 tomsrtbt ? (단일 1.44 "플로피의 Linux)

6
Arafangion

Slackware linux를 사용해 볼 수 있습니다. 메뉴 기반 설치를 통해 최소한의 시스템을 설치할 수 있습니다. 맨 페이지, X11, Tcl, Emacs를 쉽게 제거 할 수 있으며 이는 최상위 레벨 설치에서입니다. 설치에 들어가서 최소한의 패키지 만 설치할 수 있습니다.

그런 다음 설치 한 컴퓨터에 맞게 커널을 다시 컴파일합니다.

Slackware는 여전히 Lilo 부팅 관리자로 기본 설정되어 있으므로 Grub 부팅 배포판보다 부팅 섹터, 부팅 가능한 파티션으로 표시된 파티션, initrd에 포함 된 항목 등에 대해 알고 싶은 것보다 더 많은 것을 알게됩니다.

4
Bruce Ediger

나에게 젠장 작은 Linux "가능한 가장 작은 Linux 배포판"이라는 이름을 얻었습니다! 그러나 나는 그것이 일종의 중단되었다고 들었습니다. 이 wiki page 에서 유사한 배포 목록 ( "Mini Linux"라고 함)을 볼 수도 있습니다.

공간이 목표가 아닌 경우 Gentoo 또는 Arch Linux , 둘 다 기본 시스템을 설치합니다. 필요에 따라 사용할 항목을 선택하고 패키지를 설치합니다.

3
phunehehe

여러분이해야 할 일은 kernel.org에서 최신 커널을 다운로드하고 make menuconfig 옵션을 살펴보고이를 조사 및 조사의 시작점으로 사용하십시오. 당신은 많은 것을 배울 것입니다.

2
LawrenceC

Puppy Linux 를 볼 수 있습니다. 가장 작지는 않을 수도 있지만 작다는 반박이 있습니다.

그러나 작은 것을 의미하는 Linux 배포판은 일반적으로 작게 유지되는 경향이 있습니다. 리눅스를 배우려면 어딘가에 데비안을 살 것입니다. 데비안 커널 소스, bash 소스 및 grub 소스를 교차 컴파일하고 설치합니다. 그런 다음 편집기, apt 및 gcc를 크로스 컴파일하여 설치하십시오. 그런 다음 데비안 라이브에서 패키지 목록을 생성합니다. 각 패키지의 소스를 설치하고 컴파일하고 설치하십시오. 그런 다음 X를 추가하고 선택한 Wm을 추가하면 원하는 작업에 대한 기초가 생깁니다.

추신 : apt-get 소스는 데비안 패키지의 소스를 가져옵니다.

0
HandyGandy