จะติดตั้งซอฟต์แวร์และไฟล์ปฏิบัติการได้ที่ไหนสำหรับผู้ใช้ทุกคน


15

โดยค่าเริ่มต้นบางแอปพลิเคชั่นจะติดตั้งลงใน / usr / local / bin แต่หากฉันเปลี่ยนผู้ใช้ผู้ใช้นั้นจะสามารถเข้าถึงแอปพลิเคชันนี้ได้หรือไม่ ฉันอ่านที่ไหนสักแห่งที่นี่ (คำถามอื่น) ที่ฉันควรใช้ / เลือก? แต่ไบนารีที่โดยค่าเริ่มต้นไปที่ / usr / local / bin? ไม่มี / opt / bin ใช่ไหม


คำตอบ:


19

โดยปกติแล้วคุณไม่ควรลองติดตั้งด้วยตนเอง ในเกือบทุกกรณีคุณจะพบแพ็คเกจ. deb หากไม่มี google สำหรับคำแนะนำ (เช่นวิธีการติดตั้ง Oracle JDK ใน Ubuntu ) หากนี่เป็นซอฟต์แวร์ของคุณเองให้ตรวจสอบคู่มือบรรจุภัณฑ์ของ Ubuntuเพื่อขอความช่วยเหลือเกี่ยวกับวิธีการใส่สิ่งของลงใน Ubuntu อย่างถูกต้อง

หากคุณต้องทำอยู่ให้ใส่ไบนารีใน/ opt / myappแล้วเชื่อมโยงไฟล์ที่สามารถเรียกทำงานln -s /opt/myapp/myappbinary /usr/local/bin/myappbinaryได้ หากคุณต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับประเภทหัวข้อman hierในเทอร์มินัล อธิบายความแตกต่างระหว่าง/ usr / binและ/ usr / local / bin ที่นั่น ในกรณีใด ๆ พา ธ ทั้งสองอยู่ในตัวแปรสภาพแวดล้อม $ PATH นั่นหมายถึงไบนารีใด ๆ ที่คุณใส่ไว้จะสามารถดำเนินการได้โดยทุกคนที่เพิ่งตั้งชื่อไบนารี (ไม่ใช่พา ธ เต็ม) ดังนั้นการใช้ตัวอย่างข้างต้นที่คุณสามารถเรียกใช้โปรแกรมของคุณด้วยแทนที่จะต้องให้เส้นทางแบบเต็มmyappbinary/opt/myapp/myappbinary


1
อะไรคือจุดประสงค์ของการวางไว้ใน / opt โดยเฉพาะอย่างยิ่งหากคุณเพิ่งจะเชื่อมโยงมันเข้ากับ / usr / local อย่างใด?
psusi

หากฉันต้องการให้ผู้ใช้ทุกคนของระบบสามารถใช้งานแอพได้ฉันควรเชื่อมโยงไปยัง / usr / bin แทน / usr / local / bin หรือไม่
Jiew Meng

4
@ jiewmeng ถ้าคุณดูman hierคุณจะเห็นทุกอย่างอธิบายที่นั่น รวมถึงความแตกต่างระหว่าง / usr / bin และ / usr / local / bin กล่าวโดยย่อ: อย่าเชื่อมโยงอะไรกับ / usr / bin / @psusi สาเหตุที่ทำให้ระบบไฟล์ของคุณสะอาดอยู่เสมอ หากคุณติดตั้งคอมพิวเตอร์ของคุณใหม่ (หรือย้ายไปที่เครื่องอื่น / ฮาร์ดไดรฟ์) ไดเรกทอรีเดียวที่คุณต้องดูควรเป็น / home, / etc และ / opt และให้ฉันทำซ้ำอีกครั้ง: โดยปกติคุณไม่ต้องการทำอะไรนอก $ HOME ยกเว้นการแก้ไขไฟล์ config ใน / etc
mniess

7

/ usr สามารถอ่านได้ทั่วโลกดังนั้นไม่จะไม่มีปัญหากับผู้ใช้รายอื่นที่สามารถเรียกใช้โปรแกรม / usr / local คือที่ที่แอปพลิเคชั่นไปให้คุณรวบรวมจากซอร์สโค้ดเอง โปรแกรมที่ติดตั้งผ่านตัวจัดการแพคเกจไปที่อื่น ฉันไม่เคยเห็นจุดประสงค์ในการเลือกและเชื่อว่านี่เป็นเพียงการสืบทอดจาก AT&T Sys V เก่าย้อนหลังไปในยุค 80


อะไรคือความแตกต่างระหว่าง / usr / local / bin และ / usr / bin? หากฉันต้องการให้ผู้ใช้ทุกคนสามารถเข้าถึงแอพได้ฉันจะใส่ไว้ใน / usr / bin หรือไม่
Jiew Meng

@ jiewmeng อีกครั้งเวอร์ชันท้องถิ่นสำหรับโปรแกรมที่คุณคอมไพล์จากซอร์สเองแทนที่จะทำการติดตั้งผ่านตัวจัดการแพ็คเกจ ไม่มีส่วนเกี่ยวข้องกับผู้ใช้และการเข้าถึง
psusi

0

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

หากคุณสร้างผู้ใช้ใหม่และผู้ใช้เก่าของคุณไม่ต้องทำอะไรเพื่อเข้าถึงโปรแกรมใหม่ผู้ใช้ใหม่ก็จะไม่ทำเช่นกัน

อย่างไรก็ตามคุณมีอิสระในการสร้าง/ opt / binและรวมไว้ในเส้นทางแต่ทำไมคุณต้อง หรือแม้กระทั่ง/ พลิก / ล้มเหลว / ขี้ขลาด / bin หรือลิงก์จากที่ใดที่หนึ่งไปยังไดเรกทอรีซึ่งรวมอยู่ในPATHแล้ว

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