Làm thế nào nên thực thi cài đặt dưới / opt được thêm vào đường dẫn?


11

Các chương trình được cài đặt theo /optsymlink có thể được liên kết một cách an toàn /usr/local/bin, đã có trong PATH theo mặc định trong Ubuntu và các bản phân phối Linux khác không?

Ngoài ra, có một số lý do để tạo một riêng biệt /opt/binvà thêm nó vào PATH, như trong câu trả lời này: Sự khác biệt giữa các thư mục / opt / bin và / opt / X / bin ?

Câu trả lời:


10

Có một sự khác biệt giữa /opt/usr/local/bin. Vì vậy, chỉ cần liên kết nhị phân từ cái này sang cái khác sẽ gây nhầm lẫn. Tôi sẽ không trộn chúng lên.

/optdành cho việc cài đặt các gói phần mềm ứng dụng bổ trợ , trong khi /usr/localthư mục dành cho quản trị viên hệ thống khi cài đặt phần mềm cục bộ (có makemake install). /usr/local/binđược dành cho các tệp nhị phân từ phần mềm được cài đặt bên dưới /usr/local.

Theo Tiêu chuẩn phân cấp tệp , cách chính xác sẽ là thêm /opt/<package>/binvào $PATHcho từng gói riêng lẻ. Nếu đây là quá đau đớn (khi bạn có một số lượng không đếm được của /opt/<package>/bindirecories chẳng hạn) sau đó bạn (người quản trị địa phương) có thể tạo liên kết tượng trưng từ /opt/<package>/binđến /opt/binthư mục. Điều này sau đó có thể được thêm vào người dùng $PATHmột lần.


Ơ, tại sao? /usr/local/bindành cho sử dụng của quản trị viên hệ thống. Nếu quản trị viên muốn cài đặt phần mềm /optvà tạo liên kết cho phần mềm bên dưới /usr/local, điều đó thật hoàn hảo.
Gilles 'SO- ngừng trở nên xấu xa'

@Gilles Tất nhiên anh ta có thể, anh ta có thể làm bất cứ điều gì anh ta muốn, anh ta là quản trị viên hệ thống. Nhưng thực hành tốt nhất sẽ là giữ chúng tách biệt.
hỗn loạn

Được rồi, có vẻ như đây là một vấn đề của quy ước tiêu chuẩn hơn bất cứ điều gì khác. Tôi hơi bối rối vì thiếu tính đối xứng "Có một sự khác biệt giữa /opt/usr/local/bin" trái ngược với "... giữa /opt/usr/local" hoặc "... giữa /opt/bin/usr/local/bin", nhưng sau khi đi đến cuối, tôi nghi ngờ đó là ý như một cách để kết hợp /opt/bin/opt/.../bin. Nếu vậy, tôi tự hỏi nếu từ ngữ có thể được cải thiện.
Kenneth Hanson

1
@chaos Bạn viết rằng, theo FHS, /opt/package/bin/hoặc ít nhất /opt/bin/nên được thêm vào $ PATH. Tôi đã đọc qua tài liệu tham khảo được đăng và nó nói rất nhiều về cách cấu trúc /optvà những gì cần có bên trong đó nhưng tôi không thể tìm thấy xác nhận rằng bất kỳ thư mục nào trong số đó /optnên được thêm vào $ PATH. Bạn có thể giải thích làm thế nào bạn đi đến kết luận đó? Cheers
nạn nhân

@vic Lý do tương tự bạn sẽ đặt bất kỳ /whatever/binthư mục nào khác vào $ PATH - vì vậy bạn có thể gọi các tệp thực thi mà không cần nhập đường dẫn đầy đủ mỗi lần.
Kenneth Hanson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.