Thứ Sáu, 27 tháng 12, 2019

31 tác vụ quản trị Linux THƯỜNG DÙNG nhất

Cũng giống như hệ điều hành Windows, khi sử dụng Linux bạn cũng nên tìm hiểu các lệnh Linux cơ bản để thực hiện các thao tác nhanh chóng và dễ dàng hơn. Dưới đây là một số lệnh cơ bản trên Linux bạn nên biết.

Với một số lệnh bên dưới, bạn sẽ thấy các bộ lệnh với giải thích đơn giản, ví dụ minh họa cụ thể giúp cho bạn hoặc những người dùng Linux mà bạn đang hỗ trợ sử dụng hệ điều hành này nói chung và dòng lệnh trên Linux nói riêng hiệu quả hơn.

1. Một số lưu ý quan trọng về Linux Terminal

Một số lưu ý quan trọng về Linux Terminal
Để mở Terminal nhanh chóng từ GUI, nhấn tổ hợp phím Ctrl + Alt + T.
Mổ xẻ hầu hết các lệnh Linux:
[sudo] command [optional switch] [file or directory path]
Sử dụng sudo sẽ chạy bất kỳ một lệnh nào đó dưới quyền Admin. Hầu hết các lệnh Linux dùng để cài đặt/gỡ bỏ các file hệ thống một chương trình, sử dụng nào đó để yêu cầu sudo.

2. Làm quen với tài khoản

Các lệnh này sẽ giúp người dùng Linux mới làm quen với tài khoản Linux của mình.
LệnhChức năngVí dụ
pwdHiển thị vị trí hiện tại trong hệ thống file.pwd
whoamiHiển thị tên người dùng - hữu ích nhất nếu chuyển đổi người dùng bằng lệnh su và cần được nhắc nhở về tài khoản nào đang được sử dụngwhoami
lsCung cấp một danh sách file. Với tham số -a, lệnh hiển thị các file có tên bắt đầu bằng dấu chấm (ví dụ: .bashrc). Với tham số -l, lệnh hiển thị quyền, kích thước file và ngày/giờ cập nhật mới nhất.ls
ls -a
ls -l
envHiển thị cài đặt môi trường người dùng (ví dụ: đường dẫn tìm kiếm, kích thước phần lịch sử được lưu lại, thư mục chính, v.v...)env
echoLặp lại phần văn bản mà người dùng cung cấp hoặc hiển thị giá trị của một số biến.echo hello
echo $PATH
historyLiệt kê các lệnh đã đưa ra trước đó.history
history | tail -5
passwdThay đổi mật khẩu. Lưu ý rằng các yêu cầu phức tạp có thể được thi hành.passwd
history | tail -5

3. Tạo một thư mục mới

mkdir là lệnh thao tác với thư mục cơ bản trên Linux, giúp bạn tạo một thư mục mới nhanh chóng. Cú pháp câu lệnh:
mkdir folder
Lưu ý:
Folder là tên thư mục bạn muốn tạo. Chẳng hạn nếu bạn muốn tạo thư mục có tên là backup thì cú pháp là:
mkdir /home/marin/backup
Trong trường hợp nếu muốn tạo một thư mục chứa nhiều thư mục con, bạn có thể sử dụng tùy chọn "-p". Giả sử, bạn có thư mục foo và có quyền truy cập vào nó:
mkdir -p /foo/bar/baz
Lệnh trên sẽ tạo thư mục bar, thư mục baz nằm trong bar; bar và baz nằm trong /foo đã có.

4. Tìm kiếm thư mục hiện tại

Nếu muốn tìm kiếm thư mục hiện tại của bạn, bạn có thể sử dụng lệnh pwd.
Ví dụ như:
marin@[LinuxVeda]:[~/work]$ pwd
/home/marin/work

5. Tạo và chỉnh sửa các file

Các hệ thống Linux cung cấp các lệnh để tạo các file. Người dùng có thể chọn trình soạn thảo văn bản mong muốn. Một số lệnh yêu cầu người dùng phải thành thạo trước khi sử dụng, còn những lệnh khác thì khá đơn giản.
LệnhChức năngVí dụ
nanoMột trình chỉnh sửa văn bản dễ sử dụng, yêu cầu người dùng di chuyển trong file bằng các phím mũi tên và cung cấp các chuỗi điều khiển để định vị văn bản, lưu các thay đổi, v.v.nano myfile
viMột trình chỉnh sửa tinh vi hơn, cho phép người dùng nhập các lệnh để tìm và thay đổi văn bản, thực hiện các thay đổi tổng thể, v.v...vi myfile
exMột trình soạn thảo văn bản được thiết kế cho các lập trình viên và có cả chế độ trực quan và dòng lệnh.ex myfile
touchTạo một file nếu nó chưa tồn tại hoặc cập nhật timestamp nếu nó đã được tạo.touch newfile
touch updatedfile
>Tạo file bằng cách hướng đầu ra cho chúng. > tạo một file trong khi >> gắn với một file hiện có.cal > calendar
ps > myprocs
date >> date.log

6. Đọc một số file

Thông thường bạn phải xem xét nội dung của nhiều file khác nhau. Việc rà soát các file khác nhau thường xuyên thường khá phức tạp và tốn nhiều thời gian. Do đó cách đơn giản nhất để đọc nội dung của chúng là sử dụng câu lệnh cat. Cú pháp câu lệnh khá đơn giản:
cat FILE 
Chỉ cần thay đổi FILE bằng tên file bạn muốn đọc. Kết quả bạn sẽ nhìn thấy nội dung của file xuất hiện ở cuối Terminal.
Ví dụ như:
cat script.sh
Lệnh đọc file trên Linux
Ngoài ra bạn có thể sử dụng lệnh cat cho nhiều file cùng một lúc:
cat FILE-1 FILE-2
Đầu ra của lệnh sẽ hiện thị nội dung các file theo thứ tự nội dung của FILE - 1 rồi đến nội dung FILE -2.
Ngoài ra, Linux cung cấp một số lệnh để xem xét nội dung và bản chất của các file. Sau đây là một số lệnh hữu ích nhất.
LệnhChức năngVí dụ
catHiển thị toàn bộ nội dung của một file văn bản.cat .bashrc
moreHiển thị nội dung của file văn bản. Nhấn phím cách để di chuyển đến từng đoạn bổ sung.more .bash_history
lessHiển thị nội dung của file văn bản, nhưng cho phép quay trở lại bằng phím mũi tên lên trên.less .bash_history
fileXác định các file theo loại (ví dụ: văn bản ASCII, file thực thi, hình ảnh, thư mục)file myfile
file ~/.bashrc
file /bin/echo

7. Sao chép hoặc di chuyển file

Việc sao chép hoặc di chuyển file trong Linux terminal khá đơn giản và dễ dàng.
  • Để sao chép một file, bạn có thể sử dụng lệnh: cp.
  • Để di chuyển 1 file bạn sử dụng câu lệnh: mvoflder.
Cả 2 lệnh sử dụng khá đơn giản. Với lệnh cp. Để sao chép một file, bạn nhập tên file và nhập tên file copy mới. Ví dụ:
cp file1 file2
Trên câu lệnh trên sao chép file1 và tạo ra file2 có chứa nội dụng file1. Bạn có thể sử dụng cp để sao chép thư mục. Điều quan trọng cần lưu ý khi muốn sao chép một thư mục bạn nên sử dụng tùy chọn -r.
Nói cách khác, cp -r sẽ sao chép nội dung của một thư mục nhất định (và các thư mục con) sang thư mục bạn lựa chọn. Ngoài ra bạn có thể sử dụng cp với đường dẫn đầy đủ:
cp -r /home/marin/work/ /home/marin/backup
Câu lệnh trên sẽ sao chép nội dung của thư mục "work" sang thư mục mới có tên "backup".
Nếu muốn sao chép tất cả các file và thư mục của một thư mục sang một thư mục khác, bạn có thể sử dụng ký tự "*". Ký tự được sử dụng để tìm các cổng phù hợp (trường hợp này là các file và thư mục). Ví dụ:
cp /home/marin/work/* /home/marin/backup/
Tiếp theo là lệnh mv. Cú pháp câu lệnh:
mv file1 file2
Câu lệnh trên đổi tiên file1 thành file2. Tương tự với thư mục cũng thế. Tuy nhiên nếu bạn chỉ định 1 file và 1 thư mục, file sẽ được di chuyển vào trong thư mục. Chẳng hạn:
mv /home/marin/file1 /home/marin/work/
Trong câu lệnh trên sẽ di chuyển file1 từ “/home/marin/” sang “/home/marin/work/”. Nếu bạn muốn di chuyển tất cả các file trong một thư mục sang thư mục khác, bạn có thể sử dụng ký tự "*":
mv /home/marin/work/* /home/marin/backup/

8. Xóa các file và thư mục

Nếu muốn xóa một thư mục hoặc một file bạn có thể sử dụng lệnh rm. Điều quan trọng bạn cần lưu ý là khi sử dụng lệnh này để xóa một file hoặc thư mục, các file này không thể restore được. Để xóa 1 file bạn thực hiện:
rm /home/marin/useless-file.txt
Bạn có thể sử dụng rm với nhiều tùy chọn khác nhau. Một số tùy chọn quan trọng như:
  • -f: buộc xóa các file có thông báo nhắc nhở
  • -i: nhắc nhở trước khi xóa
  • -r: xóa bỏ các thư mục đệ quy
  • -d: xóa các thư mục rỗng
  • -v: giải thích đang thực hiện nhiệm vụ gì

9. Tìm file

Có hai lệnh có thể giúp người dùng tìm file trên Linux, nhưng chúng hoạt động rất khác nhau. Một lệnh tìm kiếm hệ thống file, còn lệnh kia xem xét cơ sở dữ liệu được xây dựng trước đó.
Lệnh
Chức năng
Ví dụ
findĐịnh vị các file dựa trên các tiêu chí được cung cấp (tên, loại, chủ sở hữu, quyền, kích thước file, v.v...). Trừ khi được cung cấp một vị trí để bắt đầu tìm kiếm, còn nếu không lệnh này chỉ tìm trong thư mục hiện hành.find . -name myfile
find /tmp -type d
locateĐịnh vị các file bằng cách sử dụng nội dung của /var/lib/mlocate/mlocate.db được cập nhật bằng lệnh updateb chạy qua cron. Không yêu cầu vị trí bắt đầu.locate somefile
locate "*.html" -n 20
Lưu ý: Chi tiết về lệnh find có trong phần bên dưới.

10. Liệt kê nội dung thư mục

Để liệt kê danh sách các thư mục, bạn có thể sử dụng lệnh ls:
Lệnh Linux để liệt kê danh sách các thư mục
Lệnh "ls" có thể lấy các thông số khác nhau giúp bạn thay đổi đầu ra của câu lệnh. Ví dụ, với thông số "-a" sẽ hiển thị tất cả các file và thư mục, trong đó có cả thư mục ẩn có chứa "-a".
Lệnh ls giúp lấy thông số khác nhau
Nếu muốn đầu ra của câu lệnh hiển thị danh sách thông tin chi tiết từng file và thư mục, bạn có thể sử dụng tùy chọn “-l” (L):
ls -l You can try different 
Lệnh ls trên Linux
Ngoài ra bạn có thể kết hợp các thông số để hiển thị thông tin chi tiết tất cả các file:
ls al
Lệnh ls

11. Tìm kiếm lệnh Linux trước đó

Nhấn phím Up sẽ hiển thị câu lệnh Linux cuối cùng bạn sử dụng thành công. Không có câu lệnh lỗi nào hiển thị tại đây cả.
Ngoài ra bạn có thể sử dụng lệnh history để xem tất cả các lệnh Linux đã từng sử dụng trên Terminal.

12. Mật khẩu vô hình

Mật khẩu vô hình
Khi được yêu cầu nhập mật khẩu, giả sử trong trường hợp sử dụng sudo, khi bạn gõ mật khẩu trên màn hình sẽ không hiển thị gì cả, không có ngôi sao hay dấu chấm... Sau khi nhập xong mật khẩu, bạn nhấn Enter là xong.

13. Sao chép và dán lệnh Linux

Sao chép và dán lệnh Linux
Để sao chép hoặc dán lệnh Terminal, bạn không thể sử dụng tổ hợp phím quen thuộc Ctrl + C và Ctrl + V.
Thay vào đó bạn có thể sử dụng Ctrl + Shift + C và Ctrl + Shift + V hoặc kích chuột phải rồi chọn Copy hoặc Paste từ Menu ngữ cảnh.

14. Hiển thị tiến trình trong hệ thống Linux

Một trong những công việc cần thiết khi quản trị hệ thống Linux đó là kiểm soát các tiến trình hiện đang chạy. Khi đã biết được những tiến trình nào đang chạy bạn có thể tắt những tiến trình gây giảm tốc độ của hệ thống. Ngoài ra, thông tin về những tiến trình hệ thống cho chúng ta biết nên tắt nhưng tiến trình làm cho hệ thống vận hành không ổn định. Do đó việc biết được những tiến trình nào đang chạy trên hệ thống rất quan trọng. Linux hỗ trợ nhiều phương pháp kiểm tra tiến trình, một trong số đó là sử dụng lệnh ps. Khi sử dụng lệnh này mọi thông tin về những tiến trình đang chạy sẽ được hiển thị. Bạn chỉ cần nhập cú pháp lệnh sau vào cửa sổ terminal:
# ps aux | less

Hình 1: Thông tin tiến trình đang chạy trong hệ thống.

Ngoài ra lệnh này có thể sử dụng kết hợp với một số tham số khác như:
# ps –A: Kiểm tra mọi tiến trình trong hệ thống.
# ps -U root -u root –N: Kiểm tra mọi tiến trình ngoại trừ những tiến trình hệ thống.
# ps -u username: Kiểm tra những tiến trình được thực hiện bởi một người dùng nhất định.
Hoặc bạn có thể sử dụng lệnh # top để xem những tiến trình đang chạy trên hệ thống trong thời gian thực.

15. Kiểm tra thông tin Socket và thông tin mạng TCP/UDP

Sau khi cấu hình những dịch vụ mạng của hệ thống Linux, bạn cần phải giữ lại tab của các cổng đang thực sự nhận tín hiệu trên giao diện mạng của hệ thống. Điều này rất quan trọng vì hệ thống có thể bị xâm nhập qua các cổng mở. Có một số công cụ quản lý Linux thông báo cho bạn biết thông tin của những cổng mởvà truy cập vào những cổng đang mở trên mạng. Một trong những phương pháp đơn giản và tin cậy nhất đó là sử dụng lệnh ss để kiểm tra thông tin Socket, ngoài ra lệnh này còn có thể hiển thị nhiều thông tin TCP và thông tin trạng thái hơn các công cụ khác. Lệnh ss này cung cấp thông tin về:
  • Mọi Socket TCP.
  • Mọi Socket UDP.
  • Mọi kết nối ssh/ftp/http/https.
  • Mọi tiến trình cục bộ được kết nối tới máy chủ X.
  • Mọi Socket TCP trong trạng thái FIN-WAIT-1.
Dưới đây là một số lệnh ss:
  • # ss –s: Hiển thị tổng số Socket.
Hình 2: Thông tin kết xuất khi chạy lệnh # ss –s.

  • # ss -1: Hiển thị mọi cổng mở.

Hình 3: Thông tin kết xuất khi chạy lệnh # ss -1.

  • # ss –pl: Kiểm tra tên tiến trình sử dụng Socket mở sử dụng lệnh sau:
  • # ss -lp | grep: Kiểm tra người dùng đang làm việc với Socket mở.
  • # ss -t –a: Hiển thị mọi Socket TCP.
  • # ss -u –a: Hiển thị mọi Socket UDP.

16. Theo dõi Average CPU Load và Disk Activity

Nếu là một quản trị viên hệ thống Linux, bạn cần phải biết phương pháp duy trì một sự cân bằng hợp lý trong quá trình tải đầu vào và đầu ra giữa các ổ đĩa vật lý. Bạn có thể thay đổi cấu hình hệ thống để thực hiện tác vụ này. Tuy nhiên có một phương pháp đơn giản hơn rất nhiều đó là sử dụng lệnh isostat để quản lý hệ thống thiết bị tải đầu vào và đầu ra trong Linux bằng cách theo dõi thời gian hoạt động và tốc độ truyền trung bình của những thiết bị này. Lệnh này sẽ thông báo thông tin của CPU (Central Processing Unit), thông tin đầu vào và đầu ra cho những thiết bị, phân vùng và hệ thống file mạng (NFS).
Khi chạy lệnh isostat thông tin kết xuất có dạng:
Hình 4: Thông tin hiển thị khi chạy lệnh isostat.

Để lấy thông tin thư mục NFS bạn hãy sử dụng lệnh sau:
# iostat –n

17. Kiểm tra Memory Map của các tiến trình trong Linux

Khi làm việc trong hệ thống Linux có thể bạn cần kiểm tra dung lượng bộ nhớ sử dụng trong hệ thống. Linux tích hợp nhiều lệnh cho phép kiểm tra dung lượng bộ nhớ chiếm dụng. Trong đó có một lệnh đơn giản giúp hiển thị thông tin tổng dung lượng đã chiếm dụng và chưa chiếm dụng của bộ nhớ vật lý và tổng dung lượng bộ nhớ đó là lệnh free.
Sau khi chạy lệnh này bạn sẽ thấy tổng dung lượng đã chiếm dụng và chưa chiếm dụng của bộ nhớ vật lý và tổng dung lượng bộ nhớ trong hệ thống. Ngoài ra nó còn hiển thị thông tin bộ nhớ đệm mà các nhân sử dụng.

Hình 5: Thông tin hiển thị sau khi chạy lệnh free

18. Kiểm tra thời gian vận hành của hệ thống

Bạn có muốn biết máy chủ đã vận hành bao lâu? Nếu muốn bạn chỉ cần sử dụng lênh uptime để kiểm tra thời gian mà hệ thống đã vận hành. Lệnh đơn giản này không chỉ cho bạn biết thời gian hệ thống vận hành mà còn cho biết lượng người dùng đã đăng nhập vào hệ thống trong một khoảng thời gian trước đó.
Hình 6: Kết quả lệnh uptime.

19. Kiểm tra người dùng đăng nhập

Ngoài những công cụ quản lý Linux, bạn có thể sử dụng một lệnh để kiểm tra những người dùng nào đã thực hiên đăng nhập vào hệ thống và những gì họ đã thực hiện. Lệnh này sẽ hiển thị thời gian hiện tại, thời gian hệ thống đã vận hành, lượng người dùng đã đăng nhập.
Ngoài ra lệnh này cũng hiển thị lượng tải trung bình trong mỗi 1, 5 và 15 phút. Lệnh này rất hữu dụng với những Admin hệ thống muốn sử dụng thông tin tải trung bình để hoạch định dung lượng.
Để kiểm tra ai đã đăng nhập vào hệ thống và những tác vụ họ đã thực hiện bạn chỉ cần chạy lệnh sau:
# w username

Hình 7: Thông tin hiển thị sau khi chạy lệnh # w username.

20. Kiểm soát hành vi hệ thống, phần cứng và thông tin hệ thống trong Linux

Với nhiều người dùng Linux, kiểm soát hệ thống là một tác vụ phức tạp. Hầu hết các bản phân phối Linux tích hợp khá nhiều công cụ kiểm soát. Những công cụ kiểm soát này cung cấp các phương pháp có thể được áp dụng để kiểm tra thông tin hành vi hệ thống. Việc kiểm soát hệ thống cho phép người dùng theo dõi nguyên nhân khả năng thực thi của hệ thống bị cản trở. Một trong những tác vụ cần thiết của quá trình kiểm soát hệ thống là tra cứu thông tin về hành vi hệ thống, phần cứng và thông tin bộ nhớ. Có một lệnh đơn giản giúp hiển thị thông tin về tiến trình, bộ nhớ, trang ghi, nhóm IO, lỗi và hành vi CPU đó là lệnh vmstat.
Bạn chỉ cần nhập lệnh sau vào cửa sổ terminal:
# vmstat 3

Hình 8: Thông tin kết xuất của lệnh # vmstat 3.

Ngoài ra bạn có thể sử dụng lệnh # vmstat –m để kiểm tra thông tin bộ nhớ, và lệnh # vmstat –a để hiển thị thông tin trang nhớ đang hoạt động và không hoạt động.

Hình 9: Thông tin hiển thị sau khi chạy lệnh # vmstat –a.

21. Kiểm tra thông tin phần cứng của hệ thống Linux

Với một số người dùng Linux thì việc kiểm tra thông tin phần cứng thật không dễ dàng. Linux là một hệ thống phức tạp nhưng nó lại tích hợp một số công cụ giúp lấy thông tin chi tiết của phần cứng, chẳng hạn chúng ta có thể sử dụng một lệnh khá đơn giản để kiểm tra thông tin đĩa cứng trên hệ thống đó là lệnh hdparm. Lệnh này cung cấp một giao diện dòng lệnh để thực hiện quản lý nhiều loại đĩa cứng được hệ thống phụ điều khiển thiết bị ATA/IDE của Linux hỗ trợ. Nó cung cấp một lệnh giúp hiển thị thông tin xác minh như dung lượng, thông tin chi tiết, … trực tiếp từ ổ đĩa. Thông tin này được lưu dưới một định dạng mở rộng mới. Bạn chỉ cần đăng nhập dưới quyền root user và sử dụng lệnh sau:
# hdparm -I /dev/sda
Hoặc dùng lệnh:
$ sudo hdparm -I /dev/sda
Khi đó thông tin về đĩa cứng của hệ thống sẽ lập tức hiển thị.



Hình 10: Thông tin chi tiết của đĩa cứng.

22. Các lệnh xử lý tập tin trên Linux

Lệnh để di chuyển xung quanh hệ thống file Linux là ls, nhưng có nhiều biến thể.
Lệnh LinuxNhiệm vụ lệnh sẽ làm
lsLiệt kê nội dung thư mục hiện tại
ls -alLiệt kê nội dung thư mục bao gồm cả file ẩn
cd dirDi chuyển từ thư mục hiện tại sang thư mục dir
cdChuyển từ thư mục hiện tại về thư mục riêng (thường là [Tên User] ở Home)
cd ..Di chuyển lên (về /) một thư mục từ vị trí hiện tại.
cd <location>
Đưa người dùng đến vị trí được chỉ định. Nếu vị trí bắt đầu bằng /, nó được coi là tương đối với thư mục gốc và vị trí hiện tại. Ký tự ~ đại diện cho thư mục Home. Ví dụ:
cd /tmp
cd Documents
cd ~/Documents
pwdHiện thư mục hiện tại
mkdir binhtvTạo thư mục mới có tên là binhtv
rm filemuonxoaXóa file có tên là filemuonxoa
rm -r thumuccanxoaXóa thư mục có tên là binhtv
rm -f filecanxoaBắt xóa file có tên là filecanxoa
rm -rf thumuccanxoaBắt xóa thư mục có tên là thumuccanxoa
cp file1 file2Sao chép file1 sang file2
cp -r dir1 dir2Sao chép thư mục dir1 sang dir2 và tạo dir2 nếu chưa có dir2
mv file1 file2Di chuyển file1 đến chỗ file2 hoặc đổi tên file1 thành file2. Nếu file2 có sẵn thì di chuyển file1 vào file2
ln -s tenfile linkTạo liên kết biểu tượng có tên là link đến file có tên là tenfile
touch filecantaoTạo hoặc cập nhật tập tin filecantao
cat > tenfileNhập từ bàn phím (đầu vào chuẩn - standard input) vào tập tin tenfile mới
more tenfileHiện nội dung file có tên là tenfile
head tenfileHiện 10 dòng đầu của tập tin tenfile
tail tenfileHiện 10 dòng cuối của tập tin tenfile
tail -f tenfileHiện nội dung của tập tin tenfile và cập nhật liên tục trong thời gian thực
tail -f -n N tenfileHiện nội dung của tập tin tenfile và cập nhật liên tục, giới hạn N dòng

23. Các lệnh mạng trên Linux

Linux hỗ trợ các câu lệnh cho người sử dụng khi muốn tải file, chẩn đoán vấn đề về mạng, quản lý các giao diện mạng hay xem thống kê mạng trên giao diện dòng lệnh (command line). Dưới đây là một số câu lệnh Linux thông dụng để làm việc với mạng, mời các bạn tham khảo.
Lệnh thống kê mạng trên Linux

curl và wget

Sử dụng lệnh curl hoặc wget để tải một file từ internet mà không cần đầu cuối. Với lệnh curl, gõ curl-O đường dẫn tới file. Người sử dụng có thể sử dụng lệnh wget mà không cần thêm tùy chọn nào. File sẽ xuất hiện ở đường dẫn.
Curl-O website.com/fileWget website.com/file
Lệnh curl trên Linux

ping

Lệnh ping gửi các gói ECHO_REQUEST tới địa chỉ chỉ định. Câu lệnh nhằm kiểm tra máy tính có thể kết nối với Internet hay một địa chỉ IP cụ thể nào đó hay không. Tuy nhiên có rất nhiều hệ thống được cấu hình để không hồi đáp với các lệnh ping.
Không giống lệnh ping trên Windows, câu lệnh ping trên Linux sẽ duy trì gửi các gói tin cho đến khi bạn kết thúc nó. Có thể định số lượng gói tối đa gửi đi bằng cách gõ thêm tùy chọn –c.
ping –c 4 google.com
Lệnh ping trên Linux

Tracepath và traceroute

Lệnh tracepath cũng tương tự như traceroute nhưng nó không đòi hỏi các quyền quản trị. Nó cũng được cài đặt mặc định trên Ubuntu còn tracerout thì không. Lệnh tracepath lần dấu đường đi trên mạng tới một đích chỉ định và báo cáo về mỗi nút mạng (hop) dọc trên đường đi. Nếu gặp phải các vấn đề về mạng, lệnh tracepath có thể chỉ ra vị trí lỗi mạng.
Tracepath example.com
Lệnh tracepath trên Linux

mtr

Lệnh mtr là sự kết hợp ping và tracepath trong một câu lệnh đơn lẻ. mtr sẽ gửi liên tục các gói và hiển thị thời gian ping cho mỗi nút mạng. Câu lệnh cũng giúp phát hiện một số vấn đề mạng. Trong trường hợp này, có thể thấy nút thứ 6 làm mất hơn 20% tổng số gói.
mtr howtogeek.com
Lệnh mtr trên Linux
Nhấn q hoặc Ctrl-C để thoát khi bạn thực hiện xong.

host

Lệnh host sẽ thực hiện tìm kiếm DNS. Nhập vào tên miền khi muốn xem địa chỉ IP đi kèm và ngược lại, nhập vào địa chỉ IP khi muốn xem tên miền đi kèm.
Host howtogeek.com
Host 208.43.115.82
Lệnh host sẽ thực hiện tìm kiếm DNS

whois

Lệnh whois sẽ đưa ra các bản ghi trên server whois (whois record) của website, vì vậy bạn có thể xem thông tin về người hay tổ chức đã đăng ký và sở hữu website đó.
whois example.com
Lệnh whois cung cấp bản ghi từ whois server

ifplugstatus

Lệnh ifplugstatus giúp kiểm tra dây cáp có được cắm vào giao diện mạng hay không. Câu lệnh này không được cài đặt mặc định trên Ubuntu. Sử dụng câu lệnh sau để cài đặt nó
sudo apt-get install ifplugd
Chạy các câu lệnh sau để xem trạng thái tất cả các giao diện hay chỉ xem trạng thái một giao diện cụ thể.
ifplugstatus
ifplugstatus eth0
Lệnh ifplugstatus để kiểm tra dây mạng có được cắm không
link beat detected” nghĩa là dây cáp đã được cắm và “unplugged” tức dây cáp chưa được cắm.

ifconfig

Câu lệnh ifconfig có rất nhiều tùy chọn để cấu hình, điều chỉnh và dò lỗi trên các giao diện mạng hệ thống. Đây cũng là cách để xem nhanh các địa chỉ IP và các thông tin khác của giao diện mạng. Gõ ifconfig để xem trạng thái các giao diện mạng hiện đang hoạt động bao gồm tên của chúng. Bạn cũng có thể chỉ định tên một giao diện để xem thông tin trên duy nhất giao diện đó.
ifconfig
ifconfig eth0
Lệnh ifconfig trên Linux

ifdown và ifup

Câu lệnh ifdown và ifup giống như ifconfig up hay ifconfig down. Hai câu lệnh thực hiện bật hoặc tắt giao diện chỉ định. Điều này yêu cầu quyền quản trị nên bạn phải dùng thêm từ khóa sudo trên Ubuntu.
sudo ifdown eth0
sudo ifup eth0
Lệnh ifdown cho ubuntu
Màn hình Linux sẽ báo lỗi khi được nhập những câu lệnh này. Nó thường sử dụng bộ NetworkManager cho phép quản lý giao diện mạng. Mặc dù vậy, các câu lệnh này vẫn sẽ hoạt động trên các server mà không cần dùng NetworkManager.

Nếu bạn thực sự cần cấu hình NetworkManager từ giao diện dòng lệnh, sử dụng câu lệnh nmcli.

dhclient

Lệnh dhclient giúp làm mới địa chỉ IP trên máy bằng cách giải phóng địa chỉ IP cũ và nhận một địa chỉ mới từ DHCP server. Công việc này yêu cầu quyền quản trị, vì vậy phải dùng thêm từ khóa sudo trên Ubuntu. Chạy dhclient để nhận địa chỉ IP mới hoặc sử dụng tùy chọn –r để giải phóng địa chỉ IP hiện tại.
sudo dhclient –r
sudo dhclient
Lệnh dhclient giúp làm mới địa chỉ IP trên máy

netstat

Câu lệnh netstat đưa ra các thống kê khác nhau cho giao diện, bao gồm các socket mở và các bảng định tuyến.
Lệnh netstat cung cấp bảng thống kê trạng thái
Sử dụng câu lệnh netstat –p để xem các chương trình đi kèm với các socket mở.
Lệnh netstat -p trên Linux
Xem các thống kê chi tiết cho tất cả các cổng bằng câu lệnh netstat –s.
Lệnh netstat -s

24. Bắt đầu, dừng và liệt kê các service

Các lệnh này cho phép người dùng hiển thị các service cũng như bắt đầu và dừng chúng.
LệnhChức năngVí dụ
systemctlLệnh systemctl có thể bắt đầu, dừng, khởi động lại và load lại các service, cần có quyền admin.sudo systemctl stop apache2.service
sudo systemctl restart apache2.service
sudo systemctl reload apache2.service
serviceLiệt kê các service và cho biết liệu chúng có đang chạy không.service --status-all

25. Xác định phiên bản hệ điều hành

Bảng bên dưới liệt kê các lệnh sẽ hiển thị chi tiết về hệ điều hành Linux đang chạy trên hệ thống.
LệnhChức năngVí dụ
unameHiển thị thông tin về phiên bản hệ điều hành trong một dòng văn bản.uname -a
uname -r
lsb_releaseTrên các hệ thống dựa trên Debian, lệnh này hiển thị thông tin về hệ điều hành bao gồm codename và ID nhà phân phối.lsb_release -a
hostnamectlHiển thị thông tin trên hệ thống bao gồm tên máy chủ, loại chassis (thùng máy), hệ điều hành, kernel và cấu trúc.hostnamectl

26. Đo hiệu suất hệ thống

Sau đây là một số công cụ hữu ích để kiểm tra hiệu năng hệ thống.
LệnhChức năngVí dụ
topHiển thị các tiến trình đang chạy cùng với việc sử dụng tài nguyên và dữ liệu hiệu suất hệ thống. Có thể hiển thị các tiến trình cho một người dùng đã chọn hoặc tất cả người dùng. Các tiến trình có thể được sắp xếp theo các tiêu chí khác nhau (theo mặc định là mức độ sử dụng CPU).top
top jdoe
atopTương tự như lệnh trên nhưng hướng nhiều đến hiệu năng hệ thống hơn so với các tiến trình riêng lẻ.atop
freeHiển thị bộ nhớ và trao đổi tổng bộ nhớ, phần đã sử dụng và còn trống.free
dfHiển thị việc sử dụng không gian ổ đĩa hệ thống của file.df
df -h

27. Quản lý người dùng và nhóm

Các lệnh để tạo và xóa tài khoản người dùng và các nhóm khá đơn giản.
LệnhChức năngVí dụ
useraddThêm tài khoản người dùng mới vào hệ thống. Tên người dùng là bắt buộc. Các trường khác (mô tả người dùng, shell, mật khẩu ban đầu, v.v...) có thể được chỉ định. Thư mục chính sẽ mặc định là /home/username.useradd -c "John Doe" jdoe
useradd -c "Jane Doe" -g admin -s /bin/bash jbdoe
userdelXóa tài khoản người dùng khỏi hệ thống. Tùy chọn -f mạnh mẽ hơn, xóa các file chính và file người dùng khác ngay cả khi người dùng vẫn đăng nhập.userdel jbdoe
userdel -f jbdoe
groupaddThêm một nhóm người dùng mới vào hệ thống, cập nhật /etc/group.groupadd developers
groupdelXóa nhóm người dùng khỏi hệ thống.groupdel developers

28. Thiết lập và chạy các tiến trình theo lịch

Các tác vụ có thể được lên lịch để chạy định kỳ bằng cách sử dụng lệnh được liệt kê dưới đây.
LệnhChức năngVí dụ
crontabThiết lập và quản lý các tiến trình theo lịch. Với tùy chọn -l, các công việc định kỳ được liệt kê. Với tùy chọn -e, các công việc định kỳ có thể được thiết lập để chạy ở các khoảng thời gian đã chọn.crontab -l
crontab -l -u username
crontab -e
anacronCho phép người dùng chỉ chạy các công việc theo lịch trình hàng ngày. Nếu hệ thống bị tắt khi một công việc được đặt lịch chạy, nó sẽ chạy khi hệ thống khởi động.sudo vi /etc/anacrontab

29. Cập nhật, cài đặt và liệt kê các ứng dụng

Các lệnh để cài đặt và cập nhật ứng dụng tùy thuộc vào phiên bản Linux đang sử dụng, cụ thể là dựa trên nền tảng Debian hay RPM.
LệnhChức năngVí dụ
apt updateTrên các hệ thống dựa trên Debian, lệnh này cập nhật danh sách các gói có sẵn và các phiên bản của chúng, nhưng không cài đặt hoặc nâng cấp bất kỳ gói nàosudo apt update
apt upgradeTrên các hệ thống dựa trên Debian, lệnh này cài đặt các phiên bản mới hơn của các gói đã có.sudo apt upgrade
apt listLiệt kê tất cả các gói được cài đặt trên hệ thống dựa trên Debian. Với tùy chọn --upgradable, nó chỉ hiển thị các gói có bản nâng cấp.apt list
apt list --installed
apt list --upgradable
apt installTrên các hệ thống dựa trên Debian, lệnh này cài đặt gói được yêu cầu.sudo apt install apache2
yum updateTrên các hệ thống dựa trên RPM, lệnh này cập nhật tất cả hoặc các gói được chỉ định.sudo yum update
yum update mysql
yum listTrên các hệ thống dựa trên RPM, lệnh này liệt kê các gói.sudo yum update mysql
yum installTrên các hệ thống dựa trên RPM, lệnh này cài đặt gói được yêu cầu.sudo yum -y install firefox
yum listTrên các hệ thống dựa trên RPM, lệnh này liệt kê các gói đã biết và đã cài đặt.sudo yum list
sudo yum list --installed

30. Tắt và khởi động lại

Các lệnh tắt và khởi động lại hệ thống Linux yêu cầu quyền admin. Các tùy chọn như +15 là số phút mà lệnh sẽ đợi trước khi yêu cầu tắt máy được thực hiện.
LệnhChức năngVí dụ
shutdownTắt hệ thống tại thời điểm yêu cầu. Tùy chọn -H tạm dừng hệ thống, còn tùy chọn -P sẽ tắt nguồn.sudo shutdown -H now
shutdown -H +15
shutdown -P +5
haltTắt hệ thống tại thời điểm yêu cầu.sudo halt
sudo halt -p
sudo halt --reboot
poweroffNgắt nguồn khỏi hệ thống tại thời điểm yêu cầu.sudo shutdown -H now
sudo shutdown -H +15
sudo shutdown -P +5

31. Lệnh bảo mật Linux

Mình đã tổng hợp 20+ lệnh bảo mật Linux thiết yếu, rất cần thiết cho các vấn đề bảo mật trên Linux, bạn cần thì tham khảo nha.
Chúc các bạn thành công!

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master