Câu trả lời:
Nếu bạn muốn học Linux như tìm hiểu mã nguồn, bạn có thể muốn dùng thử Linux từ đầu
Nếu bạn đang muốn tìm hiểu, Gentoo là một lựa chọn tốt - cài đặt Gentoo tối thiểu là trình bao gốc và trình quản lý gói và bạn xây dựng phần còn lại của hệ thống của mình từ đó. Gentoo cũng khá gần với việc ngược dòng trên các gói, vì vậy bạn sẽ không gặp quá nhiều vấn đề nếu bạn muốn tự tải xuống và xây dựng một số gói (và trên thực tế, bạn có thể thêm chúng vào tệp /etc/portage/package.provided sau khi chúng được cài đặt và sử dụng chúng làm phần phụ thuộc!)
Nếu bạn đang tìm kiếm hệ thống Linux nhỏ nhất có thể, thì hãy xây dựng kernel của riêng bạn, loại bỏ tất cả các trình điều khiển và các tính năng mà bạn không định sử dụng, sau đó thêm một initramfs chứa bản dựng Busybox được thu nhỏ tương tự. Kết quả là một hệ thống Linux có khả năng khởi động hoàn toàn trong một tệp thực thi duy nhất (mà bạn có thể trỏ bộ tải khởi động của mình vào) và bạn có thể điều chỉnh dưới 10 MB mà không cần thử.
Archlinux sử dụng một nhóm các tệp cơ sở để cài đặt rất tối thiểu.
Cùng với một nhóm phát triển cơ sở , nếu bạn sắp thực hiện bất kỳ phát triển hệ thống nào.
Nếu bạn thực sự muốn chỉ ở mức tối thiểu của hệ thống Linux, bạn có thể thử phân phối cho các hệ thống nhúng như bộ định tuyến. Chúng thường chỉ mang tối thiểu tuyệt đối phần mềm và thiếu giao diện người dùng đồ họa phổ biến buộc bạn phải làm quen với dòng lệnh. Một nhược điểm là, thường các hệ thống đó phá vỡ các quy ước của các bản phân phối Linux thông thường, ví dụ: chúng cài đặt phần mềm ở những nơi không phổ biến hoặc sử dụng các hệ thống init đơn giản hóa.
Nếu bạn muốn cho nó một shot, bạn có thể thử, ví dụ như openwrt trong một máy ảo .
Rootfs thực thi duy nhất
Hệ thống tối thiểu tuyệt đối chạy một /init
chương trình như tôi đã giải thích tại Single Application Linux | Siêu người dùng
Tối thiểu Linux Live
https://github.com/ivandavidov/minimal
Đối với một hệ thống tương tác thú vị hơn, đây là một kịch bản nhỏ (chủ yếu là giáo dục):
ISO sau đó để bạn trong một vỏ tối thiểu với busybox.
Với QEMU bạn có thể dễ dàng khởi động vào hệ thống.
Tôi đã sửa đổi nó để cho phép chạy nó từ thư mục nguồn kernel: https://github.com/cirosantilli/runlinux
Sử dụng:
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
và bạn sẽ được để lại bên trong Cửa sổ QEMU cùng với hệ thống tối thiểu mới. Tuyệt vời.
Vì nó nhỏ, đây là một lựa chọn tốt để đọc nguồn và hiểu những gì đang xảy ra.
Đã thử nghiệm trên Ubuntu 16.04.
Xây dựng
Tập hợp lớn các tập lệnh Makefile quản lý:
Ví dụ tối thiểu:
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.
Nó thậm chí còn có các công thức để xây dựng X11 từ đầu: Làm cách nào để cài đặt X11 trên hệ thống Linux Buildroot của riêng tôi?
Công cụ thử nghiệm trận chiến chuyên nghiệp được sử dụng bởi một số doanh nghiệp lớn.
Núi cao Linux
https://github.com/gliderlabs/docker-alpine
Phân phối nhúng với trình quản lý gói cung cấp các tệp nhị phân được biên dịch sẵn từ một trang web.
Xem thêm
Làm thế nào mà không ai đã đề cập đến tomsrtbt ? (Linux trên đĩa mềm 1,44 ")
Bạn có thể thử Slackware linux. Cài đặt dựa trên menu sẽ cho phép bạn cài đặt một hệ thống tối thiểu. Bạn có thể dễ dàng rời khỏi các trang man, X11, Tcl, Emacs và đó chỉ là từ bản cài đặt cấp cao nhất. Bạn có thể đi sâu vào cài đặt và chỉ cài đặt tối thiểu các gói.
Sau đó, tôi sẽ biên dịch lại kernel riêng cho máy bạn đã cài đặt.
Slackware vẫn mặc định cho trình quản lý khởi động Lilo, vì vậy cuối cùng bạn sẽ biết nhiều hơn một chút so với những gì bạn muốn biết về các thành phần khởi động, phân vùng nào được đánh dấu là có khả năng khởi động, những gì initrd của bạn chứa, v.v.
Đối với tôi, Damn Small Linux có tên là "bản phân phối Linux nhỏ nhất có thể"! Tuy nhiên tôi nghe nói rằng đó là loại ngưng. Bạn cũng có thể thấy một danh sách các bản phân phối tương tự (được gọi là "Mini Linux") trên trang wiki này .
Nếu không gian không phải là mục đích của bạn, tôi sẽ đề xuất Gentoo hoặc Arch Linux , cả hai đều cài đặt một hệ thống cơ bản. Bạn chọn những gì để sử dụng và cài đặt các gói khi nhu cầu của bạn tăng lên.
Những gì bạn cần làm là tải xuống kernel mới nhất từ kernel.org, thực hiện make menuconfig
và chỉ xem qua các tùy chọn và sử dụng nó làm điểm khởi đầu cho nghiên cứu và điều tra. Bạn sẽ học được rất nhiều.
Bạn có thể nhìn vào Puppy Linux . Nó có thể không phải là nhỏ nhất nhưng nó có một sự phản đối là nhỏ.
Tuy nhiên, Linux distrtos có nghĩa là nhỏ thường có xu hướng nhỏ. Đối với việc học linux, tôi sẽ là một debian sống ở đâu đó. .Tôi sẽ nhận được các nguồn kernel debian, các nguồn bash và các nguồn grub biên dịch chéo và cài đặt. Sau đó, biên dịch chéo cài đặt một trình soạn thảo, apt và gcc. Sau đó tạo một danh sách các gói từ debian live. Cài đặt nguồn cho mỗi gói, biên dịch và cài đặt. Sau đó thêm X rồi Wm bạn chọn thì bạn có cơ sở cho những gì bạn muốn làm.
PS: apt-get source giúp bạn lấy nguồn cho gói debian.