Trong thế giới hệ điều hành Unix-like, khái niệm “gắn kết” (mount) không chỉ là thao tác kỹ thuật: nó là phép nối giữa vật lý và biểu tượng, giữa thiết bị lưu trữ thô và cây thư mục thống nhất mà người dùng tương tác mỗi ngày. Bài viết này giải thích chi tiết các lệnh mount, umount và remount trên Linux (cũng áp dụng cho macOS và các hệ thống tương tự), đồng thời cung cấp ví dụ thực tế, mẹo xử lý lỗi và cách tận dụng các tùy chọn phổ biến như loop, bind, cifs, và remount. Từ khái niệm mount point đến thao tác với ảnh ISO, từ quản lý fstab đến “lazy unmount” — mọi phần được trình bày rõ ràng để bạn nắm quyền kiểm soát file system một cách an toàn và hiệu quả.
Bản chất của file system trên Linux
Khác với Windows dùng ký tự ổ (C:, D:), Linux hợp nhất mọi thiết bị vào một cây thư mục duy nhất. Khi một thiết bị lưu trữ được mount, hệ thống “gắn” file system của thiết bị đó vào một thư mục trong cây hệ thống — gọi là mount point — khiến nội dung của thiết bị trở thành một phần liền mạch của hệ thống tệp.
Nhiều file system được tự động mount khi khởi động, hoặc khi thiết bị được cắm trong thời gian chạy. Tuy nhiên, trong nhiều môi trường máy chủ hoặc khi quản trị viên muốn kiểm soát chặt chẽ, auto-mount có thể bị tắt — và lúc đó mount/umount là công cụ thiết yếu.
Máy tính với Windows và Linux truyền file giữa hai hệ
Máy tính với Windows và Linux truyền file giữa hai hệ
Liệt kê hệ thống đã mount: mount cơ bản và lọc theo kiểu
Gõ mount không tham số sẽ in ra danh sách tất cả file system đang được mount. Kết quả thường chứa nhiều thông tin dư thừa; để thu hẹp, dùng tham số -t để chỉ lọc theo kiểu file system:
- mount tất cả:
mount - lọc tmpfs:
mount -t tmpfs - lọc ext4:
mount -t ext4
Khi nhìn vào output, các chỉ số thường thấy:
- rw/ro: read-write hoặc read-only
- relatime: chế độ cập nhật thời gian truy cập tối ưu
- errors=remount-ro: khi lỗi nghiêm trọng, hệ thống sẽ remount sang chế độ chỉ đọc
Kết quả lệnh mount trong terminal (ví dụ mount -t tmpfs)
Kết quả lệnh mount trong terminal (ví dụ mount -t tmpfs)
df — khi bạn chỉ cần dung lượng và mount point
Lệnh df cho biết dung lượng, vùng đã dùng và điểm mount; nhưng tương tự mount, output có thể quá nhiều (ví dụ các squashfs từ snap). Dùng -x để loại trừ kiểu file system:
- loại trừ squashfs:
df -x squashfs
Điều này giúp bạn nhanh chóng thấy dung lượng và mount point của các file system hữu dụng.
df -x squashfs hiển thị dung lượng và mount point
df -x squashfs hiển thị dung lượng và mount point
Remount toàn bộ file system từ fstab
Các file system được mount lúc khởi động được liệt kê trong /etc/fstab. Để làm mới (refresh) tất cả entry trong fstab mà không reboot, dùng:
sudo mount -a
Lệnh này hữu ích khi bạn sửa fstab hoặc khi một số mount gặp vấn đề — bạn sẽ nhận được thông báo chẩn đoán trên màn hình hoặc trong log hệ thống.
Mount ảnh ISO với loop device
ISO là file ảnh CD/DVD; bạn có thể mount ISO để truy cập nội dung như một file system thực:
- cú pháp:
sudo mount -t iso9660 -o loop TinyCore-current.iso /mnt
Giải thích:
-t iso9660: chỉ định kiểu file system của ISO-o loop: cho phép gắn file như một thiết bị vòng lặp (loop device)- ISO thường mount ở chế độ read-only
Sau khi mount, bạn duyệt /mnt như bình thường (ls /mnt).
Mount ảnh ISO trong terminal, ví dụ Tiny Core ISO
Mount ảnh ISO trong terminal, ví dụ Tiny Core ISO
Tạo điểm mount riêng và bind mount để rút ngắn đường dẫn
Bạn có thể tạo mount point mới (chỉ là một thư mục) rồi mount lên đó:
sudo mkdir -p /media/dave/isomntsudo mount -r -t iso9660 -o loop TinyCore-current.iso /media/dave/isomnt/
Nếu đường dẫn quá dài, dùng bind mount để “bắt chước” mount point ở nơi khác:
sudo mount -B /media/dave/isomnt/ ~/iso
Sau đó có thể truy cập cùng nội dung qua /media/dave/isomnt hoặc ~/iso.
Mount Tiny Core ISO vào /media/dave/isomnt
Mount Tiny Core ISO vào /media/dave/isomnt
Unmount: umount và những lưu ý với bind
Lệnh unmount là umount (không có “n”). Bạn phải chỉ định mount point hoặc device:
sudo umount /mnt
Nếu file system đã được bind tới nhiều vị trí, bạn phải unmount ở tất cả điểm bind. Ngay cả khi unmount ở mount point gốc, file system vẫn có thể truy cập qua bind point cho đến khi bạn unmount ở bind point đó.
Ví dụ:
sudo umount /media/dave/isomntsudo umount ~/iso
Khi thiết bị đang bận: umount -l (lazy unmount)
Nếu có tiến trình đang sử dụng file system, umount sẽ thất bại. Bạn có thể dùng tùy chọn lazy để trì hoãn việc unmount cho đến khi file system không còn bận:
sudo umount -l /dev/sdb
Lưu ý: chế độ lazy không bật ngay lập tức; file system vẫn tồn tại cho đến khi không còn tiến trình nào tham chiếu tới nó.
Sử dụng umount -l để chờ tới khi drive không còn bận
Sử dụng umount -l để chờ tới khi drive không còn bận
Gắn Samba (CIFS) share qua mạng
Samba/CIFS cho phép truy cập chia sẻ mạng giữa Linux và Windows. Để mount share mạng:
- Cài đặt gói hỗ trợ (Debian/Ubuntu):
sudo apt-get install cifs-utils - Mount với credentials file và đặt UID/GID cho root của share:
sudo mount -t cifs -o credentials=/etc/samba/creds,uid=1000,gid=1000 //192.168.4.13/share /media/dave/NAS
Giải thích:
- credentials: file chứa username/password (bảo mật)
- uid/gid: xác định quyền sở hữu file trong hệ thống mount
//host/share: địa chỉ và tên share Samba- mount point phải tồn tại trước khi mount
Sau khi mount, nội dung share xuất hiện tại /media/dave/NAS.
Mount một chia sẻ mạng CIFS trong Linux
Mount một chia sẻ mạng CIFS trong Linux
Tạo file ảnh và format file system (dd + mkfs)
Để thực hành mà không cần thiết bị vật lý, bạn có thể tạo file ảnh, format và mount nó:
- Tạo file ảnh 20MB:
dd if=/dev/zero of=./geek_fs bs=1M count=20
- Tạo file system ext4:
mkfs -t ext4 ./geek_fs
- Mount file ảnh và set quyền:
sudo mount ./geek_fs /media/dave/geeksudo chown dave:users /media/dave/geek
Bạn có thể sao chép file vào đó để kiểm tra hoạt động.
Tạo file ảnh bằng dd và dựng filesystem với mkfs
Tạo file ảnh bằng dd và dựng filesystem với mkfs
Remount để thay đổi quyền truy cập (ro ↔ rw)
Remount thường dùng để chuyển file system giữa chế độ chỉ đọc và đọc-ghi:
- Mount read-only:
sudo mount -r /dev/sdb /mnt - Kiểm tra:
mount | grep /mnt(sẽ thấyro) - Remount đọc-ghi:
sudo mount -o remount,rw /mnt - Kiểm tra lại:
mount | grep /mnt(sẽ thấyrw)
Remount hữu dụng khi bạn muốn thử nghiệm file system an toàn rồi chuyển sang chế độ sản xuất mà không unmount hoàn toàn.
Thao tác remount chuyển ro sang rw, kiểm tra với mount | grep /mnt
Thao tác remount chuyển ro sang rw, kiểm tra với mount | grep /mnt
Khi không thể di chuyển trực tiếp mount point: -M và bind là giải pháp
Trước đây, option -M cho phép di chuyển mount point sang nơi khác, nhưng trên nhiều bản phân phối hiện đại sử dụng systemd, -M không còn hoạt động. Thay vào đó, dùng bind để “phản chiếu” mount point:
sudo mount -B /mnt ./geek
Điểm khác biệt: bind không giải phóng mount point gốc, nhưng cho phép truy cập cùng nội dung tại vị trí mới.
Một số mẹo thực tế và quan sát cuối cùng
- Luôn tạo mount point trước khi mount:
mkdir -p /path/to/mountpoint - Sử dụng file credentials cho mount mạng để tránh lộ mật khẩu trên dòng lệnh
- Dùng
mount -t TYPEvàdf -x TYPEđể lọc thông tin hữu ích umount -lgiúp giải quyết unmount khi có tiến trình tạm thời đang truy cập, nhưng hãy dùng thận trọng- Trên hệ thống chạy systemd, một số tùy chọn cũ của mount có thể khác hành vi; kiểm tra tài liệu kernel và man page (
man mount) - Nếu bạn sửa /etc/fstab, dùng
sudo mount -ađể kiểm tra trước khi reboot
Kết luận
Các lệnh mount, umount và remount là công cụ nền tảng cho quản trị file system trên Linux — từ việc gắn ảnh ISO để cài đặt phần mềm, đến chia sẻ dữ liệu qua Samba, hoặc tạo file system thử nghiệm bằng dd và mkfs. Hiểu rõ các tham số như -t, -o loop, -o remount, -B (bind) và cách hệ thống xử lý mount point sẽ giúp bạn thao tác an toàn, linh hoạt và hiệu quả. Trong bối cảnh hệ thống và văn hóa kỹ thuật, khả năng “gắn” và “tháo” một cách có kiểm soát phản chiếu thái độ quản trị: tôn trọng cấu trúc, nhưng vẫn giữ quyền tái cấu trúc khi cần.
Bạn đã thử mount một ISO, dựng file system ảo hay mount một chia sẻ Samba chưa? Chia sẻ kinh nghiệm hoặc câu hỏi của bạn ở phần bình luận — cùng nhau làm chủ cây thư mục chung này.
