Nếu Linux chỉ là một kernel, thì các phiên bản đầu tiên của nó được sử dụng như thế nào (không có phân phối)?


112

Linux chỉ là một hạt nhân và nếu người dùng muốn sử dụng nó, thì họ cần một bản phân phối hoàn chỉnh. Điều đó đang được nói, các phiên bản đầu tiên của Linux được sử dụng như thế nào khi không có bản phân phối Linux?


66
Tiền đề của câu hỏi của bạn là thiếu sót. Bạn không cần phân phối để sử dụng Linux. Bạn cần nhân Linux và một số mã người dùng. Đó là nó. Một "phân phối" chỉ đơn giản là những gì chúng ta gọi nó khi người khác đặt chúng lại với bạn, thay vì bạn tự làm.
Jörg W Mittag

9
Trong thực tế, trong ăn xin là một vấn đề gà và trứng, vì thiếu công cụ đất cụ thể của người dùng cụ thể. Khi anh chàng đứng sau MCC Interim Linux bẻ khóa quả trứng đó và tự mình viết một số công cụ, ít nhất fdisk, cánh cửa đã mở cho những người khác đưa ra thiết lập Linux của riêng họ dễ dàng hơn.
Rui F Ribeiro



Câu trả lời:


162

Trong giai đoạn đầu của Linux, Linus Torvalds đã phát hành nguồn nhân Linux ở trạng thái alpha để báo hiệu cho những người khác hoạt động hướng tới một nhân giống như Unix mới đang được phát triển. Vào thời điểm đó, như @RalfFriedi đã nêu, nhân Linux đã được biên dịch chéo trong Minix.

Đối với phần mềm có thể sử dụng, Linus Torvalds cũng đã chuyển các tiện ích để phân phối cùng với nhân Linux để người khác kiểm tra nó. Các chương trình này chủ yếu bashgcc, như được mô tả bởi Lịch sử của LINUX bởi Linus Torvalds . Theo bài đăng trên Usenet :

Từ: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)  
Nhóm tin: comp.os.minix
Chủ đề: Bạn muốn thấy gì nhất trong minix?
Tóm tắt: cuộc thăm dò nhỏ cho hệ điều hành mới của tôi  
ID tin nhắn: <1991Aug25.205708.9541@klaava.Helsinki.FI>
Ngày: 25 tháng 8 91 20:57:08 GMT
Tổ chức: Đại học Helsinki

Xin chào mọi người ngoài kia bằng cách sử dụng minix -

Tôi đang làm một hệ điều hành (miễn phí) (chỉ là một sở thích, sẽ không lớn và chuyên nghiệp như gnu) cho các bản sao AT (486) AT. Điều này đã được ủ từ tháng tư, và đang bắt đầu để sẵn sàng. Tôi muốn bất kỳ phản hồi nào về những thứ mọi người thích / không thích trong minix, vì HĐH của tôi giống với phần nào
(cùng bố cục vật lý của hệ thống tệp (vì lý do thực tế) trong số những thứ khác).

Hiện tại tôi đã chuyển bash (1.08) và gcc (1.40) và mọi thứ dường như hoạt động. Điều này ngụ ý rằng tôi sẽ nhận được một cái gì đó thiết thực trong vòng một vài tháng và tôi muốn biết những tính năng mà hầu hết mọi người sẽ muốn. Mọi đề xuất đều được chào đón, nhưng tôi sẽ không hứa rằng tôi sẽ thực hiện chúng :-)

Linus đã phân phối các chương trình tiện ích lõi và lõi theo định dạng đĩa để người dùng dùng thử và có thể đóng góp cho nó.

Sau đó, có đĩa mềm Boot-root của HJ Lu . Nếu điều này có thể được gọi là một bản phân phối, thì nó sẽ nổi tiếng là bản phân phối đầu tiên có khả năng được cài đặt trên đĩa cứng.

Đây là hai hình ảnh đĩa 5¼ "chứa nhân Linux và các công cụ tối thiểu cần thiết để bắt đầu. Vì vậy, tối thiểu là những công cụ này có thể khởi động từ ổ cứng yêu cầu chỉnh sửa bản ghi khởi động chính của nó bằng trình soạn thảo hex.

bootroot

Cuối cùng, số lượng các tiện ích đã tăng lên lớn hơn kích thước tối đa của một đĩa.

MCC Interim Linux là bản phân phối Linux đầu tiên được sử dụng bởi những người có kỹ năng kỹ thuật ít hơn một chút bằng cách giới thiệu cài đặt tự động và các tiện ích mới như fdisk.

MCC Interim Linux là bản phân phối Linux được phát hành lần đầu tiên vào tháng 2 năm 1992 bởi Owen Le Blanc thuộc Trung tâm điện toán Manchester (MCC), một phần của Đại học Manchester.

Bản phát hành MCC Interim Linux đầu tiên dựa trên Linux 0.12 và sử dụng mã ramdisk của Theodore Ts'o để sao chép một hình ảnh gốc nhỏ vào bộ nhớ, giải phóng ổ đĩa mềm cho các đĩa mềm tiện ích bổ sung. [2]

Ông cũng tuyên bố các bản phân phối của mình là "các thử nghiệm không chính thức", mô tả các mục tiêu phát hành của ông là:

  • Để cung cấp một thủ tục cài đặt đơn giản.
  • Để cung cấp một quy trình cài đặt đầy đủ hơn.
  • Để cung cấp một dịch vụ sao lưu / phục hồi.
  • Để sao lưu hệ thống hiện tại của mình.
  • Để biên dịch, liên kết và kiểm tra mọi tệp nhị phân trong các phiên bản hiện tại của kernel, gcc và thư viện.
  • Để cung cấp một hệ thống cơ sở ổn định, có thể được cài đặt trong một thời gian ngắn và phần mềm khác có thể được thêm vào với nỗ lực tương đối ít.

Sau tiền thân MCC, SLS là bản phân phối đầu tiên cung cấp Hệ thống X Window vào tháng 5 năm 1992. Đáng chú ý, đối thủ của SLS, Yggdrasil huyền thoại , đã ra mắt vào tháng 12 năm 1992.

yggdrasil

Các nhà phân phối lớn khác theo sau như chúng ta biết ngày hôm nay, đáng chú ý là Slackware vào tháng 7 năm 1993 (dựa trên SLS) và Debian vào tháng 12 năm 1993 cho đến khi phiên bản 1.1 chính thức đầu tiên phát hành vào tháng 12 năm 1995.

Tín dụng hình ảnh:
* Hình ảnh đĩa khởi động / Root từ: https://www.maketecheasier.com/
* hình ảnh đĩa yggdrasil từ: https://yggdrasilblog.wordpress.com/


4
Sẽ tốt hơn nếu liên kết đến những thông điệp email đó từ nguồn gốc cơ bản nhất, giả sử chúng được lưu trữ trực tuyến ở đâu đó.
tự đại diện

2
@Wildcard Tìm thấy thông báo email trên một trang web tự xưng là trang của Linus Torvald.
Rui F Ribeiro

2
@slm Thật ra từ những lần trước, tôi đã chuyển nhà quá nhiều lần và việc lưu trữ tại nhà của bố mẹ tôi bị hạn chế. Tôi đã từng có đĩa mềm đầu tiên 386BSD / FreeBSD và CDworld PC từ 93-95 (có thể là 95) với toàn bộ đĩa đĩa của Linux (không thể nhớ distro). Tôi cũng đã từng có bộ đĩa cài đặt SCO V hoàn chỉnh với khóa hợp lệ mà tôi đã chạy trong 486. Tôi có thông số hw rất tiên tiến vào thời điểm đó, tôi làm việc cho một nhà cung cấp máy tính lớn.
Rui F Ribeiro

28
"(Chỉ là một sở thích, sẽ không lớn và chuyên nghiệp như gnu)" Hah.
F. George

9
just a hobby, won't be big and professional like gnuoh chàng trai, bạn đã sai
Alvaro

17

Trong trường hợp của tôi (c.1994) Linux được xây dựng dưới dạng hình ảnh phù hợp với đĩa mềm 3,5 "(1,44 MB), có lẽ là phần tiếp theo của hình ảnh 5 1/4" được đề cập ở trên và mỗi bộ có một bộ trình điều khiển cụ thể được biên dịch trong ( mạng, VGA, v.v.). Vì vậy, bạn phải biết những gì bạn cần và hy vọng rằng bạn có phần cứng phù hợp.

Sau khi bạn khởi động và có thể kết nối với LAN hoặc quay số qua modem, sau đó bạn đã đi và tìm thấy phần mềm bạn cần (FTP, gopher, v.v. - điều này đã đúng khi bắt đầu "web" và các công cụ tìm kiếm không thực sự tồn tại, vì vậy bạn phải biết đi đâu hoặc hỏi ai) và tự mình xây dựng nó.

Tôi đã ngây ngất khi có thể khởi động 486DX của mình và quay số vào mạng đại học của mình (56k!) Và gắn một chia sẻ AFS trên máy ở nhà ... đó là những ngày. ;)


2
Giả sử bạn đã làm tất cả những điều này vào năm 1994, nó có lẽ giống như 28,8k ... thời gian tốt đẹp!
GuitarPicker

Vào năm 1994, bạn đã không phải tung hứng với những đĩa mềm. Tôi đã bắt đầu với Linux cùng năm nay nhưng Slackware đã có bản phân phối đầy đủ trên CD.
Gábor

Bạn phải mua một đĩa CD từ một tạp chí. Tại thời điểm đầu ghi CD là đắt tiền. Đối với RH, tôi nhớ rằng đã tải xuống tất cả các tệp qua FTP vào cuối tuần qua trong kết nối 256Kbps được chia sẻ tuyệt vời, xây dựng hình ảnh CD và sau đó ghi CD tại nơi làm việc, có thể vào khoảng 96.
Rui F Ribeiro

@IdeosPicker, điều đó có thể lạc quan. Nhiều người trong chúng ta đã ở trên 1200,2400 và vào năm 1992, Linux thường đi xuống một đường ống của Viện hàn lâm. Giống như Linus, truy cập internet của chúng tôi bằng cách quay số đến một trường đại học. Chúng tôi đã có Usenet và Gopher nhưng không có WWW đồ họa (Khảm). Vào năm 1992, không phải ai cũng có '386. Tôi đã có một hộp Olivetti M24 (AT & T) 8086 với màn hình Đơn sắc chạy Windows 1 (không tốt). Minix là một người có sở thích hoặc theo đuổi học tập, và không miễn phí. Linux được coi là một con heo băng thông, nhưng nó đã tăng công suất thường xuyên. Linux là một thứ lớn trong khuôn viên trường dành cho lập trình viên.
mckenzm

12

Phiên bản ngắn

Vào thời điểm Linus khởi động kernel của mình, dự án Gnu có một hệ điều hành đang hoạt động, ngoại trừ một kernel hoạt động. Vì vậy, khi mọi người nhìn xung quanh, họ đã tìm thấy tất cả các công cụ mà họ cần: gcc (và người bạn: binutils), bash (và bạn bè gnu-utils), emacs, Rối

Sau đó, họ sẽ xây dựng hệ thống riêng của họ, từ các bộ phận.

Đó là nơi trò đùa này xuất phát từ trên mạng Nếu MS-Windows là một chiếc máy bay, nó sẽ leo lên 10 nghìn feet, và sau đó phát nổ giết chết mọi người ở bên cạnh, nhưng ít nhất bạn không phải tự chế tạo máy bay trước khi bạn khởi hành.


8
Và đây là lý do tại sao hầu hết các bản phân phối được gọi là bản phân phối GNU / Linux , nếu bạn tuân theo GNU và FSF.
Nemo

Số GNU không có một thư viện libc tốt. Linux ngày xưa sử dụng các thư viện libc khác nhau. Chỉ tương đối muộn chúng tôi đã có một thư viện glibc tốt. Lúc đầu, các công cụ minix đã được sử dụng (một phần do GNU sản xuất).
Giacomo Catenazzi

@GiacomoCatenazzi đúng về libc. Nhưng nó đã có hầu hết các công cụ đất người dùng. Tôi nhớ vào năm 1992 biên dịch các công cụ GNU để chạy trên Sun Solaris. (Tôi đã không bắt đầu sử dụng Linux cho đến khi nó chuyển sang giữa glibc.) Những công cụ đó đã xuất hiện được một thời gian (trước Linux).
ctrl-alt-delor

Vâng. Tôi cũng bắt đầu với Solaris, thích các công cụ GNU hơn các công cụ Mặt trời. Từ đó tôi muốn nhiều hơn nên tôi đã tìm đến Linux (và bản phân phối đầu tiên của tôi không có bất kỳ hệ thống X nào. Các khách hàng của Red Hat có thể sử dụng X thương mại. Chỉ sau đó chúng tôi có XFree86. Quá trình chuyển đổi sang hệ thống miễn phí thực sự (và chủ yếu là GNU) nhiều năm (hạt nhân chỉ là một bước, nhưng bước "dân chủ" nhất [máy tính + unix cơ bản cuối cùng đã dành cho tất cả mọi người (hoặc tốt hơn cho sinh viên))
Giacomo Catenazzi

12

Trong cuốn sách " Just For Fun ", Linus Torvalds đã đề cập rằng nhân Linux ban đầu là một trình giả lập thiết bị đầu cuối đơn giản để kết nối với máy Unix từ xa thông qua modem:

Vì vậy, cuối cùng tôi đã có thể thay đổi hai luồng, AAAAAAAA và BBBBBBB, để một người đọc từ modem và ghi lên màn hình, và người kia đọc từ bàn phím và ghi vào modem. Tôi đã có chương trình mô phỏng thiết bị đầu cuối của riêng tôi.

Khi tôi muốn đọc tin tức, tôi sẽ đưa vào đĩa mềm của mình và khởi động lại máy, và tôi sẽ đọc tin tức từ máy tính của trường đại học bằng chương trình của tôi. Nếu tôi muốn thay đổi để cải thiện gói mô phỏng đầu cuối, tôi sẽ khởi động vào Minix và sử dụng nó để lập trình ...

Và bởi vì tôi muốn lưu tệp vào hệ thống tệp Minix của mình - và vì dù sao hệ thống tệp Minix cũng được ghi lại rõ ràng - tôi đã làm cho hệ thống tệp của mình tương thích với hệ thống tệp Minix ...

Khi tôi làm điều này, rõ ràng dự án đang trên đường trở thành một hệ điều hành. Vì vậy, tôi đã chuyển suy nghĩ của mình về nó như là một trình giả lập thiết bị đầu cuối sang nghĩ về nó như là một hệ điều hành.


10

Chỉnh sửa: Loại bỏ sự lúng túng thiếu hiểu biết về cách thức hoạt động của hạt nhân và để lại phần quan trọng.

Vùng người dùng GNU đã tồn tại trước khi nhân Linux.

https://en.wikipedia.org/wiki/GNU

https://en.wikipedia.org/wiki/Linux_kernel

Peter MacDonald được công nhận phần lớn là đã tạo ra bản phân phối GNU / Linux 'có thể sử dụng' đầu tiên.

https://en.wikipedia.org/wiki/Peter_MacDonald_(computer_programmer)

https://en.wikipedia.org/wiki/Softlanding_Linux_System

Từ ký ức về một số cuộc thảo luận tôi đã có với anh ta: Peter đang làm quản trị viên hệ thống Unix cho chính phủ và đến Đại học Victoria để lấy bằng thạc sĩ. Peter muốn có một cách để làm việc tại nhà, nhưng chi phí giấy phép máy tính để bàn Unix là rất nghiêm ngặt. Anh ta đã quen thuộc với các công cụ người dùng GNU, vì vậy khi anh ta thấy tin nhắn của Linus Torvalds trên mạng Đại học, anh ta đã tận dụng tối đa các công cụ GNU có dây và có dây cho hạt nhân mới. Vì vậy, thực sự, vấn đề ban đầu là mặt trái của câu hỏi của bạn: Vùng người dùng đã tồn tại và tất cả những gì cần thiết là một hạt nhân.

Một số mẩu tin lịch sử khác:

  • Peter không phân phối SLS Linux và không tính phí cho phần mềm. SLS được vợ Colleen phân phối và lệ phí dành cho quá trình đốt đĩa CD tốn kém và mất thời gian để gửi đi.
  • Peter đã đóng góp rất nhiều cho hạt nhân chưa bao giờ được thừa nhận bao gồm tải mô-đun động và quản lý bộ nhớ được cải thiện.
  • Phần mềm bị 'lỗi' vì anh ta đang làm việc, đi học, nuôi hai đứa trẻ và cố gắng giữ cho người dùng Linux hạnh phúc. Chúng ta đều biết làm thế nào dễ dàng để giữ cho người dùng Linux hạnh phúc ...
  • Peter không có hồi ức về 'đối số' / 'bất đồng' đối với các tập lệnh cài đặt mà những người khác đã tuyên bố đã gây ra sự rạn nứt bắt đầu Slackware và Debian.

2
Nếu bạn có thể tải kernel vào bộ nhớ và thực thi hình ảnh, nó sẽ hoảng loạn vì nó không thể thực thi / sbin / init. init đã là một công cụ userland. Bất kỳ chương trình nào trong C để sử dụng API kernel đều là chương trình userland.
RalfFriedl

Ôi! Điểm tốt. Tôi đã cố gắng nói rằng các công cụ mà người dùng thường tương tác không cần thiết để chạy kernel. Tôi sẽ suy nghĩ lại và cập nhật ...
Dinsdale

Mặc dù tài liệu khá hay, Peter không phải là người đầu tiên hoặc thứ hai phân phối các tiện ích đất của người dùng +, nhưng chúng tôi với tư cách là cộng đồng Linux đã nỗ lực rất nhiều trong việc đưa các bản phân phối Linux vào một thứ tương tự như chúng ta biết ngày nay.
Rui F Ribeiro

2

Linux lần đầu tiên được bắt đầu như một sự thay thế nâng cao cho Minix và để hiểu lập trình chế độ được bảo vệ trên i386. Minix đi kèm với nguồn và tại thời điểm đó có các tiện ích vùng người dùng GNU và tiện ích vùng người dùng BSD. Cả hai đều có sẵn với nguồn. Linux đã cố gắng tương thích POSIX, vì vậy việc chuyển mạng không quá khó. Một trong những bước đầu tiên là chạy bash trên Linux. Bạn có thể coi những ngày đầu của Linux là biên dịch chéo, kernel phải được biên dịch trên một hệ thống khác.


2
Hạt nhân đã được biên dịch chéo trong Minix.
Rui F Ribeiro

17
Nếu nói rằng Linux đã "bắt đầu như một phần mở rộng cho Minix" là sai lệch. Đúng, đúng là Linus đã sử dụng Minix vào thời điểm đó, nhưng Linux không chia sẻ một dòng mã nào với Minix và cũng tuân theo một triết lý thiết kế khác (microkernel so với monolithic). Minix cũng không chính thức có sẵn cho 386 tại thời điểm đó, trong khi nhân Linux được viết cho 386 ngay từ đầu. Hệ thống tập tin đầu tiên của Linux là hệ thống tập tin Minix, vì tính tương thích, nhưng đây cũng là một sự tái hiện hoàn chỉnh.
Johan Myréen

10
Linus, và tác giả của Minix, cả hai đều đồng ý rằng đó không phải là Minix hoặc dựa trên nó.
ctrl-alt-delor

@ JohanMyréen Tất nhiên bất kỳ văn bản ngắn nào không phải là toàn bộ sự thật. Ngay cả Wikipedia chỉ chứa một giới thiệu ngắn. Và tôi biết rằng Linux đã được bắt đầu vì những thiếu sót của Minix. Nếu đã có một Minix cho i386, thì có thể không có Linux ngày hôm nay. Mặt khác, Linux được lấy cảm hứng từ Minix và hệ thống tệp đầu tiên được hỗ trợ là Minix. Nhưng tôi đồng ý gia hạn không phải là công việc chính xác, tôi đã thay đổi câu.
RalfFriedl
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.