Wednesday, 6 November 2013

Lệnh Linux Cơ Bản




GIT – Một số lệnh Linux cơ bản : khi “kết thân” với Linux, nếu không nắm được một số câu lệnh cần thiết thì công việc quản trị của bạn sẽ gặp không ít khó khăn. Dưới đây là một số lệnh Linux  commands cơ bản giúp cho việc quản trị của bạn dễ dàng hơn rất nhiều.

Lưu ý: hệ điều hành Linux phân biệt chữ hoa và chữ thường.

1. 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
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.
2. 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.
# ss -1: Hiển thị mọi cổng mở.
# 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.
3. 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).
Để lấy thông tin thư mục NFS bạn hãy sử dụng lệnh sau:
# iostat –n
4. 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.
5. 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 đó.
6. 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
7. 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
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.
8. 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ị.
9. Một số lệnh khác :
pwd: đưa ra ngoài màn hình thư mục đang hoạt động (ví dụ: /etc/ssh).
cd: thay đổi thư mục (ví dụ: cd .. – ra một cấp thư mục hiện tại; cd vidu – vào thư mục /vidu).
ls: đưa ra danh sách nội dung thư mục.
- mkdir: tạo thư mục mới (mkdir tên_thumuc).
touch: tạo file mới (touch ten_file).
rmdir: bỏ một thư mục (rmdir ten_thumuc).
cp: copy file hoặc thư mục (cp file_nguồn file_đích).
- mv: di chuyển file hoặc thư mục; cũng được dùng để đặt lại tên file hoặc thư mục (mv vị_trí_cũ vị_trí_mới hoặc mv tên_cũ tên_mới).
rm: loại bỏ file (rm tên_file).
Để tìm kiếm file, bạn có thể dùng:
find <tiêu chuẩn tìm kiếm>: dùng cho các tên file.
grep < tiêu chuẩn tìm kiếm>: để tìm nội dung trong file
Để xem một file, bạn có thể dùng:
more <tên file>: hiển thị file theo từng trang.
cat < tên file>: hiển thị tất cả file.
head < tên file>: hiển thị các dòng đầu tiên.
- tail < tên file>: hiển thị các dòng cuối cùng (có thể hữu ích trong những trường hợp như khi bạn muốn xem thông tin cuối cùng của một file hệ thống).
Để chính sửa file, bạn phải sử dụng trình soạn thảo tích hợp sẵn trên dòng lệnh. Thông thường, đây là vi và được dùng với cú pháp: vi <tên file>.Để giải nén một lưu trữ (thông thường có đuôi tar.gz), bạn phải dùng lệnh tar với cú pháp tar -xvf <tên_file>.
Để in một file, dùng lệnh lpr <tên_file>. Chú ý là bạn phải có một số daemon hoạt động để quản lý máy in. Thông thường đây là các cup (chủ yếu là UNIX Printing System) có thể sử dụng cho tất cả các phân phối chính.
Để loại bỏ file khỏi hàng đợi ở máy in (bạn có thể lên danh sách hàng đợi bằng lệnh lpq), sử dụng câu lệnhlprm <tên_file>.
Để lắp hoặc gỡ bỏ thiết bị (thêm vào hệ thống file với vai trò như một phương tiện được phép sử dụng), dùng:
mount /dev/cdrom /media/: lắp ổ CD-ROM.
- mount /dev/cdrom /media/: gỡ ổ DC-ROM.
Các thiết bị này thường được cài và cho phép sử dụng một cách tự động. Nhưng có thể một ngày đẹp trời nào đó bạn lại phải tự mình thực hiện công việc này khi có lỗi xảy ra. Đừng lo lắng!
Để tạo một phân vùng (ít sử dụng )
Đầu tiên, tạo một thư mục trong /mnt (mkdir /dev/ổ_đĩa_mới). Sau đó sử dụng lệnh mount (mount /dev/source /dev/ ổ_đĩa_mới), trong đó /dev/source là thiết bị (tức phân vùng) bạn muốn lắp thêm vào hệ thống file.
Nếu muốn kết nối tới một host từ xa, sử dụng lệnh ssh. Cú pháp là ssh <tên_host>.
Quản lý hệ thống:
ps: hiển thị các chương trình hiện thời đang chạy (rất hữu ích: ps là cái nhìn toàn bộ về tất cả các chương trình).
Trong danh sách đưa ra khi thực hiện lệnh ps, bạn sẽ thấy có số PID (Process identification – nhân dạng tiến trình).
Con số này sẽ được hỏi đến khi muốn ngừng một dịch vụ hay ứng dụng, dùng lệnh kill <PID>.
top: hoạt động khá giống như Task Manager trong Windows. Nó đưa ra thông tin về tất cả tài nguyên hệ thống, các tiến trình đang chạy, tốc độ load trung bình… Lệnh top -d <delay> thiết lập khoảng thời gian làm tươi lại hệ thống. Bạn có thể đặt bất kỳ giá trị nào, từ .1 (tức 10 mili giây) tới 100 (tức 100 giây) hoặc thậm chí lớn hơn.
uptime: thể hiện thời gian của hệ thống và tốc độ load trung bình trong khoảng thời gian đó, trước đây là 5 phút và 15 phút.
Thông thường tốc độ load trung bình được tính toán theo phần trăm tài nguyên hệ thống (vi xử lý, RAM, ổ cứng vào/ra, tốc độ load mạng) được dùng tại một thời điểm. Nếu tốc độ được tính toán là 0.37, tức có 37% tài nguyên được sử dụng. Giá trị lớn hơn như 2.35 nghĩa là hệ thống phải đợi một số dữ liệu, khi đó nó sẽ tính toán nhanh hơn 235% mà không gặp phải vấn đề gì. Nhưng giữa các phân phối có thể khác nhau một chút.
free: hiển thị thông tin trên bộ nhớ hệ thống.
ifconfig <tên interface>: để xem thông tin chi tiết về các giao diện mạng; thông thường giao diện mạng ethernet có tên là eth(). Bạn có thể cài đặt các thiết lập mạng như địa chỉ IP hoặc bằng cách dùng lệnh này (xem man ifconfig). Nếu có điều gì đó chưa chính xác, bạn có thể stop hoặc start (tức ngừng hoặc khởi_động) giao diện bằng cách dùng lệnh ifconfig <tên_giao_diện> up/down.
passwd: cho phép bạn thay đổi mật khẩu (passwd người_dùng_sở_hữu_mật_khẩu hoặc tên người dùng khác nếu bạn đăng nhập hệ thống với vai trò root).
useradd: cho phép bạn thêm người dùng mới (xem man useradd).
- rlogin: dùng để điều khiển hoặc thao tác lệnh trên một máy khác
- exit : thoát khỏi hệ thống (Bourne-Shell)
- logout: thoát khỏi hệ thống C-Shell
- id : chỉ danh của người sử dụng
- logname: tên người sử dụng login
- man : giúp đỡ
- newgrp: chuyển người sử dụng sang một nhóm mới
- psswd: thay đổi password của người sử dụng
- set : xác định các biến môi trường
- tty : đặt các thông số terminal
- uname: tên của hệ thống (host)
- who : cho biết những ai đang thâm nhập hệ thống
Dù ở phân phối nào, bạn cũng có thể dùng phím TAB để tự động hoàn chỉnh một lệnh hoặc tên file. Điều này rất hữu ích khi bạn quen với các lệnh. Bạn cũng có thể sử dụng các phím lên, xuống để cuộn xem các lệnh đã nhập. Bạn có thể dùng lệnh đa dòng trên một dòng. Ví dụ như, nếu muốn tạo ba thư mục chỉ trên một dòng, cú pháp có thể là: mkdir thư_mục_1 ; mkdir thư_mục_2 ; mkdir thư_mục_3.

Một điều thú vị khác nữa là các lệnh dạng pipe. Bạn có thể xuất một lệnh thông qua lệnh khác. Ví dụ: man mkdir | tail sẽ đưa ra thông tin các dòng cuối cùng trong trang xem “thủ công” của lệnh mkdir.
Nếu lúc nào đó được yêu cầu phải đăng nhập với tài khoản gốc (tức “siêu” admin của hệ thống), bạn có thể đăng nhập tạm thời bằng cách dùng lệnh su. Tham số -1 (su-1) dùng để thay đổi thư mục chủ và cho các lệnh đã hoặc đang dùng. Chú ý là bạn cũng sẽ được nhắc một mật khẩu.
Lệnh liên quan đến hệ thống
  • exit: thoát khỏi cửa sổ dòng lệnh.
  • logout: tương tự exit.
  • reboot: khởi động lại hệ thống.
  • halt: tắt máy.
  • startx: khởi động chế độ xwindows từ cửa sổ terminal.
  • mount: gắn hệ thống tập tin từ một thiết bị lưu trữ vào cây thư mục chính.
  • unmount: ngược với lệnh mount.
Lệnh thao tác trên tập tin
  • ls: lấy danh sách tất cả các file và thư mục trong thư mục hiện hành.
  • pwd: xuất đường dẫn của thư mục làm việc.
  • cd: thay đổi thư mục làm việc đến một thư mục mới.
  • mkdir: tạo thư mục mới.
  • rmdir: xoá thư mục rỗng.
  • cp: copy một hay nhiều tập tin đến thư mục mới.
  • mv: đổi tên hay di chuyển tập tin, thư mục.
  • rm: xóa tập tin.
  • wc: đếm số dòng, số kí tự… trong tập tin.
  • touch: tạo một tập tin.
  • cat: xem nội dung tập tin.
  • vi: khởi động trình soạn thảo văn bản vi.
  • df: kiểm tra dung lượng đĩa.
  • du: xem dung lượng đĩa đã dùng cho một số tập tin nhất định
Lệnh khi làm việc trên terminal
  • clear: xoá trắng cửa sổ dòng lệnh.
  • date: xem ngày, giờ hệ thống.
  • cal: xem lịch hệ thống.
Lệnh quản lí hệ thống
  • rpm: kiểm tra gói đã cài đặt hay chưa, hoặc cài đặt một gói, hoặc sử dụng để gỡ bỏ một gói.
  • ps: kiểm tra hệ thống tiến trình đang chạy.
  • kill: dừng tiến trình khi tiến trình bị treo. Chỉ có người dùng super-user mới có thể dừng tất cả các tiến trình còn người dùng bình thường chỉ có thể dừng tiến trình mà mình tạo ra.
  • top: hiển thị sự hoạt động của các tiến trình, đặc biệt là thông tin về tài nguyên hệ thống và việc sử dụng các tài nguyên đó của từng tiến trình.
  • pstree: hiển thị tất cả các tiến trình dưới dạng cây.
  • sleep: cho hệ thống ngừng hoạt động trong một khoảng thời gian.
  • useradd: tạo một người dùng mới.
  • groupadd: tạo một nhóm người dùng mới.
  • passwd: thay đổi password cho người dùng.
  • userdel: xoá người dùng đã tạo.
  • groupdel: xoá nhóm người dùng đã tạo.
  • gpasswd: thay đổi password của một nhóm người dùng.
  • su: cho phép đăng nhập với tư cách người dùng khác.
  • groups: hiển thị nhóm của user hiện tại.
  • who: cho biết ai đang đăng nhập hệ thống.
  • w: tương tự như lệnh who.
  • man: xem hướng dẫn về dòng lệnh như cú pháp, các tham số…
Để thoát hay đóng shell, gõ exit hoặc logout.
Để hiểu và sử dụng tốt các câu lệnh trên, các bạn nên sử dụng lệnh man với cú pháp: man ten_cau_lenh để có được những thông tin đầy đủ về chức năng cũng như cú pháp của câu lệnh. Chúc các bạn có những giây phút thú vị khi khám phá hệ điều hành này.

No comments:

Post a Comment

Góc nhỏ cho người đam mê công nghệ thông tin

Đam mê công nghệ thông tin

Nếu bạn là một người thích tìm hiểu về công nghệ thông tin, đam mê công nghệ thông tin, thì hãy đến với website chúng tôi.

Chuyên cung cấp nhiều dịch vụ, tin tức, bài học mới nhất cho những bạn thật sự đam mê công nghệ thông tin

Với tiêu chí phục vụ những người đam mê công nghệ thông tin. Chúng tôi thành lập blog này để trao đổi, học tập về công nghệ thông tin.

Nội dung website chỉ xoay quanh nhiều về đam mê công nghệ thông tin, lập trình, mạng, SEO, đồ họa...

Đam mê công nghệ thông tin kính chào