Hệ điều hành Linux nổi tiếng với sự linh hoạt và khả năng tùy biến sâu, đặc biệt khi bạn làm việc thông qua giao diện dòng lệnh (CLI). Mặc dù các bản phân phối Linux ngày càng thân thiện với người dùng và tích hợp nhiều công cụ đồ họa, việc nắm vững các lệnh quản lý lưu trữ qua Terminal vẫn là kỹ năng cốt lõi và cực kỳ mạnh mẽ. Đây là chìa khóa để bạn kiểm soát hoàn toàn ổ đĩa, phân vùng, và tệp tin trên hệ thống của mình, từ việc định dạng ổ cứng mới đến khắc phục sự cố dung lượng.
Bài viết này của kienthucthuthuat.com sẽ cung cấp một cái nhìn chuyên sâu về các lệnh quản lý lưu trữ Linux thiết yếu nhất, giúp bạn làm chủ hệ thống lưu trữ của mình một cách hiệu quả và an toàn. Tuy nhiên, một lưu ý quan trọng là nhiều lệnh liên quan đến quản lý ổ đĩa có thể gây mất dữ liệu vĩnh viễn nếu không được sử dụng cẩn thận. Do đó, hãy luôn đảm bảo sao lưu dữ liệu quan trọng trước khi thực hiện bất kỳ thao tác nào, đặc biệt nếu bạn là người mới làm quen với dòng lệnh Linux. Chúng tôi sẽ đi từ những lệnh cơ bản nhất đến các công cụ quản lý phân vùng và không gian đĩa nâng cao, đảm bảo bạn có đủ kiến thức để tự tin thao tác.
Các Lệnh Cơ Bản Để Điều Hướng Hệ Thống Tệp Linux
Trước khi đi sâu vào quản lý ổ đĩa, điều quan trọng là phải thành thạo các lệnh cơ bản để di chuyển và thao tác với tệp tin và thư mục trong hệ thống tệp Linux. Đây là nền tảng mà bạn sẽ thường xuyên sử dụng trong mọi tác vụ trên Terminal. Dưới đây là những lệnh mà mọi người dùng Linux nên biết:
cd
(change directory): Thay đổi thư mục làm việc hiện tại của bạn. Ví dụ:cd /home/user/Documents
sẽ đưa bạn đến thư mục Documents.cd ~
: Trở về thư mục gốc của người dùng hiện tại (Home Directory). Đây là một phím tắt rất tiện lợi.cd ..
: Di chuyển lên một cấp thư mục so với thư mục hiện tại. Ví dụ, nếu bạn đang ở/home/user/Documents
, lệnh này sẽ đưa bạn về/home/user
.cd -
: Quay lại thư mục bạn vừa ở trước đó. Hữu ích khi bạn thường xuyên di chuyển giữa hai thư mục.ls
(list): Liệt kê nội dung của một thư mục. Bạn có thể dùngls -l
để xem thông tin chi tiết (quyền, chủ sở hữu, kích thước, thời gian sửa đổi) hoặcls -a
để hiển thị cả các tệp ẩn.pwd
(print working directory): Hiển thị đường dẫn đầy đủ đến thư mục làm việc hiện tại của bạn.rm
(remove) vàrmdir
(remove directory):rm
dùng để xóa tệp tin, cònrmdir
dùng để xóa các thư mục rỗng. Để xóa thư mục không rỗng, bạn thường phải dùngrm -r
(recursive). Hãy cực kỳ cẩn thận với lệnhrm
, đặc biệt khi dùng với tùy chọn-r
hoặc-f
(force), vì dữ liệu bị xóa thường không thể khôi phục.cp
(copy): Sao chép tệp tin hoặc thư mục. Ví dụ:cp file.txt /path/to/new_location
. Để sao chép thư mục, bạn cần dùngcp -r
.mv
(move): Di chuyển tệp tin hoặc thư mục. Lệnh này cũng được dùng để đổi tên tệp/thư mục. Ví dụ:mv oldname.txt newname.txt
hoặcmv file.txt /path/to/new_location
.
Những lệnh này là nền tảng để bạn tương tác với hệ thống tệp trong Linux. Bạn sẽ cần chúng thường xuyên, đặc biệt khi cài đặt và cấu hình phần mềm qua Terminal. Lưu ý rằng nhiều lệnh quản lý lưu trữ phức tạp hơn sẽ yêu cầu quyền quản trị (root), vì vậy bạn sẽ cần thêm sudo
trước lệnh và nhập mật khẩu của mình.
Quản Lý Ổ Đĩa và Phân Vùng Trong Linux
Trong Linux, việc quản lý ổ đĩa và phân vùng được thực hiện khác biệt so với Windows, nơi các ổ đĩa được biểu thị bằng các ký tự (C:, D:). Trong Linux, ổ đĩa được “gắn” (mounted) vào một thư mục trong hệ thống tệp, trở thành một phần của cấu trúc thư mục đó.
mount: Gắn Ổ Đĩa Và Hệ Thống Tệp
Một trong những khía cạnh khác biệt của Linux đối với người dùng Windows là không có các ký tự ổ đĩa. Các ổ đĩa không phải là một thực thể đặc biệt trong hệ thống tệp Linux. Bạn chỉ cần gắn chúng, và chúng sẽ trở thành một phần của cấu trúc thư mục. Thay vì biểu thị ổ đĩa của bạn như một ổ đĩa riêng, chúng được biểu thị như một thư mục. Ngoài ổ đĩa hệ điều hành, bạn thường sẽ cần gắn các ổ đĩa của mình theo cách thủ công.
Trong một số bản phân phối, bạn chỉ cần nhấp đúp vào ổ đĩa trong cửa sổ quản lý tệp, nhưng nếu không, bạn sẽ cần các lệnh mount
và unmount
, theo sau là tên ổ đĩa và thư mục bạn muốn gắn hệ thống tệp vào.
Ví dụ:
sudo mount /dev/sdb1 /mnt/my_drive
Lệnh này sẽ gắn phân vùng sdb1
vào thư mục /mnt/my_drive
. Để ngắt kết nối, bạn dùng:
sudo umount /mnt/my_drive
Hoặc:
sudo umount /dev/sdb1
Lệnh mount trong Linux dùng để gắn ổ đĩa hoặc phân vùng vào một thư mục trong hệ thống tệp
fdisk: Công Cụ Cơ Bản Để Tạo Và Xóa Phân Vùng
Nếu bạn muốn nhanh chóng tạo và quản lý các phân vùng cơ bản, bạn có thể sử dụng công cụ fdisk
. Nó cung cấp quyền kiểm soát cơ bản đối với các phân vùng, bao gồm tạo, xóa phân vùng và thay đổi loại phân vùng. Tuy nhiên, fdisk
không có tùy chọn để mở rộng hoặc thu nhỏ một phân vùng hiện có.
fdisk
là một ứng dụng chạy từ dòng lệnh, và để khởi động nó, bạn chỉ cần nhập lệnh sau:
sudo fdisk /dev/[tên_ổ_đĩa]
Ví dụ: sudo fdisk /dev/sda
.
Sau khi vào giao diện fdisk
, bạn cần nhập một lệnh khác để thực hiện các thao tác hữu ích. Có rất nhiều lệnh có sẵn, bao gồm các tùy chọn nâng cao, nhưng đây là một số lệnh cơ bản để bạn bắt đầu:
m
: In ra menu trợ giúp.n
: Tạo một phân vùng mới.d
: Xóa một phân vùng.p
: In bảng phân vùng hiện tại để xem thông tin chi tiết.t
: Thay đổi loại phân vùng.w
: Ghi bảng phân vùng vào đĩa và thoát khỏifdisk
.q
: Thoát khỏifdisk
mà không lưu các thay đổi.
Giao diện dòng lệnh của fdisk trong Linux hiển thị các tùy chọn để quản lý phân vùng
parted: Quản Lý Phân Vùng Nâng Cao Với GNU Parted
Bạn cũng có thể sử dụng lệnh parted
để quản lý các phân vùng của mình. GNU Parted cung cấp nhiều tùy chọn hơn fdisk
, đáng chú ý nhất là khả năng nhanh chóng thay đổi kích thước một phân vùng hiện có. Giống như fdisk
, GNU Parted là một ứng dụng dòng lệnh mà bạn cần khởi động trước khi nhập các lệnh:
sudo parted /dev/[tên_ổ_đĩa]
Ví dụ: sudo parted /dev/sdb
.
Khi bạn đã vào trong GNU Parted, bạn có thể nhập các lệnh để thực hiện các chức năng khác nhau, giống như fdisk
. Rất may, các lệnh ở đây là các từ đầy đủ, giúp chúng dễ nhớ và phân tích hơn một chút. Dưới đây là một số lệnh cơ bản để bạn bắt đầu:
help
: Hiển thị danh sách các lệnh có sẵn.mkpart
: Tạo một phân vùng mới.resizepart
: Thay đổi kích thước một phân vùng hiện có.rm
: Xóa một phân vùng.print
: In bảng phân vùng hiện tại.quit
: Thoát khỏi GNU Parted, lưu tất cả các thay đổi.
Giao diện dòng lệnh của parted trong Linux cho phép quản lý phân vùng nâng cao
mkfs: Định Dạng Và Tạo Hệ Thống Tệp Mới
Bạn có thể quản lý các phân vùng hiện có bằng fdisk
hoặc GNU Parted, nhưng nếu bạn chỉ cần nhanh chóng định dạng một ổ đĩa mới sau khi cài đặt, bạn có thể sử dụng lệnh mkfs
(make filesystem) để thiết lập nó. Lệnh này được dùng để tạo một hệ thống tệp trên một phân vùng.
Cú pháp lệnh sẽ trông giống như sau:
sudo mkfs.xfs /dev/sda2
Trong ví dụ trên, mkfs.xfs
tạo một hệ thống tệp XFS trên phân vùng /dev/sda2
. Bạn có thể thay đổi xfs
thành các loại hệ thống tệp khác như ext4
, ntfs
, fat32
, tùy thuộc vào nhu cầu sử dụng của bạn. Về cơ bản, nó sẽ là mkfs.
, theo sau là loại hệ thống tệp và đường dẫn đến phân vùng bạn muốn định dạng.
Lệnh mkfs trong Linux dùng để tạo hệ thống tệp trên một phân vùng hoặc ổ đĩa
partprobe: Cập Nhật Kernel Về Thay Đổi Phân Vùng
Khi bạn hoàn tất mọi công việc liên quan đến phân vùng (ví dụ: tạo, xóa, thay đổi kích thước), bạn cần thông báo cho hệ điều hành Linux về những thay đổi này. Bạn có thể làm điều đó với lệnh partprobe
. Lệnh này yêu cầu kernel đọc lại bảng phân vùng.
Để chạy nó, hãy nhập lệnh sau:
sudo partprobe /dev/[tên_ổ_đĩa]
Lệnh này sẽ thông báo cho kernel Linux về những thay đổi được thực hiện đối với các phân vùng của bạn trong trường hợp chúng không hiển thị sau khi quản lý xong. Tuy nhiên, bạn không phải lúc nào cũng cần chạy lệnh này. Bạn có thể sử dụng lsblk
để liệt kê các ổ đĩa và phân vùng của mình, và nếu bạn thấy mọi thứ ở đó, bạn không cần phải chạy partprobe
. Nếu không, hãy sử dụng partprobe
.
Lệnh partprobe trong Linux để cập nhật thông tin phân vùng cho kernel sau khi thay đổi
swapoff và swapon: Quản Lý Phân Vùng Swap
Trong Linux, bạn có thể thiết lập một không gian đặc biệt trên ổ đĩa để xử lý việc hoán đổi (swapping). Khi RAM của bạn bị đầy, swapping cho phép bộ nhớ của bạn lưu trữ một phần dữ liệu cần thiết trên đĩa và hoán đổi nó với dữ liệu trong bộ nhớ khi cần. Dữ liệu trong bộ nhớ được lưu trữ theo các “trang”, và bạn có thể hoán đổi các trang đó ra vào phân vùng swap khi cần. Các lệnh swapon
và swapoff
cho phép bạn bật hoặc tắt phân vùng swap.
Cú pháp của chúng trông như thế này:
sudo swapoff /dev/[tên_phân_vùng]
Và để bật lại:
sudo swapon /dev/[tên_phân_vùng]
Lưu ý rằng lệnh này chỉ bật hoặc tắt việc hoán đổi cho một phân vùng đã được định nghĩa cho swap. Nếu bạn muốn xóa hoặc thêm một phân vùng swap, bạn sẽ cần thực hiện thông qua tệp cấu hình fstab
, thường nằm tại /etc/fstab
trên hầu hết các bản phân phối.
Lệnh swapon trong Linux để bật hoặc tắt phân vùng swap
Kiểm Tra Dung Lượng Và Tìm Kiếm Tệp
Hiểu rõ cách kiểm tra dung lượng ổ đĩa và tìm kiếm tệp là rất quan trọng để duy trì một hệ thống Linux hoạt động tốt.
du và df: Xem Dung Lượng Đã Sử Dụng Và Còn Trống
Cả hai lệnh du
(disk usage) và df
(disk free) đều cho phép bạn xem các tệp của bạn đang chiếm bao nhiêu không gian, nhưng chúng có các mục đích hơi khác nhau.
Bắt đầu với du
, mục đích chính của nó là hiển thị kích thước của tệp và thư mục. Bạn sẽ nhập lệnh, theo sau là một cờ (flag), và cuối cùng là đường dẫn hoặc tên tệp. Dưới đây là một vài cờ hữu ích để bạn bắt đầu:
-h
: In dữ liệu ở định dạng dễ đọc cho con người, chẳng hạn như gigabyte (GB) hoặc megabyte (MB).-c
: Tổng kích thước của tất cả các tệp trong vị trí, được chia nhỏ theo kích thước của từng tệp và thư mục.-s
: Tổng kích thước của tất cả các tệp trong vị trí mà không hiển thị kích thước từng tệp và thư mục con.
Ví dụ: du -sh /home/user/Documents
sẽ cho bạn biết tổng dung lượng của thư mục Documents.
Lệnh df
, mặt khác, hiển thị cho bạn bao nhiêu không gian trống có sẵn trên các hệ thống tệp đã được gắn. Tương tự như du
, bạn nhập lệnh, theo sau là một cờ, theo sau là vị trí của ổ đĩa. Bạn cũng sẽ muốn sử dụng cờ -h
ở đây, nó sẽ hiển thị kết quả ở định dạng dễ đọc.
Ví dụ: df -h
sẽ hiển thị dung lượng trống của tất cả các phân vùng đã gắn.
Lệnh du trong Linux để kiểm tra dung lượng đã sử dụng của tệp và thư mục
find: Tìm Kiếm Tệp, Thư Mục Với Tùy Chọn Nâng Cao
Nếu bạn đang tìm kiếm một tệp cụ thể, bạn có thể sử dụng lệnh find
. Lệnh này cho phép bạn tìm kiếm một đường dẫn được chỉ định cho một tệp cụ thể, và sau khi thiết lập các cờ thích hợp, lệnh của bạn sẽ trông giống như sau:
find /path/XXX -name "tên file"
Ví dụ: find /home/user -name "document.pdf"
sẽ tìm tệp document.pdf
trong thư mục /home/user
.
Mặc dù trường hợp sử dụng cơ bản của find
là để tìm một tệp cụ thể, bạn có thể làm được nhiều điều hơn với lệnh này. Dưới đây là một vài cờ bạn có thể sử dụng để khai thác thêm tiện ích từ nó:
-type
: Chỉ định loại bạn muốn tìm kiếm, chẳng hạn nhưf
cho tệp (file) vàd
cho thư mục (directory). Ví dụ:find /etc -type f -name "*.conf"
tìm tất cả các tệp cấu hình trong/etc
.-mtime
: Giới hạn tìm kiếm đối với các tệp hoặc thư mục được sửa đổi trong một khoảng thời gian nhất định, chẳng hạn như+30
để hiển thị các tệp chưa được sửa đổi trong 30 ngày trở lên.-ls
: Liệt kê nội dung của một thư mục (giống nhưls -l
).-iname
: Cho phép tìm kiếm các kết quả khớp một phần với tên tệp hoặc thư mục, không phân biệt chữ hoa/thường.
Lệnh find trong Linux dùng để tìm kiếm tệp và thư mục với nhiều tùy chọn lọc
locate: Tìm Kiếm Tệp Nhanh Hơn Với Cơ Sở Dữ Liệu
Bạn có thể sử dụng find
để tìm một tệp cụ thể, mặc dù rõ ràng là nó là một lệnh có khả năng làm được nhiều điều hơn. Nếu bạn chỉ muốn tìm một tệp cụ thể, và cần làm điều đó nhanh chóng, bạn có thể sử dụng lệnh locate
thay thế. Lệnh này trông như thế này:
locate tenfile.extension
Ví dụ: locate mypicture.jpg
.
Sự khác biệt giữa find
và locate
là locate
tìm kiếm trong một cơ sở dữ liệu được xây dựng sẵn, trong khi find
có thể khám phá các tệp mới trong quá trình tìm kiếm của nó. Điều này làm cho locate
nhanh hơn đáng kể trong nhiều trường hợp. Nếu bạn cần cập nhật cơ sở dữ liệu, bạn có thể làm như vậy bằng cách chạy lệnh updatedb
.
Lệnh locate trong Linux để tìm kiếm tệp nhanh chóng bằng cách sử dụng cơ sở dữ liệu
Kết Luận
Việc nắm vững các lệnh quản lý lưu trữ trong Linux là một kỹ năng vô cùng giá trị, giúp bạn kiểm soát sâu sắc hệ thống của mình và giải quyết nhiều vấn đề phức tạp mà giao diện đồ họa không thể làm được. Từ việc điều hướng cơ bản trong hệ thống tệp đến quản lý phân vùng, định dạng ổ đĩa và theo dõi dung lượng, những lệnh mà chúng tôi đã giới thiệu trong bài viết này là công cụ thiết yếu cho bất kỳ người dùng Linux nào muốn nâng cao kỹ năng của mình.
Hãy nhớ rằng, sức mạnh đi đôi với trách nhiệm. Luôn cẩn trọng khi thực hiện các lệnh có thể thay đổi cấu trúc ổ đĩa hoặc xóa dữ liệu. Việc thường xuyên sao lưu và hiểu rõ từng lệnh trước khi thực thi sẽ giúp bạn tránh được những rủi ro không đáng có. Thực hành là chìa khóa để thành thạo. Hãy thử nghiệm các lệnh này trên môi trường an toàn (máy ảo hoặc ổ đĩa phụ) để tự tin hơn.
Bạn có bất kỳ lệnh quản lý lưu trữ Linux yêu thích nào khác mà chúng tôi chưa đề cập không? Hay bạn có mẹo nhỏ nào muốn chia sẻ để sử dụng các lệnh này hiệu quả hơn? Hãy chia sẻ kinh nghiệm hoặc câu hỏi của bạn dưới phần bình luận để chúng ta cùng thảo luận và học hỏi nhé!