100 MOST COMMON LINUX COMMANDS EVERY USER SHOULD KNOW
Chào mừng bạn đến với thế giới đầy quyền năng của dòng lệnh Linux! Tại TechData.AI, chúng tôi tin rằng việc làm chủ các công cụ cơ bản là bước đầu tiên để khai phá tiềm năng công nghệ vô hạn. Linux không chỉ là một hệ điều hành, mà còn là một nền tảng vững chắc cho sự đổi mới, từ các máy chủ đám mây khổng lồ đến các thiết bị nhúng nhỏ gọn. Dòng lệnh, hay Command Line Interface (CLI), chính là cánh cửa dẫn lối bạn vào trái tim của Linux, nơi mọi tác vụ được thực hiện với tốc độ và hiệu quả vượt trội.
Bài viết này được thiết kế để trở thành cuốn cẩm nang bỏ túi của bạn, tổng hợp 100 lệnh Linux phổ biến nhất mà mọi người dùng, từ người mới bắt đầu đến chuyên gia, đều nên nắm vững. Chúng tôi sẽ đi sâu vào chức năng và cách sử dụng cơ bản của từng lệnh, giúp bạn không chỉ hiểu "làm thế nào" mà còn hiểu "tại sao" chúng lại quan trọng. Hãy cùng TechData.AI khám phá sức mạnh tiềm ẩn trong từng dòng lệnh và nâng tầm kỹ năng công nghệ của bạn!
Mở Đầu: Sức Mạnh Từ Dòng Lệnh
Trong kỷ nguyên số, Linux đã trở thành xương sống của nhiều hệ thống quan trọng trên toàn cầu. Từ các ứng dụng web phức tạp, cơ sở dữ liệu quy mô lớn, đến các dự án phát triển phần mềm và nghiên cứu khoa học, Linux luôn hiện diện. Dù bạn là một lập trình viên, quản trị viên hệ thống, nhà khoa học dữ liệu, hay đơn giản là một người dùng yêu thích công nghệ, việc thành thạo dòng lệnh Linux sẽ mang lại lợi thế không ngờ.
Làm việc với dòng lệnh không chỉ là gõ các ký tự vào màn hình đen. Đó là một hình thức giao tiếp trực tiếp với hệ điều hành, cho phép bạn thực hiện các tác vụ phức tạp một cách nhanh chóng, tự động hóa quy trình, và kiểm soát hệ thống ở mức độ sâu sắc nhất. Khi bạn nắm vững những lệnh cơ bản này, bạn sẽ mở khóa khả năng quản lý tệp tin, xử lý dữ liệu, kiểm soát tiến trình, và tương tác với mạng lưới một cách mạnh mẽ hơn bao giờ hết. Hãy bắt đầu hành trình khám phá và làm chủ sức mạnh này cùng TechData.AI.
Điều Hướng và Quản Lý Tệp Tin Cơ Bản
Phần này sẽ giới thiệu những lệnh nền tảng giúp bạn di chuyển trong hệ thống tệp tin và thực hiện các thao tác cơ bản với tệp và thư mục. Đây là những lệnh mà bạn sẽ sử dụng hàng ngày.
Điều Hướng Thư Mục
pwd(Print Working Directory): Hiển thị đường dẫn tuyệt đối của thư mục hiện tại bạn đang làm việc.cd(Change Directory): Di chuyển giữa các thư mục. Ví dụ: `cd /home/user` để đến thư mục `/home/user`, `cd ..` để lùi về thư mục cha, `cd ~` để về thư mục Home của người dùng hiện tại.ls(List): Liệt kê nội dung của thư mục. `ls -l` hiển thị chi tiết (quyền, chủ sở hữu, kích thước, ngày sửa đổi), `ls -a` hiển thị cả tệp ẩn.
Tạo, Xóa và Sao Chép Tệp/Thư Mục
mkdir(Make Directory): Tạo thư mục mới. Ví dụ: `mkdir new_folder`.rmdir(Remove Directory): Xóa thư mục rỗng.touch: Tạo tệp tin rỗng hoặc cập nhật dấu thời gian của tệp hiện có.cp(Copy): Sao chép tệp hoặc thư mục. `cp file1 file2` sao chép `file1` thành `file2`. `cp -r dir1 dir2` sao chép thư mục `dir1` và nội dung của nó vào `dir2`.mv(Move): Di chuyển hoặc đổi tên tệp/thư mục. `mv old_name new_name` đổi tên. `mv file1 /path/to/new_location` di chuyển.rm(Remove): Xóa tệp hoặc thư mục. `rm file.txt` xóa tệp. `rm -r folder` xóa thư mục và nội dung của nó. `rm -rf folder` xóa thư mục một cách ép buộc.
Xem Nội Dung Tệp
cat(Concatenate): Hiển thị toàn bộ nội dung của tệp ra màn hình. Thường dùng cho tệp nhỏ.more: Hiển thị nội dung tệp từng trang một, cuộn tiến.less: Tương tự `more` nhưng linh hoạt hơn, cho phép cuộn tiến và lùi.head: Hiển thị vài dòng đầu tiên của tệp (mặc định 10 dòng). `head -n 5 file.txt` hiển thị 5 dòng đầu.tail: Hiển thị vài dòng cuối cùng của tệp (mặc định 10 dòng). `tail -f file.log` theo dõi các dòng mới được thêm vào tệp log.
Tối Ưu Hóa Với Các Lệnh Nâng Cao Hơn
Khi đã nắm vững các lệnh cơ bản, hãy cùng khám phá những công cụ mạnh mẽ hơn giúp bạn quản lý quyền hạn, nén dữ liệu, tìm kiếm thông tin và xử lý văn bản một cách hiệu quả.
Quản Lý Quyền Hạn
chmod(Change Mode): Thay đổi quyền truy cập của tệp hoặc thư mục. Ví dụ: `chmod 755 script.sh` cấp quyền đọc, ghi, thực thi cho chủ sở hữu, đọc và thực thi cho nhóm và người khác.chown(Change Owner): Thay đổi chủ sở hữu của tệp hoặc thư mục. `chown user:group file.txt`.chgrp(Change Group): Thay đổi nhóm sở hữu của tệp hoặc thư mục.
Nén và Giải Nén
tar(Tape Archive): Công cụ tạo và giải nén các tệp lưu trữ. `tar -cvf archive.tar folder/` tạo tệp lưu trữ. `tar -xvf archive.tar` giải nén. `tar -zcvf archive.tar.gz folder/` nén bằng gzip.gzip: Nén tệp tin. Tạo tệp `.gz`.gunzip: Giải nén tệp `.gz`.zip: Nén tệp/thư mục thành định dạng `.zip`.unzip: Giải nén tệp `.zip`.
Tìm Kiếm Tệp Tin và Văn Bản
find: Tìm kiếm tệp và thư mục dựa trên nhiều tiêu chí (tên, kích thước, ngày sửa đổi, quyền...). `find . -name "*.txt"` tìm tất cả tệp `.txt` trong thư mục hiện tại và các thư mục con.locate: Tìm tệp nhanh hơn `find` nhưng dựa trên cơ sở dữ liệu được cập nhật định kỳ. Cần chạy `updatedb` để cơ sở dữ liệu được mới nhất.grep(Global Regular Expression Print): Tìm kiếm các dòng chứa một mẫu văn bản trong tệp tin. `grep "pattern" file.txt`. `grep -r "pattern" folder/` tìm kiếm đệ quy trong thư mục.
Xử Lý Văn Bản
sort: Sắp xếp các dòng trong tệp tin theo thứ tự abc hoặc số.uniq: Lọc bỏ các dòng trùng lặp liên tiếp trong tệp đã được sắp xếp.wc(Word Count): Đếm số dòng, từ và ký tự trong tệp.diff(Difference): So sánh hai tệp văn bản và hiển thị sự khác biệt.sed(Stream Editor): Công cụ mạnh mẽ để chỉnh sửa văn bản trong tệp hoặc luồng dữ liệu. Ví dụ: `sed 's/old/new/g' file.txt` thay thế tất cả "old" bằng "new".awk: Ngôn ngữ xử lý văn bản chuyên dụng, thường dùng để phân tích và trích xuất dữ liệu từ các tệp có cấu trúc.
Quản Lý Tiến Trình
ps(Process Status): Hiển thị các tiến trình đang chạy. `ps aux` hiển thị tất cả tiến trình của tất cả người dùng.top: Hiển thị danh sách các tiến trình đang chạy theo thời gian thực, sắp xếp theo mức sử dụng CPU.kill: Gửi tín hiệu để kết thúc một tiến trình bằng ID tiến trình (PID). `kill 1234`.killall: Kết thúc các tiến trình bằng tên. `killall firefox`.bg(Background): Đưa một tiến trình đang tạm dừng ra chạy nền.fg(Foreground): Đưa một tiến trình đang chạy nền trở lại chạy nền trước.jobs: Liệt kê các tiến trình đang chạy nền hoặc tạm dừng trong phiên shell hiện tại.
Quản Trị Hệ Thống và Mạng Hiệu Quả
Đối với những ai muốn đi sâu hơn vào quản lý hệ thống và tương tác mạng, phần này sẽ cung cấp các lệnh thiết yếu để theo dõi tài nguyên, quản lý người dùng, cài đặt phần mềm và thiết lập kết nối.
Thông Tin Hệ Thống
df(Disk Free): Hiển thị thông tin dung lượng đĩa trống. `df -h` hiển thị dưới dạng dễ đọc.du(Disk Usage): Hiển thị dung lượng đĩa đã sử dụng bởi tệp và thư mục. `du -sh folder/` hiển thị tổng dung lượng của một thư mục.free: Hiển thị thông tin về bộ nhớ RAM đã sử dụng và còn trống. `free -h` dễ đọc.uname(Unix Name): Hiển thị thông tin hệ thống Linux. `uname -a` hiển thị tất cả thông tin.hostname: Hiển thị hoặc đặt tên máy chủ.who: Hiển thị những người dùng đang đăng nhập vào hệ thống.whoami: Hiển thị tên người dùng hiện tại của bạn.w: Hiển thị ai đang đăng nhập và họ đang làm gì.date: Hiển thị hoặc đặt ngày và giờ hệ thống.cal(Calendar): Hiển thị lịch của tháng hiện tại hoặc năm cụ thể.
Quản Lý Người Dùng
useradd: Thêm một người dùng mới vào hệ thống.userdel: Xóa một người dùng khỏi hệ thống.usermod: Sửa đổi thông tin tài khoản người dùng hiện có.passwd: Thay đổi mật khẩu cho người dùng.groupadd: Thêm một nhóm mới.groupdel: Xóa một nhóm.
Quản Lý Gói Phần Mềm
sudo(Superuser Do): Cho phép người dùng thực hiện các lệnh với quyền hạn của người dùng root (quản trị viên).apt(Advanced Package Tool, Debian/Ubuntu): Quản lý gói phần mềm. `apt update` cập nhật danh sách gói. `apt install package_name` cài đặt gói. `apt remove package_name` gỡ bỏ gói.yum/dnf(Red Hat/CentOS/Fedora): Tương tự `apt` cho các bản phân phối dựa trên Red Hat.
Mạng và Truyền Dữ Liệu
ping: Kiểm tra khả năng kết nối đến một máy chủ hoặc địa chỉ IP.ip addr: Hiển thị địa chỉ IP và thông tin cấu hình mạng của các giao diện. (Thay thế cho `ifconfig` cũ).netstat: Hiển thị các kết nối mạng, bảng định tuyến, thống kê giao diện.ssh(Secure Shell): Kết nối an toàn đến một máy chủ từ xa. `ssh user@hostname`.scp(Secure Copy Protocol): Sao chép tệp giữa các máy chủ qua SSH. `scp file.txt user@remote_host:/path/`.wget: Tải tệp từ internet. `wget URL`.curl: Truyền dữ liệu với cú pháp URL, hỗ trợ nhiều giao thức. Thường dùng để kiểm tra API.
Lệnh Hệ Thống Nâng Cao
systemctl: Điều khiển hệ thống và quản lý dịch vụ (start, stop, enable, disable). `systemctl status apache2`.journalctl: Xem và truy vấn nhật ký hệ thống được quản lý bởi systemd.crontab: Quản lý các tác vụ được lên lịch để chạy tự động vào các khoảng thời gian cụ thể.lsof(List Open Files): Liệt kê tất cả các tệp đang được mở bởi các tiến trình.alias: Tạo các bí danh (tên ngắn) cho các lệnh dài hoặc thường dùng. Ví dụ: `alias ll='ls -l'`.history: Hiển thị danh sách các lệnh bạn đã gõ trước đó.man(Manual): Hiển thị trang hướng dẫn sử dụng (manual page) cho một lệnh. `man ls`.echo: Hiển thị văn bản hoặc giá trị biến ra màn hình.clear: Xóa nội dung màn hình terminal.reboot: Khởi động lại hệ thống.shutdown: Tắt hệ thống. `shutdown -h now`.poweroff: Tắt nguồn hệ thống.df -i: Hiển thị thông tin inode trống trên các phân vùng.mount: Gắn kết (mount) một hệ thống tệp.umount: Hủy gắn kết (unmount) một hệ thống tệp.fdisk/parted: Công cụ quản lý phân vùng đĩa.mkfs: Tạo hệ thống tệp trên một phân vùng.rsync: Đồng bộ hóa tệp và thư mục cục bộ hoặc từ xa.ssh-keygen: Tạo cặp khóa SSH.chattr: Thay đổi thuộc tính tệp (ví dụ: immutable).lsattr: Liệt kê thuộc tính tệp.bg,fg: Quản lý tiến trình nền/tiền cảnh.jobs: Hiển thị các tiến trình đang chạy nền.disown: Ngắt kết nối tiến trình khỏi shell hiện tại.nohup: Chạy lệnh mà không bị dừng khi terminal đóng.tty: Hiển thị tên thiết bị terminal.stty: Thay đổi và in cài đặt thiết bị đầu cuối.env: Hiển thị các biến môi trường.printenv: Tương tự `env`, in các biến môi trường cụ thể.export: Đặt biến môi trường cho các tiến trình con.unset: Xóa biến môi trường.which: Hiển thị đường dẫn đầy đủ đến lệnh thực thi.whereis: Xác định vị trí các tệp nhị phân, nguồn và trang hướng dẫn của một lệnh.whatis: Hiển thị mô tả ngắn gọn về lệnh.file: Xác định loại tệp.xargs: Xây dựng và thực thi các dòng lệnh từ đầu vào tiêu chuẩn.cut: Trích xuất các trường hoặc cột từ các dòng tệp.paste: Hợp nhất các dòng của các tệp.tr: Dịch hoặc xóa các ký tự.uniq: Báo cáo hoặc loại bỏ các dòng trùng lặp.column: Định dạng dữ liệu thành các cột.tree: Liệt kê nội dung thư mục dưới dạng cấu trúc cây.stat: Hiển thị trạng thái tệp hoặc hệ thống tệp.dmidecode: Hiển thị thông tin phần cứng từ DMI table.lsblk: Liệt kê các thiết bị khối.hwinfo: Hiển thị thông tin chi tiết về phần cứng.uptime: Hiển thị thời gian hệ thống đã hoạt động, số người dùng và tải trung bình.logrotate: Xoay vòng, nén và gửi thư các tệp log.sysctl: Cấu hình các tham số kernel thời gian chạy.ip route: Quản lý bảng định tuyến.iptables: Cấu hình các quy tắc tường lửa (firewall).hostnamectl: Quản lý tên máy chủ hệ thống.timedatectl: Điều khiển thời gian và ngày của hệ thống.localectl: Cấu hình ngôn ngữ và bố cục bàn phím.modprobe: Thêm hoặc xóa các module kernel.lsmod: Liệt kê các module kernel đã tải.depmod: Tạo các phụ thuộc module kernel.dmesg: Hiển thị các thông điệp boot của kernel.vgcreate,lvcreate,pvcreate: Các lệnh LVM để quản lý ổ đĩa logic.resize2fs: Thay đổi kích thước hệ thống tệp ext2/ext3/ext4.nc(netcat): Công cụ đa năng để làm việc với kết nối mạng.telnet: Công cụ kết nối từ xa không an toàn.
Tổng Kết: Nâng Tầm Kỹ Năng Cùng TechData.AI
Chúc mừng bạn đã hoàn thành hành trình khám phá 100 lệnh Linux cơ bản và nâng cao! Mỗi lệnh bạn học được không chỉ là một công cụ, mà còn là một bước tiến trong việc làm chủ thế giới công nghệ. Từ những thao tác quản lý tệp tin đơn giản đến những tác vụ quản trị hệ thống phức tạp, dòng lệnh Linux mở ra một không gian làm việc vô cùng linh hoạt và mạnh mẽ.
Tại TechData.AI, chúng tôi luôn cam kết cung cấp những kiến thức và giải pháp công nghệ giá trị thực tiễn. Việc nắm vững các lệnh Linux này là nền tảng vững chắc để bạn phát triển sự nghiệp trong nhiều lĩnh vực như phát triển phần mềm, quản trị hệ thống, DevOps, và phân tích dữ liệu. Đừng dừng lại ở việc đọc, hãy thực hành thường xuyên để biến kiến thức thành kỹ năng thực sự. Mở terminal của bạn, gõ từng lệnh, và quan sát cách hệ thống phản ứng. Đó là cách tốt nhất để học hỏi và ghi nhớ.
Chúng tôi hy vọng bài viết này đã truyền cảm hứng và trang bị cho bạn những công cụ cần thiết để tự tin hơn trên con đường công nghệ. Hãy tiếp tục tìm tòi, khám phá những điều mới lạ, và đừng ngần ngại chia sẻ bài viết này với những người bạn đồng hành của bạn. TechData.AI luôn sẵn lòng đồng hành cùng bạn trên mọi chặng đường phát triển!
MagicFlow | TechData.AI
