Linux 운영 체제가 작동하는 데 필요한 최소 구성 요소는 무엇이며, Linux를 배우고 이해와 요구가 커짐에 따라 확장 및 개선을 위한 기반으로 사용할 수 있습니까?
답변1
소스 코드를 아는 것처럼 Linux를 배우고 싶다면 시도해 볼 수도 있습니다.처음부터 리눅스
답변2
단일 실행 가능 rootfs
/init
내가 했던 것처럼 프로그램 을 실행하기 위한 최소한의 시스템단일 애플리케이션 Linux 슈퍼유저 |
최소 리눅스 라이브
https://github.com/ivandavidov/minimal
보다 흥미로운 대화형 시스템을 위해 다음과 같은 (주로 교육적인) 작은 스크립트가 있습니다.
- 커널 및 비지박스 소스 코드 다운로드
- 컴파일
- 이를 사용하여 부팅 가능한 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 창으로 들어갑니다. 놀라운.
크기가 작기 때문에 소스 코드를 읽고 무슨 일이 일어나고 있는지 이해하는 데 좋은 옵션입니다.
우분투 16.04에서 테스트되었습니다.
루트 구축
관리를 위한 다수의 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을 어떻게 설치합니까?
일부 대기업에서 사용하고 전문적으로 테스트된 것입니다.
요크토
https://en.wikipedia.org/wiki/Yocto_Project
Buildroot의 목표와 매우 유사하지만 장단점은 확실하지 않습니다. 잠깐 살펴보면 무엇이라고 부르고 싶은지에 따라 더 부풀어 오르고 기능이 풍부한 느낌이 듭니다. 그들의 대본은 조금 더 건전할 수 있습니다.
닉 OS
다른 하나는 Buildroot와 매우 비슷해 보이지만 이것은 정말 강력한 패키지 설명 형식을 가지고 있습니다! 또한 여러 버전의 라이브러리를 동시에 설치하도록 지원하는 데 중점을 둔 것으로 보입니다.
2020년에 마지막으로 확인했을 때 QEMU에서 크로스 컴파일 + 실행 기능이 훌륭했고 Buildroot의 초점이었습니다. 하지만 여전히 매우 유망한 프로젝트입니다.
알파인 리눅스
https://github.com/gliderlabs/docker-alpine
웹사이트에서 미리 컴파일된 바이너리를 제공하는 패키지 관리자가 포함된 배포판입니다.
당신은 또한 볼 수 있습니다
답변3
Linux 시스템에 대한 최소한의 것만을 원한다면 라우터와 같은 임베디드 시스템용 배포판을 사용해 볼 수 있습니다. 일반적으로 최소한의 소프트웨어만 탑재하고 그래픽 사용자 인터페이스가 부족한 경우가 많아 명령줄에 익숙해져야 합니다. 한 가지 단점은 이러한 시스템이 일반적이지 않은 장소에 소프트웨어를 설치하거나 단순화된 초기화 시스템을 사용하는 등의 방식으로 일반 Linux 배포판의 규칙을 깨는 경우가 많다는 것입니다.
시도해 보고 싶다면 다음과 같이 시도해 볼 수 있습니다.가상 머신의 openwrt.