Tìm hiểuvềcơchếhoạtđộngcủaFstab trong
Linux
Nếu bạn là người thường xuyên sử dụng hệ điều hành Linux thì chắc hẳn sẽ
có lúc cần phải thay đổi tùy chọn hoặc thiết lập của file hệ thống. Trong bài
viết dưới đây, chúng tôi sẽ giới thiệu với các bạn vềfstab – có thể giúp chúng ta
đơn giản hóa quá trình thực hiện trên.
Vậy Fstab là gì?
Hiểu nôm na rằng đây là bảng các file system của hệ thống trong hệ điều hành.
Trước kia, đây là cách chủ yếu để hệ thống kết hợp các file theo cách tự động,
nhưng ngày nay chúng ta chỉ cần cắm ổ USB hoặc bất kỳ thiết bị lưu trữ bên ngoài
nào với máy tính thì hệ thống sẽ hiển thị thông báo trên khay hệ thống tương tự
như Windows hoặc Mac. Nhưng đôi khi trong những tình huống đặc biệt thì
người dùng phải chỉ định rõ những ổ đĩa, phân vùng nào chính xác để kết nối vào
hệ thống bằng lệnh mount.
Như phía trên đã đề cập tới, khi người dùng chỉ định rõ ràng thiết bị nào sau khi
kết nối với máy tính thì hệ thống sẽ tự động kết hợp thành 1 phân vùng mới. Và
đây cũng là lúc fstab tỏ ra hữu ích. Giả sử rằng chúng ta kết nối ổ cứng bằng
chuẩn IDE hoặc SCSI, sau đó máy tính sẽ tải các file hệ thống cần thiết theo nhiều
thứ tự khác nhau, và do vậy có thể gây ra nhiều xáo trộn. Fstab được cấu hình,
thiết lập để tìm kiếm từng thể loại file hệ thống riêng biệt, sau đó kết hợp chúng
theo trật tự thống nhất, qua đó sẽ giảm thiểu được rất nhiều tỉ lệ lỗi xảy ra.
File Fstab:
Trên thực tế, hệ thống file fstab được lưu trữ tại thư mục sau:
/etc/fstab
Ví dụ:
Chúng ta có thể dễ dàng thấy được sự khác biệt ở đây, và nếu muốn hiển thị thông
tin về file fstab trên hệ thống của bạn thì hãy gõ lệnh sau vào Terminal:
Hoặc thay thế lệnh nano bằng gedit cũng mang lại kết quả tương tự.
Tùy chọn khác:
Để tiếp tục, các bạn hãy xem lại bài viết tìmhiểuvề phân vùng Scheme trong
Linux. Tại đây, chúng ta sẽ đề cập lại 1 số khái niệm cơ bản, chẳng hạn như đối
với từng loại file hệ thống khác nhau trong quá trình định dạng – Format thì sẽ
được gán với thông số Universally Unique Identifier – UUID nhất định, và sẽ cố
định như vậy. Thực chất, quá trình này không thể thay đổi được, và đây cũng là
cách lý tưởng để lựa chọn loại file hệ thống nào nên sử dụng, đặc biệt là đối với
những phân vùng quan trọng. Ví dụ: phân vùng /home nằm trên ổ cứng thứ 2
trong hệ thống, và chúng ta sẽ di chuyển tới 1 ổ cứng cắm ngoài khác thì fstab sẽ
đảm nhận nhiệm vụ tìm kiếm và kết nối phân vùng đó 1 cách chuẩn xác và đảm
bảo an toàn, nhằm tránh khỏi trường hợp xảy ra lỗi. Còn nếu các bạn chuyển về
phương pháp cũ là sử dụng thiết bị đã được xác định trước để lựa chọn phân vùng
(ví dụ /dev/sda1), ưu điểm trên sẽ mất đi bởi vì ổ cứng và phân vùng đã được đếm
bởi hệ thống Controller, và qua đó gây ra sự thay đổi trong hệ điều hành.
Việc sử dụng UUID trong file fstab khá thuận lợi cho nhiều người dùng có nhu
cầu đơn giản, nhưng bên cạnh đó vẫn còn một số điểm cần lưu ý về mặt kỹ thuật.
Trước tiên là cách này không nên áp dụng với những thiết bị assembled hoặc là
network-based, còn đối với người dùng nâng cao hoặc muốn sử dụng những
thành phần như RAID thì cũng không nên dùng UUID.
Phần tiếp theo củafstab sẽ được phân cách bằng khoảng trống hoặc 1 thẻ dữ liệu,
hoặc là kết hợp cả 2. Tại đây, chúng ta sẽ tìm thấy phần dữ liệu được kết hợp.
Sau đó là những thể loại file hệ thống được tìm thấy và xác định trên phân vùng,
chẳng hạn như: ext2/3/4, ReiserFS, jFS Ví dụ ảnh chụp màn hình trên chỉ ra
rằng phân vùng NTFS và chúng ta đang dùng ổ cứng ntfs-3g để truy cập vào hệ
thống.
Một số đặc điểm khác:
Tiếp theo là một vài điểm đặc trưng của fstab:
- auto/noauto: chỉ định rõ ràng phân vùng cụ thể có được khởi động cùng hệ
thống hay không, chúng ta có thể chặn bất kỳ phân vùng nào tại phần kết hợp khi
hệ thống khởi động bằng lệnh noauto.
- exec/noexec: chỉ định mỗi khi phân vùng nào đó có thể thực thi được các file
nhị phân.
- ro/rw: trong đó ro là read only và rw là read write. Nếu bạn muốn thay đổi file
hệ thống bằng tài khoản người dùng bình thường chứ không phải root thì sẽ phải
chỉ định đối tượng rõ rằng bằng tham số rw.
- sync/async: đây là 1 tính năng khá thú vị, sync sẽ yêu cầu lệnh viết được thực
hiện trên dòng lệnh, khá phù hợp với những thiết bị lưu trữ bên ngoài như ổ USB,
đĩa mềm nhưng không thực sự tốt với ổ cứng di động. Còn async sẽ cho phép
các câu lệnh được thực thi qua 1 khoảng thời gian nhất định nào đó.
- nouser/user: cung cấp cho người dùng quyền kết nối hoặc bỏ kết nối của các
thiết bị lưu trữ bên ngoài, điểm quan trọng cần lưu ý ở đây là user sẽ tự động bao
gồm noexec, do vậy nếu bạn muốn thực thi các file nhị phân bằng tài khoản người
dùng thì hãy loại trừ tùy chọn exec.
Những tùy chọn này được phân cách bằng dấu phẩy, không khoảng trống, và đặt
theo bất kỳ thứ tự nào. Tuy nhiên, những thiết bị có kết nối theo thời gian tạm thời
như ổ USB thì sẽ không tuân theo quy luật trên trừ khi chúng ta tự tạo đối tượng
áp dụng cho chúng bằng UUID trong fstab.
Ví dụ như ảnh chụp màn hình trên, 2 ổ cứng cắm ngoài đã có quyền kết hợp được
kích hoạt, truy cập, đọc và ghi
Dumping và Fscking:
Tùy chọn tiếp theo ở đây là giá trị theo mã nhị phân: 0 là false và 1 là true đối với
dumping. Theo khuyến cáo của nhiều người sử dụng thì các bạn nên thiết lập giá
trị 0.
Lựa chọn cuối cùng được đề cập đến ở đây là giá trị số của passing: với chức năng
chính là “thông báo” với hệ thống thứ tự sắp xếp của fsck hoặc thực hiện quá trình
kiểm tra file hệ thống. Nếu 1 ổ đĩa hoặc phân vùng nào có giá trị 0 thì sẽ bị bỏ qua,
giống như ổ cứng NTFS đã được format trong ví dụ trên. File hệ thống root sẽ
luôn có giá trị 1 và những loại file system khác sẽ được áp dụng ngay sau đó. Cơ
chế này rất phù hợp với ext3/4 và ReiserFS, còn một số file khác như FAT16/32
và ext2 thì sẽ được thực hiện sau đó.
. Tìm hiểu về cơ chế hoạt động của Fstab trong Linux Nếu bạn là người thường xuyên sử dụng hệ điều hành Linux thì chắc hẳn sẽ có lúc cần phải thay đổi tùy chọn hoặc thiết lập của file. của file hệ thống. Trong bài viết dưới đây, chúng tôi sẽ giới thiệu với các bạn về fstab – có thể giúp chúng ta đơn giản hóa quá trình thực hiện trên. Vậy Fstab là gì? Hiểu nôm na rằng đây. File Fstab: Trên thực tế, hệ thống file fstab được lưu trữ tại thư mục sau: /etc /fstab Ví dụ: Chúng ta có thể dễ dàng thấy được sự khác biệt ở đây, và nếu muốn hiển thị thông tin về file fstab