Mac จะช่วยฉันเรียนรู้ Linux หรือไม่


10

ฉันทำงานกับ Mac สัปดาห์ที่แล้วเป็นครั้งแรก ฉันสังเกตเห็นว่าเชลล์นั้นคล้ายกับ Linux มาก โดยปกติฉันจะพัฒนาบนเครื่อง Windows และมักจะเป็น noob ในทุกสิ่ง Linux Mac จะช่วยฉันในเรื่องนี้หรือจะทำให้สิ่งเลวร้ายลงสำหรับฉันเนื่องจากความแตกต่างเล็กน้อยในระบบปฏิบัติการ Mac


1
คำตอบทั้งสามนั้นเป็นจริง ทุกอย่างขึ้นอยู่กับสิ่งที่คุณต้องการเรียนรู้ ในฐานะผู้ใช้ Terminal ด้วยตัวเองฉันรู้สึกเหมือนอยู่บ้านเวลาที่ฉันต้องทำสิ่งต่าง ๆ ในบรรทัดคำสั่งบนเครื่อง Linux
Daniel Beck

2
คุณต้องระวังด้วยว่าเครื่องมือที่ใช้บ่อย ( cp,, top... ) มีสวิตช์บรรทัดคำสั่งต่างกันฉันคิดว่าเพราะ Mac OS X ใช้รุ่น BSD
Daniel Beck

คำตอบ:


11

แน่นอนมันจะไม่ทำให้สิ่งเลวร้ายลง มีความคล้ายคลึงกันมากมายระหว่าง OS X และ Linux และหากคุณเริ่มตะลุยกับ OS X ความแตกต่างเล็กน้อยจะไม่เกี่ยวข้องกันในตอนนี้ สิ่งต่าง ๆ เช่น bash shell, เครื่องมือการเขียนสคริปต์และแอปพลิเคชัน Linux shell จำนวนมากมีให้สำหรับ OS X

ฉันพัฒนาบน OS X เป็นประจำบน MacBook และเรียกใช้โปรแกรมของฉันบนเวิร์กสเตชัน Linux จะมีจุดที่คุณจะต้องเรียนรู้ความแตกต่างระหว่าง Linux และ OS X (เช่นวิธีการจัดการบริการ) แต่เมื่อถึงจุดนั้นคุณจะรู้ว่าจะหาข้อมูลที่คุณต้องการได้ที่ไหน


2
ไม่สามารถตกลงเพิ่มเติม การใช้ Powerbook (ย้อนกลับไปเมื่อไหร่) และ OS X เป็นสิ่งที่กระตุ้นความสนใจของฉันใน Unix โดยทั่วไป หลังจากผ่านไปไม่กี่เดือนรอบ ๆ เทอร์มินัลฉันรู้สึกสะดวกสบายพอที่จะเริ่มการทำงานรอบ ๆ เทอร์มินัลของเครื่องลีนุกซ์แล้วสิ่งต่าง ๆ ก็หมุนตัวออกจากการควบคุมจากที่นั่นและฉันก็กลายเป็น แม้ว่าทางเลือก
ปอกเปลือก

5

อย่างแน่นอน

OS X เป็นระบบปฏิบัติการ UNIX ที่ใช้ POSIX ที่สร้างขึ้นบนเคอร์เนล XNU ซึ่งรวมถึงเครื่องมือ Unix มาตรฐานมากมายที่สามารถสำรวจได้จาก Terminal.app เนื่องจากความสอดคล้อง POSIX หลายโปรแกรมที่เขียนขึ้นสำหรับ Linux สามารถคอมไพล์ใหม่เพื่อรันบนมัน

โครงการFinkและMacPortsสามารถช่วยขยายชุดเครื่องมือที่คุณสามารถเรียนรู้ได้เช่นกัน


1
ด้วยข้อแม้ว่าระบบหน้าต่างแตกต่างอย่างสิ้นเชิง หากคุณทำงานกับโปรแกรมเทอร์มินัลอย่างหมดจด หากคุณใช้ GUI คุณจำเป็นต้องกังวลเกี่ยวกับเชลล์ X11 เหนือสิ่งอื่นใด
Tarka

3

Linux จะช่วยให้คุณเรียนรู้ Linux Linux อาจช่วยคุณเรียนรู้ Mac ได้เป็นอย่างดี ฉันไม่แน่ใจว่า Mac จะช่วยให้คุณเรียนรู้ Linux ได้อย่างไร

คุณถูกต้องแล้วว่ามีความคล้ายคลึงกันหลายอย่างระหว่าง Mac OS X และ Linux นี่เป็นเพราะพวกเขาทั้งคู่อยู่บนพื้นฐานของยูนิกซ์ อย่างไรก็ตามมีความแตกต่างที่สำคัญ Mac OS X ได้รับการตั้งค่าให้เป็นระบบปฏิบัติการสำหรับผู้บริโภค ซึ่งหมายความว่าทั้งหมด แต่งานที่มีรายละเอียดมากที่สุดและเที่ยวยุ่งยิ่งมีส่วนต่อประสานกราฟิกที่ดีและใช้งานง่าย ลินุกซ์ได้รับการออกแบบมาเป็นโครงการงานอดิเรกและตอนนี้ส่วนใหญ่จะใช้ในเซิร์ฟเวอร์ สำหรับผู้ใช้เดสก์ท็อปทั่วไปลีนุกซ์กำลังดีขึ้นเรื่อย ๆ ทุกวัน แต่งานประจำอื่น ๆ อีกมากมายก็ถือว่าคุณสามารถใช้เครื่อง บางครั้งไม่มี GUI หรือไม่ได้ติดตั้งตามค่าเริ่มต้น บางครั้งมี GUI แต่คำแนะนำล้าสมัยและยังอ้างถึงเทอร์มินัลหรือผู้เขียนเพียงแค่ใช้เทอร์มินัลไม่เป็นนิสัย ทั้งสองทาง การเปลี่ยนจาก Mac OS X ไปเป็น Linux จะยังทำให้คุณมีช่วงเวลาการเรียนรู้ (เช่นเดียวกับสวิตช์ของระบบปฏิบัติการ) นอกจากนี้ยังขึ้นอยู่กับว่าคุณต้องการเรียนรู้เกี่ยวกับความลึกของระบบปฏิบัติการมากน้อยเพียงใดหากคุณกำลังทำสิ่งต่าง ๆ ในระดับต่ำเช่นการเขียนโปรแกรมควบคุมพวกเขาจะแตกต่างกันมาก การเขียนโปรแกรมระดับสูงอาจจะคล้ายกันมาก

ที่กล่าวว่ามีหลายสิ่งที่เหมือนกัน คุณได้สังเกตเห็นเปลือกซึ่งมีแนวโน้มbashว่าจะเป็นค่าเริ่มต้นทั่วไปเหมือนกัน ในทำนองเดียวกันหลายบรรทัดคำสั่งโปรแกรมยูทิลิตี้ชอบssh, rsync, top, ps, grepและ builtins เปลือกชื่อ แต่ไม่กี่จะเหมือนกันหรือคล้ายกันมาก หากคุณใช้เทอร์มินัลจำนวนมากใน Mac OS X คุณจะรู้สึกเหมือนอยู่บ้านกับเทอร์มินัลบน Linux


2

ฉันชอบ Macs และให้ประสบการณ์ UNIX ที่ดี (BSD) แต่อย่างเคร่งครัดในการรับประสบการณ์ Linux บนพีซีของคุณฉันรู้สึกว่ามีทางเลือกที่ดีกว่า

ส่วนตัวฉันใช้ Cygwin กับเครื่อง Windows ที่ฉันเป็นเจ้าของ คุณดาวน์โหลดตัวติดตั้งจากhttp://www.cygwin.com/setup.exe คำสั่งนั้นเป็นคำสั่งเดียวกับ GNU ที่ Linux รันดังนั้นสคริปต์ควรรันค่อนข้างคล้ายกับ Linux (ความแตกต่างใหญ่มักเป็นพา ธ โดยมีช่องว่างใน ชื่อไฟล์และเส้นทางไดเรกทอรี $ HOME มีแนวโน้มมากขึ้น) นอกจากนี้ยังมียูทิลิตี้ต่าง ๆ เพื่อช่วยผสานประสบการณ์ UNIX / Windows เช่น cygpath, cygstart เป็นต้น

คุณสามารถลองใช้งาน COLinux ได้ พอร์ตที่น่าสนใจของเคอร์เนลลินุกซ์เพื่อใช้เป็นกระบวนการ Windows และโต้ตอบกับ Windows ได้อย่างสมบูรณ์ ฉันไม่เคยลองเลย แต่มันก็ดูดี http://www.colinux.org/

หากคุณต้องการเล่นกับมันสักหน่อยคุณสามารถเรียกใช้จาก LiveCD หรือไดรฟ์ USB ได้ตลอดเวลา หากคุณเพียงแค่ต้องการลอง LiveCD ก็ใช้ได้ แต่ถ้าคุณต้องการทำงานจริงใด ๆ คุณต้องให้ไดรฟ์ USB สามารถบันทึกและรับการอัปเดตได้

และมีการบูทคู่เสมอ แต่ก็มีแนวโน้มที่จะติดตั้งบน Windows และ Mac Bootcamp ได้ยากขึ้น


2
Cygwin ถูกทุบตีลงบน Windows จริงๆซึ่งเห็นได้ชัดมากเมื่อคุณพยายามทำสิ่งที่เป็น unixy / bashy ให้กับไฟล์ที่ไม่ได้อยู่ในไดเรกทอรีการทำงานปัจจุบันของคุณ เส้นทาง Windows และเส้นทาง unix แทบจะไม่เกี่ยวกับคำพูด Bash ดีกว่า cmd.exe และ Windows ดีกว่ากับ Cygwin มากกว่าไม่มี แต่มันเป็นลูกผสมที่ค่อนข้างหยาบ ฉันบอกว่านี่เป็นเหยื่อการกู้คืนของ Windows ย้ายไปที่ MacOS (และรักมันและยูนิกซ์) ตอนนี้กลับมาหนึ่งฟุตในค่ายที่ได้รับความอนุเคราะห์จากนายจ้างปัจจุบันของ Windows
JRobert

ฉันเห็นประเด็นของคุณ แต่เนื่องจากคุณมีความสามารถในการเพิ่มชุดเครื่องมือ UNIX จำนวนมากและมันใช้เส้นทาง UNIX สำหรับสิ่งเหล่านี้คุณจึงยังสามารถทำสิ่งต่างๆใน UNIX ได้ใน cygwin จริงอยู่มันจะพังถ้าคุณพยายามทำสิ่งต่าง ๆ ของ Windows ปริมาณงานของเราแตกต่างกันอย่างเห็นได้ชัดฉันพบว่ามีประโยชน์อย่างเหลือเชื่อ
Rich Homolka

ฉันไม่ได้โต้แย้งประสบการณ์ของคุณกับมันและฉันจะใช้มันต่อไป แต่ฉันคิดว่ามันสับสนใกล้กับรอยต่อระหว่างคนทั้งสองกับการคิดว่าผู้เรียน linux จะพบมันแม้กระทั่ง moreso
JRobert

0

ฉันต้องบอกว่าใช่ แต่ไม่สมบูรณ์ และใช่ขึ้นอยู่กับความถี่ที่คุณใช้บรรทัดคำสั่งของ Mac (เทอร์มินัล) สำหรับสิ่งต่าง ๆ ฉันมาใช้บรรทัดคำสั่งบ่อยครั้งและดูความคล้ายคลึงกันระหว่างฐาน BSD ของ OSX และ Linux มากเสียจนฉันยังอ้างถึง Mac ว่า "linux ทำถูกต้อง" (โปรดอย่าเปลวไฟฉันมีเหตุผลที่ดี! (สำหรับฉัน)) พูดจากพลัง / ความง่ายในการใช้งาน - . แน่นอนว่ามีความแตกต่างเล็กน้อยระหว่างทั้งสอง (ตัวอย่างเช่นการติดตั้งแอป) แต่ในระดับต่ำคุณสามารถเข้าใจพื้นฐานของ linux ได้ดีผ่านการใช้แอปพลิเคชั่น Terminal ของ Mac บ่อยครั้ง

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

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