Đến từ thế giới Windows, tôi đã tìm thấy phần lớn các tên thư mục thư mục khá trực quan:
\Program Files
chứa các tệp được sử dụng bởi các chương trình (bất ngờ!)\Program Files (x86)
chứa các tệp được sử dụng bởi các chương trình 32 bit trên HĐH 64 bit\Users
(trước đâyDocuments and Settings
) chứa tệp của người dùng, tức là tài liệu và cài đặt\Users\USER\Application Data
chứa dữ liệu dành riêng cho ứng dụng\Users\USER\Documents
chứa tài liệu thuộc về người dùng
\Windows
chứa các tệp thuộc về hoạt động của chính Windows\Windows\Fonts
lưu trữ các tập tin phông chữ (bất ngờ!)\Windows\Temp
là một thư mục tạm thời toàn cầu
vân vân. Ngay cả khi tôi không biết những thư mục này đã làm gì, tôi có thể đoán với độ chính xác tốt từ tên của chúng.
Bây giờ tôi đang xem xét kỹ về Linux và khá bối rối về cách tìm đường xung quanh hệ thống tệp.
Ví dụ:
/bin
chứa nhị phân. Nhưng cũng vậy/sbin
,/usr/bin
,/usr/sbin
, và có lẽ nhiều hơn mà tôi không biết. Cái nào là cái nào?? sự khác biệt giữa chúng là gì? Nếu tôi muốn tạo một nhị phân và đặt nó ở đâu đó trên toàn hệ thống, tôi phải đặt nó ở đâu?/media
chứa các hệ thống tập tin phương tiện bên ngoài. Nhưng cũng vậy/mnt
. Và không ai trong số họ chứa bất cứ thứ gì trên hệ thống của tôi vào lúc này; tất cả mọi thứ có vẻ là trong/dev
. Có gì khác biệt? Các phân vùng khác trên đĩa cứng của tôi ở đâu, nhưC:
vàD:
trong Windows là ở đâu?/home
chứa các tập tin người dùng và cài đặt. Đó là nhiều trực quan, nhưng sau đó, những gì được cho là đi vào/usr
? Và tại sao/root
vẫn tách biệt, mặc dù đó là người dùng có tệp và cài đặt?/lib
chứa các thư viện chia sẻ, như DLL. Nhưng cũng vậy/usr/lib
. Có gì khác biệt?Có gì là
/etc
? Liệu nó thực sự đại diện cho "et cetera", hay cái gì khác? Những loại tập tin nên có trong đó - toàn cầu hoặc địa phương? Đây có phải là tất cả cho những thứ không ai biết đặt ở đâu, hoặc có một trường hợp sử dụng cụ thể cho nó không?Là gì
/opt
,/proc
và/var
? Họ đại diện cho cái gì và họ dùng để làm gì? Tôi chưa thấy bất cứ thứ gì giống như chúng trong Windows *, và tôi không thể hiểu chúng có thể dùng để làm gì.
Nếu bất cứ ai có thể nghĩ về những nơi tiêu chuẩn khác có thể tốt để biết về, hãy thoải mái thêm nó vào câu hỏi; hy vọng đây có thể là một tài liệu tham khảo tốt cho những người như tôi, những người bắt đầu làm quen với các hệ thống * nix.
* OK, đó là một lời nói dối. Tôi đã thấy những điều tương tự trong WinObj, nhưng rõ ràng là không thường xuyên. Mặc dù vậy, tôi vẫn không biết những gì chúng làm trên Linux.
C:\Program Files
, C:\ProgramData
, %HOME%\AppData\Local
, %HOME%\AppData\LocalLow
, C:\Windows\SystemApps
... Tất cả các ví dụ mà người ta có thể tìm thấy tập tin thực thi trong Windows. Và tôi thậm chí sẽ không nói về các tập tin cấu hình và sổ đăng ký, tôi không muốn bị trầm cảm hơn nữa. PS: Tôi làm việc chủ yếu trong Windows.