ฉันสามารถใช้ Ubuntu กับสิ่งอื่นนอกเหนือจาก Linux Kernel ได้หรือไม่


15

ฉันต้องการลบเคอร์เนล Linux ของฉัน แต่ยังต้องการรัน Ubuntu ด้วยยูทิลิตี้ GNU ฉันไม่ชอบ Linux ฉันต้องการ GNU เท่านั้น ฉันสามารถรัน Ubuntu และ GNU กับสิ่งอื่นนอกเหนือจากเคอร์เนล Linux ได้หรือไม่


2
ทุกระบบปฏิบัติการมีเคอร์เนลและเป็นวิธีที่ระบบปฏิบัติการโต้ตอบกับฮาร์ดแวร์ en.wikipedia.org/wiki/Kernel_(operating_system) แม้แต่ GNU ก็มีเคอร์เนลen.wikipedia.org/wiki/GNU_Hurd
Terrance

ผู้ใช้คอมพิวเตอร์มีปฏิสัมพันธ์กับเคอร์เนลเพียงเล็กน้อยส่วนใหญ่แล้วการโต้ตอบจะทำกับ GNU และสิ่งที่คุณโปรดปรานสำหรับดิสโก้ที่คุณใช้อยู่ บางทีคุณอาจจะมีความสุขกับเดสก์ท็อปหรือลินุกซ์ประเภทอื่น เคอร์เนลช่วยให้ฮาร์ดแวร์ทำงานกับทุกสิ่งที่คุณใช้
crip659

7
@Terrance GNU เป็นชุดของซอฟต์แวร์ แต่ไม่มีเคอร์เนล Hurd เป็นเคอร์เนลที่พัฒนาโดย GNU folks แต่ GNU เองไม่มีเคอร์เนล @ themeguy การลบเคอร์เนลนั้นไม่มีจุดหมาย เครื่องไม่มีประโยชน์โดยไม่มีเคอร์เนล ตอนนี้ถ้าคุณต้องการใช้ชุดเครื่องมือ GNU กับเคอร์เนลที่ไม่ใช่ Linux นั่นเป็นไปได้ทั้งหมด แต่คุณจะต้องแทนที่เคอร์เนล Linux ด้วยชุดเครื่องมืออื่น อย่างไรก็ตามสิ่งนี้จะหมายถึงการสร้างระบบปฏิบัติการของคุณเองและไม่ได้อยู่ในหัวข้อนี้
terdon

@terdon ฉันเข้าใจว่า GNU เองไม่มีเคอร์เนลเนื่องจากเป็นคอลเลกชัน ประเด็นของฉันคือแม้แต่ GNU OS ก็ยังมีเคอร์เนล gnu.org
Terrance

1
ฉันจะทำให้ทั้งสองเซ็นต์ของฉันไปข้างหน้าในเรื่องนี้: คำถามที่เกี่ยวข้องกับ Ubuntu OS หลังจากทั้งหมดและมันเป็นหัวข้อ เรายอมรับคำถามที่หลากหลายเกี่ยวกับการปรับเปลี่ยนระบบปฏิบัติการพื้นฐานตั้งแต่การเขียนสคริปต์ไปจนถึงการสร้าง distro โดยใช้ Ubuntu ตั้งแต่การติดตั้งเดสก์ท็อปอื่นไปจนถึงแอปพลิเคชันบุคคลที่สาม ดังนั้นคำถามเกี่ยวกับการปรับเปลี่ยนระบบปฏิบัติการในระดับเคอร์เนลไม่ควรเป็นเรื่องนอกเรื่อง ส่วนที่ว่าคุณสามารถรัน Ubuntu ด้วยเคอร์เนลที่ไม่ใช่ลีนุกซ์เป็นไปได้หรือไม่และโครงการดังกล่าวมีอยู่แล้วตามที่ระบุไว้ในคำตอบของฉัน
Sergiy Kolodyazhnyy

คำตอบ:


26

TL; DR

คุณไม่สามารถลบเคอร์เนล Linux ออกจาก Ubuntu ได้โดยไม่ต้องชนระบบทั้งหมดของคุณอย่างถาวรแต่ในอนาคตคุณอาจจะสามารถแทนที่มันได้

คำตอบที่ยาว:

นี่เป็นเพราะประวัติของ GNU / Linux:

กาลครั้งหนึ่งมีชายคนหนึ่งชื่อRMSที่ต้องการให้ซอฟต์แวร์เป็นอิสระ¹ เขาลงเอยด้วยการเผยแพร่แหล่งที่มาของซอฟต์แวร์ของเขา (สิ่งที่เราเรียกว่า "Open-Sourcing" ในวันนี้) และในที่สุดสิ่งนี้กลายเป็นGNU Core Utilitiesหลังจากที่คนอื่นช่วยเขาออกมา

อย่างไรก็ตามยูทิลิตี้เหล่านี้พลาดสิ่งเล็ก ๆ น้อย ๆ เพียงอย่างเดียวที่จะให้ฟรี 100% และนั่นคือเคอร์เนลที่ใช้งานต่อเนื่องจาก GNU Utilities ทำงานบนUNIX System Vและโคลนของมันและนี่คือสิ่งที่เรานำLinus Torvalds มา : เขาพัฒนาเคอร์เนลเสาหิน ²และเผยแพร่แหล่งที่มาของเขาด้วยการพูดน้อยลงของศตวรรษที่ XX:

ฉันกำลังทำระบบปฏิบัติการ (ฟรี) (แค่งานอดิเรกจะไม่ใหญ่และเป็นมืออาชีพอย่าง gnu) สำหรับโคลนนิ่ง AT 386 (486) ตัว ³

เคอร์เนลเป็นบิตของซอฟต์แวร์ที่พูดกับฮาร์ดแวร์ดังนั้นจัดการ Memory, Disk, Keyboard, Mouse, Screen, Display Adapter, ลำโพง, Webcam, ... ดังนั้นคุณไม่สามารถเรียกใช้OS ใด ๆ โดยไม่ต้องเคอร์เนลบางชนิด

กรอไปข้างหน้าหนึ่งในสี่ของศตวรรษและยูทิลิตี้ GNU ยังคงทำงานบนเคอร์เนลเดียวกันนั้น (ในระหว่างนั้นชื่อ "Linux")

Ubuntu = Linux Kernel + GNU Core Utilities + a ton of other software.⁴

ดังนั้น: ไม่วันนี้คุณไม่สามารถลบเคอร์เนลได้ แต่ในอีกไม่กี่ปีที่GNU HURDจากmicrokernel multiserver หลายตัวของ Free Software Foundation ออกมาจากการพัฒนาคุณจะสามารถแทนที่เคอร์เนล Linux ด้วย Hurd แต่คุณไม่สามารถทำได้ เรียกใช้ระบบปฏิบัติการใด ๆ โดยไม่ต้องชนิดของเคอร์เนลบาง

อีกวิธีหนึ่งคือ

คุณสามารถเรียกใช้ GNU Core Utilities บนระบบปฏิบัติการอื่นได้ทั้งหมด:

  • BSD หรือหนึ่งในตัวแปร: MacOS
  • Windows (32 บิตเท่านั้น)

แต่สิ่งเหล่านี้ก็มีเมล็ดด้วยเช่นกันแม้ว่าจะไม่ได้ใช้เมล็ดลินุกซ์ข้างต้นทั้งหมด

หมายเหตุ 1: "ฟรี" ในเสรีภาพไม่เบียร์ฟรี ;-)
หมายเหตุ 2: GNU Hurd ได้ทำการตัดสินใจที่จะใช้ microkernel แบบหลายเครื่องเพราะพวกเขาต้องการให้เคอร์เนลถูกแจกจ่ายระหว่างเครื่องหลายเครื่องเนื่องจาก RAM มีราคาแพงในเวลานั้น
หมายเหตุ 3:ตกลงบางทีฮุสตันเรามีปัญหาคือการพูดที่ใหญ่ที่สุดของศตวรรษ ...
หมายเหตุ 4: IE ซอฟต์แวร์ทั้งหมดที่คุณติดตั้งด้วยตัวคุณเอง :-)
หมายเหตุ 5: FSFเป็นผู้ถือลิขสิทธิ์ของ GNU แกนยูทิลิตี้
หมายเหตุ 6:GNU Hurd multiserver microkernel ได้รับการพัฒนามานานกว่า 20 ปีดังนั้นอย่าคาดหวังอะไรเลยในอีกไม่กี่ปีข้างหน้า (อาจเป็นทศวรรษ)
หมายเหตุ 7: โปรดทราบว่าการเปลี่ยนเคอร์เนล Linux ของ Ubuntu จะทำให้การผสมที่คุณเพิ่งสร้างเสร็จ หัวข้อในเว็บไซต์นี้! (เพราะมันจะไม่เป็น Ubuntu อีกต่อไป)


1
@ Melebius Unfurtunately [นั่นตาย
Fabby

2
เมื่อผลิตภัณฑ์ได้รับการพัฒนาเป็นเวลา 29 ปีโดยไม่มีการเผยแพร่ครั้งสุดท้ายมันอาจเป็นการดีที่สุดที่จะระมัดระวังเมื่อทำแถลงการณ์ว่า "ออกมาจากการพัฒนา" "ในอีกไม่กี่ปี" ไม่มีหลักฐานที่ชัดเจนว่าสิ่งนี้จะเกิดขึ้น และมีทางเลือกอื่นที่สามารถใช้งานได้ในปัจจุบันและใช้งานได้ (Linux และ * BSDs)
thomasrutter

1
ฉันไม่แน่ใจว่าการแก้ไขเป็นความคิดที่ดี แต่ดูเหมือนง่ายที่สุด บังเอิญยังมีเชิงอรรถหนึ่งข้อความที่มีตัวยึดตำแหน่ง
TRiG

2
"คุณไม่สามารถลบเคอร์เนล Linux ออกจาก Ubuntu ได้โดยไม่ต้องชนระบบทั้งหมดของคุณอย่างถาวร"นั่นเป็นการพูดเกินจริง sudo apt remove 'linux-image*'ค่อนข้างง่ายในการกู้คืน (บูตซีดีสดติดพาร์ติชันระบบของคุณ chroot และติดตั้งแพคเกจเคอร์เนล)
fkraiem

1
ความไม่ถูกต้องอื่น ๆ อีกมากมายเช่นกัน ตัวอย่างเช่นบันทึกย่อ 4 ของคุณแสดงว่าการติดตั้งเริ่มต้นของ Ubuntu (หรือการแจกจ่ายอื่น ๆ ที่ไม่ได้ระบุ) มีเพียงซอฟต์แวร์ Linux + GNU และซอฟต์แวร์อื่น ๆ ที่คุณต้อง "ติดตั้งตัวเอง" นี่เป็นสิ่งที่ผิด การติดตั้งเริ่มต้นมีซอฟต์แวร์ที่ไม่ใช่ GNU อยู่ข้างเคอร์เนลอยู่แล้ว
fkraiem

11

คุณต้องมีระบบปฏิบัติการ เนื่องจากไซต์นี้เรียกว่าถามอูบุนตูคำถามของคุณต้องถูกตีความใหม่เพื่อให้เข้ากับกฎ:

  • Ubuntu จะใช้ระบบปฏิบัติการ (เมล็ด) ใดนอกจาก Linux Kernel

คำตอบเดียวคือ Windows 10 ที่เปิดใช้งานตัวเลือก WSL (Windows Subsystem สำหรับ Linux) นอกจากนี้คุณยังสามารถเรียกใช้งานยูทิลิตี้ GNU ได้ที่นั่นหากไม่ได้ทั้งหมด จำเป็นต้องมีขั้นตอนพิเศษเพิ่มเติมในการใช้งานเดสก์ท็อป Ubuntu GUI ใน Windows 10:


4

ใช่โครงการดังกล่าวมีอยู่แล้ว

UbuntuBSDนำเคอร์เนล FreeBSD และ Ubuntu userspace มารวมกัน โครงการนี้ได้รับการคุ้มครองในหลาย Linux วารสารออนไลน์รวมทั้งitsfoss ในขณะที่โครงการถูกยกเลิกคุณยังสามารถใช้เวอร์ชันล่าสุดที่มีอยู่ได้

โปรดทราบว่า distro นี้จะเป็น หัวข้อที่นี่ตามที่กล่าวไว้หลายครั้งในเว็บไซต์ Meta เนื่องจากนี่ไม่ใช่รสชาติอูบุนตูอย่างเป็นทางการ


3

TL; DR

ในทางทฤษฎีใช่; ในทางปฏิบัติมันจะเป็นจริงยาก

รุ่นยาว:

ในทางทฤษฎีแล้วคุณสามารถรัน Ubuntu บนเคอร์เนลที่ไม่ใช่ Linux ได้ แต่เนื่องจากความจริงที่ว่าไม่ใช่ทุกเคอร์เนลที่ใช้รูปแบบที่ปฏิบัติการได้แบบเดียวกันคุณจะต้องดาวน์โหลดซอร์สโค้ดกิกะไบต์และรวบรวมทุกบิตของมันและจัดเรียงไฟล์ใหม่ เพื่อสร้างความพึงพอใจให้กับเคอร์เนลใหม่

มิฉะนั้นเคอร์เนลที่ทำงานร่วมกันได้ที่ไม่ใช่ไบนารีจะพยายามเรียกใช้ systemd / init และค้นหาลำดับไบต์ที่ไม่สามารถเข้าใจได้และล้มเหลวด้วยข้อความลับ:

cannot execute binary file: Exec format error

1
การแก้ไขและการโหวต! ;-) (เพราะมันเป็นคำตอบที่ดีในตอนนี้) 0 :-)คุณช่วยทบทวนการแก้ไขของฉันและทบทวนความช่วยเหลือในการแก้ไขเพื่อปรับปรุงการอ่านคำตอบของคุณในอนาคต ... ;-)
Fabby

ยากจริง ๆ แต่มีคนที่ทำให้ง่ายขึ้น ดูคำตอบของฉัน
Sergiy Kolodyazhnyy
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.