How to edit /etc/fstab?

Posted: March 3, 2011 by Hacking & Relax in Linux

Đây là bài viết của Nana Langstedt trên website tuxfiles.org. Cám ơn tác giả vì bài viết ý nghĩa 🙂

 

1. fstab là gì?

fstab là file cấu hình bao gồm các thông tin về tất cả các partition và các thiết bị lưu trữ trong máy tính. File này nằm trong thư mục /etc, vì vậy đường dẫn của nó là /etc/fstab.

/etc/fstab chứa thông tin về vị trí các partition và cách thức mà nó được mount. Nếu bạn không thể truy cập được vào phân vùng windoze, không thể mount CD hay chỉ có thể đọc mà không thể ghi vào một phân vùng nào đó. Như vậy khá bực mình, nhưng một nguyên nhân chủ yếu là do bạn đã cấu hình file fstab không đúng. Hiểu rõ cấu trúc file fstab sẽ giúp bạn khắc phục được những vấn đề này một cách dễ dàng. /etc/fstab thực chất chỉ là một file text đơn thuần, vì vậy bạn có thể chỉnh sửa với một trình biên tập bất kỳ (tôi sử dụng vi cho đơn giản). Tuy nhiên, cần phải nhớ rằng phải có quyền root mới có thể sửa được file fstab này.

2. Cấu trúc file fstab

Tất nhiên mỗi người đều có file /etc/fstab khác nhau do các thiết bị cũng như phân vùng và phân quyền khác nhau, nhưng tựu lại thì cấu trúc của file fstab đều như nhau. Dưới đây là một ví dụ về file /etc/fstab:

 

/dev/hda2 / ext2 defaults 1 1

/dev/hdb1 / ext2 defaults 1 2

/dev/cdrom /media/cdrom auto ro,noauto,user,exec 0 0

/dev/fd0 /media/floppy auto rw,noauto,user,sync 0 0

/proc /proc proc defaults 0 0

 

 

Những điều trên có ý nghĩa gì? Như bạn thấy, mỗi dòng hiển thị thông tin về một thiết bị hoặc một phân vùng. Cột đầu tiên chỉ ra tên của thiết bị hoặc phân vùng, cột thứ 2 là vị trí mount (mount point), cột thứ 3 là loại file hệ thống, cột thứ 4 là các tùy chọn khi mount, cột thứ 5 là tùy chọn dump và cột cuối cùng là tùy chọn kiểm tra file hệ thống. Phần dưới đây sẽ đi sâu phân tích các cột này.

 

3. Phân tích fstab

3.1. Thiết bị và điểm mount

Cột đầu tiên và cột thứ 2 thông báo chính xác cho lệnh mount biết sẽ phải mount thiết bị, phân vùng nào vào vị trí nào. Nếu bạn không chỉ định mount vào đâu thì hệ thống sẽ tự động mount vào vị trí mặc định (default moutn point). Hầu hết các distro đều có default mount point là /mnt, tuy nhiên một số distro khác (như Suse) thì default mount point là /media.

 

3.2 Kiểu file hệ thống

Cột thứ 3 trong /etc/fstab chỉ ra kiểu file hệ thống (filesystem) của thiết bị hoặc phân vùng. Có rất nhiều kiểu filesystem khác nhau, nhưng ở đây chỉ điểm qua một số kiểu chung.

 

* ext2 và ext3 (hiện nay đã có ext4): Rất nhiều phân vùng Linux là ext3. Trước đây ext2 là filesystem chuẩn cho Linux, nhưng hiện nay Ext3 và ReiserFS thường được sử dụng cho các distro Linux hơn. Tôi đang sử dụng OpenSuse 11.2 và phiên bản này đã sử dụng ext4.

* swap: Chính tên của kiểu này đã giải thích cho nó. Kiểu file hệ thống này được sử dụng cho phân vùng swap.

* vfat và ntfs: USB thường được định dạng là Vfat (hay còn được biết đến với tên gọi FAT32). Các phân vùng Windoze được định dạng là Vfat hoặc NTFS. Các dòng 9x (95, 98, ME) đều được định dạng là Vfat còn các dòng NT (NT, 2000, XP, Vista, 7) sử dụng NTFS nhưng nó cũng có thể sử dụng Vfat.

* auto: Nên nhớ đây không phải là một kiểu filesystem. Tùy chọn “auto” có nghĩa là hệ thống sẽ tự động dò filesystem của thiết bị hoặc phân vùng.

 

 

3.3 Tùy chọn mount

Cột thứ 4 trong file fstab liệt kê thất cả các tùy chọn cho thiết bị hoặc phân vùng. Đây cũng là cột quan trọng nhất và nó cũng giúp bạn giải quyết được các vấn đề đặt ra ở đầu bài. Dưới đây sẽ giải thích một vài tùy chọn hay sử dụng, để biết thêm chi tiết, bạn có thể dùng lệnh man mount để xem hướng dẫn.

 

* auto và noauto: Với tùy chọn auto, phân vùng sẽ được mount một cách tự động (tức là khi khởi động là được mount). auto là tùy chọn mặc định. Nếu bạn không muốn tự động mount, hãy sử dụng tùy chọn noauto

* user và nouser: Đây là tùy chọn rất hữu ích. Tùy chọn user cho phép người dùng bình thường có thể mount phân vùng này, còn tùy chọn nouser chỉ cho phép root mới có quyền mount. nouser là tùy chọn mặc định

* exec và noexec: exec cho cung cấp cho bạn quyền thực thi (x) trên phân vùng đó và noexec có ý nghĩa ngược lại. exec tùy chọn mặc định.

* ro: Tùy chọn chỉ cho phép đọc

* rw: Tùy chọn cho phép ghi.

* defaults: Tùy chọn defautls có nghĩa là: rw, suid, dev, exec, auto, nouser, async.

 

 

3.4 Dump và fsck

Dump là 1 công cụ sao lưu và fsck là công cụ kiểm tra file hệ thống. Thông thường các tùy chọn này để là 0, và không có nhiều ý nghĩa lắm đối với các thao tác thông thường. 2 thông số này chính là cột 5 và cột 6, như bạn thấy, đa phần 2 cột cuối cùng này có giá trị là 0 0.

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s