1. Trang chủ
  2. » Công Nghệ Thông Tin

Giáo trình cơ bản về Linux

101 1,1K 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Giáo trình cơ bản về Linux
Trường học Đại học Công nghệ Thông tin - Đại học Quốc gia Hà Nội
Chuyên ngành Khoa học Máy tính
Thể loại Giáo trình
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 101
Dung lượng 335,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Giáo trình cơ bản về Linux, giáo trình hướng dẫn chi tiết về hệ điều hành Linux, như hướng dẫn cái đặt, hướng dẫn các lệnh trong Linux, một tài liệu cơ bản và khá chi tiết cho các bạn học tập, nghiên cứu cũng như tham khảo trong quá trình học của mình.

Trang 1

Phần I : Cài đặt và thiết lập cấu hình

Chơng 1 : Chuẩn bị

Trong giờ này, bạn sẽ học các bớc chuẩn bị để cài đặt Linux lên máy tính Lên kếhoạch là một trong những yếu tố quan trọng trong việc cài bất kỳ hệ điều hành nào.Trong kế hoạch phải xác định đợc phơng pháp cài đặt, nơi cài đặt và kết quả do việc cài

đặt mang lại

Ba bớc phải làm trong phần này là:

• Tìm hiểu máy tính của bạn

• Tạo các đĩa mềm cài đặt

Trớc tiên hãy xem xét các thiết bị ngoại vi:

• Bàn phím Bàn phím là một thiết bị vào ra chuẩn song cần xác định ngôn ngữlàm việc của bàn phím

• Màn hình Xác định rõ loại và kích cỡ màn hình Tốt hơn là bạn nên có tàiliệu về màn hình, bởi vì nó sẽ xác định chính xác các thông số nh tần số quétngang/dọc…

• Chuột Các thông số về chuột cần thiết là nhãn hiệu, số nút, dạng cổngcắm chuột (serial, PS/2, bus mouse… )

• Máy in Bạn cần ghi lại các thông số nh tên nhà sản xuất, khả năng môphỏng máy in khác, máy in có là PostScript hay không

Bây giờ hãy tìm hiểu các phần cứng bên trong máy tính Có rất nhiều các loại phầncứng khác nhau, các ký hiệu khác nhau (nh SCSI, IDE, BIOS… ) Tuy nhiên mọi việc sẽ

đợc giải quyết từng bớc một

Hầu hết, các thông tin về máy tính đều đợc chứa trong BIOS và bạn có thể thấy

đ-ợc khi khởi động khi ấn các phím đặc biệt (F1, Del, …) Nếu bạn đang dùng Win95 hayWinNT thì các thông tin đó có thể tìm thấy trong mục system properties của ControlPanel

Linux là hệ điều hành chạy trên nhiều nền khác nhau Tuy nhiên nhà cung cấp của

đĩa CD Linux kèm theo sách này chỉ cho phép chạy trên Intel CPU (hay các chip tơngthích AMD, Cyrix) Sau đây là danh sách các thiết bị cần tìm hiểu:

• CD-ROM Do Linux hỗ trợ hầu hết các trình điều khiển CD-ROM nên cách

đơn giản nhất để cài đặt là nối ổ CD-ROM với card SCSI hayIDE bus Nếu CD-ROM nối với IDE bus thì nó phải là loại tơngthích với ATAPI

• ổ mềm Phải là loại 3,5 in 1,44MB

Trang 2

• ổ cứng Giống nh CD-ROM, nó có thể đợc nối với IDE hay SCSI bus.

Bạn nên ghi lại số cylinders của ổ cứng - đợc chỉ ra trong BIOS(ý nghĩa của cylinder sẽ đợc giải thích sau)

• Bus nội bộ Linux hiện tại không hỗ trợ bus với kiến trúc Micro-Chanel Các

bus đợc hỗ trợ là PCI, ISA, EISA, VL Bus Hầu hết các máy sảnsuất sau năm 1995 đều có PCI bus

• Bộ nhớ Linux cần tối thiểu 8MB RAM để có thể chạy đợc

• Sound card Không cần thiết cho quá trình cài đặt, song nếu bạn có Creative

Labs Sound Blaster hay card sound tơng thích, bạn sẽ dễ dàng có

đợc âm thanh trong quá trình cài đặt

• Video card Thông tin cần thiết ở đây là loại chip và dung lợng bộ nhớ Nếu

là loại card PCI thì thông tin này có thể tự động nhận biết trongquá trình cài đặt (thông tin này chỉ thực sự cần thiết nếu bạn có ý

định dùng Xwindow)

Xem xét phần cứng

Bây giờ bạn đã hoàn thành việc tìm hiểu máy tính của bạn Việc tiếp theo là sosánh danh sách phần cứng bạn có với danh sách đợc Linux hỗ trợ Bạn có thể tìm thấychúng tại địa chỉ:

http://www.redhat.com/support/docs/rhl/intel/rh50-hardware-intel.html

Bảng 1.1 Vắn tắt phần cứng Linux-compabtible

Thiết bị Các thiết bị tơng thích

CD-Rom Drive IDE ATAPI-compliant, SCSI CD-Rom

Hard Drive Các loại IDE, EIDE, SCSI Một số loại Ultra DMA

không làm việc đơvj vì không tơng thích với chuẩnEIDE

SCSI Controller Hầu hết các điều khiển SCSI thông dụng nh BusLogic và

AdaptecVideo card Các loại card ATI, Cirrus và Matrox, S3…

Nếu phần cứng của bạn không đợc hỗ trợ thì chỉ còn cách:

• Thay đổi phần cứng sao cho tơng thích

• Chờ cho đến khi Linux hỗ trợ phần cứng của bạn

Tốt hơn là nên tránh các thiết bị mang nhãn Plug & Play Bởi vì Linux mới chỉ

đang bắt đầu hỗ trợ các thiết bị này, do đó sẽ rất phức tạp khi cài đặt Bạn cũng nên thậntrọng với các phần cứng đợc liệt vào loại Win-item (nh Winmodem và Winprinter) vìchúng chỉ hoạt động trong môi trờng Window

Trang 3

Netmask

Default Gateway

Primary Namesever

Secondary Nameserver

NFS Server (optional)

FTP Server (optional)

Chuẩn bị các đĩa mềm cài đặt.

Bớc tiếp theo bạn sẽ tạo đĩa boot và đĩa phụ trợ Lấy 2 đĩa mềm, tạo nhãn là Boot

và Supp Các đĩa này sẽ đợc tạo abừng chơng trình rawrite, một tiện ích chạy dới DOS,

đợc để trong th mục \DOSUTILS trên đĩa CD-ROM

Để tạo đĩa Boot:

rawrite

Enter disk image source file name:D:\images\boot.img

Enter taget diskette drive: a:

<-Please insert a formatted diskette into drive A: and press Enter

Để tạo đĩa Supp:

rawrite

Enter disk image source file name: D:\images\supp.img

Enter taget diskette drive: a:

<-Please insert a formatted diskette into drive A: and press Enter

Chuẩn bị ổ cứng.

Vì bạn đang tìm cách cài Linux lên ổ cứng nên bạn phải bảo đảm rằng ổ cứng còn

đủ dung lợng trống cần thiết Nếu bạn đã có ổ cứng phụ hoặc ổ cứng của bạn đã đợc phân vùng cho Linux thì bạn có thể bắt đầu ngay phần cài đặt Trái lại bạn cần tạo khoảng không gian cần thiết cho việc cài đặt trên ổ cứng cũ bằng cách sử dụng chơng trình fibs.exe có trên đĩa CD.

Các phân vùng và hệ thống file.

Nh đã nói ở trớc, Linux phải đợc cài đặt trên phân vùng riêng của nó Các ổ cứng phải đợc phân vùng trớc khi sử dụng sử dụng Việc phân vùng ổ cứng cho phép bạn chia

ổ cứng của bạn thành nhiều phần, mỗi phần đợc sử dụng với các mục đích khác nhau.Các hệ điều hành ghi thông tin lên các phân vùng của mình theo những cách khác nhau Cách thức mà hệ điều hành ghi thông tin lên đĩa đợc hiểu là hệ thống file.

Các phân vùng (partition).

Có 2 dạng phân vùng là vùng chính (primary) và vùng mở rộng (extended) Vùng

mở rộng có thể đợc chia thành các ổ logic Một đĩa cứng có thể chứa cả 2 loại partition

Nó có thể chứa đồng thời 4 phân vùng chính

Hình 1.1 Ví dụ về các phân vùng ổ cứng.

Các hệ thống file.

Các phân vùng có ý nghĩa: “ hãy ghi file vào vùng này” Ngợc lại, các hệ thống file có ý nghĩa: “ hãy ghi file theo dạng này” Hệ điều hành DOS sử dụng hệ thống file gọi là FAT16, trong khi đó Window95 dùng FAT32, … Đối với Linux thì dùng 2 hệ thống file là EXT2 và SWAP

Tạo không gian đĩa

Đối với phiên bản Linux kèm theo CD-Rom, bạn cần ít nhất 60 MB ổ cứng (trong

lý thuyết) Bình thờng nên có 250 MB, còn muốn cài đầy đủ, bạn cần dung lợng đĩa trống là 600MB Trong phần này hớng dẫn bạn tạo phân vùng cho Linux từ ổ cứng 1GB

Trang 4

Trong ví dụ này ta sẽ bắt đầu với một vùng chiếm cylinder từ 1 đến 1024 Mục tiêu

là giảm kích thớc vùng này xuống còn một nửa, sau đó tạo vùng mở rộng với không gian

đĩa còn lại Sau khi phân vùng sẽ không bị mất dữ liệu

Fibs là tiện ích phân vùng kèm theo đĩa CD Trớc tiên phải đọc các hớng dẫn đikèm trong th mục \DOSUTILS Nó cung cấp chi tiết các câu lệnh và các câu hỏi bạn th-ờng gặp Tiếp theo sao lu dữ liệu trên máy tính của bạn Sau đó copy fibs.exe vào đĩamềm khởi động và tiến hành phân vùng

Fibs làm việc theo cách phân phối lại không gian đĩa còn trống ở cuối đĩa cứng, do

đó phải tiến hành dồn dữ liệu trên ổ cứng trớc khi phân vùng (Dùng NU hoặc Win95defragment)

Sau khi phân vùng, hãy khởi động lại máy tính của bạn Nếu mọi việc tiến triểnbình thờng thì bạn đã thành công trong việc phân vùng ổ cứng mà không làm ảnh hởngtới hệ điều hành cũ của bạn

Trang 5

Chơng 2 Cài đặt Linux

Trong chơng 1 ta đã học cách chuẩn bị hệ thống cho việc cài đặt Trớc khi cài đặt

ta hãy làm quen với một số khái niệm mới

Giao diện cài đặt.

Giao diện cài đặt là giao diện kiểu văn bản Chuột không đợc sử dụng trong qúatrình cài đặt Tuy nhiên có nhiều phím tắt cho phép ;lựa chọn các mục để cài đặt

Để di chuyển vệt sáng, ta dùng các phím muĩ tên, phím Tab hay Alt-tab Để lựachọn một mục ta dùng phím Space-Bar hoặc Enter…

F12 (Shift-F12) là phím đặc biệt cho phép chọn các giá trị trên màn hình vàchuyển đến màn hình tiếp theo

Quá trình cài đặt bao gồm rất nhiều các thông tin cho ngời sử dụng lựa chọn, điều

đó xảy ra liên tục trong các phần khác nhau Để tránh làm lộn xộn màn hình chính vớicác dữ liệu đặc biệt, ta sử dụng một thuận lợi của Linux là các màn hình ảo thông quaphím tắt (Bảng dới)

Bảng 2.2 Các phím tắt của màn hình ảo

Phím tắt Chức năng

Alt-F1 Hộp thoại chính của cài đặt

Alt-F2 Khi đã phát hiện ra đĩa CD-Rom, bạn sẽ có một dấu nhắc

shell cho phép thực hiện các lệnh của LinuxAlt-F3 Thoát khỏi chơng trình cài đặt

Alt-F4 Ra khỏi hạt nhân và vào hệ điều hành khác

Alt-F5 Thông báo từ đĩa đang format và các chơng trình khác

Tốt hơn hết là không nên sử dụng các phím này trừ khi bạn là ngời tò mò hoặc cónhiều kinh nghiệm dùng Linux

Bắt đầu cài đặt

Để bắt đầu cài đặt, hãy cho đĩa Boot vào ổ mềm và khởi động lại máy Máy tính

sẽ khởi động bình thờng cho đến khi gặp dấu nhắc boot:

Màn hình khởi tạo chứa toàn bộ các thông tin cần thiết cho quá trình cài đặt Nócũng cho phép truy cập tới các thông tin trợ giúp phục vụ cho cài đặt Để làm điều đó,hãy dùng các phím tắt nh bảng dới đây:

Bảng 2.2 Các phím chức năng.

F1 Main screen Màn hình bạn thấy khi bắt đầu

F2 General Cài đặt bình thờng

F3 Expert Cài đặt trong chế độ chuyên gia, bạn phải tự xác

Trang 6

định lấy cấu hình phần cứngF4 Rescue Cho phép khôi phục hệ thống đang bị lỗi Khi đó

bạn cần thêm đĩa SuppF5 Kickstart Là chế độ cho phép định trớc cấu hình cho file văn

bản Mode này không thuộc phạm vi hớng dẫn củacuốn sách này

F6 Kernel Cho phép bạn vào hạt nhân khi đang cài đặt

Bây giờ hãy chọn một mục bất kỳ để tiến hành cài đặt Nếu bạn không chọn thìquá trình cài đặt sẽ tự động bắt đầu sau một phút

Hỗ trợ PCMCIA

Tiếp theo, trình cài đặt sẽ tìm các bộ điều khiển PCMCIA trên máy tính Nếu nótìm đợc một mạch PCMCIA trên máy, nó sẽ yêu cầu đa đĩa mềm có chứa trình điềukhiển vào Nếu không tìm thấy, trình cài đặt sẽ tự động lờ đi và chuyển sang bớc tiếptheo

\RedHat vào ổ cứng tại phân vùng FAT16 Phơngpháp này cần có đĩa mềm phụ trợ

NFS Cài đặt Linux từ NFS Server

FTP Cài đặt Linux từ FTP Server

Cài đặt Linux từ đĩa CD-Rom

Trang 7

Khi chọn phơng pháp cài đặt từ CD, sau khi cho đĩa CD vào, trình cài đặt sẽ tự

động nhận biết ổ CD nếu nó là loại IDE Nếu không nó sẽ hỏi bạn loại ổ CD, có 2 loạisau:

• SCSI Nếu chọn ổ CD là loại SCSI, Linux sẽ tìm trình điều khiển cho

CD tơng ứng Nếu không tìm đợc, nó sẽ liệt kê một danh sách cácSCSI adapter để bạn chọn lựa Bạn có thể để cho Linux tự độnggán cấu hình cho ổ CD hoặc làm bằng tay Tuy nhiên trong đa sốtrờng hợp bạn không phải làm gì cả

• Other Đây là trờng hợp ổ CD không phải là IDE hay SCSI, khi đó trình

cài đặt sẽ liệt kê danh sách các loại ổ CD để bạn lựa chọn

Khi ổ CD đã đợc nhận biết, Linux sẽ cố gắng thiết lập (mount) đĩa CD Red Hat càchuyển áng bớc tiếp theo

Bớc thứ hai

Công việc phải làm trong bớc này là phân vùng ổ cứng và lựa chọn các phần Linux

mà bạn muốn cài đặt

Chọn Install hay Upgrade

Trong cửa sổ chọn lựa tiếp theo, bạn sẽ chọn cài đặt mới hay nâng cấp Linux

Hình 2.4 Chọn Install hay Upgrade

Hỗ trợ SCSI

Tiếp theo, chơng trình sẽ tìm cách phát hiện và cài đặt các SCSI adapter Đầu tiên

nó sẽ hỏi bạn có các thiết bị SCSI hay không, nếu chọn Yes sẽ có một hộp thoại để bạnchọn các SCSI adapter, sau đó nó sẽ hỏi nếu bạn muốn trình cài đặt tự động đặt cấu hìnhcho thiết bị Trong mọi trờng hợp nên chọn Yes

Phân vùng ổ cứng

Trớc khi tiến hành phân vùng, bạn phải hiểu cách thức Linux tham chiếu đến cácphân vùng nh thế nào Trong môi trờng DOS/WIN, các phân vùng khác nhau đợc gáncho các ký tự khác nhau (ví dụ C: D: ) Đối với Linux thì nó không sử dụng các ký tự ổ

đĩa mà các phân vùng chỉ có ý nghĩa nh là các th mục mà thôi Khi đó các phân vùng

C, D ở trên xuất hiện đối với ngời dùng nh là các th mục / hay /data

Màn hình tiếp theo cho phép lựa chọn các tiện ích phân vùng, hãy chọn DiskDruid

Disk Druid là một chơng trình quản lý đĩa kiểu GUI-based Nó cho phép tạo mới

và xoá các phân vùng, đồng thời tạo các mount points cho các vùng đó Fdisk cũng là

chơng trình gần giống Disk Druid nhng linh hoạt hơn song giao diện không thân thiệnvới ngời sử dụng

Bạn cần ít nhất 2 phân vùng cho Linux, một cho mount point gốc / và một choLinux swap Vùng hoán đổi nên có kích thớc gấp đôi kích thớc RAM của máy Nếu kíchthớc RAM lớn hơn 32M thì có thể đặt kích thớc linux swap bằng với kích thớc củaram

Giao diện của Disk Druid

Màn hình Disk Druid, chứa rất nhiều thông tin về ổ cứng của bạn

Trang 8

• Mount point Tên th mục mà phân vùng đợc gán dới Linux Nếu không đặt gìvào phần này đồng nghĩa với phân vùng sẽ không đợc thiết lập (mount) dớiLinux.

• Device Tên ổ cứng của phân vùng

• Request Dung lợng tối thiểu yêu cầu khi xác lập phân vùng

• Actual Dung lợng hiện tại đợcc gán cho phân vùng

• Type Kiểu của phân vùng có thể là DOS, NTFS, Linux native, Linuxswap…

Thông tin về ổ đĩa cứng

• Drive Tên của thiết bị (ổ cứng) Các ổ IDE sử dụng tên là hdX, trong đó

X là ký tự đợc gán cho ổ cứng Các ổ SCSI đợc gán nhãn lần lợt là sda, sdb…

• Geom[C/H/S] Cấu trúc của ổ cứng bao gồm số cylinder, head và sector.Nếu thông tin này không phù hợp với thông tin của BIOS thì bạn nên dùngFdisk thay cho Disk Druid

Các lệnh của Disk Druid

Đây là các nút lệnh cho phép thực hiện các thao tác thêm, xoá, thay đổi, tạo lại

để có thể bắt đầu cài đặt

Hình 2.7 Mục F1-Add: Thêm một phân vùng

Bảng 2.4 Giải thích menu F1- Add

Mount point Nhập mount point của phân vùng Vì toàn bộ dung

l-ợng phân vùng cần đợc xem nh là các th mục concủa / nên cần tạo một mount point gốc là /

Size(Megs) Dung lợng yêu cầu tối thiểu của phân vùng Trừ phi

có thay đổi, kích thớc bé nhất phải là 1 MBGrowable? Hộp chọn cho biết dung lợng yêu cầu là tối thiểu hay

chính xác Nếu Growable đợc chọn thì kích thớc đĩa

đợc cung cấp sao cho tận dụng hết dung lợng còntrống

Type Chọn kiểu cho phân vùng

Allowable Drive Chỉ ra ổ cứng để tạo phân vùng

Mục F2-Add NFS cho phép tạo một phân vùng từ mạng Vấn đề này không thuộcphạm vi phần này

Mục F3-Edit đợc sử dụng để thay đổi thuộc tính của vùng đã tồn tại

Mục F4-Delete để xoá một phân vùng đang chọn

Trang 9

Mục F5-Reset Khôi phục trạng thái của Disk Druid, tức là làm mất tác dụng cácthay đổi mà bạn vừa mới làm.

Mục OK sẽ ghi các thay đổi mà bạn vừa thực hiện lên đĩa cứng

Mục Cancel sẽ thoát khỏi Disk Druid mà không ghi lại bất kỳ sự thay đổi nào

Làm việc với Disk Druid

Hãy lấy tài liệu ghi kế hoạch của bạn để xác định đợc vùng nào cần xoá, vùng nàocần giữ lại Chọn Mục cần xoá và bấm F4 để xoá

Bấm F1 để làm việc với menu Add Hãy tạo 2 phân vùng mới và gán cho chúngkiểu linux native và linux swap Đối với linux native thì gán mount point là /

Chọn OK để ghi lại các thay đổi và chuyển đến bớc tiếp theo

Kích hoạt vùng hoán đổi

Sau khi tạo ra các phân vùng, trình cài đặt sẽ tìm kiếm các vùng swap trên ổ cứng.Nếu không có nó sẽ cảnh báo bạn và bạn phải làm lại Nếu phát hiện đợc nhiều hơn mộtvùng thì nó sẽ hiển thị hộp thoại để bạn chọn một vùng duy nhất Chọn kiểm tra badblock khi format nếu muốn.Sau khi đã sãn sàng, chọn OK

Hình 2.8 Nên chọn Check for bad block

Format các phân vùng

Sau khi đã lựa chọn các phân vùng, việc tiếp theo là format chúng.Bạn cần formatbất kỳ vùng nào mới tạo ra, hoặc vùng cũ nhng không muốn giữ lại dữ liệu Chọn kiểmtra bad block nếu muốn

Lựa chọn các thành phần để cài đặt.

Tiếp theo là màn hình để lựa chọn các gói để cài đặt Mỗi một thành phần cài đặttơng ứng với nhiều gói khác nhau Chẳng hạn X Window System bao gồm các gói đểthực hiện các chức năng X nh server, các th viện, quản lý cửa sổ,…) Hãy thêm góiXgames để cài đặt một số trò chơi dới Xwindow

Nếu muốn cài đặt dới 50MB thì phải huỷ các lựa chọn của tất cả các gói đã tự

động lựa chọn

Hình 2.9 Hộp thoại cho phép lựa chọn các gói để cài đặt.

Đối với những ngời muốn xem và chọn chi tiết tất cả các gói tin, hãy chọn mục

Select individual packages Tuy nhiên để đảm bảo các gói tin trong cùng một thành phần

đợc lựa chọn thì chơng trình sẽ hỏi lại các gói tin để đợc cài đặt hay huỷ bỏ

Hình 2.10 Chọn lựa các gói riêng biệt.

Cuối cùng trong chế độ này, bạn có thể có thêm nhiều thông tin về nội dung cácgói và mục đích của các gói bằng cách bấm phím F1 Chọn OK để sang mục tiếp theo

Trang 10

Đặt cấu hình cho Xwindow

Cửa sổ tiếp theo sẽ hỏi bạn về Xwindow server mà bạn muốn sử dụng Cấu hìnhXwindow sẽ đợc mô tả kỹ trong chơng 3 nhng trong phần này sẽ xem qua cách đặtnhanh cấu hình cho Xwindow để kết thúc cài đặt

Trớc tiên hãy lựa chọn card màn hình Điều chú ý ở đây là card màn hình cũnggiông nh những chiếc xe ôtô vậy, mặc dù nhãn hiệu giống nhau nhng cấu tạo bên trongrất khác nhau Nếu không thể chọn đợc card màn hình giống nh trên máy của bạn thìhãy chọn Generic card Sau khi chọn xong thì Xwindow thích hợp sẽ đợc cài đặt trênmáy của bạn

Tiếp theo phải lựa chọn loại màn hình thích hợp Nếu không thể chọn đợc loại nàocả thì cần phải chọn mục custom và đặt các thông số thích hợp cho màn hình mà bạn đãghi lại từ trớc

Đặt cấu hình cho mạng.

Nếu muốn đặt máy tính trong mạng cục bộ và muốn cài đặt cấu hình cho mạngngay bây giờ thì hãy chọn nút Yes Ngợc lại chọn No, bạn vẫn có thể thiết lập cấu hìnhcho mạng sau khi đã cài đặt xong

Nếu chọn Yes, bạn sẽ đợc hỏi về loại card mạng Hãy chọn nó trong danh sách màmáy tính liệt kê ra cho bạn Sau khi chọn xong bạn sẽ đợc hỏi nnếu muốn hỗ trợ các tuỳchọn cho card hay không Nếu chọn có, trình cài đặt sẽ hỏi các thông số nh địa chỉ IO,

số hiệu ngắt, …

Sau khi tìm đợc card mạng, màn hình tiếp theo sẽ có các lựa chọn để bạn thiết lậpmạng Nếu trong mạng có server đang chạy bootp là chơng trình thiết lập địa chỉ IP vàcác dữ liệu liên quan cho máy tính, hãy chọn mục configure device with bootp và chọn

OK Trái lại, phải nhập các thông số mạng mà bạn nhận đợc từ ngời quản trị mạng

Bạn có thể chạy lại tiện ích này từ dấu nhắc của Linux bằng cách gõ ntsysv Do đó

nếu cha hiểu kỹ về các deamon này, bạn có thể để lại sau

Hình 2.12 Trừ phi bạn biết các chức năng của các deamon, hãy để nguyên nh mặc định.

Chọn máy in.

Nếu chọn Yes khi đợc hỏi về máy in, bạn sẽ có 3 lựa chọn sau:

• Local Máy in nối trực tiếp với máy tính

• Remote lpd Máy in nối với mạng LAN có thể kết nối đợc nhờ lpd

• LAN manager Máy in mạng đợc điều khiển qua ngời quản lý mạng LAN.Nếu chọn Local, bạn sẽ đợc hỏi về hàng đợi in và th mục spool (nên để mặc định.Tiếp theo chơng trình sẽ xác định loại máy in và loại cổng mà nó đang nối vào và đềnghị bạn xác nhận

Chọn remote lpd, chơng trình sẽ hỏi bạn về tên máy in mạng và tên hàng đợi intrên máy này

Chọn LAN manager sẽ xuất hiện hộp thoại cho phép thiết lập các mục smbfs

Trang 11

Phần đầu là LAN manager hostname, sau đó là địa chỉ IP tơng ứng Tiếp đến là tênShare của máy in và cuối cùng là tên User cùng với password để truy cập vào máy in.

Để hoàn thành cài đặt máy in,trình cài đặt sẽ hỏi về loại máy in mà bạn có Hãychọn loại máy in tơng ứng với máy của bạn, nếu không tìm thấy hãy chọn text-only printer Tiếp theo chọn kích cỡ giấy thích hợp nếu máy tính có nhiều kích cỡ Cuối cùng

chọn mục stair stepping nếu máyinkhông gửi carriage return ở cuối mỗi hàng in.

Màn hình tiếp theo đa ra các thông số bạn đã chọn cho máy in của bạn Nếu đồng

ý, hãy chọn Done Trái lại chọn Edit để đặt lại các thông số này

Đặt mật khẩu

Tiếp theo chơng trình sẽ hỏi về mật khẩu của root Mật khẩu này đợc dùng nh mậtkhẩu của ngời quản trị hệ thống Nhờ đó bạn có thể thiết lập các tài khoản khác và thiếtlập các tuỳ chọn của hệ thống trớc khi đa hệ thống vào hoạt động

Nên chọn password từ 6 ký tự trở lên Password phải khó đoán và nên là tổ hợpcủa các từ đầu câu hoặc của số và ký tự Nên nhớ root là ngời có toàn bộ các quyền đốivới hệ thống nên bạn phải giữ gìn cho cẩn thận để đảm bảo an toàn

Hình 2.13 Đặt mật khẩu

Chọn Boot Option.

Phần này để thiết lập làm thế nào để bạn khởi động Linux sau khi cài đặt Hình2.14 cho phép chọn lựa cấu hình LILO boot

Hình 2.14 Chọn nơi cài LILO

• Master Boot Record Thay đổi Master Boot Record của hệ thống cũ và thayvào đó là dấu nhắc của LILO khi khởi động Đây là trờng hợp khá phổ biến

• Fisrt sector of the boot partition Đợc sử dụng trong trờng hợp đã có một bootloader trên máy tính ( OS/2, NT, Partition Magic, System Comander…) Nhữngboot loader này đã có trên Master Boot Record và bạn không muốn thay thế

nó Với LILO đợc cài đặt trên root partition, bạn có thể đặt cấu hình cho LILO

để có thể khởi động đồng thời các hệ điều hành

Bạn có thể bỏ qua việc cài đặt LILO trên ổ cứng trong trờng hợp bạn chọn khởi

động Linux từ ổ mềm hay sử dụng chơng trình LOADIN Hãy chọn phơng pháp bạnmuốn hoặc chọn OK hay Skip

Sau khi đã chọn xong và LILO đã đợc cài trên ổ cứng sẽ có màn hình xác nhận.Nếu không có màn hình này thì việc cài LILO đã bị lỗi và bạn hãy ấn Alt-F3 hay Alt-F4

để kiểm tra lỗi Trong trờng hợp này, bạn cần chọn phơng pháp khác để khởi động hệthống

dos linux

LILO:

Sau khi hệ thống khởi động, bạn sẽ thấy dấu nhắc sau để login:

Red Hat Linux release 5.0

Kernel 2.0.32 on an i586

Login:

Bây giờ bạn đã sãn sàng để làm việc với hệ điều hành Linux Muốn vậy hãy gõ tên

Trang 12

login là root, sau đó gõ mật khẩu theo yêu cầu, bạn nhận đợc dấu nhắc sau chứng tỏ đã

thành công trong việc login vào Linux:

localhost@root/root _

Trang 13

Chơng 3

Đặt cấu hình cho hệ thống XWindow

Trong phần này sẽ tiến hành các công việc để thiết lập cấu hình cho hệ thống X11

Đây là giao diện đồ hoạ mà Linux cũng nh các hệ Unix khác đang sử dụng Nó tơng tự

nh giao diện đồ hoạ của môi trờng Window, OS/2 hay Macintosh

Một điểm khác biệt giữa X11 window và các môi trờng khác là nó đợc thiết kếthành một chơng trình client/server mạng độc lập với hệ điều hành máy Kết quả là đợcchia làm 2 phần chính là: X11 window server chạy trên máy và tơng tác trực tiếp vớimàn hình và card màn hình, các trình clients xung quanh server Các trình client có thể

là các đầu cuối terminal emulator xterm– hay các chơng trình quản lý cửa sổ nh X11 window manager.

Phần này sẽ bắt đầu với việc thiết lập cấu hình Xwindow đã bỏ qua trong phần cài

đặt và cuối cùng là sử dụng chơng trình quản lý cửa sổ mặc định của Linux Để làm tốtphần này bạn cần các tài liệu đầy đủ về màn hình của bạn

Kiểm tra các file đã cài đặt

Chơng trình Xwindow server mà hầu hết các nhà cung cấp Linux sử dụng đều đợccung cấp bởi dự án XFree86 Các chơng trình server khác đợc cung cấp mang tính chấtthơng mại sẽ đợc bàn đến sau

Đầu tiên hãy bảo đảm rằng các file cần thiết cho X11 đă đợc cài đặt Để làm điều

đó hãy sử dụng câu lệnh sau:

Trang 14

rpm –ivh XFree86-YY

Trong đó YY là tên server name của màn hình tơng ứng đợc Linux hỗ trợ:

Bảng 3.1 Danh sách X server với Red Hat 5.0

Server Loại card màn hình tơng ứng

Mono Màn hình đen trắng

VGA16 16 mầu, VGA mode Hỗ trợ 256KB memory

SVGA Trident, Cirrus Logic, Chip and Technology, ET4000,

S3V,

Mach8 ATI board với Mach8 chipset

Mach32 ATI board với Mach32 chipset

Mach64 ATI board với Mach64 chipset

8514 IBM 8514/A board và true color

S3 #9 board, Diamond,

S3V S3 Virge board, hỗ trợ trong SVGA

AGX Các loại XGA graphic board

P9000 Diamond Viper ( không phải 9100)

W32 ET 4000/W32 nhng không phải là ET 4000s

Sử dụng Xconfiguration để đặt cấu hình cho Xwindow

Hãy thực hiện lệnh Xconfiguration tại dấu nhắc của Linux ấn Enter để chơng

trình thực việc dò tìm card màn hình Nếu tìm thấy, nó sẽ chỉ ra loại card nào và loạiserver nào cần dùng tơng ứng Hãy chú ý vì nếu ạn chọn sai bạn sẽ đợc yêu cầu làm lạingay Hình 3.1 là một ví dụ về việc dò tìm thành công Nếu không htể tìm đợc,chơngtrình sẽ liệt kê một danh sách các loại card để bạn lựa chọn

Hình 3.1 Thông tin về card màn hình.

Nếu không thể tìm thấy loại card tơng ứng trong danh sách các loại server thì bạnphải chạy chơng trình SuperProbe Chơng trình này cho phép tìm ra trực tiếp loại card,dung lợng bộ nhớ và RAMDAC của card màn hình

Nếu vẫn không tìm thấy thì bạn nên chọn loại VGA 16 màu hay mono color Đây

là trờng hợp khả dĩ nhất Khi dò tìm card, bạn phải chú ý là các nhà sản xuất thờng sửdụng cùng một tên cho nhiều loại card mặc dù cấu tạo của chúng rất khác nhau Do đótrong nhiều trờng hợp bạn nghĩ rằng mình đã chọn đúng song khi chạy X server vẫn bịlỗi, khi đó cần cài lại Xserver

Chọn lựa màn hình

Sau khi đã chọn loại card màn hình, bạn sẽ đợc hỏi để setup màn hình Hãy chọn

nó trong danh sách đợc Linux liệt kê Nếu không nhớ chính xác bạn có thể chọn loại nàogần với nó cũng đợc Nếu không tìm thấy bạn cần chọn loại Generic Monitor haycustom setting

Cấu hình cho custom monitor

Nếu chọn custom monitor, bạn sẽ đợc hỏi về các chỉ số quét ngang và quét dọc củamàn hình Hãy sử dụng tài liệu đi kèm theo của màn hình bạn sẽ tìm thấy các thông số

đó Nếu không tìm thấy thì có thể sử dụng loại màn hình Standard SVGA

Cấu hình cho PCI card.

Màn hình tiếp theo tuỳ thuộc vào việc có phát hiện ra PCI video card hay không.Nếu có thì trình cài đặt sẽ dò tìm các thiết lập và các chỉ số thích hợp cho nó Nếu

Trang 15

không thì nó sẽ chon phép bạn chọn việc có muốn probe hay không Lý do của sự lựachọn này là một số card ISA cũ không cho phép tự dò tìm và việc đó có thể làm treo hệthống.

Việc chọn chế độ probe có thể làm cho màn hình nháy vài lần do nó phải tìm các

độ phân giải có thể của màn hình Nếu có nhiều độ phân giải và số bits màu thì bạn cóthể để mặc định hoặc chọn theo ý bạn

Bạn nên chọn độ phân giải 640x480 Số bits mầu 2/4/6/8/16/24 cho biết số màu

mà màn hình có thể hiện cùng một lúc 4 bits là màn hình 16 màu, 24 bits cho phép hiểnthị tới vài triệu màu Nếu dung lợng bộ nhớ màn hình càng lớn thì khả năng về độphân giải và kích cỡ màn hình càng lớn Sau khi chọn xong và ấn OK thì file

/etc/X11/X86config sẽ đợc ghi lên máy của bạn

Nếu không muốn probe thì bạn phải tự cung cấp các thông số nh bộ nhớ màn hình,

độ làm tơi, Các thông số này có thể nhận đợc từ chơng trình SuperProbe Sau cùng làmàn hình hỏi bạn về độ phân giải bạn muốn sử dụng cho X11 (nên chọn 680x480 haytuỳ thích) Chọn OK và file /etc/X11/X86config sẽ đợc ghi lên đĩa

Hình 3.3 Chọn chế độ cho màn hình

Kiểm tra các thiết lập của Xwindow

Sau khi đã thiết lập xong cấu hình cho Xwindow, bạn hãy gõ startx tại dấu nhắc đểkiểm tra lại hệ thống đã cài đặt Lệnh này sẽ thực hiện Xserver, đồng thời chạy cácclient cần thiết

Bạn sẽ nhìn thấy màn hình màu xám (mặc định của Xs) sau đó đến màn hình màuxanh và thanh start bar ở đáy màn hình Nếu không nhìn thấy thì có thể thanh này bị ẩn

ở dới đáy màn hình Lý do là Linux cho phép mô phỏng màn hình ảo mà kích thớc của

nó rộng hơn màn hình vật lý Do đó hãy kéo chuột về đáy màn hình và bạn sẽ nhìn thấythanh start bar

Các vấn đề thờng gặp và các cách giải quyết

Phần này điểm qua một số lỗi thờng gặp khi chạy Xwindow và cách khắc phục

Màn hình luôn bị đen

Chờ khoảng 30 – 60 s do các máy 486/66 thờng mất một khoảng thời gian đểkhởi động Một số card màn hình không hoạt động tốt trong Linux Hãy ấn Ctrl-Alt-Backspace và khởi động lại Xconfigurator

Màn hình luôn đen và máy tính không có tín hiệu

Đây là trờng hợp tồi tệ nhất Bạn cần ấn Ctrl–Alt-Del để khởi động lại máy vàchờ cho máy chạy chơng trình fsck để dọn dẹp ổ cứng ( giống nh scandisk trongwindow) Chơng trình này đợc chạy một cách tự động

Kích cỡ màn hình ảo quá rộng.

Có thể X server tự động chuyển sang chế độ 320x200 thay vì 640x480 Hiện tợngnày xảy ra khi server không detect đúng card màn hình Hãy thoát khỏi Xwindow bằngcltr-alt-backspace hoặc bằng menu start Kiểm tra file startx.out bằng lệnh lessstartx.out để phát hiện ra lỗi Trong một số trờng hợp cần chọn lại RAMDAC hoặc cáctuỳ chọn khác của card màn hình

Chuột không chạy hoặc hoạt động bất thờng

Chuột hoạt động không đúng có thể do nhiều lý do Trớc hết file mouseconfig cóthể bị sai phần section pointer Hãy chạy lại chơng trình mouseconfig hoặc sửa đổi trựctiếp file /etc/X11/XF86config Phần cấu hình chuột thờng nh sau:

Trang 16

chuột đang nối vào Các thông tin chi tiết về các loại chuột đợc hỗ trợ bởi Linux có thể

đợc tìm thấy bằng cách gõ lệnh man xf86config

Một lý do khác cũng hay gặp là chuột yêu cầu các khởi tạo đặc biệt hoặc có xung

đột với các chơng trình khác ( thờng là gpm, một chơng trình điều khiển chuột dạngtext Trong trờng hợp có xung đột, bạn nên tìm cách tắt chơng trình gpm

(/etc/rc.d/init.d/gpm stop ) và tìm cách khởi động lại Xwindow Nếu vấn đề

đ-ợc giải quyết thì bạn thấy rằng cần phải vô hiệu hoá hoàn toàn gpm Hãy chạy ntsysv

và tắt hộp chọn gpm

Đối với chuột cần có các cấu hình đặc biệt thì vấn đề có thể đợcgiải quyết bằngcách xem chuột nh là một modem và dùng một chơng trình nối tiếp để bật nó lên trongtrờng hợp này việc thay đổi chuột sẽ trở nên dễ dàng hơn

Để hệ thống luôn khởi động với Xwindow

Để hệ thống luôn khởi động với Xwindow khi khởi động mà không cần gõ startx,bạn cần sửa đổi nội dung file /etc/inittab. Đây là file đợc sử dụng bởi chơng trìnhinit để khởi tạo các ứng dụng

Aaaaaaaaaaaaaaaaaaaa##################

Mức mặc định của Linux là 3 Hãy chuyển sang 5 và bạn sẽ thấy khi khởi độngmáy tính sẽ vào Xwindow ngay bằnh chơng trình xdm.

Trang 17

Phần II Cơ bản về Linux

Chơng 1: Các lệnh đọc và duyệt

Trong phần này bạn sẽ học các lệnh di chuyển, tìm kiếm, đọc file và th mục trên

hệ thống Linux của bạn Sau khi làm việc với phần cứng bạn nên biết làm thế nào để

đ-ợc giúp đỡ trong Linux, biết xem bạn đang ở đâu và làm thế nào để tìm kiếm file trên ổcứng của bạn

Dùng lệnh man để xem giúp đỡ.

Trong Linux cũng nh hầu hết các cài đặt của Unix, các lệnh, các ứng dụng và cáclệnh lập trình đều có tài liệu giúp đỡ kèm theo Để thực hiện xem giúp đỡ ta gõ lệnhman

Các tài liệu giúp đỡ thờng là tài liệu liền một trang, có thể dới dạng trực tuyến và

đợc để trong th mục /usr/mancác file của mỗi tài liệu là file có đuôi là một chữ số

Ví dụ tài liệu cho lệnh man đợc để trong file /usr/man/man1/man.1

Để xem định dạng và vị trí của các tài liệu man thì bạn hãy xem trong file

/usr/man/man7 Bảng 4.1 cho ta biết ý nghĩa của mỗi phần man

Bảng 4.1 Tài liệu giúp đỡ của Linux

/usr/man/man1 Các lệnh shell

/usr/man/man2 Lời gọi hệ thống: các hàm của hạt nhân

/usr/man/man3 Các hàm th viện

/usr/man/man4 Các file đặc biệt: thông tin về file trong /dev

/usr/man/man5 Định dạng của file: chi tiết về file /etc/passwd và

/usr/man/man9 Các tệp thi hành của hạt nhân

Mỗi một trang đợc chia làm nhiều đoạn, sau đây là một số phần thờng gặp:

Bảng 4.2 Tổ chức của tài liệu giúp đỡ

Tên đoạn Mô tả

NAME Tên lệnh và mô tả ngắn

SYNOPIS Cách sử dụng lệnh và các tham số

DESCRIPTION Giải thích lệnh và các tham số

FILES Danh sách các file và vị trí của nó đợc sử dụng bởi

Trang 18

lệnh SEE ALSO Các tài liệu có liên quan

DIAGNOSTIC Mô tả các đầu ra bất bình thờng

BUGS Các vấn đề đợc biết đến

AUTHOR Tác giả chơng trình và các nhà cung cấp

Các tài liệu giúp đỡ trực tuyến có chứa các mã đặc biệt cho chơng trình định dạngvăn bản text nroff ( Phần xử lý tài liệu), xử dụng các macro đặc biệt (nh tài liệu trongman.7) Định dạng này có ý nghĩa quan trọng cho các chơng trình khác nh

makewhatis, whatis, apropos mà bạn sẽ đợc học trong chơng này

Bạn có thể tìm thấy các tài liệu khác về Linux trong th mục /usr/doc , trong đó

có chứa các câu hỏi thờng gặp (FAQ), HOWTO, các tài liệu về quỹ phần mềm miễn phí(FSF), GNU,…Các dạng tài liệu này thờng để dới dạng html

Lệnh man thờng tìm kiếm trong tài liệu tơng ứng với lệnh trong file

/etc/man.config Các dòng lệnh này xác định th mục mặc định để tìm kiếm và chúngtơng ứng với giá trị của biến môi trờng $MANPATH Các giá trị mặc định để tìm kiếmcác trang này là:

Chú ý rằng nếu bạn muốn dùng man để xem giúp đỡ về cd thì không thể đợc vì cd

là lệnh của riêng shell Để biết thêm chi tiết hãy xem phần giới thiệu về bash

Trang 19

hiện tại:

#pwd –help

Lệnh find

Đây là tiện ích khá hiệu quả cho việc tìm kiếm file và th mục trên hệ thống file Ví

dụ để tìm lệnh spell trong th mục /usr

#find /usr -name spell -printf

Bạn có thể đa thêm các tham số về thời gian cho find, ví dụ tìm các file cha đợc sửdụng trong vòng 100 ngày:

Hoặc tìm các file sinh ra trớc đó một ngày

#find /usr/bin -type f –atime +100 –printf

#find /usr/bin -type f –mtime -1 –printf

Ngoài ra bạn có thể sử dụng các ký tự thay thế, chẳng hạn để tìm các filePotscripts có đuôi là ps

#find /usr/ -name ‘*.ps’ –printf

Trong trờng hợp bạn muốn tìm kiếm từ th mục gốc / mà bạn lại không muốn tìmtrong các hệ thống file khác ( chẳng hạn CDROM, DOS partition…) bạn hãy sử dụngtham số -xdev để hạn chế không gian tìm kiếm

Để biết thêm chi tiết về các tham số của lệnh find, hãy dùng lệnh

Một cách đơn giản nhằm tăng tốc độ tìm kiếm file là không tìm trên các th mục

mà tìm kiếm trực tiếp trên cơ sở dữ liệu tìm kiếm file Locate là một chơng trình kiểu

sử dụng lệnh su- sẽ đợc bàn trong phần quản trị hệ thống)

#updatedb

Kết quả đợc để trong file /var/lib/locatedb Một bất cập khi sử dụng locate làlocatedb không đợc cập nhật thờng xuyên bạn có thể làm điều đó một cách tự động.Hãy xem các lệnh tham chiếu ở cuối chơng này

Trang 20

Lệnh whatis và apropos

Khi bạn mới làm việc với Linux, có rất nhiều các hàm, các chơng trình mà bạn chahiểu Có nhiều chơng trình cho phép bạn xem giúp đỡ đơn giản bằng cách thêm ? hay help

Lệnh whatis có khả năng cho bạn biết đợc chơng trình nào đó dùng để làm gì Vídụ

# apropos search

########################

Trên màn hình sẽ hiện lên các thông tin từ cơ sở dữ liệu của whatis Chơng trình

apropos sử dụng cơ sở dữ liệu này để tìm kiếm các thông tin liên quan đến các chơngtrình mà bạn cần tìm

Các lệnh đọc th mục và file

Lệnh ls

Lệnh ls (list directory) cho phép liệt kê các file trong hiển thị mục hiện thời Mặc

dù là lệnh đơn giản song nó có tới hơn 70 tham số dòng lệnh

Nếu bạn có màn hình mầu thì khi dùng tham số color , hoặc lệnh ls trong cửa

sổ rxvt trong X11, các th mục sẽ hiện mầu xanh và các các file hiện màu đen

Để thay đổi màu hiển thị, hãy sửa đổi file /etc/DIR_COLORS Để biết chi tiếthãy đọc kỹ file này Tuy nhiên bạn cần cất file ban đầu vào hiển th mục home của bạn

để đề phòng mọi bất trắc có thể

Khi bạn muốn biết nhiều thông tin hơn về file thì hãy dùng tham số -l

# ls -l

########################

Trang 21

Có tất cả 8 cột Cột thứ nhất là các quyền truy cập vào file trong đó ký tự đầu tiênchỉ dạng file (d - diretory, - - file, l - link, Tiếp theo là số liên kết của file hiện có.Sau đó là tên chủ sở hữu và nhóm sở hữu, cột tiếp là kích thớc file, ngày giờ tạo file vàcuối cùng là tên file.

Ngoài ra lệnh ls còn cho phép chỉ ra các file trong một hiển th mục nào đó

Một cách tiếp cận tốt hơn là dùng tham số -d để liệt kê mình th mục trên hệ thống

Ví dụ sau liệt kê các th mục ở mức 3

Lệnh cat (concatenate) cho phép hiển thị nội dung file bất kỳ ra màn hình và gửi

nó tới các file khác Bạn sẽ hiểu kỹ hơn về lệnh này khi học các luồng vào/ra chuẩn củaLinux Lệnh này thờng đợc dùng để đọc nội dung một file, hợp file, tạo mới hoặc nốifile

# cat test.txt

#################3

Nếu muốn hiển thị với dòng đợc đánh số

# cat -n test.txt

Trang 22

Hoặc hiển thị nhiều file một lúc

# cat -n test.txt test0.txt

Để tạo hợp nhiều file ta chỉ cần dùng ký tự định hớng >

# cat test* > test1.txt

Và hãy kiểm tra kết quả

# ls -l test*

###############

Trong trờng hợp này file test1.txt sẽ bị xóa nếu nó đã tồn tại Để nối nội dungtest,txt vào file này thì ta dùng ký tự >>

# cat test.txt >> test1.txt

Cuối cùng có một mẹo cho phép bạn tạo một file text ngắn bằng cách sau:

# cat > new.txt

Day la tieng noi Viet Nam

Phat thanh tu Ha Noi

Khi kết thúc ta gõ Ctrl-D để đóng file này Hãy xem lại kết quả

# ls -l new.txt

###############

# cat new.txt

Day la tieng noi Viet Nam

Phat thanh tu Ha Noi

• Có thể cuốn trang màn hình lên xuống bằng các phím con trỏ

• Có thể duyệt qua file bằng các điểm đánh dấu, số dòng hay phần trăm kích

th-ớc file

• Hỗ trợ tìm kiếm nâng cao, các chọn lựa kiểu dáng và chọn lựa qua nhiều file

• Các phím chức năng tơng thích với các trình soạn thảo văn bản thông dụng

• Lệnh less không tự động kết thúc khi hết file

• Các thông tin ở cuối màn hình thân thiện và dễ hiểu hơn

• Cho phép chọn lựa nhiều kiểu phím điều khiển bằng chơng trình lesskey.Bạn sẽ nhận thấy sau khi cài đặt Linux rằng less là chơng trình hiển thi văn bảnmặc định đợc sử dụng bởi nhiều chơng trình khác, chẳng nh chơng trình man, zless(xem nội dung file nén)

Trang 23

Thông thờng bạn dùng head để xem qua một số dòng đầu của một vài file nào đó,chẳng hạn bạn muốn xem dạng file của các file 'xm' trong th mục /usr/man/man1, bạn

# tail -12 /var/log/messages

##############3

Trang 24

Chơng 2: Các lệnh xử lý và tìm kiếm

Trong chơng này, các bạn sẽ học các lệnh về tạo, xoá, sao chép, di chuyển file và

th mục đồng thời sẽ học các lệnh tìm kiếm theo nội dung file và các lệnh nén, giải nénfile và th mục

Thao tác với file và th mục

Cũng nh các hệ điều hành khác, Linux cũng có các lệnh cho phép bạn thao tác vớifile và th mục nhằm tổ chức hệ thống file của bạn nh các lệnh tạo file, xoá file,tạo thmục

Mặc dù đã có giao diện đồ hoạ dới Linux, Xwindow, với các thao tác kéo thả rấttiện dụng song bạn cũng nên học qua các thao tác cơ bản này để hiểu đợc cách hoạt

động của các chơng trình, ngay cả khi bạn không sử dụng Linux trong chế độ màn hìnhvăn bản

Lệnh touch

Lệnh này cho phép tạo file một cách đơn giản, hơn nữa nó còn cho phép cập nhậtngày file bị thay đổi Lệnh touch là một phần trong những ứng dụng GNU, nó có vàitham số

-rw-rw-r 1 bball bball 0 Nov 13 08:50 newfile

-rw-rw-r 1 bball bball 0 Nov 13 09:50 newfile1

Tuy lệnh trên có chức năng giống lệnh touch nhng touch còn có khả năng nữa làcho phép cập nhật ngày cho file:

# touch newfile1

# ls -l newfile1

-rw-rw-r 1 bball bball 0 Nov 13 10:30 newfile

Bạn còn có thể dùng lệnh này để cập nhật ngày tháng cho file theo khuôn dạng, vídụ:

Lệnh này cho phép xoá các file Việc login vào linux bằng root và sử dụng lệnh rm

sẽ gây nhiều nguy hiểm cho hệ thống vì bạn không có cách nào khôi phục file đã bị xoá.Chẳng hạn lệnh sau xoá hết các file trên ổ cứng của bạn:

# rm -fr /

Trang 25

Lệnh rm có thể xoá đợc nhiều file một lúc:

# mkdir temp1 temp2 temp3

Hoặc tạo th mục con của một th mục đã tồn tại

Với tham số -p thf mkdir không chỉ tạo đợc th mục temp1 mà còn tạo đợc cả các

th mục con cháu của nó

# touch file1 file2

# mv -b file1 file2

# ls file*

file1 file2 file2~

Tham số -i cho phép xác nhận việc đổi tên cũng trong trờng hợp trên

# mv -i file1 file2

Trang 26

mv: replace ' file2 ' ? y

Lệnh cp

Lệnh cp (copy) đợc sử dụng để copy file hoặc th mục Cách đơn giản nhất nh sau:

# cp file1 file2

Trong trờng hợp file2 đã tồn tại nó sẽ bị ghi đè Để tránh trờng hợp đó, ta có thể

sử dụng tham số -b hay -i (ý nghĩa tơng tự nh đối với lệnh mv)

Lệnh cp có thể đợc sử dụng để copy nhiều file một lúc Ví dụ để copy các filetrong th mục temp1 vào th mục temp2

Khi đó cả th mục child cũng đợc tạo ra trong th mục temp1 Nếu không có tham

số -p thì chỉ có các file của th mục child là đợc copy mà thôi

Để tạo liên kết logic ta dùng tham số -s

Liên kết vật lý là không cho phép đối với th mục song bạn có thể dùng liên kết logic.

# ln /usr/local/games play

ln: /usr/local/games : hard link not allowed for directory

# ln -s /usr/local/games play

# ls -l play

lrwxrwxrwx 1 ball bball16 Nov 12 19:28 play -> /usr/local/games

Khi đó thay vì phải gõ một dòng lệnh dài

Trang 27

làm bạn chán ngấy Hãy yên tâm vì Linux cũng có chơng trình mc gần giống với chơngtrình NC trong DOS Để chạy bạn chỉ cần gọi:

# mc

Sau đây là một số điểm mạnh của chơng trình này:

• Giao diện đồ hoạ với 2 cửa sổ và cho phép dùng chuột điều khiển

• Có các thao tác bằng menu

• Có dòng lệnh tơng ứng

• Chạy file lệnh bằng nháy chuột kép

• Có trợ giúp bằng tài liệu liên kết siêu văn bản

• Mô phỏng và hỗ trợ các lệnh thông dụng nh ls, cp, ln, mv, mkdir rmdir, rm,

cd, pwd, find, chown, chgrp, tree

• So sánh th mục

• Tuỳ biến menu

• Sử dụng các ứng dụng mạng nh FTP, Telnet

• Giải nén bằng nháy chuột đơn

• Cho phép undelete file

? hay Thay thế cho một ký tự

[xxx] hay [x-x] Thay thế một khoảng các ký tự

Trang 28

Các lênh trên về cơ bản là giống nhau, mỗi lệnh có chừng 20 tham số song sự khácnhau duy nhất là egrep sử dụng các cú pháp khác nhau cho xâu tìm kiếm còn fgrep sửdụng xâu cố định.

Ví dụ để tìm các dòng trong file có chứa chữ số:

# fgrep ^friend guide.txt

Bây giờ hãy thử tìm các xâu có ký tự b trong ngoặc:

# egrep "\([b]\)" guide.txt

(sea section 1.8 for a list of compatible boards), or (b) there if

an connect to network, or (b) if you have a "dynamic" IP address,

Hãy xem điều gì xảy ra với lệnh grep

(sea section 1.8 for a list of compatible boards), or (b) there if

an connect to network, or (b) if you have a "dynamic" IP address,

Nén và giải nén file

Tạo các file lu trữ bằng lệnh tar

Tar ( tape archive) - băng từ- là kiểu lu trữ cổ xa từ khi các loại ổ cứng, ổ mềm cha xuất hiện Dùng tar có nhiều thuận lợi trong việc vận chuỷen file, chính vì thể mànhiều gói phần mềm của Linux vẫn đợc lu trữ trên băng từ

Dùng tar, ta có thể lu trữ nhiều file và th mục lên một file lu trữ hay lên băng từ.Phiên bản mới của tar có tham số -z cho phép nén dữ liệu trớc khi lu trữ

Để tạo file lu trữ ta dùng lệnh tar nh sau:

# tar -c mydir > mydir.tar

# ls -l mydir.tar

-rw-rw-r 1 bball bball 10234 Nov 14 12:43 mydir.tar

Trong đó -c nghĩa là create (tạo file) Theo mặc định thì tar không xoá file gốc Đểxoá file gốc ta thêm tham số -remove-files. Để biết các file trong th mục mydir đợc

lu trữ ta dùng tham số - v:

# tar -cv mydir > mydir.tar

mydir/

mydir/file1

Trang 29

mydir/dir1/

mydir/dir1/file3

mydir/dir1/file4

Ta có thể dùng tar trong chế độ hội thoại bằng tham số -w (interactive),ví dụ:

# tar -cw mydir > mydir.tar

Khi bạn biết trong file lu trữ có gì , có thể xác định file cần giải nén :

# tar -xf mydir.tar mydir/file1

Bạn hãy cố gắng dùng thành thạo lệnh tar trớc khi tiến hành lu trữ Một số tínhnăng khác của tar là xoá file, thêm file vào file lu trữ

Lệnh gzip có thể nén các file văn bản với chỉ số nén lên tới 60 -70 % Việc sửdụng gzip rất đơn giản:

Trang 30

# gzip mydir.tar

Theo mặc định thì gzip sẽ tạo file với đuôi là gz Để giải nén ta dùng tham số -d(decompress), hay dùng lệnh ungzip Khi đó phải chắc chắn đuôi file có dạng gz, z ,-gz , -z hay _z Nếu không ta có thể chỉ ra dạng đuôi file với tham số -S

# ungzip mydir.tar

Để biết kích thớc các file đợc nén, có thể dùng tham số -l (listing) Nếu muốnkiểm tra tính toàn vẹn của file bị nén, dùng tham số -t

Nén file bằng lệnh compress

Lệnh compress chỉ có mỗi chức năng nén file mà thôi, đây là một trong những

ch-ơng trình nén file đầu tiên của các hệ điều hành họ UNIX

Các file tạo ra bởi compress luôn có đuôi là Z Để nén file ta chỉ cần đa ra tênfile:

# compress file

Và giải nén:

# uncompress file.Z

Trang 31

Chơng 3: Sử dụng shell

Shell là gì

Nếu bạn không dùng hệ thống Xwindow thì shell là chơng trình quan trọng nhất

mà bạn phải dùng Shell cung cấp giao diện cho linux để bạn có thể chạy các ứng dụng.Bạn có thể setup Linux để không cần dùng với shell, và bạn sẽ thấy bạn sẽ phải gõ rấtnhiều lệnh của shell

Shell là một chơng trình thông dịch dòng lệnh cho phép khởi động, treo, dừng, vàviết các chơng trình Shell là một phần đợc tích hợp vào Linux và là phần quan trọng củacác hệ thống Unix Bạn hãy hình dung hạt nhân Linux nh một quả cầu ở trung tâm cònshell là một lớp bao phủ ở bên ngoài Khi ta đa một lệnh từ shell hay từ một chơng trìnhnào đó thì hạt nhân Linux sẽ trả lời ngay lập tức

Có rất nhiều loại shell, và trong phiên bản 5.0 này có ít nhất 5 loại (không kểvisual shell Midnight commander ) Bạn có thể xem loại shell đang sử dụng bằng cáchxem file /etc/passwd Tên shell đợc để ở cuối dòng

# fgrep bball /etc/passwd

bball:0mdshdkfg:80:80:William H Ball,,,,:/home/bball: /bin/bash

Các shell của hệ thống

Trong phần này sẽ liệt kê các shell của hệ thống và các tính năng của nó Tất cảcác shell này đều có các lệnh built-in Các shell có lệnh chung là cd Song ash và tcshkhông có lệnh pwd (in th mục hiện thời) và phải thay thế bằng lệnh pwd trong th mục/bin

Mỗi shell có nhiều đặc điểm khác nhau, hãy dùng man để xem chi tiết Các đặc

điểm của shell đợc xem xét là:

• Các lệnh xây dựng sẵn

• Quản lý tác vụ nh thế nào

• Có hỗ trợ soạn thảo dòng lệnh hay không

• Có hỗ trợ việc lu các lệnh lại không

• Các file cấu hình và khởi tạo quan trọng

• Các biến môi trờng

• Các dấu nhắc lệnh có thể dùng đợc

• Cấu trúc lập trình nào đợc hỗ trợ

Các đặc điểm của shell ash

Đợc viết bởi Kenneth Almquist, là một trong những shell nhỏ nhất của Linux Nóbao gồm 24 lệnh built-in, 10 tham số dòng lệnh khác nhau ash hỗ trợ hầu hết các lệnhshell thông dụng, chẳng hạn nh lệnh cd cùng với hầu hết các toán tử dòng lệnh quantrọng ( Sẽ đợc xem xét trong phần Tìm hiểu các lệnh shell)

Các đặc điểm của shell mặc định của Linux – bash

Bourne Again Shell, đợc viết bởi Brian Fox và Chet Ramey, là shell mặc định củaLinux Nó hỗ trợ 48 lệnh built-in và khoảng một tá tham số dòng lệnh Bash shell hoạt

động giống nh sh shell và bạn thấy rằng lệnh sh trong th mục /bin chỉ là một liên kếtlogic tới bash

Bash shell là shell mặc định của Linux Nó cũng có một số tính năng nh csh vàksh shell Bash shell đợc sử dụng để làm ví dụ minh họa cho phần này và bạn sẽ đợc học

Trang 32

cách để thay đổi dấu nhắc lệnh sử dụng bash

Với bash shell bạn có thể duyệt qua các lệnh đã dùng bằng các phím mũi tên, soạnthảo một dòng lệnh, và nếu có trót quên tên chơng trình thì bnạ có thể đề nghị giúp đỡ

Ví dụ bạn gõ l và bấm tab thì shell sẽ hiện các lệnh bắt đầu bằng l

Shell pdksh trong Linux có tên là ksh Giống nh bash, nó sẽ đọc file /etc/profilekhi khởi tạo nếu file profile không có trong th mục home Tuy các lệnh của nó không cógiống nh bash song nó hỗ trợ quản lý tác vụ nh treo chơng trình, cho chạy mặt sau, gọilại và huỷ bỏ chơng trình từ dòng lệnh

Shell này gần tơng thích với Korn shell trong các phiên bản của kèm theo của cácversion Unix thơng mại Các tài liệu kèm theo nó cũng đợc để trong th mục /usr/doc

Các đặc điểm của shell tơng thích với csh - tcsh

Tác giả của nó là William Joy cùng với 47 các nhà hỗ trợ khác Bao gồm 53 lệnhbuilt-in và 18 tham số dòng lệnh, shell này mô phỏng shell csh nhng có thêm một sốtính năng nh soạn thảo dòng lệnh và kiểm tra lỗi chính tả

Shell này không hoàn toàn tơng thích với các dấu nhắc của bash Nó cung cấpnhiều tuỳ chọn hơn bash shell Tcsh sử dụng file cấu hình csh.cshrc trong /etc nếu file.tcshrc hay cshrc không có trong th mục home Giống bash, bạn có thể duyệt qua cáclệnh đã dùng bằng phím mũi tên Để nhận đợc các lệnh built-in của tcsh, ta dùng lệnhbuiltins

Giống nh các shell bash và tcsh, nó cho phép bạn duyệt các lệnh đã dùng, đồngthời cho phép hoàn thành, soạn thảo,kiểm tra chính tả các dòng lệnh Nó cũng cho phépquản lý tác vụ từ dòng lệnh và hỗ trợ các tham số nâng cao để tìm kiếm file

Các file hệ thống của shell này phục vụ cho việc khởi động để trong th mục /etc

/etc/zlogin

/etc/zlogout

Trang 33

/etc/zshenv

/etc/zshrc

Các file trên sẽ đợc tham chiếu đến trong trờng hợp Linux không tìm thấy file tơng

đơng trong th mục home Shell naùy có nhiều loại dấu nhắc dòng lệnh hơn bất kỳ filenào khác bạn sẽ thấy shell này có các tính năng rất giống tất cả các shell khác và có thểmô phỏng nh sh hay ksh khi đợc gọi nh một liên kết logic (mặc dù hệ thống Linux củabạn đã có shell sh là liên kết logic của shell bash)

Có rất nhiều thông tin liên quan đến shell này: 10 file tài liệu hớng dẫn, kèm theo

là các file help trong th mục /usr/doc, các ví dụ và các thông tin hữu ích khác

Tìm hiểu các dòng lệnh của shell

Khi bạn chạy một chơng trình từ dòng lệnh thì shell có nhiệm vụ thông dịch lệnhvàchơng trình sẽ đa trở lại đầu ra của nó tới màn hình Bằng cách sử dụng shell bạn cóthể thay đổi đầu ra của dữ liệu tới bất kỳ đâu, ra file chẳng hạn Shell còn cho phép lấydữ liệu đầu vào từ các chơng trình khác Ví dụ hớng đầu ra của lệnh ls ra file:

# touch /tmp/file1 /tmp/file2 /tmp/file3

# ls -w 1 /tmp/file* > ls.txt

Trong lệnh thứ 2, ký tự định hớng ra > cho phép đa kết quả ra file ls.txt Bạn cóthể dùng ký tự định hớng vào < để cung cấp thông tin vào cho chơng trình Trong ví dụsau bạn sử dụng danh sách file trong vd.txt để tạo ra file lu trữ bằng lệnh cpio.

# cpio -o < vd.txt > file.cpio 2> error.txt

cpio: /tmp/file3: no such file or directory

1 block

Thông thờng khi bạn hớng đầu ra vào một file thì file đó sẽ đợc tạo ra nếu bó chatồn tại, trái lại nó sẽ bị xoá Để tránh điều đó ta dùng ký tự nối >> cho phép giữ lại fileban đầu

# cpio -o < vd.txt > file.cpio 2>> error.txt

Lệnh này giữ lại nội dung file error.txt và ghi thêm đầu ra của chơng trình vàocuối file Phơng pháp này đợc sử dụng để ghi lại các thông báo khi bạn logon vào Linux

- hãy xem file messages

Trở lại ví dụ về lệnh soạn thảo đơn giản cat trong phần "Các lệnh đọc và duyệtfile", ta thấy rằng các ký tự định hớng đã đợc sử dụng để hớng dòng vào chuẩn từ thiết

bị đầu cuối

# cat > new.txt

Day la tieng noi Viet Nam

Phat thanh tu Ha Noi

EOF

Ký tự kết thúc đợc đa vào bằng cách gõ Ctrl-D Ta có thể sử dụng ký tự định ớng << để báo cho shell biết việc kết thúc dòng vào chuẩn ở sau ký tự <<

Trang 34

h-# cat > new.txt <<.

Day la tieng noi Viet Nam

Phat thanh tu Ha Noi

.

# cat new.txt

Day la tieng noi Viet Nam

Phat thanh tu Ha Noi

Trong ví dụ trên bạn thông báo rằng file sẽ đợc đóng khi gặp ký tự (.), điều này sẽ

đơn giản hơn việc dùng tổ hợp phím Ta hãy dùng cách này để tạo một file cơ sở dữ liệu

đơn giản bằng cách kết hợp grep và ký tự định hớng Nếu có một danh sách địa chỉ, bạnbao nó bằng lệnh grep ở đầu và các ký tự kết thúc ở cuối Gọi file là db

# cat > db <<.

egrep -i $1 << zzzz

Hong Son Dai hoc Bach Khoa

Le Tuan Dai hoc Xay Dung

Tuan Ngoc Trung tam Cong nghe thong tin

Zzzz

.

Đoạn văn bản trên tạo ra một cơ sở dữ liệu ngắn về địa chỉ Lệnh cat cho phépnhập các địa chỉ vào file db cho tới khi gặp dòng có dấu (.) cơ sở dữ liệu làm việc bằnglệnh egrep để đọc file cho tới khi gặp xâu zzzz Tham số -i để lệnh egrep không phânbiệt chữ hoa và thờng $1 là biến môi trờng chứa tham số vào để truyền cho lệnh egrep

Tuỳ biến shell của bạn

Khi ta sử dụng shell thì ta đang ở trong môi trờng trong đó có các biến môi trờng.Các biến môi trờng đợc định nghĩa trớc trong các file cấu hình, đối với bash shell làfile /etc/profile Có rất nhiều các biến môi trờng khác nhau Ta dùng lệnh printenv để incác biến môi trờng:

Bằng cách trên shell đã tìm đợc đờng tới ipconfig, song để lúc nào cũng có kết quả

nh vậy ta phải sửa đổi nội dung file /etc/.bash_profile

Hãy sửa dòng:

PATH=$PATH:$HOME/bin

Thành:

PATH=$PATH:$HOME/bin:/sbin

Trang 35

Nếu bạn là root thì hãy xem dòng sau:

# PS1=' Date: \d Time : \t -> ' ; export PS1

Date: Sat Dec 27 Time : 20:09:34 ->

Shell sẽ tự động cập nhật thời gian mỗi khi bạn gõ Enter Bạn có thể đa tên shellvào dấu nhắc:

# PS1 =' \s : \w>'; export PS1

bash: /usr/bin>

Bạn có thể sử dụng các ký tự esc và các chuỗi terminal để tuỳ biến dấu nhắc Bạn

có thể sử dụng chữ gạch dới, chữ đậm, chữ nghiêng và các chế độ khác cho dấu nhắccủa mình

# PS1='[\033[4m\u\033[0m@\033ơ4m\h\033[0m]:' export PS1

[bball@localhost]

Ví dụ này sử dụng chuỗi ký tự esc riêng cho cửa sổ xterm X11 (xem nhờ lệnhprintenv và dòng $ TEMCAP) để gạch chân tên user và tên máy Để có thêm các ví dụhãy xem thêm tài liệu hớng dẫn

Thay đổi dấu nhắc không phải là cách duy nhất để tuỳ biến shell của bạn bạn cóthể định nghĩa một shortcut, alias để thay đổi việc phải làm việc với các dòng câu lệnh.Bạn sẽ thấy có ít nhất vài alias đợc định nghĩa trong file /etc/bashrc Việc định nghĩa cácalias cho toàn hệ thống đợc làm bởi root Bạn có thể định nghĩa các alias của riêngmình trong các file bashrc trong th mục home của bạn, song nếu bạn là root thì bạnphải đặt ít nhất các alias sau cho toàn bộ các user của hệ:

# Liệt kê tên file với màu sắc

alias lsc="ls color"

# Danh sách ở dạng dài

alias ll="ls -l"

# Hiện tất cả các file trừ và

alias lsa="ls -AF"

Sau khi đã thay đổi file bashrc bạn có thể dùng các alias này bằng lệnh source:

# source bashrc

Bây giờ thì bạn có thể dùng các lệnh ls, lsa, lsc mà không cần đa vào các tham sốdòng lệnh Chỉ cần bảo đảm rằng bạn không định nghĩa lại một lệnh đang tồn tại nào.nếu bạn dùng các alias hữu dụng này thì bạn phải bảo đản rằng chúng đợc định nghĩatrong shell hiện hành của Linux

Bạn là ngời quản trị hệ thống thì bạn có thể cho phép các shell nào là đợc dùngtrong Linux Khi đó không phải bất kỳ ngời dùng nào cũng có thể vào đợc shell mong

Trang 36

muốn Các shell của hệ thống đợc liệt kê trong file /etc/shell

Chsh: "/bin/zsh" is not listed in /etc/shells

Chsh: use -l option to see list

Nếu bạn muốn dùng lệnh chsh để thay đổi shell trong lần làm việc sau thì shell

này phải đợc liệt kê trong file /etc/shells Trong ví dụ trên lệnh chsh không tìm thấy shellzsh trong file /etc/shells nên đã báo lỗi Song cách làm trên không hạn chế đợc việc khởi

động một shell khi log on Do đó để quản lý việc sử dụng shell thì cách tốt nhất là cungcấp cho ngời dùng các quyền tơng ứng đối với shell

Để chạy chơng trình mặt sau ta thêm & vào sau dòng lệnh

# rxvt &

Dòng lệnh này khởi tạo chơng trình rxvt ở mặt sau, sai đó sẽ quay lại dấu nhắc.Chơng trình sẽ đợc gán một số hiệu tiến trình và có thể xem đợc bằng lệnh ps (processstatus):

Ví dụ khi đang dùng bash shell bạn có thể treo một chơng trình đang chạy bằngcách gõ Ctrl-z và quay trở lại bằng lệnh fg

# pine

program is running (ctrl-z)

Pine suspended Give the "fg" command to come back

[1]+ stopped (signal) pine

# fg

program return

Trang 37

Với một tiến trình bị treo, ta có thể dùng lệnh fg để gọi nó trở lại màn hình hoặc

lệnh bg để cho nó tiếp tục chạy Điều này rất thuận lợi khi bạn muốn chạy một số chơng

trình nh newreader chẳng hạn, sau đó treo nó và lại tiếp tục chạy trong thời gian dài( nh cập nhật danh sách các nhóm tin) trong khi vẫn chạy các chơng trình khác ở mặt tr-ớc

Khi chạy và treo nhiều chơng trình ở mặt sau thì ta có thể sẽ không nhớ đợc hết.Khi đó dùng lệnh jobs của shell bash :

Làm thế nào để sử dụng các đờng ống (Pipes)

Bạn đã biết cách dùng các ký tự định hớng để đa đầu ra của chơng ttrình vào mộtfile, hay lấy nội dung một file vào một chơng trình Ta có thể đơn giản hoá điều nàybằng cách dùng ký tự | giữa 2 chơng trình, gọi là đờng ống Việc sử dụng đờng ống làmột phơng pháp hiệu quả để tăng hiệu qủa cho các lệnh độc lập của Linux và các phiênbản UNIX khác

Đờng ống đợc sử dụng tốt trong Linux vì các lệnh của nó đều chấp nhận các đầuvào/ra chuẩn của shell Đờng ống đợc sử dụng trong hầu hết các tác vụ tính toán và cóthể dùng trong việc tìm thông tin nhanh, tạo các báo cáo, truyền dữ liệu, xem kết qủa Sau đây là một số ví dụ:

# ls | lpr

# printenv | fgrep EDITOR

# nroff -man mymanpage.1 | less

# cat document.txt | wc | mail -s "Document.txt Report" bball

Ví dụ một in danh sách các file Ví dụ 2 cho biết trình soạn thảo văn bản mặc

định Ví dụ 3 hiển thị tài liệu lên màn hình để ta có thể duyệt đợc Ví dụ cuối cùng đếm

số ký tự trong file ( chơng trình wc) và gửi kết quả cho bball bằng th điện tử

Việc sử dụng đờng ống có thể giúp ta giải quyết công việc mà các lệnh bình thờngkhông thể làm đợc, ví dụ bạn có quá nhiều file doc và muốn tìm một số file có câu liênquan:

# find /home -name *.doc | xargs fgrep administration | less

Lệnh trên tìm các file doc có chứa từ administration và hiển thị lên màn hình tacòn có thể xử lý ngay cả kết qủa tìm kiếm, ví dụ:

# find *.doc | xargs cat | tr ' ' ' \n' | sort | uniq | tee dict | less

Lệnh trên tạo một file dict chứa danh sách các từ phân biệt trong một file văn bản.Lệnh này sẽ chuyển các ký tự trống giữa các từ thành ký tự xuống dòng, sau đó sắp xếp( sort) và bỏ các từ trùng nhau (uniq) Lệnh tee đa kết quả của đờng ống ra một file

Trang 38

Lệnh tee còn có tác dụng khi ta muốn kiểm tra kết quả khi xây dựng đờng ốnghay cất kết quả của các đờng ống phức tạp Ví dụ:

# rxvt - geometry 80x11 +803+375 -bg white -fg black -e pico &

# rxvt - geometry 80x11 +803+375 -bg white -fg black -e mail &

Ta có thể đa lệnh trên vào file d2 và gán cho file này có thể thực hiện đợc(executable):

# chmod +x d2

Và khởi động các chơng trình nh sau:

# d2

Ta còn có thể đa tham số vào lệnh shell bằng các biến shell $1 và $2:

# rxvt - geometry 80x11 +803+375 -bg white -fg black -e $1 &

# rxvt - geometry 80x11 +803+375 -bg white -fg black -e $2 &

Khi chạy chơng trình ta chỉ việc thêm tham số nh là lệnh bình thờng:

# d2 pico pine

Sau đây là một ví dụ về shell script rmv, dùng để xoá các file một cách an toàn:

Listing 6.1 Bash shell script rmv

# ! /bin/bash

# rmv -a safe delete prỏgam

# use a trash directory under your home directory

mkdir $ HOME/.trash 2>/dev/null

/bin/echo "deleting :\c " $2 $3 $4 $5 ; delete=true;;

/bin/echo "emptying the trash "; empty=true;;

/bin/echo "safe file delete v1.0"

/bin/echo "rmv -d[elete] -e[mpty] -h[elp] - l[ist] file1-4 ;; /bin/echo "your trash directory contains: "; list=true;;

esac

done

Trang 39

# rmv -h

safe file delete v1.0

rmv -d[elete] -e[mpty] -h[elp] -l[list] file1-4

§Ó xãa file ta dïng tham sè - d:

# rmv -d grap.gif grap.pnm

deleting grap.gif grap.pnm finished

§Ó kiÓm tra c¸c file trong thïng r¸c vµ xo¸ thïng r¸c:

emptying the trash,,,

empty the trash ?n

trashcan delete aborted

# rmv -e

emptying the trash,,,

empty the trash ?y

Trang 40

script cña riªng b¹n.

Ngày đăng: 03/08/2014, 09:12

HÌNH ẢNH LIÊN QUAN

Bảng 1.1. Vắn tắt phần cứng Linux-compabtible - Giáo trình cơ bản về Linux
Bảng 1.1. Vắn tắt phần cứng Linux-compabtible (Trang 2)
Bảng 2.2  Các phím tắt của màn hình ảo - Giáo trình cơ bản về Linux
Bảng 2.2 Các phím tắt của màn hình ảo (Trang 5)
Bảng 2.2. Các phím chức năng. - Giáo trình cơ bản về Linux
Bảng 2.2. Các phím chức năng (Trang 5)
Hình 2.1. Lựa  chọn kiểu màn hình - Giáo trình cơ bản về Linux
Hình 2.1. Lựa chọn kiểu màn hình (Trang 6)
Hình 2.3. Chọn nơi để các file cài đặt. - Giáo trình cơ bản về Linux
Hình 2.3. Chọn nơi để các file cài đặt (Trang 6)
Bảng 3.1.  Danh sách X server với Red Hat 5.0 - Giáo trình cơ bản về Linux
Bảng 3.1. Danh sách X server với Red Hat 5.0 (Trang 14)
Hình 3.1 Thông tin về card màn hình. - Giáo trình cơ bản về Linux
Hình 3.1 Thông tin về card màn hình (Trang 14)
Bảng 4.2. Tổ chức của tài liệu giúp đỡ - Giáo trình cơ bản về Linux
Bảng 4.2. Tổ chức của tài liệu giúp đỡ (Trang 17)
Bảng 4.1 Tài liệu giúp đỡ của Linux - Giáo trình cơ bản về Linux
Bảng 4.1 Tài liệu giúp đỡ của Linux (Trang 17)
Bảng 9.1.  Các cổng nối tiếp của DOS và Linux - Giáo trình cơ bản về Linux
Bảng 9.1. Các cổng nối tiếp của DOS và Linux (Trang 53)

TỪ KHÓA LIÊN QUAN

w