cau truc thu muc Linux

Sơ đồ cấu trúc thư mục trên Linux

Nếu như từ trước đến giờ bạn chỉ làm việc quen thuộc trên môi trường Window với các khái niệm ổ đĩa: ổ C chứa hệ điều hành, ổ D dùng lưu dữ liệu,…và khi bạn chuyển qua sử dụng các HĐH (hệ điều hành) Linux bạn sẽ bị lúng túng, phân vân về cấu trúc thư mục trên HĐH linux. Vì trên Linux không có khái niệm ổ C, ổ D mà chỉ có /dev/sda , /dev/sdb hay /dev/sdb1 ,…Bản khi tôi cũng bị lúng túng khi lần đầu tiên trải nghiệm HĐH CentOS, không hiểu tạo / (root), /boot, /usr để làm gì?. Nhưng khi bạn đi sâu vào tìm hiểu thì sẽ thấy nó rất thú vị.  Vì thế hôm nay tôi sẽ giới thiệu tổng quan về Sơ đồ cấu trúc thư mục trên hệ thống Linux, cũng như vai trò và nhiệm vụ của từng thư mục.

cau truc thu muc Linux

hình 1: Cấu trúc thư mục trên Linux

1. / – Root

– Mỗi một file và thư mục điều bắt đầu từ root directory
– Chỉ có user root có quyền trên các thư mục ở cấp bên dưới
– Còn /root là home directory của user root

2. /bin – User Binaries

– Chứa file thực thi dạng binary
– Các lệnh sử dụng thông thường trong linux được sử dụng single-user mode được đặt dưới cấu trúc thư mục này
– Các câu lệnh được sử dụng bởi tất cả các user trong hệ thống sẽ được đặt trong đây. Ví dụ một số lệnh như ps, ls, ping, grep, cp,…

3. /sbin – System Binaries

– Giống như /bin, bên trong /sbin cũng chứa đựng các file thực thi dạng binary. Các lệnh bên trong /sbin thường được sử dụng bởi system administrator và dùng cho các mục đích là duy trì quản trị hệ thống.
– Một số lệnh trong đây ví dụ như iptables, reboot, ifconfig

4. /etc – Configuration Files

– Thông thường ở /etc sẽ chứa file cấu hình cho các chương trình hoạt động
– Ở /etc cũng thường chứa các scripts dùng để start, stop, kiểm tra status cho các chương trình.
– Ví dụ /etc/resolv.conf (cấu hình dns-server ), hay /etc/network dùng để quản lý dịch vụ network

5. /dev – Device Files

– Chứa các file device để đại diện các hardware
– Ví dụ /dev/tty1 hay /dev/sda

6. /proc – Process Information

– Chứa đựng thông tin về quá trình xử lý của hệ thống
– Đây là một pseudo filesystem chứa đựng các thông tin về các process đang chạy
– Đây là một virtual filesystem chứa đựng các thông tin tài nguyên hệ thống. Ví dụ: /proc/cpuinfo cung cấp cho ta thông số kỹ thuật của CPU

7. /var – Variable Files

– Chứa đựng các file có sự thay đổi trong quá trình hoạt động của hệ điều hành
– Ví dụ system log sẽ được đặt tại vị trí này
+ System log file /var/log
+ database file /var/lib
+ email /var/mail
+ Các print queue /var/spool
+ lock file /var/lock
+ Các file tạm thời cần cho quá trình reboot /var/tmp

8. /tmp – Temporary Files

– Thư mục này chứa các file được tạo ra bởi hệ thống và user
– Các file bên dưới thư mục này được xóa đi khi hệ thống reboot

9. /usr – User Programs

– Chứa các file binary, library, tài liệu, source-code cho các chương trình
/usr/bin chứa file binary cho các chương trình của user. Nếu như một user trong quá trình thực thi một lệnh ban đầu sẽ tìm kiếm trong /bin, nếu như không có thì sẽ tiếp tục nhìn vào /usr/bin. Ví dụ một số lệnh như at. awk, cc…
/usr/sbin chứa các file binary cho system administrator. Nếu như ta không tìm thấy các file system binary bên dưới /sbin thì ta có thể tìm ở trong /usr/sbin. Ví dụ một số lệnh như cron, sshd, useradd, userdel
/usr/lib chứa các file libraries cho /usr/bin/usr/sbin
/usr/local dùng để chứa chương trình của các user, các chương trình này được cài đặt từ source. Ví dụ khi ta install apache từ source thì nó sẽ nằm ở vị trí là /usr/local/apache2

10. /home – Home Directories

– Home directory được chứa đựng thông tin cá nhân của các user
– Ví dụ /home/athena , /home/student

11. /boot – Boot Loader Files

– Chứa đựng boot loader và các file cần cho quá trình boot tùy theo các phiên bản của kernel
– Các file Kernel initrd, vmlinux, grub được đặt bên dưới /boot
– Ví dụ initrd.img-2.6.32-24-generic, vmlinuz-2.6.32-24-generic

12. /lib – System Libraries

– Chứa các file library hỗ trợ cho các file thực binary nằm bên dưới /bin và /sbin
– Tên của các file library thường là ld* or lib*.so.* . Ví dụ như ld-2.11.1.so, libncurses.so.5.7

13. /opt – Optional add-on Applications

– opt đại diện cho optional
– Chứa đựng các chương trình thêm vào của các hãng khác

14. /mnt – Mount Directory

– Chứa các thư mục dùng để system admin thực hiện quá trình mount

15. /media – Removable Media Devices

– Chứa thư mục dùng để mount cho các thiết bị removable. Ví dụ như CDROM, Floppy

16. /srv – Service Data

– srv đại diện cho service
– Chứa đựng các dịch vụ cho server, nó liên quan đến dữ liệu. Ví dụ /srv/cvs chứa đựng CVS

Tổng hợp từ Internet.

Leave a Comment

Your email address will not be published. Required fields are marked *