Giáo trình Hệ điều hành Linux (Phần 1)

pdf 20 trang hapham 2760
Bạn đang xem tài liệu "Giáo trình Hệ điều hành Linux (Phần 1)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfgiao_trinh_he_dieu_hanh_linux.pdf

Nội dung text: Giáo trình Hệ điều hành Linux (Phần 1)

  1. Hệ điều hành Linux Giới thiệu về Linux Lịch sử Linux là hệ điều hành mô phỏng Unix, được xây dựng trên phần nhân (kernel) và các gói phần mềm mã nguồn mở. Linux được công bố dưới bản quyền của GPL (General Public Licence). Unix ra đời giữa những năm 1960, ban đầu được phát triển bởi AT&T, sau đó được đăng ký thương mại và phát triển theo nhiều dòng dưới các tên khác nhau. Năm 1990 xu hướng phát triển phần mềm mã nguồn mở xuất hiện và được thúc đẩy bởi tổ chức GNU. Một số licence về mã nguồn mở ra đời ví dụ BSD, GPL. Năm 1991, Linus Torvald viêt thêm phiên bản nhân v0.01 (kernel) đầu tiên của Linux đưa lên các BBS, nhóm người dùng để mọi người cùng sử dụng và phát triển. Năm 1996, nhân v1.0 chính thức công bố và ngày càng nhận được sự quan tâm của người dùng. Năm 1999, phiên bản nhân v2.2 mang nhiều đặc tính ưu việt và giúp cho linux bắt đầu trở thành đối thủ cạnh tranh đáng kể của MSwindows trên môi trường server. Năm 2000 phiên bản nhân v2.4 hỗ trợ nhiều thiết bị mới (đa xử lý tới 32 chip, USB, RAM trên 2GB ) bắt đầu đặt chân vào thị trường máy chủ cao cấp. Quá trình phát triển của linux như sau: • Năm 1991: 100 người dùng. • Năm 1997: 7.000.000 người dùng. • Năm 2000: hàng trăm triệu người dùng, hơn 15.000 ngưòi tham gia phát triển Linux. Hàng năm thị trường cho Linux tăng trưởng trên 100%. Các phiên bản Linux là sản phẩm đóng gói Kernel và các gói phần mềm miễn phí khác. Các phiên bản này được công bố dưới licence GPL. Một số phiên bản nổi bật là: Redhat, Caldera, Suse, Debian, TurboLinux, Mandrake. Giống như Unix, Linux gồm 3 thành phần chính: kernel, shell và cấu trúc tệp. Kernel là chương trình nhân, chạy các chương trình và quản lý các thiết bị phần cứng như đĩa và máy in. Shell (môi trường) cung cấp giao diện cho người sử dụng, còn được mô tả như một bộ biên dịch. Shell nhận các câu lệnh từ người sử dụng và gửi các câu lệnh đó cho nhân thực hiện. Nhiều shell được phát triển. Linux cung cấp một số shell như: desktops, windows manager, và môi trường dòng lệnh. Hiện nay chủ yếu tồn tại 3 shell: Bourne, Korn và C shell. Bourne được phát triển tại phòng thí nghiệm Bell, C shell được phát triển cho 2/38
  2. phiên bản BSD của UNIX, Korn shell là phiên bản cải tiến của Bourne shell. Những phiên bản hiện nay của Unix, bao gồm cả Linux, tích hợp cả 3 shell trên. Cấu trúc tệp quy định cách lưu trữ các tệp trên đĩa. Tệp được nhóm trong các thư mục. Mỗi thư mục có thể chứa tệp và các thư mục con khác. Một số thư mục là các thư mục chuẩn do hệ thống sử dụng. Người dùng có thể tạo các tệp/thư mục của riêng mình cũng như dịch chuyển các tệp giữa các thư mục đó. Hơn nữa, với Linux người dùng có thể thiết lập quyền truy nhập tệp/thư mục, cho phép hay hạn chế một người dùng hoặc một nhóm truy nhập tệp. Các thư mục trong Linux được tổ chức theo cấu trúc cây, bắt đầu bằng một thư mục gốc (root). Các thư mục khác được phân nhánh từ thư mục này. Kernel, shell và cấu trúc tệp cấu thành nên cấu trúc hệ điều hành. Với những thành phần trên người dùng có thể chạy chương trình, quản lý tệp, và tương tác với hệ thống. Cài đặt máy chủ Linux Lưu ý: trước khi cài đặt, cần tìm hiểu các thông tin về phần cứng của hệ thống, bao gồm • Thông tin về ổ đĩa cứng • Thông tin về card mạng • Thông tin về card đồ hoạ • Thông tin về màn hình • Thông tin về giao thức và cấu hình mạng nếu kết nối mạng • Thông tin về các thiết bị ngoài (chẳng hạn các thiết bị SCSI ) Có thể chọn nhiều phương án cài đặt như cài đặt từ đĩa mềm, từ đĩa cứng, từ đĩa CD Rom hoặc qua mạng. Tài liệu này chọn hướng dẫn quá trình cài đặt phiên bản 7.2 từ đĩa CDRom. Yêu cầu máy cài đặt có khả năng khởi động (boot) từ ổ đĩa CD-Rom (được hỗ trợ hầu hết trong các máy tính hiện nay). Sau đây là các bước cài đặt cụ thể. Khi kết thúc bước trước chương trình cài đặt tự động chuyển sang bước sau. Một số bước cài đặt cho phép quay lại bước trước bằng cách chọn Back. 1. Đưa đĩa CD Rom Redhat vào ổ đĩa. Khởi động lại máy (lưu ý phải đảm bảo máy có khả năng khởi động từ đĩa CD-Rom 2. Chọn chế độ cài text 3. Mặc định chọn ngôn ngữ (English) chọn Next 4. Chọn kiểu bàn phím (Generic 105-key PC), kiểu thể hiện bàn phím (US English). 3/38
  3. 1. Cấu hình chuột Chọn đúng kiểu chuột trong hệ thống. Nếu không tìm được chính xác chọn kiểu tương thích trong danh sách. 1. Tại màn hình Welcome to Redhat Linux. Chọn Next 2. Chọn chế độ cài đặt Custom. 4/38
  4. 3. Sử dụng chương trình Disk Druid để tạo phân vùng đĩa chuẩn bị quá trình cài đặt. Phân vùng đĩa cứng như sau: Sử dụng phím Tab và phím mũi tên để di chuyển, phím Space hay Enter để chọn • Dùng Delete xoá các phân vùng cũ của hệ thống trước. • Chọn New để tạo các phân vùng mới. • Tạo phân vùng bộ nhớ ảo với các thông số sau: Type: Linux Swap Size: 256Mb (gấp đôi kích thước vật lý của bộ nhớ RAM của hệ thống Allowable Drives [*] sda xác định vị trí vật lý của phân vùng tại ổ đĩa cứng thứ nhất • Tạo phân vùng thứ hai cho thư mục gốc của hệ thống Mount point: / (liên kết phân vùng này với thư mục gốc root của hệ thống. Type: ext3 Size:1Mb Grow to fill disk [*] (chọn lựa này tạo phân vùng với dung lượng còn lại của ổ đĩa cứng thứ nhất) Allowable Drives [*] sda • Tạo phân vùng thứ 3 cho thư mục /usr của hệ thống: 5/38
  5. Mount point: /usr (liên kết phân vùng này với thư mục /usr trên cây thư mục hệ thống Type : ext3 Size : 3072 ( 3 GB ) Allowable Drives [*] sdb • Tạo phân vùng thứ 4 cho thư mục /var của hệ thống: Mount point: /var (liên kết phân vùng này với thư mục /usr trên cây thư mục hệ thống Type: ext3 Size: 1 Grow to fill disk [*] (chọn lựa chọn phân vùng với dung lượng còn lại của ổ cứng thứ hai) Allowable Drives [*] sdb • Kết thúc chọn OK và xác nhận hoàn thành việc thay đổi bảng phân vùng để ghi lại các thay đổi 6/38
  6. 1. Bỏ qua lựa chọn định dạng đĩa có kiểm tra lỗi nếu ổ đĩa cứng không có lỗi. 2. Cấu hình Boot loader Chọn UseLILO as boot loader SORRY, THIS MEDIA TYPE IS NOT SUPPORTED. 1. Dùng lựa chọn đặt boot loader tại Master Boot Record nếu hệ thống chỉ cài đặt một hệ điều hành. SORRY, THIS MEDIA TYPE IS NOT SUPPORTED. 1. Cấu hình mạng Nếu máy không có card mạng, sẽ không nhận được màn hình này. Thực hiện cấu hình mạng cho máy như sau • Bỏ lựa chọn config using DHCP (chỉ chọn sử dụng chế độ cấp phát địa chỉ IP động), nhập địa chỉ IP, subnetmask theo hướng dẫn của giáo viên hướng dẫn thực hành SORRY, THIS MEDIA TYPE IS NOT SUPPORTED. • Nhập hostname • Cấu hình firewall, chọn Medium SORRY, THIS MEDIA TYPE IS NOT SUPPORTED. 1. Lựa chọn ngôn ngữ English (US) SORRY, THIS MEDIA TYPE IS NOT SUPPORTED. 1. Cấu hình Time Zone: (Asia/Saigon) 2. Cấu hình tài khoản: • Nhập mật khẩu cho tài khoản root, gõ lại mật khẩu tại hộp confirm SORRY, THIS MEDIA TYPE IS NOT SUPPORTED. • SORRY, THIS MEDIA TYPE IS NOT SUPPORTED. Khaibáo thêm các tài khoản khác (nếu cần thiết) Tạo thêm tài khoản mới: • Chọn New để tạo thêm tài khoản mới, nhập thông tin về người dùng. Nhận được màn hình tạo tài khoản mới như sau: 7/38
  7. Nhập các thông tin về tài khoản: Username: Fullname: Password: Chọn OK • Ấn Add để đưa tài khoản vào danh sách người dùng • Chọn Edit để thay đổi thông tin về một tài khoản. • Chọn Delete để xoá một tài khoản. • Chọn cấu hình mặc nhận 8/38
  8. 1. Xác định các gói cài đặt: một số gói cài đặt chủ yếu X Windows System, GNOME, KDE (cho card đồ hoạ), Network station, Anonymous, FTP server, Development 1. Cấu hình giao diện đồ hoạ Chọn đúng kiểu video card (thông thường redhat có khả năng tự động phát hiện kiểu card) 1. Cài đặt các gói phần mềm SORRY, THIS MEDIA TYPE IS NOT SUPPORTED. 1. Tạo đĩa mềm khởi động: chọn có tạo đĩa khởi động phòng khi hệ thống có lỗi. 2. Xác định giao diện đồ hoạ 9/38
  9. Xác định kiểu monitor từ danh sách các monitor được hỗ trợ. Chương trình kiểm tra thử chế độ đồ hoạ, nếu các thông số khai báo không đúng, ta phải khai báo lại. Nếu cài đặt chế độ đồ hoạ thành công, máy sẽ yêu cầu chọn có nên khởi động máy vào chế độ đồ hoạ hay không (mặc định là chế độ text) 1. Hoàn tất quá trình cài đặt và khởi động lại máy (lưu ý bỏ đĩa CD Rom ra khỏi ổ đĩa trước khi khởi động lại). 10/38
  10. Quản lý tệp, thư mục Hệ thống thư mục Trong linux tệp được tổ chức thành các thư mục, theo mô hình phân cấp. Tham chiếu đến một tệp bằng tên và đường dẫn. Các câu lệnh thao tác tệp cho phép dịch chuyển, sao chép một tệp hay toàn bộ thư mục cùng với các thư mục con chứa trong nó Có thể sử dụng các ký tự, dấu gạch dưới, chữ số, dấu chấm và dấu phảy để đặt tên tệp. Không được bắt đầu một tên tệp bằng dấu chấm hay chữ số. Những ký tự khác như ‘/’, ‘?’, ‘*’, là ký tự đặc biệt được dành riêng cho hệ thống. Chiều dài của tên tệp có thể tới 256 ký tự. Trong UNIX không có khái niệm phần tên mở rộng (file extensions) theo kiểu như của Windows. Do đó có thể đặt tên tệp tuỳ ý, kể cả tên chứa nhiều dấu chấm “.” Tệp có tên bắt đầu bằng dấu chấm là tệp ẩn. UNIX/Linux nhậy cảm với chữ HOA, chữ thường (case sensitive). Để tiện lợi, nhiều người thường dùng chữ thường (lower case). Ta cũng nên theo cách này. Tất cả các tệp trong linux có chung cấu trúc vật lý là chuỗi các byte (byte stream). Cấu trúc thống nhất này cho phép linux áp dụng khái niệm tệp cho mọi thành phần dữ liệu trong hệ thống. Thư mục cũng như các thiết bị được xem như tệp. Chính việc xem mọi thứ như các tệp cho phép linux quản lý và chuyển đổi dữ liệu một cách dễ dàng. Một thư mục chứa các thông tin về thư mục, được tổ chức theo một định dạng đặc biệt. Các thành phần được xem như các tệp, chúng được phân biệt dựa trên kiểu tệp: tệp thông thường (ordinary file), thư mục (directory) , thiết bị kiểu kí tự (character device file), và thiêt bị kiểu khối dữ liệu (block device file). Thư mục chủ Mỗi tài khoản NSD có một thư mục của mình gọi là thư mục chủ hay thư mục nhà. Sau khi đăng nhập hệ thống, người dùng sẽ đứng ở thư mục nhà của mình. Tên của thư mục này giống với tên tài khoản đăng nhập hệ thống. Các tệp được tạo khi người dùng đăng nhập được tổ chức trong thư mục chủ. Tất cả các thư mục nhà của NSD nằm trong thư mục home của hệ thống. 11/38
  11. Các thư mục hệ thống Thư mục root, là gốc của hệ thống tệp của Linux, chứa một vài thư mục hệ thống. Thư mục hệ thống chứa tệp và chương trình sử dụng để chạy và duy trì hệ thống. Cấu trúc cây thư mục như sau: Mô tả các thư mục Thư Mô tả nội dung mục / bắt đầu cấu trúc tệp, gọi là thư mục gốc (root) /home chứa các thư mục nhà (home) của mọi tài khoản người dùng /bin lưu trữ tất cả các câu lệnh chuẩn và các chương trình tiện ích chứa các tệp, câu lệnh được hệ thống sử dụng, thư mục này được chia thành /usr các thư mục con khác /usr/ chứa các câu lệnh hướng người dùng và các chương trình tiện ích bin /usr/ chứa các câu lệnh quản trị hệ thống sbin /usr/ chứa thư viện cho các ngôn ngữ lập trình lib /usr/ chứa tài liệu của linux doc /usr/ chứa các tệp hướng dẫn sử dụng cho các câu lệnh (man) man /sbin chứa các tệp hệ thống để khởi động hệ thống 12/38
  12. /dev chứa giao diện cho các thiết bị như đầu cuối và máy in /etc chứa tệp cấu hình hệ thống và các tệp hệ thống khác Các câu lệnh cơ bản Chú ý: - Các lựa chọn (gọi là switch hay options trong câu lệnh thường bắt đầu bằng dấu trừ , sau đó là một hoặc một vài kí tự, viết tắt của lựa chọn đó, ví dụ "-a", “-al”. - Khi di chuyển giữa các thư mục bằng lệnh “cd” cần phải gõ đầy đủ đường dẫn kể từ thư mục root (là dấu gạch xiên “/”), trừ phi ở trong phạm vi thư mục nhà của bạn. - "man" là viết tắt của manual. Phần lớn các câu lệnh của UNIX / Linux có trang tài liệu hướng dẫn sử dụng kèm theo. • ls [-laR] / Hiển thị danh sách tệp (thư mục con) trong một thư mục. -l: (l = long) hiển thị tên tệp, thư mục trong thư mục hiện hành. Cùng với danh sách tên thông tin về quyền truy nhập, kích thước, ngày sửa đổi thông tin cũng được hiển thị. -a: cho phép hiển thị tất cả tệp và các thư mục trong thư mục hiện tại. -R: hiển thị thông tin về thư mục hiện hành và thông tin về các thư mục con. • cd Thay đổi thư mục làm việc. • pwd (print working directory) Hiển thị thư mục làm việc hiện tại. Thư mục được hiển thị với đường dẫn tuyệt đối. Ví dụ: pwd /home/user01 • mkdir 13/38
  13. Khởi tạo thư mục. Chú ý: tên tệp có thể dài tới 255 ký tự, tên thư mục có thể chứa mọi ký tự loại trừ ký tự ‘/’. Ví dụ mkdir folder1 • cp [-R] Sao chép một tệp. cp yêu cầu ít nhất hai tham số: tệp nguồn và vị trí hoặc tên tệp đích. Nếu tham số thứ hai là tên thư mục đã có, cp sẽ sao chép tệp nguồn tới thư mục đích. Ví dụ cp main.c main.c.bak • mv Di chuyển hoặc đổi tên tệp hoặc thư mục. Câu lệnh thực hiện di chuyển hay đổi tên tuỳ theo tệp đích có trong thư mục hay không. Ví dụ để thay đổi tên tập tin có trong thư mục hiện hành mv foo foobar vì foobar không phải là thư mục con trong thư mục hiện hành nên tệp foo được đổi tên thành foobar. nếu mv doc.txt foobar foobar là thư mục con trong thư mục hiện hành, mv thực hiện chuyển tệp doc.txt vào trong thư mục foobar. • rm [-rif] Xoá tệp, thư mục. -i: hiện thông báo xác nhận người dùng có thực sự muốn xoá tệp/thư mục hay không? -f: xoá tệp tin bất chấp quyền truy nhập tệp tin. Chú ý chỉ sử dụng –f khi đã chắc chắn hoàn toàn muốn xoá tệp tin này. -r: xoá thư mục và toàn bộ các tệp, thư mục con chứa trong nó. • rmdir Xoá một thư mục rỗng 14/38
  14. • more Hiển thị nội dung tệp phân theo từng trang màn hình. • cat [>|>] -cat : hiển thị toàn bộ nội dung của tệp ra thiết bị ra chuẩn (màn hình). -cat name1 name2 name3 > allnames: nối các tệp name1, name2, name3 thành tệp allnames. -cat name4 >> allnames: nối thêm nội dung tệp name4 vào tệp allnames Thuộc tính tệp Mỗi tệp/thư mục có các thuộc tính quy định chủ định chủ sở hữu và mức khai thác được phép giành cho những chủ sở hữu, nhóm chủ sở hữu và những người dùng khác. Ngoài ra có một số thuộc tính khác như: là thư mục hay tệp, kích thước, ngày giờ khởi tạo, cập nhật, Có ba mức khai thác được phép là đọc, viết và cho thực hiện, ký hiệu tương ứng là r, w, và x. Khi danh sách tệp trong một thư mục được đọc với câu lệnh ls –l, các thuộc tính sẽ được hiển thị lần lượt như sau: • Kí tự đầu tiên là “d” hoặc “-“ nghĩa là thư mục hay tệp (d= directory, - = tệp) • Các quyền (r, w, x) đối với chủ sở hữu, nhóm và other, tương ứng từng cụm 3 kí tự • Tên chủ sở hữu (owner), • Tên nhóm sở hữu, • Kích thước (theo byte), • Thời gian (timestamp), • Tên. Ví dụ: -rwxr r 1 user01 user01 2144 Mar 29 21:44 test.htm drwxr-xr-x user01 user01 4096 Mar 29 21:55 xdir 15/38
  15. Thay đổi thuộc tính tệp Thay đổi chủ sở hữu • chown username filename Thay đổi chủ sở hữu tệp. Chỉ có tài khoản root có quyền thay đổi chủ sở hữu tệp. • chgrp groupname filename Thay đổi nhóm sở hữu tệp. Chỉ có root hoặc ngưòi tạo ra tệp đó (chủ sở hữu) có quyền thay đổi nhóm sở hữu tệp. Thay đổi hạn chế khai thác tệp • chmod [u|g|o][+|-][r|w|x ] Thay đổi cách thức truy nhập tệp. Trong đó: ‘+’:Gán thêm quyền truy nhập tệp ‘-‘ :Loại bỏ quyền truy nhập tệp • Quyền truy nhập tệp được thể hiện bởi các ký tự: r (đọc), w (viết), x (thực hiện) • Nhóm người dùng được thể hiện bởi các ký tự: u (người dùng), g (nhóm), o (những người dùng khác). Ví dụ: - chmod g+rw mydata: gán cho nhóm có quyền đọc và thực hiện tệp mydata - chmod o+r mydata: mọi ngưòi dùng có thể đọc tệp mydata Người dùng có thể gán thêm quyền cũng như loại bỏ quyền truy nhập tệp - chmod o+r-wx mydata: mọi người dùng có thể đọc tệp, nhưng không được viết và thực hiện. Ngoài ra người dùng có thể thay các số thập phân cho các ký tự trên, gọi là phương thức tuyệt đối. Phương thức này sử dụng mặt nạ nhị phân thể hiện tất cả các quyền trong một phân mục. Ba phân mục (u,g,o) với 3 phân quyền chiếu theo một định dạng số bát phân. Khi chuyển sang số nhị phân (0/1), mỗi số hệ bát phân chuyển thành 3 số hệ nhị phân. 16/38
  16. Ba số bát phân chuyển hành 3 bộ số nhị phân (ví dụ: 777=111111111) , biễu diễn chính xác quyền truy nhập tệp. Sử dụng số bát phân thiết lập quyền truy nhập tệp. Mỗi số hệ bát phân thể hiện quyền truy nhập cho một nhóm người dùng (u/g/o). Ý nghĩa mode truy nhập của số bát phân được thể hiện trong bảng dưới đây: Mode Ý nghĩa 111 =7 rwx 110=6 rw- 101=5 r-x 100=4 r 011=3 -wx 010=2 -w- 001=2 x 000=0 ví dụ: chmod 544 mydata 17/38
  17. Người dùng và quản lý người dùng Khái niệm Linux là hệ điều hành đa nhiệm và đa người dùng. Mỗi người dùng có tên truy nhập và mật khẩu riêng, tương ứng với những quyền hạn nhất định trong hệ thống tệp của Linux. Để tạo điều kiện thuận lợi trong quản lý người dùng và quyền hạn đối với hệ thống tệp, Linux cho phép khai báo những nhóm người dùng, mỗi nhóm là một tập hợp những người dùng chung một mục đích khai thác tài nguyên nhất định. Mỗi người dùng có thể tham gia nhiều nhóm ngưòi dùng khác nhau. Mỗi ngưòi dùng cũng mặc nhiên lập nên một nhóm người dùng là nhóm của chính họ (nhóm có thể chỉ có một thành viên). Người dùng có toàn quyền trong Linux là người dùng root, mặc nhiên thuộc về nhóm root. Người dùng có quyền root ấn định một người dùng nào đó thuộc về nhóm root và có quyền tương đương với root. Các câu lệnh liên quan đến người dùng/nhóm người dùng Tạo thêm người dùng mới, sử dụng câu lệnh passwd để adduser tạo mật khẩu cho người dùng useradd Tạo tài khoản mới cho hệ thống usermod Các lựa chọn -g thiết đặt nhóm -d thiết đặt thư mục chủ cho người dùng mới userdel –r groupadd tạo nhóm nguời dùng mới groupdel Xoá một nhóm người dùng su đổi tư cách đăng nhập (su=switch user) groupmod -g: Thay đổi groupID-n: Thay đổi tên nhóm 18/38
  18. newgrp đổi nhóm đăng nhập passwd Thay đổi mật khẩu whoami hiển thị tài khoản đang đăng nhập hiện thời 19/38
  19. Bộ soạn thảo vi Hai chế độ làm việc. Kèm với mọi hệ thống Unix /Linux có bộ soạn thảo vi.vi là bộ soạn thảo khá mạnh và dùng rất ít tài nguyên hệ thống. vi chỉ soạn thảo tệp thuần text, không kèm định dạng nên chỉ dùng vi để soạn các đoạn chương trình shell, sửa lỗi các tệp mã nguồn chương trình Dưới đây sẽ giới thiệu những chức năng cơ bản nhất của vi. Có hai chế độ (mode) làm việc với vi: chế độ nhập vào - input mode và chế độ câu lệnh - command mode. Chế độ nhập để gõ nội dung văn bản, chế độ câu lệnh để thưc hiện mọi thao tác khác. 1. Khởi động vi: “ vi ”. Bạn ở chế độ câu lệnh. 2. Chuyển từ chế độ câu lệnh sang chế độ nhập vào: gõ phím i. 3. Nhập các kí tự như thông thường. 4. Chuyển từ chế độ nhập vào sang chế độ câu lệnh: gõ phím ESC. 5. Kết thúc phiên soạn thảo: dùng một trong các lệnh ZZ, :w hoặc :q! Chỉ khi ở chế độ câu lệnh mới có thể di chuyển con chạy lên, xuống, phải trái (bằng các phím mũi tên), xoá kí tự gõ sai (gõ phím x), ghi lưu vào đĩa và thoát (gõ ZZ) Bảng các câu lệnh dưới đây sẽ cho giải thích đầy đủ hơn về các câu lệnh của vi. Bảng các câu lệnh của vi ESC chuyển sang chế độ câu lệnh h, j, k, l Di chuyển con chạy: Left, down, up, right (hoặc dùng các phím mũi tên) w, W, b, Di chuyển tiến một từ, lùi một từ (backward by word). B 0, $ Về đầu, về cuối dòng /pattern Tìm xâu pattern. Theo hướng tiến. ?pattern Tìm xâu pattern, theo hướng lùi về đầu văn bản. n,N lặp lại việc tìm kiếm theo cùng hướng / ngược hướng X Xóa một kí tự Dd Xoá dòng có con chạy D Xoá đến cuối dòng 20/38
  20. Dw Xoá một từ p, P Dán đoạn văn bản vừa xoá vào trước / sau con chạy U Hồi lai lệnh vừa thực hiện. . Lặp lại câu lệnh cuối. Chèn đoạn văn bản vào trước / sau vị trí con chạy.[khi ở chế độ nhập i, a vào] o, O Thêm một dòng mới bên dưới/ bên trên con chạy [khi ở chế độ nhập vào] ZZ Ghi lưu và thoát :w Ghi lưu :q! Thoát khỏi vi, không ghi lưu. 21/38