Wie kann man eine Linux-Distribution richtig fällen? [geschlossen]

19

Ich habe mich gefragt, wie man eine Linux-Distribution erstellen soll. LFS scheint ein Overkill zu sein, ich würde lieber eine bestehende Distribution aufteilen. Ich weiß, dass es mehrere "Respin" -Anwendungen gibt, aber mit diesen können Sie anscheinend nur zusätzliche Anwendungen hinzufügen, die installiert werden sollen. Mit diesen Anwendungen können Sie anscheinend keine Repositorys, Konfigurationen usw. ändern.

Was ich suche, ist Wissen darüber, wie man eine vorhandene Distribution nimmt und sie erheblich modifiziert, idealerweise durch Modifizieren von Fedora oder Mint, obwohl ich möglicherweise einen älteren Kernel verwenden muss.

Allgemeine Ratschläge sind erwünscht. Wie würden Sie die mitgelieferten Dateien ändern? Welche Tools verwenden Sie? Wie würdest du es in eine Live-CD packen? Wie hostet man ein Repository?

Kein Name
quelle
Wird zum Schließen als zu breit gekennzeichnet.
Ciro Santilli

Antworten:

12

Sie können eine Distribution einfach erstellen, indem Sie Ihr eigenes Paket-Repository mit angepassten Paketen erstellen. Das ist alles was eine Distribution ist. Es ist egal, wie groß oder klein die Veränderungen sind.

Wenn Sie also eine Distribution teilen möchten, kopieren Sie einfach das gesamte Quell-Repository, ändern Sie die gewünschten Pakete und veröffentlichen Sie das Repository als Ihr eigenes (stellen Sie sicher, dass Sie keine Lizenzvereinbarungen der Distribution verletzen, aus der Sie kopieren). .

Das schafft per definitionem eine neue Distribution.

Patrick
quelle
Wie würden Sie das in eine CD einwickeln? Wie würden Sie es hosten?
Kein Name
1
Hängt vom Paketsystem ab, aber sie haben Möglichkeiten, CD-Repositorys und Installationsprogramme sowie Netzwerkhosting durchzuführen.
XTL
Wie weisen Sie den Paketmanager an, Ihr aktualisiertes Paket anstelle des Pakets der übergeordneten Distribution zu verwenden? Wie werden Abhängigkeiten verwaltet, wenn Sie Ihre Pakete neu erstellen müssen, weil sich etwas in der übergeordneten Distribution geändert hat?
7

Siehe diese Frage und diese Frage für andere Einstellungen.

Die klassische Antwort lautet "starte mit Linux From Scratch", gehe von dort aus. Und das ist eine gültige Methode: Viele Distributionen stammen zum Beispiel von Debian. Viele Distributionen stammen von Red Hat, Slackware oder Evan Arch Linux.

Ich würde sagen, dass Sie für diese Distribution ein wirklich klares und vertretbares Ziel haben müssen. Früher hatten Distributionen Ziele wie "Passt auf eine einzige Diskette" oder "Läuft live von einer CD" oder "Entwickle einen Paketmanager, der alle Probleme löst".

Ich bin mir jedoch nicht sicher, ob das in diesen modernen Zeiten ausreicht. So gut wie jede seltsame Bartnische hat eine Distribution, die dazugehört: Penetrationstests haben BackTrack, absolut kostenlos hat gNewSense, der Linst könnte auf unbestimmte Zeit verlängert werden. Sie brauchen mehr als eine Nische, sonst machen Sie einfach Linux From Scratch und fertig.

Bruce Ediger
quelle
In Anbetracht dieser Antwort (oder eines Kommentars) werde ich die Frage etwas klarer formulieren.
Kein Name
Es scheint, dass LFS für x86_64-Maschinen ist. Es scheint mir keine gute Idee zu sein, eine Distribution für ein RaspberryPi 3B + von Grund auf zu bauen. Es scheint, als würden viele Räder neu erfunden. Ganz zu schweigen von den Problemen beim Portieren des Boot-Managers und des Kernels auf das Board.
4

Fedora ist eigentlich sehr einfach (wenn auch nicht leicht ) zu zerlegen oder "remixen", wie sie es nennen. Die Repo-Definitionen sind in fedora-release. Konfigurationen werden mit den Apps selbst gepackt, sodass Sie sie aus SRPM neu erstellen müssen. Sobald Sie die Pakete gesammelt haben, aus denen Sie Ihre Gabel erstellen möchten, führen Sie sie aus, createrepoum sie in ein tatsächliches Repo zu verwandeln. Sie können dann die im Wiki aufgelisteten Tools verwenden, um Medien aus dem Repo zu generieren.

Ignacio Vazquez-Abrams
quelle
2

Ich kann das beantworten! Eine GNU / Linux-Distribution ist ein Zusammenschluss von Software-Teilen aus GNU und anderen Ländern. Zumindest möchten Sie die Softwarepakete, die Sie ändern möchten, verzweigen, sie ändern, neu kompilieren und dann Ihren Zweig der Distribution Ihrer Wahl neu verteilen .

Das wäre jedoch nicht alles, da Sie mit den Marken und Urheberrechten der Distribution, die Sie veröffentlichen, sehr vorsichtig sein müssen. (Ich bin kein Anwalt), aber es wäre ratsam, das Branding der Distribution zu ändern, die Sie forken, da Sie (wahrscheinlich) nicht möchten, dass Ihre Distribution mit der übergeordneten Distribution in Verbindung gebracht wird (da bin ich mir nicht sicher). Dies kann jedoch zu Problemen mit der übergeordneten Distribution führen. Wenn Sie sagen möchten, dass Sie eine bestimmte Distribution explizit gespalten haben, können Sie diese explizit erwähnen, aber nicht deren Marken verwenden. Auch hier bin ich kein Anwalt.

Sie müssen auch einen Weg finden, ein Repository mit Software für Ihre Distribution zu versehen und herauszufinden, ob Ihre Repositorys neben denjenigen der Hauptdistribution existieren sollen oder die einzigen für Ihre Distribution sein sollen, und Wege finden, um nicht zu brechen die Verteilung, wenn jemand es aktualisiert.

Abgesehen davon gibt es auch drei Dateien , die Sie explizit zu ändern mögen, sie zu sein /etc/issue(vielleicht /etc/issue.netauch), /etc/os-releaseund /etc/lsb-releasemit dem letzten Bedarf geändert werden , um die GRABEN zu ändern für Ihre Distribution auflistet. Achten Sie darauf, /etc/default/grubnach der Linie zu suchen GRUB_DISTRIBUTOR. Es sollte so etwas seinGRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null

Jetzt liegt es ganz bei Ihnen, wie Sie mit Software umgehen (Software subtrahieren und hinzufügen), aber Ihre neue Distribution sollte jetzt fertig sein (ich weiß nicht, ob ich an dieser Stelle etwas vergessen habe).

Wenn Sie jedoch meine persönliche Meinung haben möchten, würde ich lieber eine neue Linux-Distribution nach Linux von Grund auf neu erstellen und dann einen Paket-Manager an die Spitze setzen, anstatt eine Distribution direkt aufzuteilen. Das Verzweigen einer Distribution hat den Vorteil, dass Sie einen Vorsprung haben. Wenn Sie sich jedoch dazu entschließen, Dinge zu entfernen, kann dies sehr schnell zu Kopfschmerzen führen, da Sie sich über Abhängigkeiten in der übergeordneten Distribution nie sicher sein können.

NlightNFotis
quelle
0

Wenn Sie zu Linux kommen, modifyingwird eine Sache mit einem sehr großen Umfang.

Sie sollten sich klare Grenzen dafür setzen, was Sie einer bestimmten Distribution hinzufügen, entfernen oder ändern möchten. Wenn Sie dies nicht tun, werden Sie sich bei jedem Schritt, den Sie unternehmen, endlos wundern. (aus Erfahrung).

Hanan N.
quelle
downvoted, da dies nicht wirklich super nützlich ist.
Strugee