Lệnh mtools trong Linux

Giới thiệu

Trong lab này, chúng ta sẽ khám phá lệnh mtools của Linux, là một tập hợp các tiện ích để truy cập đĩa MS-DOS từ Unix mà không cần mount chúng. Chúng ta sẽ bắt đầu bằng cách cài đặt gói mtools trên Ubuntu 22.04, sau đó đi sâu vào các lệnh và tùy chọn khác nhau có sẵn trong mtools. Cuối cùng, chúng ta sẽ học cách quản lý các ảnh đĩa mềm bằng mtools.

Gói mtools cần được cài đặt trên hệ thống trước khi có thể sử dụng. Lab này cung cấp các hướng dẫn từng bước về cách cài đặt gói và sau đó trình bày cách sử dụng thực tế các lệnh mtools cho các hoạt động trên file và thư mục trên đĩa MS-DOS.

Cài đặt gói mtools trên Ubuntu 22.04

Trong bước này, chúng ta sẽ cài đặt gói mtools trên môi trường Ubuntu 22.04. mtools là một tập hợp các tiện ích để truy cập đĩa MS-DOS từ Unix mà không cần mount chúng.

Đầu tiên, hãy cập nhật chỉ mục gói:

sudo apt-get update

Ví dụ đầu ra:

Hit:1 http://archive.ubuntu.com/ubuntu jammy InRelease
Get:2 http://security.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
Get:3 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [114 kB]
Get:4 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [99.8 kB]
Fetched 324 kB in 1s (324 kB/s)
Reading package lists... Done

Bây giờ, cài đặt gói mtools:

sudo apt update
sudo apt-get install -y mtools

Ví dụ đầu ra:

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libc6 libmagic-mgc libmagic1
Suggested packages:
  mtools-doc
The following NEW packages will be installed:
  libc6 libmagic-mgc libmagic1 mtools
0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
Need to get 632 kB of archives.
After this operation, 2,102 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive.ubuntu.com/ubuntu jammy/main amd64 libc6 amd64 2.35-0ubuntu3.1 [2,560 kB]
Get:2 http://archive.ubuntu.com/ubuntu jammy/main amd64 libmagic-mgc amd64 5.38-4 [276 kB]
Get:3 http://archive.ubuntu.com/ubuntu jammy/main amd64 libmagic1 amd64 5.38-4 [92.6 kB]
Get:4 http://archive.ubuntu.com/ubuntu jammy/main amd64 mtools amd64 4.0.26-1 [201 kB]
Fetched 632 kB in 1s (632 kB/s)
Selecting previously unselected package libc6.
(Reading database ... 24441 files and directories currently installed.)
Preparing to unpack .../libc6_2.35-0ubuntu3.1_amd64.deb ...
Unpacking libc6 (2.35-0ubuntu3.1) ...
Selecting previously unselected package libmagic-mgc.
Preparing to unpack .../libmagic-mgc_5.38-4_amd64.deb ...
Unpacking libmagic-mgc (5.38-4) ...
Selecting previously unselected package libmagic1.
Preparing to unpack .../libmagic1_5.38-4_amd64.deb ...
Unpacking libmagic1 (5.38-4) ...
Selecting previously unselected package mtools.
Preparing to unpack .../mtools_4.0.26-1_amd64.deb ...
Unpacking mtools (4.0.26-1) ...
Setting up libc6 (2.35-0ubuntu3.1) ...
Setting up libmagic-mgc (5.38-4) ...
Setting up libmagic1 (5.38-4) ...
Setting up mtools (4.0.26-1) ...
Processing triggers for man-db (2.10.2-1) ...
Processing triggers for libc-bin (2.35-0ubuntu3.1) ...

Gói mtools hiện đã được cài đặt trên môi trường Ubuntu 22.04 của bạn.

Khám phá các lệnh và tùy chọn mtools

Trong bước này, chúng ta sẽ khám phá các lệnh và tùy chọn khác nhau do gói mtools cung cấp.

Đầu tiên, hãy kiểm tra các lệnh mtools có sẵn:

mtools --help

Ví dụ đầu ra:

mtools version 4.0.26, dated 2019/11/29

Usage: mtools [options] command [arguments]

Options:
  -V, --version       print version information and exit
  -h, --help          print this help
  -f, --config=FILE   use FILE as the configuration file
  -s, --safe          disable all potentially dangerous commands
  -q, --quiet         suppress most warning messages
  -v, --verbose       enable verbose messages
  -d, --debug         enable debug messages

Commands:
  mcopy              copy file or directory
  mmove              move or rename file or directory
  mdir               display directory of MSDOS file
  mtype              display contents of file
  mren               rename file
  mdel, mdelete      delete file
  mmd, mmkdir        make directory
  mrd, mrmdir        remove directory
  mformat            format disk
  mlabel             set volume label
  mattrib            change file attribute bits
  minfo              print information about an MSDOS file or directory
  mshortname         display short 8.3 names
  mtoolstest         run internal consistency checks
  mcheck             check MSDOS filesystem consistency

Như bạn có thể thấy, mtools cung cấp nhiều lệnh để quản lý các hệ thống file dựa trên MS-DOS, chẳng hạn như mcopy, mdir, mtype và hơn thế nữa.

Hãy khám phá một số lệnh mtools thường được sử dụng:

  1. Liệt kê nội dung của một ảnh đĩa MS-DOS:

    mcopy -ml a:

    Lệnh này sẽ liệt kê nội dung của ổ "a:", thường đại diện cho một ảnh đĩa MS-DOS.

  2. Sao chép một file từ hệ thống host sang một ảnh đĩa MS-DOS:

    mcopy example.txt a:

    Lệnh này sẽ sao chép file example.txt từ thư mục hiện tại sang ổ "a:" (ảnh đĩa MS-DOS).

  3. Sao chép một file từ một ảnh đĩa MS-DOS sang hệ thống host:

    mcopy a:example.txt .

    Lệnh này sẽ sao chép file example.txt từ ổ "a:" (ảnh đĩa MS-DOS) sang thư mục hiện tại trên hệ thống host.

  4. Tạo một thư mục trên một ảnh đĩa MS-DOS:

    mmd a:newdir

    Lệnh này sẽ tạo một thư mục mới có tên "newdir" trên ổ "a:" (ảnh đĩa MS-DOS).

  5. Xóa một thư mục khỏi một ảnh đĩa MS-DOS:

    mrd a:newdir

    Lệnh này sẽ xóa thư mục "newdir" khỏi ổ "a:" (ảnh đĩa MS-DOS).

Hãy nhớ rằng, ổ "a:" thường đại diện cho một ảnh đĩa MS-DOS và bạn có thể thay thế nó bằng ký tự ổ đĩa hoặc đường dẫn thích hợp đến file ảnh đĩa.

Quản lý ảnh đĩa mềm bằng mtools

Trong bước cuối cùng này, chúng ta sẽ học cách quản lý ảnh đĩa mềm bằng các lệnh mtools.

Đầu tiên, hãy tạo một file ảnh đĩa mềm:

dd if=/dev/zero of=floppy.img bs=1440k count=1

Lệnh này sẽ tạo một file ảnh đĩa mềm 1.44MB có tên floppy.img.

Bây giờ, hãy định dạng ảnh đĩa mềm:

mformat a: -f 1440

Lệnh này sẽ định dạng ổ "a:" (đại diện cho file floppy.img) với dung lượng 1.44MB.

Tiếp theo, hãy sao chép một file vào ảnh đĩa mềm:

mcopy example.txt a:

Lệnh này sẽ sao chép file example.txt từ thư mục hiện tại sang ổ "a:" (ảnh đĩa mềm).

Để xác minh nội dung của ảnh đĩa mềm, chúng ta có thể sử dụng lệnh mdir:

mdir a:

Ví dụ đầu ra:

Volume in drive A has no label
 Volume Serial Number is 0000-0000

Directory for A:/

example.txt           1024 2023-04-18 15:23
               1 file

Cuối cùng, hãy xóa file khỏi ảnh đĩa mềm:

mdel a:example.txt

Và xác minh rằng file đã bị xóa:

mdir a:

Ví dụ đầu ra:

Volume in drive A has no label
 Volume Serial Number is 0000-0000

Directory for A:/

               0 files

Vậy là xong! Bây giờ bạn đã học cách quản lý ảnh đĩa mềm bằng các lệnh mtools.

Tóm tắt

Trong lab này, chúng ta đã học cách cài đặt gói mtools trên Ubuntu 22.04, cung cấp một tập hợp các tiện ích để truy cập đĩa MS-DOS từ Unix mà không cần mount chúng. Chúng ta đã khám phá các lệnh và tùy chọn khác nhau có sẵn trong mtools và thực hành quản lý ảnh đĩa mềm bằng các công cụ được cung cấp. Lab này bao gồm các bước cần thiết để bắt đầu với mtools và trình bày các ứng dụng thực tế của nó trong việc làm việc với các thiết bị lưu trữ được định dạng theo chuẩn MS-DOS trên một hệ thống Linux.

400+ câu lệnh phổ biến trong Linux