Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Mac

Hiểu Về Các Thư Mục Hệ Thống Của Mac

Thư mục hệ thống là thư mục không dành cho người dùng truy cập. Chúng giúp ứng dụng và hệ điều hành chạy, cung cấp hỗ trợ và tài nguyên. Chúng là lớp cho phép người dùng thao tác host qua ứng dụng và chương trình. Một số ẩn, một số không, nhưng gần như tất cả đều truy cập được bởi người dùng theo cách nào đó.

Nhưng các thư mục hệ thống khác nhau dùng làm gì? "/bin" là gì, và nó giúp máy tính như thế nào? Chúng tôi sẽ kiểm tra các thư mục hệ thống thường được tham chiếu dưới đây.

Thư mục "/System" trên Mac không chứa nhiều thứ. Chúng ta xem nội dung nó trước, rồi đi sâu thư mục hệ thống khác.

Lưu ý: Đừng thêm, xóa, sửa thư mục và tệp tin hệ thống. Bạn duyệt an toàn, nhưng thêm, xóa, sửa tệp tin hoặc thay đổi thư mục có hậu quả không lường trước – đôi khi làm hỏng hệ thống. Nếu phải thử nghiệm, hãy tạo bản clone bootable của Mac trước.

Thư Mục Library: /System/Library và ~/Library

Hiểu Về Các Thư Mục Hệ Thống Của Mac

Thư mục Library gần người dùng nhất. Chúng được tạo bởi ứng dụng, và app thêm, xóa, sửa tệp tin qua quá trình hoạt động. Thẳng thắn, quy trình tổ chức ở đây hơi hỗn loạn. App cơ bản tự do làm gì muốn khi đặt tệp tin trong Library, nhưng hầu hết tuân theo quy trình tương tự.

Bạn tìm thấy đa dạng lớn tệp và thư mục trong cả thư mục Library người dùng ("~/Library") và thư mục Library hệ thống ("/System/Library"). Các tệp này lưu preferences, database ứng dụng, metadata, plugin, trạng thái app đã lưu, profile hệ thống, cookie, và nhiều hơn nữa.

Application Support

Hiểu Về Các Thư Mục Hệ Thống Của Mac

Thư mục "~/Library/Application Support" là thư mục Library truy cập nhiều nhất. Ở đây, ứng dụng lưu tệp tin cần thiết cho hoạt động. Xa thư mục dữ liệu người dùng, các tệp này được tách biệt để tránh ô nhiễm hoặc sửa đổi.

Khi người dùng truy cập thư mục này, thường để thay đổi cách chương trình hoạt động không được hỗ trợ bởi cài đặt mặc định, hoặc sửa lỗi cache/database. Xóa thư mục Application Support của chương trình là cách tốt reset chương trình về mặc định và buộc khởi động sạch. Và nếu muốn hack vào ứng dụng, bạn sẽ thấy mình ở thư mục Application Support của chương trình đó không lâu.

Khác Biệt Giữa /System/Library Và ~/Library?

Tại sao macOS cần hai thư mục Library? System library dùng cho mọi người dùng cho nhu cầu hệ thống. Truy cập được bởi tất cả người dùng. Thư mục Library người dùng, mặt khác, chỉ truy cập được bởi người dùng cụ thể đó.

Thư Mục Unix: /bin, /sbin, /usr, /var, /private

Hiểu Về Các Thư Mục Hệ Thống Của Mac

macOS xây dựng trên kernel Unix. Nghĩa là nhiều chức năng sâu dựa trên chức năng Unix. Vì vậy ngoài thư mục hệ thống macOS cấp cao, bạn tìm thấy thư mục Unix. Các thư mục này ẩn hoàn toàn, nên bạn cần hiện tệp ẩn để theo dõi.

Bạn tìm thấy khá nhiều thư mục Unix trong thư mục home. Đáng chú ý nhất là "/bin" và "/sbin", "/usr", "/var", và "/private".

Hiểu Về Các Thư Mục Hệ Thống Của Mac

"/bin" và "/sbin" đều chứa binary (nhị phân). "sbin" chứa binary cần cho boot, restore, recover, repair hệ thống ngay cả khi chưa mount hệ thống tệp. "/bin" chứa lệnh user cơ bản cho mọi user. "bin" viết tắt của binaries, "sbin" viết tắt của system binaries.

Trên macOS, hầu hết binary mount hệ thống tệp trong "/sbin" được symlink đến plugin hệ thống tệp macOS trong "/System/Library/Filesystems".

Hiểu Về Các Thư Mục Hệ Thống Của Mac

"/usr" chứa binary và thư viện dùng trong vận hành hệ thống bình thường. Tệp tin đây dùng sau khi hệ thống tệp được mount. "usr" viết tắt "user" hoặc Unix System Resources.

Hiểu Về Các Thư Mục Hệ Thống Của Mac

"/var" chứa tệp tin hệ thống ghi vào qua vận hành, như cache, thư viện dữ liệu, log. Var viết tắt variable và thường chỉ được ghi bởi app cấp lõi hệ thống. Trên macOS "/var" symlink đến "/private/var".

Hiểu Về Các Thư Mục Hệ Thống Của Mac

"/private" chứa cấu hình daemon và công cụ dòng lệnh, cache, biến, file swap ảo, tệp tạm, sleep image. Một số thư mục Unix như "/etc" và "/tmp" symlink đến thư mục cùng tên trong /private cho nội dung.

Nếu muốn tìm hiểu nội dung các thư mục này, xem phân tích chi tiết thư mục Unix của Mac.

Extension (Mở Rộng)

Hiểu Về Các Thư Mục Hệ Thống Của Mac

Nếu bạn từng build Hackintosh, bạn nghe过 "System/Library/Extensions". Thường viết tắt "S/L/E", thư mục này chứa "kext" (kernel extension), mở rộng chức năng kernel macOS. Thêm kext giúp kernel macOS giao tiếp với phần cứng mới. Nếu bạn từ Windows, kext giống driver.

Sửa đổi nội dung thư mục này rủi ro, yêu cầu quản lý quyền cẩn thận. Nếu muốn thêm/xóa kext trên macOS, hãy chắc chắn làm đúng.

Agent và Daemon

Daemon và agent chạy nền, thực hiện tác vụ không tương tác người dùng. Tên lạ (phát âm "demon") xuất phát từ daemon của Maxwell.

Daemon thực hiện thao tác hệ thống, chạy bởi root, trong khi agent chạy bởi user đang đăng nhập. Global agent/daemon truy cập và chạy thay mặt bất kỳ user nào, user agent chỉ chạy thay mặt user sở hữu file library.

  • "~/Library/LaunchAgents" chứa user agent chạy thay mặt user đăng nhập
  • "/Library/LaunchAgents" chứa global agent chạy thay mặt user đăng nhập
  • "/System/Library/LaunchAgents" chứa system agent chạy thay mặt user đăng nhập
  • "/Library/LaunchDaemons" chứa global daemon chạy bởi root
  • "/System/Library/LaunchDaemons" chứa system daemon chạy bởi root

Bạn tạo daemon mới và cấu hình daemon hiện có với chương trình dòng lệnh launchctl.

Kết Luận

Có thư mục non-user khác ẩn trên Mac, nhưng trên là thường truy cập nhất. Bạn học thêm về tổ chức hệ thống tệp Unix bằng cách xem Filesystem Hierarchy Standard, giải thích yêu cầu và hướng dẫn đặt tệp/thư mục Unix-like.