Mount trong Ubuntu

Thảo luận trong 'Góc Ubuntu - Debian' bắt đầu bởi hautp, Thg 10 20, 2012.

  1. hautp

    hautp Well-Known Member

    mount để "gắn" thiết bị và thư mục. Đây là một lệnh khó dùng vì có nhiều tùy chọn. Nhưng trước hết bạn phải hiểu được bản chất của quá trình mount. Linux rất hay sử dụng khái niệm này.
    Khi cài đặt bạn được yêu cầu tạo ra ít nhất hai phân vùng. Một để "gắn" thư mục root vào (/) và một choswap. Linux coi toàn bộ hệ thống là một FileSystem duy nhất và bạn có thể "gắn" ổ đĩa cũng như thiết bị lên bất kỳ thư mục thông thường nào trên đó. Một số bản phân phối Linux dành riêng một số thư mục để bạn gắn các ổ đĩa lên đó. Ở Ubuntu đó là thư mục /media dành để gắn các ổ đĩa tự động và /mnt dùng với mục đích chung.
    I. Cách dùng
    1. Gắn tự động
    Như đã nói ở trên hệ điều hành sử dụng hai phân vùng. Vậy nó lấy thông tin ở đâu để "gắn"? Nếu có kinh nghiệm sử dụng Linux bạn có thể đoán ngay ra là nó sẽ sử dụng text file để lưu giữ thông tin và nằm trong thư mục /etc. File đó chính là /etc/fstab. Kernel sẽ đọc thông tin ở đây khi khởi động. Nội dung của nó đại loại như sau:

    # /etc/fstab: static file system information.
    #
    # Use 'vol_id --uuid' to print the universally unique identifier for a
    # device; this may be used with UUID= as a more robust way to name devices
    # that works even if disks are added and removed. Xem trong fstab(5).
    #
    # <điểm gắn>
    proc /proc proc defaults 0 0
    # / was on /dev/sda9 during installation
    UUID=66294c53-186e-4f64-8f38-13314c4fbc06 / ext4 relatime,errors=remount-ro 0 1
    # /home was on /dev/sda11 during installation
    UUID=3b6175f1-29f1-41ae-8b3e-2cb5a2acd556 /home reiserfs relatime 0 2​
    Chú ý: thay vì sử dụng UUID bạn có thế sư dụng file system dạng như /dev/sda9. Dùng lệnh blkid để tìmUUID hay 'vol_id --uuid' như trong hướng dẫn.
    Nếu bạn thêm vào một mục hay chỉnh sửa nội dung, bạn cần phải mount lại:

    $ sudo mount -a​
    Để xem định dạng của fstab xin hãy đọc manpage. Và cũng nên xem thêm bài viết: "Creating the /etc/fstab File".
    2. Gắn thủ công
    Giả sử bạn có ổ đĩa C: định dạng ntfs cài Windows có tên là /dev/sda1. Bây giờ bạn hãy mount vào hệ thống như sau:

    $ mkdir /mnt/WindowsXP # Tạo thư mục để gắn sda1 vào
    $ mount -v -t ntfs /dev/sda1 /mnt/WindowsXP​
    Từ giờ bạn truy cập vào ổ "C:" bằng đường dẫn /mnt/WindowsXP.
    2. Tháo thiết bị ra khỏi vị trí được gắn trước đó

    $ sudo umount Tên_thư_mục_gắn | Tên_phân_vùng
    Ví dụ:
    $ sudo umount /mnt/WindowsXP # hay có thể dùng:
    $ sudo umount /dev/sda1​
    3. Các kiểu mount khác
    Gắn các ổ đĩa mạng bao gồm một số giao thức như nfs, ftp, ssh, ftps v.v.. Việc gắn này có kiểu cần thêm phần mềm cũng có kiểu thì không. Các bạn cần tìm hiểu thêm vì trong một bài viết ngắn thì tôi không thể trình bày tất cả được. Xin đưa ra một ví dụ sau:

    $ sudo mount máy_chủ_nfsd:/home/demo /mnt/demo​
    Nếu sử dụng fstab:
    máy_chủ_nfsd:/home/demo /mnt nfs rw 0 0​
    Chú ý:
    II. Mẹo nhỏ
    Khi cài nên dành riêng một phân vùng cho /home
    Đây là một lựa chọn tốt, vì khi bạn cài lại hệ điều hành, thông tin cá nhân không bị mất đi. Nhưng nếu bạn không làm như thế từ đầu thì vẫn có thể làm được nhưng khó khăn hơn.
    Để "chuyển nhà" lên một phân vùng riêng, tôi xin tóm tắt quá trình như sau:

    • Sao chép toàn bộ dữ liệu trong /home lên phân vùng mới. Không dùng cp mà phải dùng rsync!
    • Sửa lại fstab để nó mount /home lên phân vùng này.
    • Đổi tên /home thành /home_bakup , không xóa để đề phòng có lỗi, sau đó tạo thư mục /home
    • Cuối cùng là khởi động lại.
    Xem chi tiết tại: https://help.ubuntu.com/community/Partitioning/Home/Moving
    Chú ý:

    • Nếu có lỗi xảy ra bạn hãy sử dụng đĩa cứu hộ để sửa lại fstab như ban đầu, đổi tên /home_bakup thành /home và khởi động lại, mọi việc lại như "thuở ban đầu".
    • Ví dụ này cũng có thể áp dụng với các thư mục khác như bạn muốn đặt dữ liệu của PostgreSQLlên một chiếc đĩa cứng mới trong khi dữ liệu và hệ điều hành vẫn giữ nguyên.
     
  2. phuonglinh0501

    phuonglinh0501 New Member

    Cám ơn bác đã chia sẻ nhưng thông tin cần thiết cho mọi người. Mong thời gian tới bác sẽ chia sẻ tiếp tục những nội dung tốt nhất cho mọi người... ^^
     

Chia sẻ trang này