Linuxがカーネルのみの場合、最初のバージョンはどのように使用されましたか(ディストリビューションなし)?


112

Linuxは単なるカーネルであり、ユーザーがそれを使用する場合は、完全なディストリビューションが必要です。そうは言っても、Linuxディストリビューションがなかったとき、Linuxの最初のバージョンはどのように使用されましたか?


66
あなたの質問の前提には欠陥があります。Linuxを使用するのにディストリビューションは必要ありません。Linuxカーネルとユーザーランドコードが必要です。それでおしまい。「配布」とは、あなたが自分で行うのではなく、他の誰かがあなたのためにそれらをまとめたとき、単に私たちが呼ぶものです。
ヨルグWミットタグ

9
現実には、きちんとした特定のユーザー土地ツールが不足しているため、最初は鶏と卵の問題でした。MCC Interim Linuxの背後にいる男がその卵を割って、少なくとも自分でいくつかのツールを書いたら、少なくともfdisk、他の人が自分のLinuxセットアップをより簡単に進めるための扉が開かれました。
ルイFリベイロ



回答:


162

Linuxの初期段階で、Linus TorvaldsはLinuxカーネルソースをアルファ状態でリリースし、新しいUnixライクなカーネルが開発中であることを他の人に知らせるようにしました。その頃には、@ RalfFriediが述べたように、LinuxカーネルはMinixでクロスコンパイルされました。

使用可能なソフトウェアに関しては、Linus Torvaldsは、他の人がテストできるようにLinuxカーネルとともに配布するユーティリティも移植しました。これらのプログラムは主bashgccLinus TorvaldsによるLINUXの歴史で説明されています。Usenetの投稿によると

From:torvalds@klaava.Helsinki.FI(Linus Benedict Torvalds)  
ニュースグループ:comp.os.minix
件名:minixで最も見たいものは何ですか?
要約:新しいオペレーティングシステムの小規模なアンケート  
メッセージID:<1991Aug25.205708.9541@klaava.Helsinki.FI>
日付:91 8月25日20:57:08 GMT
組織:ヘルシンキ大学

みなさんこんにちはminixを使用して-

私は386(486)ATクローン用の(無料の)オペレーティングシステム(趣味であり、gnuのように大きくて専門的ではありません)を行っています。これは4月から醸造されており、準備を始めています。私のOSは多少似ているので、minixで人々が好き/嫌いなものについてのフィードバックが欲しい
です(他のものの間でファイルシステムの物理的なレイアウト(実際的な理由のため)と同じです)。

現在bash(1.08)とgcc(1.40)を移植しましたが、うまくいくようです。これは、数か月以内に何か実用的なものを手に入れることを意味し、ほとんどの人がどんな機能を望んでいるかを知りたいと思います。どんな提案も歓迎しますが、私はそれらを実装することを約束しません:-)

Linusは、カーネルお​​よびコアユーティリティプログラムをディスケット形式で配布し、ユーザーが試して、おそらく貢献できるようにしました。

その後、HJ LuのBoot-rootフロッピーディスクがありました。これがディストリビューションと呼ばれる場合、ハードディスクにインストールできる最初のディストリビューションであるという名声を得ます。

これらは、Linuxカーネルと開始に必要な最小限のツールを含む2つの5¼インチディスケットイメージでした。したがって、ハードドライブから起動できるツールは、16進エディターでマスターブートレコードを編集する必要がありました。

ブートルート

最終的に、ユーティリティの数はディスケットの最大サイズよりも大きくなりました。

MCC Interim Linuxは、自動インストールとのような新しいユーティリティを導入することで、技術的なスキルがやや劣る人々が使用する最初のLinuxディストリビューションでしたfdisk

MCC Interim Linuxは、マンチェスター大学の一部であるマンチェスターコンピューティングセンター(MCC)のオーウェンルブランによって1992年2月に初めてリリースされたLinuxディストリビューションでした。

MCC Interim Linuxの最初のリリースはLinux 0.12に基づいており、セオドアTs'oのramdiskコードを使用して小さなルートイメージをメモリにコピーし、追加のユーティリティディスケット用にフロッピードライブを解放しました。

また、彼のディストリビューションは「非公式の実験」であり、彼のリリースの目標を次のように説明しています。

  • 簡単なインストール手順を提供します。
  • より完全なインストール手順を提供するため。
  • バックアップ/リカバリサービスを提供するため。
  • 彼の(そして)現在のシステムをバックアップするため。
  • カーネル、gcc、およびライブラリの現在のバージョンですべてのバイナリファイルをコンパイル、リンク、およびテストします。
  • 短時間でインストールでき、他のソフトウェアを比較的少ない労力で追加できる安定したベースシステムを提供する。

MCCの前身であるSLSは、1992年5月にX Window Systemを提供する最初のディストリビューションでした。特に、SLSのライバルである神話のYggdrasilは1992年12月にデビューしました。

ユグドラシル

1993年7月のSlackware(SLSに基づく)と1993年12月のDebianは、1995年12月の最初の公式バージョン1.1リリースまで、今日知られている他の主要なディストリビュータが続きました。

イメージクレジット:
*ブート/ルートディスケットイメージ:https : //www.maketecheasier.com/
* yggdrasilディスケットイメージ:https : //yggdrasilblog.wordpress.com/


4
それらがどこかにオンラインでアーカイブされていると仮定すると、最も基本的な元のソースからのそれらの電子メールメッセージにリンクすることは良いでしょう。
ワイルドカード

2
@Wildcardは、Linus Torvaldのページであると主張するサイト上のその電子メールメッセージを見つけました。
ルイFリベイロ

2
@slm実は以前から、家に何度も引っ越してきましたが、両親の保管場所は限られています。以前は386BSD / FreeBSDの初期ディスケットと、93から95(おそらく95)のLinuxのディスケットセットがすべて入ったPCworld CDがありました(ディストリビューションを思い出してください)。486で実行した有効なキーを持つSCO Vインストールディスクの完全なセットも使用していました。当時は非常に高度なハードウェア仕様があり、コンピューターの大手サプライヤーで働いていました。
ルイFリベイロ

28
「(ただの趣味で、gnuのように大きくてプロフェッショナルになることはありません)」
F.ジョージ

9
just a hobby, won't be big and professional like gnuああ、あなたは間違っていた
アルバロ

17

私の場合(c.1994)、Linuxは3.5インチフロッピー(1.44MB)に適したイメージとしてビルドされ、おそらく上記の5 1/4インチイメージの後続であり、それぞれに特定のドライバーセットがコンパイルされています(ネットワーク、VGAなど)。そのため、必要なものを把握し、適切なハードウェアがあることを希望しなければなりませんでした。

起動後、LANに接続するか、モデム経由でダイヤルアップすることができます。次に、必要なソフトウェア(FTP、gopherなど)を見つけました。これは「Web」の最初にあり、検索エンジンはそうしませんでしたまだ存在しているので、どこに行くべきか、誰に尋ねるのかを知らなければなりませんでした。

486DXを起動して大学のネットワーク(56k!)にダイヤルインし、自宅のマシンにAFS共有をマウントすることができたとき、私は夢中になりました。;)


2
このすべてを1994年に行ったと仮定すると、おそらく28.8kのようなものでした...楽しい時間です!
GuitarPicker

1994年には、フロッピーを操作する必要はありませんでした。同じ年にLinuxを始めましたが、SlackwareはすでにCDで完全なディストリビューションを持っていました。
ガボール

雑誌からCDを購入する必要がありました。当時、CDバーナーは高価でした。RHとして、私は、幻想的な共有256Kbps接続で週末にFTP経由ですべてのファイルをダウンロードするCDイメージを構築し、その後、職場でCDを焼くかもしれない96の周りに覚えていますか
ルイFリベイロ

@GuitarPicker、それは楽観的だったかもしれません。私たちの多くはまだ1200,2400を使用しており、1992年にLinuxは一般に学術機関のパイプを降りました。Linusと同様に、私たちのインターネットアクセスは大学へのダイヤルアップによるものでした。UsenetとGopherはありましたが、グラフィカル(モザイク)WWWはありませんでした。1992年には、誰もが386を持っていませんでした。私は、Windows 1を実行するモノクロ画面を備えたOlivetti M24(AT&T)8086ボックスを使用しました(うまく動作しませんでした)。Minixは趣味や学問であり、無料ではありませんでした。Linuxは帯域幅の浪費と見なされていましたが、通常のキャパシティハイキングが行われました。Linuxは、プログラマーにとってCampusにとって大きなものでした。
mckenzm

12

ショートバージョン

Linusがカーネルを開始したとき、Gnuプロジェクトには、動作中のカーネルを除いて、動作中のオペレーティングシステムがありました。人々が周りを見回したとき、彼らは必要なすべてのツールを見つけました:gcc(および友人:binutils)、bash(および友人gnu-utils)、emacs、…

次に、部品から独自のシステムを構築します。

このジョークは、「MS-Windowsが飛行機だった場合、10,000フィートまで上昇し、爆発して横にいる全員を殺すことになりますが、少なくとも出発前に自分の航空機を作る必要はありません」から来ています。


8
そして、これがGNUとFSFに従うなら、ほとんどのディストリビューションがGNU / Linuxディストリビューションと呼ばれる理由です。
ニモ

いいえ。GNUには優れたlibcライブラリがありませんでした。昔のLinuxは異なるlibcライブラリを使用していました。比較的遅くなって、良いglibcライブラリができました。最初はminixツールが使用されました(一部はGNUによって作成されました)。
ジャコモカテナッツィ

@GiacomoCatenazzi libcについて本当です。しかし、ほとんどのユーザーランドツールがありました。1992年にGNUツールをコンパイルしてSun Solarisで実行したことを覚えています。(私はglibcへの移行の途中になるまでLinuxの使用を開始しませんでした。)これらのツールはしばらくの間(Linuxの前に)存在していました。
ctrl-alt-delor

うん。また、私はSolarisを始め、SunのツールよりもGNUツールの方を好みました。そこからもっと欲しかったので、Linuxに行きました(そして私の最初のディストリビューションにはXシステムがありませんでした。RedHatクライアントは商用Xを使用できました。後になってXFree86ができました。長年(カーネルは1つのステップでしたが、最も「民主的な」ステップ[コンピューター+基本的なUnixは最終的にすべての人(または学生にとっては良い)でした。]
ジャコモカテネツィー

12

彼の本「Just For Fun」で、Linus Torvaldsは、Linuxカーネルは当初、モデムを介してリモートUnixマシンに接続するための単純なターミナルエミュレータであると述べました。

結局、私はAAAAAAAAとBBBBBBBという2つのスレッドを変更することができました。その結果、1つはモデムから読み取って画面に書き込み、もう1つはキーボードから読み取ってモデムに書き込みました。独自のターミナルエミュレーションプログラムがありました。

ニュースを読みたいときは、フロッピーを入れてマシンを再起動し、プログラムを使用して大学のコンピューターからニュースを読みました。端末エミュレーションパッケージを改善するために変更を加えたい場合、Minixを起動してプログラミングに使用します...

そして、Minixファイルシステムにファイルを保存したかったので、とにかくMinixファイルシステムはよく文書化されていたので、ファイルシステムをMinixファイルシステムと互換性のあるものにしました...

私がこれをやった頃には、プロジェクトがオペレーティングシステムになりつつあることは明らかでした。それで、私はそれを端末エミュレーターとしての考えをオペレーティングシステムとしての考えに変えました。


10

編集:カーネルがどのように機能するかについての恥ずかしい理解不足を取り除き、重要な部分を残しました。

Linuxカーネルが存在する前に、GNUユーザーランドが存在していました。

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

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

Peter MacDonaldは、最初の「使用可能な」GNU / Linuxディストリビューションを作成したと広く認められています。

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

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

私は彼とのいくつかの議論の記憶から:ピーターは政府のUnixシステム管理者として働いていて、修士号のためにビクトリア大学に行きました。ピーターは自宅で仕事をする方法を望んでいましたが、Unixデスクトップライセンスのコストは法外なものでした。彼はすでにGNUユーザーランドツールに精通していたため、大学のネットワークでLinus Torvaldsのメッセージを見て、GNUツールを新しいカーネルに完全に活用しました。本当に、最初の問題はあなたの質問の逆でした:ユーザーランドはすでに存在していて、必要なのはカーネルだけでした。

他のいくつかの歴史的小説:

  • PeterはSLS Linuxを配布せず、ソフトウェアの料金を請求しませんでした。SLSは彼の妻Colleenによって配布され、費用はCDを焼いて郵送する費用と時間がかかるプロセスに対するものでした。
  • ピーターは、動的モジュールの読み込みやメモリ管理の改善など、認知されたことのないカーネルに多大な貢献をしました。
  • 彼が働いて、学校に行って、2人の子供を育てて、Linuxユーザーを幸せに保とうとしていたので、ソフトウェアは「バギー」でした。Linuxユーザーを幸せに保つのがどれほど簡単かは誰もが知っています...
  • Peterは、他の人がSlackwareとDebianを開始した亀裂を引き起こしたと主張するインストーラースクリプトについての「議論」/「意見の相違」の記憶はありません。

2
カーネルをメモリにロードしてイメージを実行できる場合、/ sbin / initを実行できないためパニックになります。initはすでにユーザーランドツールです。カーネルAPIを使用するCのプログラムはすべてユーザーランドプログラムです。
-RalfFriedl

ど!いい視点ね。カーネルを実行するために、ユーザーが通常操作するツールは必要ないと言っていました。私は再考えるとアップデートます...
Dinsdale

Peterがカーネル+ユーザーの土地ユーティリティを配布する最初でも2番目でもないことは十分に文書化されていますが、Linuxコミュニティとして、Linuxディストリビューションを現在のようなものに変える努力をすることに多くの努力を払っています。
ルイFリベイロ

2

Linuxは、Minixの強化された代替として、またi386でのプロテクトモードプログラミングを理解するために最初に開始されました。Minixにはソースが付属しており、当時はGNUユーザーランドユーティリティとBSDユーザーランドユーティリティがありました。両方ともソースで利用できました。LinuxはPOSIX互換にしようとしたため、移植はそれほど難しくありませんでした。最初のステップの1つは、Linuxでbashを実行することでした。Linuxの初期はクロスコンパイルと見なすことができます。カーネルは別のシステムでコンパイルする必要がありました。


2
カーネルはMinixでクロスコンパイルされていました。
ルイFリベイロ

17
Linuxが「Minixの拡張機能として開始された」と言うのは誤解を招きます。はい、Linusがその時点でMinixを使用していたのは事実ですが、LinuxはMinixと1行のコードを共有せず、異なる設計哲学(マイクロカーネルとモノリシック)に従います。Linuxカーネルは最初から386用に作成されていたのに対し、Minixは386用には公式に利用できませんでした。Linuxの最初のファイルシステムは互換性のためにMinixファイルシステムでしたが、これも完全な再実装でした。
ヨハンMyréen18年

10
LinusとMinixの作者は、どちらもMinixではないか、それに基づいていないことに同意します。
ctrl-alt-delor

@JohanMyréenもちろん、短いテキストは完全な真実ではありません。ウィキペディアでさえ、簡単な紹介だけが含まれています。そして、私はLinuxがMinixの欠点のために開始されたことを知っています。i386用のMinixがあった場合、今日のLinuxはないかもしれません。一方、LinuxはMinixに触発され、最初にサポートされたファイルシステムはMinixでした。しかし、拡張子が正しい仕事ではないことに同意し、文章を変更しました。
-RalfFriedl
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.