Slackware Linux

Màu nền
Font chữ
Font size
Chiều cao dòng

1 Mở đầu

1.1 Đôi lời của tác giả

1.1.1 Các tiêu chuẩn được sử dụng trong cuốn sách

1.2 Đôi lời của người dịch

1.2.1 Website chứa bài dịch


2 Giới thiệu chung

2.1 Mở đầu về Slackware Linux

2.1.1 Linux là gì?
2.1.2 Slackware là gì?
2.1.3 Chương trình ứng dụng với mã mở(Open Source) và các chương trình tự do(Free Software)

2.2 Nhận được sự đảm bảo và giúp đỡ

2.2.1 Phương pháp lấy help(sự giúp đỡ)
2.2.2 Online Help

3 Cài đặt

3.1 Cài Đặt

3.1.1 Lấy Slackware Linux ở Đâu
3.1.2 Yêu cầu hệ thống

4 Cấu hình

4.1 Cấu hình hệ thống

4.1.1 Hình ảnh hệ thống
4.1.2 Chọn kernel

4.2 Cấu hình mạng

4.2.1 Thiết bị mạng
4.2.2 Các chương trình làm việc với mạng
4.2.3 /etc
4.2.4 rc.inet1
4.2.5 rc.inet2
4.2.6 NFS(Hệ thống tập tin mạng)
4.2.7 tcp_wrappers

4.3 Cấu hình X

4.3.1 Xorg(New)
4.3.2 XFree86Config

4.4 Khởi động hệ thống

4.4.1 LILO
4.4.2 LOADLIN
4.4.3 Hai Tầng khởi động

5 Sử dụng Slackware Linux

5.1 Shell

5.1.1 Tài khoản sử dụng
5.1.2 Vỏ lệnh
5.1.3 The Bourne Again Shell (bash)
5.1.4 Virtual Terminal

5.2 Cấu trúc hệ thống tệp tin(Filesystem Structure)

5.2.1 Quyền chủ sở hữu
5.2.2 Quyền truy cập
5.2.3 Liên kết(link)
5.2.4 Mount devices(Kết nối các thiết bị)
5.2.5 NFS ( Network Filesystem)

5.3 Làm việc với files,catalogs

5.3.1 ls
5.3.2 cd
5.3.3 more
5.3.4 less
5.3.5 cat
5.3.6 touch
5.3.7 echo
5.3.8 mkdir
5.3.9 ln
5.3.10 cp
5.3.11 mv
5.3.12 rm
5.3.13 rmdir

5.4 Điều khiển các tiến trình(Process Control)

5.4.1 Chuyển sang chế độ phông nền(backgrounding)
5.4.2 Thoát khỏi chế độ phông nền
5.4.3 ps
5.4.4 kill
5.4.5 top

5.5 Hệ thống Administrator

5.5.1 Tài khoản và Nhóm tài khoản

5.5.2 Tắt máy an toàn

5.6  Các lệnh cơ bản về mạng(Basic Network commands)

5.6.1 ping
5.6.2 finger
5.6.3 telnet
5.6.4 FTP
5.6.5 ncftp
5.6.6 Thư điện tử(e-mail)

5.6.6.1 pine
5.6.6.2 elm
5.6.6.3 mailx

5.6.7 Trình duyệt Web

5.6.7.1 lynx
5.6.7.2 wget
5.6.7.3 links

5.6.8 traceroute
5.6.9 Giao tiếp qua mạng

5.6.9.1 talk
5.6.9.2 ytalk
5.6.9.3 wall

5.6.10 Các công cụ DNS

5.6.10.1 host
5.6.10.2 dig

5.7 Dạng lưu trữ tập tin(Archive Files)

5.7.1 gzip
5.7.2 bzip2
5.7.3 tar
5.7.4 zip

5.8 vi

5.8.1 Khởi động vi
5.8.2 Chế độ làm việc
5.8.3 Mở tập tin
5.8.4 Lưu lại các tập tin
5.8.5 Thoát khỏi vi
5.8.6 Cấu hình vi
5.8.7 Các phím điều khiển vi

5.9 Quản Lý Packages Slackware

5.9.1 Dạng format packages
5.9.2 Công cụ làm việc với packages
5.9.3 Tạo packages
5.9.4 Tạo  tags và  tagfiles(cho chương trình  cài đặt)

5.10 ZipSlack và BigSlack
5.10.1 Thế nào là ZipSlack/BigSlack?
5.10.2 Cách nhận được ZipSlack/BigSlack
5.10.3 Cài đặt
5.10.4 Khởi động ZipSlack/BigSlack
5.10.5 Bổ sung,xóa và nâng cấp các chương trình
5.10.6 Các vấn đề chính
5.10.7 Cách nhận được sự giúp đỡ

Chương 1 Mở đầu

1.1 Đôi lời của tác giả

HĐH Slackware Linux - Đấy là một hệ thống có hoạt tính cao cho các máy  trên Intel-Processor.Nó là một hệ thống an toàn,bền vững và đa chức năng.Nó có thể sử dụng vào vai trò của một high-end Server cũng như sử dụng cho một trạm làm việc hoạt tính.

Cuốn sách này dùng cho những người mới sử dụng Slackware Linux.Tuy nhiên không có nghĩa là mọi thứ trong distribution được đưa vào đây.Tuy nhiên chắc chắn bạn sẽ biết được những khả năng chính và nguyên tắc chính làm việc của hệ thống.

Khi bạn mới bắt đầu sử dụng Slackware Linux,chúng tôi hi vọng rằng bạn sẽ tìm thấy những điều cần thiết trong cuốn sách này.Nó được sử dụng như một cuốn sách cẩm nang.Chúng tôi cũng hi vọng bạn sẽ đưa nó cho bạn bè của bạn cùng đọc,để họ biết ràng Slackware mà bạn đang sử dụng thật là tuyệt vời.

1.1.1 Các tiêu chuẩn được sử dụng trong cuốn sách
Cuốn sách này được ghi trong SGML  bằng DocBook 4.0 DTD.Chính vì thế chúng ta đã sử dụng các yếu tố trong DocBook để liên kết đến các tập tin cũng như nội dung của tập tin.Có lẽ bạn lên làm quen với một vài tiêu chuẩn được sử dụng trong cuốn sách này trước khi bạn đọc nội dụng của nó.

Thông thường khi mà câu lệnh qúa dài thì chúng tôi sẽ cắt nó ra bằng dấu "\" và tiếp tục ở dòng tiếp theo.Ví dụ:

ifconfig eth0 192.168.1.10 broadcast 192.168.1.255 \
netmask 255.255.255.0

Tên của catalog và tập tin sẽ như sau:

directory
filename

Màn hình với kết quả của lệnh và nội dung của tập tin cấu hình cũng được sử dụng trong cuốn sách này.Nó có dạng sau:

command output

Khi chúng tôi đưa ra các lệnh mà bạn sẽ thực hiện,chúng tôi sẽ viết chúng ra và chạy từ vỏ lệnh thông thường.Khi mà lệnh thực hiện bởi một tài khoản thông thường thì nó sẽ có dấu ($) trước câu lệnh.Còn khi mà câu lệnh nhất định phải chạy bằng root thì chúng có dấu (#) trước lệnh.

1.2 Đôi lời của người dịch
Tôi vẫn còn nhớ rằng lần đầu tiên làm quen với Linux(distribution là RedHat 7.1) vào năm 2001,nói ra thật buồn cười:"Tôi đã không cài được HĐH RedHat 7.1".Sau đó tôi phải nhờ một người bạn đã học trước tôi chỉ cho tôi cách.Đấy là điều lôi cuốn tôi cố gắng hơn để hiểu rõ hơn về hệ thống này.Hiện nay RedHat đã dừng lại ở phiên bản 9.0 và chuyển sang Fedora Core,như tôi được biết thì đã có Fedora Core 4.

Sau đó một thời gian sử dụng tôi được làm quen với Suse Linux(Phiên bản hiện nay tôi biết là 9.3).Với Suse có lẽ rất là thích hợp với những người quen sử dụng Windows.Trong Suse có trang bị thanh điều khiển yast sẽ giúp các bạn điều khiển hệ thống hoàn toàn như Windows,trong khi cài đặt sẽ tự động tìm kiếm và mout các phân vùng DOS cho bạn(thật là tuyệt khi không phải làm gi cả).Tuy nhiên tôi cảm thấy máy của tôi chạy chậm hơn so với khi sử dụng RedHat 9.0.

Sau đó một thời gian,vào thời gian nghỉ hè năm 2005 tôi có nhiều thời gian rỗi.Tôi đã mượn được một phiên bản Slackware Linux 9.0.Có thể nói đây là một HĐH rất là thích hợp với các Intel-Processor.Chiếc máy tính(bạn đồng hành của tôi) đã làm việc một cách rất nhẹ nhàng,nhanh nhậy.Tuy nhiên tôi gặp một vấn để về sound card.Tôi vốn thích ca nhạc.Không có nó tôi không chịu được.Tôi bắt đầu timg kiếm tài liệu về Slackware Linux để mong có gì đó có thể giải quyết được vấn đề.Cuốn sách và tôi đọc đầu tiên chính là "Slackware Linux Essentials" cùng với một bản dịch bằng tiếng Nga(Bởi vì tôi đang phải học bằng tiếng Nga).Có lẽ đọc bằng tiếng Nga nhanh hơn so với tiếng Anh.

Sau khi nghiên cứu phần lsmod,insmod và rmmod...Tôi đã cho card-sound của mình hoạt động được(Trên máy tôi có một sound-card cs4281 và một TV-Card,chúng làm cho nhau không hoạt động được).Chính vì thế tôi cảm thấy rất là vui sau khi giải quyết được vấn đề này.Tuy nhiên một thắc mắc là tại sao không có các tài liệu bằng tiếng việt phổ biến như Anh,Nga.Có lẽ chỉ bán trong các cửa hàng sách nhưng không nhiều.Chính vì thế tôi quyết định dịch nó sang tiếng Việt.Mong rằng có thể giúp bạn được điều gì đấy.

Tôi nghí mỗi người cố gắng dịch lấy một cuốn sách thì tại liệu của chúng ta sẽ  được nhiều hơn và quá trình tiếp nhận sẽ nhanh hơn khi đọc bằng tiếng nước ngoài.Cám ơn vì đã đọc cuốn sách này.

1.2.1 Web chứa  bài dịch
Website chứa bài dịch trên là:

http://khigiacmoquayve.narod.ru


Nếu như bạn có những đóng góp gì về bài dịch hoặc là bạn muốn gửi bài dịch lên,chúng tôi sẵn sàng nhận và đăng lên.Cám ơn vì đã đọc và tham gia.
Liên hệ: [email protected]

Chương 2 Mở đầu về Slackware Linux

2.1.1 Linux là gì?

Năm 1991,Linux được bắt đầu từ Linus Torvalds như một phiên bản đầu tiên.Linus thử tìm cách khởi động hệ thống Unix không cần trả tiền.Cùng với điều đó anh ấy muốn học một cách chi tiết cách vào/ra của 386-processor.Những cái gì nhận được Linus đưa ra miễn phí ở trong các terminal GNU General Public License(xem ở 2.1.3) để sử dụng với mã gốc cho tất cả những người sử dụng.

Ngày nay Linux chiếm được một vị trí lớn trong thị trường HĐH.Nó có thể làm việc trên một số lượng lớn các dạng Processor,bao gồm Compaq-Alpha,Sun SPARC,Ultra SPARC và cả Motorola PowerPC(ví dụ như Aple Macintosh và IBM RS/6000).Linux được hoàn thiện bởi hàng trăm nếu không phải là hằng nghìn các nhà lập trình từ trên khắp thể giới.Ở trong nó làm việc các chương trình như Sendmail,Apache và BIND,mà được coi là phổ biến trên các server và internet.

Trên thực tế  thuật ngữ linux dùng để chỉ cho nhân hệ thống - Trung tâm của HĐH.Nhân sẽ điều khiển processor,đĩa cứng,bộ nhớ,và các bộ phận ngoại vi khác.Thực tế thì đó là tất cả những gì mà Linux làm việc.Nó kiểm soát công việc của máy tính,theo rõi hoạt động của các chương trình.Tất cả các chương trình trên Linux hoạt động không phụ thuộc vào nhau.Nhân và chương trình có liên quan đến những hãng và nhóm người khác nhau để tạo lên HĐH.Chúng ta gọi nó là distribution Linux.

2.1.2 Slackware là gì

Slackware là distribution Linux đầu tiên được phổ biến rộng lớn.Nó được bắt đầu bởi Patrick Volkerding vào cuối năm 1992.Patrick làm quen với Linux trong khi tìm kiếm một bộ dịch không đắt cho LISP cho kế hoặc của mình.Cũng trong thời gian đấy tồn tại một vài distribution và Patrick đã chọn distribution SLS Linux(Soft Landing Systems)

Tuy nhiên SLS Linux có những vấn đề của mình và Patrick bắt đầu sửa lại những lỗi nhỏ mà tìm được.Trong giới hạn thu được Patrick quyết định liên kết tất cả những gì mình sửa được vào một distribution riêng của mình để cho bản thân và bạn bè sử dụng.Phiên bản đã nhanh chóng được phổ biến và Patrick đã quyết định gửi lên trên internet với cái tên Slackware.

Patrick cũng bổ sung thêm bốn distributions nữa.Như là các chương trình cài đặt với interface thân thiện,các hệ thống menu và tập hợp các packages công cụ điều khiển.Nó giúp cho người sử dụng dễ dàng bổ sung,xóa bỏ,cập nhật các packages.

2.1.3 Chương trình ứng dụng với mã mở(Open Source) và các chương trình tự do(Free Software)

Bên trong Linux có hai khuynh hướng điều khiển các chương trình ứng dụng.Chiều hướng của Free Software(mà chúng ta sẽ nói về nó sau) là phát triển các chương trình không hạn chế khả năng sáng tạo cá nhân,theo họ thì nó đạt được trình độ kĩ thuật cao và đi ngược chống lại cộng đồng.Còn định hướng của Open Source là làm việc để đạt được các mục tiêu của cộng đồng,và tất nhiên được phát hành cho cộng đồng những người sử dụng miễn phí ở dạng mã gốc.Nó khác hẳn so với những quy tắc truyền thống mà điều khiển Free Software

Những tổ chức đại diện cho Free Software như là FSF(Free Software Foundation) - Là tổ chức tài trợ cho kế hoạch GNU.Free Sofware - là một  ý tưởng lớn.Một câu hay được sử dụng là:"Tự do ngôn ngữ,bia phải trả tiền".Cũng như trên,Free Software  - đó là thử nghiệm bảo vệ những quyền nhất định của tác giả cũng như người dùng.Sự tự do ấy bao gồm trong cả bản thân và trong sử dụng các chương trình cho các mục đích khác nhau,tự do trong học tập và biến đổi các mã gốc,tự do cho phép những người đam mê có thể truy cập và biến đổi.Để thực hiện được các mức độ tự do ấy đã hình thành lên tổ chức GNU  General Public License (GPL).GPL khẳng định rằng,tất cả những ai gửi lên một chương trình đã được biên dịch,theo giấy phép đăng kí GPL thì nhất định phải gửi cả mã gốc lên,và bất cứ một người nào cũng có thể biến đổi được chương trình,khi ấy những biến đổi ấy cũng áp dụng được với mã gốc.Điều này đảm bảo rằng:Một khi chương trình đã được mở cho cộng đồng thì nó không thể đóng vào được,ngoại trừ trường hợp tác giả biến đổi mã gốc từng phiên bản.Hầu như các chương trình trong Linux được cấp giấy phép GPL.

Có lẽ bạn không nhận thấy rằng GPL không nói đến giá của chương trình.Thật là lạ,Bạn có thể nhận được tiền nhờ các Free Software.Ở đây "Free" có nghĩa là phải trả tiền cho những hành động tự do trên mã gốc à không phải là giá cho chương trình mà bạn phải trả.(Tuy nhiên ai đó bán hoặc tặng cho bạn chương trình đã biên dịch dưới giấy phép GPL thì người đó cũng nhất định phải đưa ra bằng mã gốc)

Trên thực tế định hướng Open Source tồn tại đầu tiên.Open Source Initiative(OSI) coi là tổ chức loại bỏ sự đảm bảo về mở mã gốc.Có nghĩa là các chương trình mà có thể truy cập vào mã gốc cũng như các phiên bản được phát hành,chúng không cần một loại giấy phép đặc biệt tuy nhiên thay vào đấy nó có những loại giấy phép khác nhau để cho phép mở mã gốc.

ý tưởng đứng sau  OSI - Phát triển các hãnh bằng hết sức mình và cho phép mỗi hãng có giấy phép riêng của mình cho các chương trình của mình và giấy chứng nhận các giấy phép ấy của OSI. Có rất nhiều hãng muốn gửi mã gốc lên nhưng họ không muốn sử dụng GPL.Có lẽ họ không thể thay đổi được GPL,để họ có thể có giấy phép riêng của mình và giấy chứng nhận của tổ chức.

Open Source và Free Software  có thể nói đi cùng một hướng mà lại không cùng.FSF sử dụng một loại giấy phép riêng và gửi các chương trình dưới giấy phép này.OSI tìm kiếm hết tất cả các loại giấy phép sử dụng bao gồm cả FSF.Nhứng yếu tố chính trên con đường dự do gửi mã gốc được chia thành hai hướng khác nhau,nhưng chính vẫn là hai ý tưởng của những nhóm làm việc khác nhau,trên cùng một con đường để đạt được mục đích là tạo ra sự tin tưởng trong các cuộc thử nghiệm.

2.2 Nhận được sự đảm bảo và giúp đỡ

Thông thường trong quá trình sử dụng,bạn cần phải có những hướng dẫn sử dụng các lệnh,cài đặt các chương trình cũng như kết cấu các thiết bị.Thật là tuyệt vời bời vì có rất nhiều cách để có thể lấy được các thông tin cần thiết.Nếu bạn cài các packages từ khu vực chương trình F thì bạn sẽ có một tập hợp thông tin rộng lớn cần thiết.Các chương trình cũng được lồng vào các phần hướng dẫn để  tiện trong quá trình sử dụng.Và cuối cùng hãy sử dụng website Slackware để lấy thông tin.

2.2.1 Phương pháp lấy help(sự giúp đỡ)
man
man (manual - sổ tay) nó là phương pháp truyền thống lấy help trong Unix và Linux.Các tập tin được định dạng một cách đặc biệt - "man pages" chứa các thông tin có liên quan tới các câu lệnh,và được cài cùng chương trình.Hãy thực hiện man <tên lệnh>,sau đó trên màn hình sẽ hiển thị các thông tin có liên quan đến câu lệnh(nếu có)

Tồn tại một khối lượng khổng lồ các man pages và chúng được chia thành các nhóm nhỏ.Sự chia này được thực hiện rất lâu rồi.Chính vì thế ở đâu bạn gặp các link đến các trang thì bạn sẽ nhìn thấy số của các nhóm và trang man này trực thuộc.Ví dụ bạn nhìn thấy man(1).
Nó cho bạn biết rằng lệnh man được ghi ở phần 1 của phần các lệnh cho người sử dụng(user commands).Bạn có thể chỉ ra cái gì mà bạn muốn xem đối với trang man từ phần 1 cho lệnh man,hãy sử dụng man 1 man.

Sự chỉ ra số kí hiệu của vùng mà bạn muốn tìm kiếm tài liệu có lẽ rất có ích lợi khi bạn phải tìm kiếm các lệnh với các chức năng khác nhau nhưng cùng tên.

Khu vực                      nội dung

khu vực 1                    user commands
khu vực 2                    gọi hệ thống
khu vực 3                    gọi thư việc C
khu vực 4                    thiết bị
khu vực 5                    định dạng tập tin và protocol
khu vực 6                    games
khu vực 7                    thoả thuận,macro packages
khu vực 8                    hệ thống administrators

Cùng với man(1) còn có các lệnh như whatis(1) và  apropos(1) mà được tạo ra đầu tiên để giúp đỡ man trong qúa trình tìm kiếm.

whatis đưa ra những thông tin ngắn gọn về hệ thống câu lệnh,đó là những cái gi gắn gọn trong sổ tay về cách câu lệnh hệ thống.
apropos thì biến những kết quả tìm được của man thành các từ khoá.
Hãy xem những trang man để có thêm thông tin
Catalog /usr/doc

Các đoạn văn bản của các chương trình mà bạn bổ sung vào distribution được sắp xếp vào cùng một loại tài liệu.Các tập tin README được sử dụng như mặc định,các tập tin giấy phép,...và các loại tài liệu khác được đặt cùng với chương trình gốc được cài đặt trên máy của bạn và trong nó đều nằm ở /usr/doc
Nếu như thông tin đưa ra bởi man không đủ thì bạn hãy xem thêm ở /usr/doc

Howto và mini-Howto

HOWTO(làm như thế nào).Những tài liệu này ghi rõ ngắn gọn cách làm một việc gì đó.Nếu bạn cài packages với tập hợp howto thì bạn có thể tìm chúng ở catalog

 /usr/doc/Linux-HOWTOS,còn mini-HOWTO ở catalog /usr/doc/Linux-mini-HOWTOS

Cũng trong packages này bạn có thể tìm thấy hệ thống tài liệu FAQ(Những câu hỏi thường gặp) và cả đáp án cho các câu hỏi ấy.
Những tập tin này rất là có lợi nếu như bạn không tin chắc vào một việc gì đó.

2.2.2 Online Help

Cùng với các tài liệu trên có trong Slackware Linux còn có nhiều cách khác để nhận được sự trợ giúp ở chế độ online.

Website và Forum

www.slackware.com

Website chính Slackware Linux chứa đầy đủ các thông tin về hệ thống.Bạn có thể tìm thấy những thông tin cần thiết về HĐH cũng như các cuốn sổ tay trợ giúp cài đặt và FAQ cũng nhiều thông tin bổ ích khác cho những người với sử dụng hoặc nhiều người khác.

Bạn có thể tìm trên forum phần mà những người sử dụng hay trao đổi kinh nghiệp sử dụng Slackware và giúp đỡ lẫn nhau sử giải quyết các vấn đề.Đây là một cách thu nhặt thông tin rất tốt,cũng như là thể hiện kinh nhiệm của mình.Nó được coi là một biện pháp phổ biến và hoạt tính.Có lẽ đấy sẽ là điểm dừng chân đầu tiên của bạn trên con đường thu nhặt thông tin.(Những câu hỏi hoặc tin nhắn của bạn được mở ra trong một không gian lớn,có nghĩa là khả năng nhận được đáp án rất là cao).Hãy chú ý,trước khi bạn đưa ra câu hỏi hãy quan sát thật kĩ hết các khả năng,bởi vì đáp án có thể ngay cạnh mà bạn không để ý.

e-mail

Tất cả những người mua CD gốc đều có khả năng nhận được miễn phí sự đảm bảo về cài đặt qua e-mail.Chúng tôi sẽ cố gắng hết sức giúp đỡ các bạn(người gửi thư cho chúng tôi yêu cầu giúp đỡ).Làm ơn trước khi gửi thư hãy kiểm tra lại các tài liệu cũng như trên website(đặc biệt là FAQ và forum)Bạn có thể nhận được câu trả lời một cách nhanh nhất ở đấy(chắc chắn là nhanh hơn qua e-mail).Thư gửi đến chúng tôi càng ít thì chúng tôi có thể giúp các bạn càng nhanh.
e-mail:[email protected]

Chương 3 Cài Đặt Slackware

3.1 Cài Đặt

Trước khi tiến tới việc sử dụng Slackware Linux thì bạn cần phải có được một phiên bản của nó để tiến hành cài đặt.Việc cài đặt được coi như là một công việc đơn giản nhưng mất nhiều thời gian.Bạn có thể mua hoặc download(tải) miễn phí các phiên bản của Slackware Linux.Nếu bạn có một kiến thức sơ bộ về tin học cũng như về phần cứng máy tính của bạn thì việc cài đặt đối với bạn chắc chắn sẽ không có gì khó khăn.Quá trình cài đặt được tiến hành theo từng bước nối tiếp nhau chính vì thế mà bạn sẽ nhanh chóng thu được HĐH như mong muốn

3.1.1 Lấy Slackware Linux ở Đâu

Bộ đĩa chính thức Slackware Linux CD

Bộ đĩa chính thức Slackware Linux CD được cất giữ ở Slackware, Inc. Khi mua bộ đĩa gốc này bạn nhận được những hướng dẫn cụ thể về cách cài đặt cũng như bản quyền cài đặt qua e-mail(thư điện tử),30-trang báo về cài đặt thậm chí nhiêu hơn thế nữa.Bộ đĩa gốc Slackware Linux CD bao gồm có bộ đĩa CD và bản hướng dẫn sử dụng chính thức.Mua bản chính thức chính là cách giúp cho kế hoặc Slackware Linux.

Phương Pháp            Thông Tin

Điện Thoại           1-800-786-9907
web-site               http://www.slackware.com
e-mail                   <[email protected]>
Bưu Điên            4041 Pike Lane, Suite F Concord, CA 4520-1207
 
Qua Internet

Slackware Linux được phân bố miễn phí trên mạng internet.Bạn có thể hỏi qua e-mail về bản quyền hoặc cao hơn là hỏi những người đã mua bản gốc Slackware Linux
Website chính thức của kế hoặc Slackware theo địa chỉ:

http://www.slackware.com/
Hoặc theo FTP
ftp://ftp.slackware.com/pub/slackware/

3.1.2 Yêu cầu hệ thống

Điều kiện tối thiểu của phần cứng là
Thiết bị             yêu cầu

processor          386
memory            16Mb
HDD                 500Mb
Floppy           1.44Mb

Nếu như bạn có CD-Boot thì bạn có thể không cần Floppy.Nếu như bạn định cài đặt qua CD thì bạn chỉ cần đặt CD vào ổ đĩa CD là có thể bắt đầu.Còn nếu như qua mạng với NFS thì bạn hãy xem ơ phần sau để thêm thông tin.

Yêu cầu đối với không gian trống của HDD(Theo bảng trên) là tương đối.Thông thương là 500Mb nhưng mà khi bạn tiến hành cài toàn phần thì cần phải có tới 1Gb không gian HDD.Nhưng hầu như các người sử dụng không có điều kiện để cài đặt toàn phần.Thậm chí có người chỉ có tất cả 100Mb để làm việc với Slackware Linux.

Khu vực Chương Trình

 Hầu hết các phiên bản của Slackware hiện nay được chia ra thành các khung chương trình theo bảng sau:

Khu vực

 Nội Dung

A          

Vùng chính.Chứa những phần tối thiểu cho hệ thống,các phần mềm tối thiểu     cho   HĐH

AP          

Nhưng ứng dụng khác nhau mà làm việc không cần có X-Windows

D       

Công cụ cho việc tinh chế các Ứng dụng khác.Trình biên dịch,kiểm tra...cũng như man-page cho chúng

DES

Chứa GNU libc crypt()

E

GNU emacs

F

FAQ,Howto và những thông tin khác

GTK

Môi trường GNOME,GTK và Gimp

K

Kernel gốc của phiên bản

KDE

Môi trường KDE,cùng thư viện QT cho KDE

N

Các ứng dụng cho mạng,dome,sendmail,telnet...

T

Hệ thống tài liệu format dạng teTex

TCL

Tool Command language,Tk,Tcl,TkDesk

X

Phần chính của X-Windows

XAP

Những ứng dụng chính của X-Windows mà không được coi là phần chính cho môi trường làm việc(Ghostscript và Netscape)

XD

Các ứng dụng cải tạo cho X11. Thư viện XView,OpenLook Virtual...

XV

Các trình điều khiển cửa sổ cũng các ứng dụng khác

Y

Games


  
Phương Pháp cài đặt

Floppy 
   Trước đây có thể cài toàn bộ Slackware bằng Floppy.Do sự tăng trưởng của các ứng dụng cho nên chỉ có hai khu vực có cài đặt từ Floppy.Khu vực A hoàn toàn có thể cài từ Floppy và một số phần lớn ở khu vực N có thể cài đặt.Điều này cho phép bạn có được hệ thống cần thiết mà có thể sử dụng để cài đặt các ứng dụng khác qua mạng

CDROM
   Nếu như bạn có CD-Boot thì quả thật là nhẹ nhàng hơn với bạn.Nếu CD không thể boot thì bạn có thể tạo Floppy-Boot.Bạn hãy xem phần "Disk  khởi Động " và " Disk bổ sung" để có thêm thông tin.

NFS
    NFS(Network File System - hệ thống file mang) Phương pháp cài đặt từ các remote computers(máy điều khiển từ xa) trọng mạng của bạn. Máy mà bạn muốn lấy distributs Slackware cần phải có cấu hình  export(xuất ra) thư mục mà chứa distributs Slackware.Tât nhiên để làm được điều này bạn cần có một chút kiến thức về NFS

Đĩa khởi động
     Đĩa khởi động là đĩa mà bạn có thể khởi động để bắt đầu cài đặt.Nó chứa bản sao nén nhân để điều khiển các thiết bị trong khi cài đặt.Hình ảnh của đĩa khởi động nằm ở catalog(Bản liệt kê thư mục) bootdsks.144 /cây catalog của distributs Slackware

Có trên hơn 60 phương án đĩa khởi động. Toàn bộ chi tiết bạn có thể xem ở bootdsds.144/WHICH.ONE. Hầu như các người sử dụng chọn phương án bare.i (cho phần cứng IDE) hoặc scsi.s (cho phần cứng SCSI) làm ảnh của các đĩa khởi động.
Hãy xem phần "Tạo đĩa" để có thêm thông tin cần thiết.

Root Disk
   root disk là nơi chứa các ứng dụng,file hệ thống mà sử dụng trong khi cài đặt.Nó là cần thiết.Hình ảnh của root disk nằm ở thư mục rootdisks trên cây distributions.Ở đây bạn có thể tìm thấy ảnh của install.1 và install.2 cũng như network.dsk,pcmcia.dsk,rescue.dsk và sbootmgr.dsk.

Đĩa bổ sung
     Đĩa bổ sung chỉ dùng khi bạn cài đặt qua NFS hoặc sưr dụng các thiết bị PCMCIA.các đĩa bổ sung này nằm ở catalog rootdisks và có tên là network.dsk hoặc pcmcia.dsk

Tạo Đĩa
    Sau khi bạn chon phương án cho đĩa khởi động bạn cần 1 đĩa sạch và đặt nó vào ở đĩa floppy .Quá trình tạo disk phụ thuộc nhiều vào HĐH mà bạn đang dùng,cấu hình máy....Nếu bạn sử dụng Linux (Unix) thi bạn cần biết cách sử dụng lệnh dd().Giả sử bạn chọn ảnh là hejaz.dsk và disk cho floppy /dev/fd0 thì bạn cần phải sử dụng lệnh sau:

#dd if=hejaz.dsk of=/dev/fd0

Nếu bạn sử dụng Microsoft OS thì bạn cần sử dụng RAWRITE.EXE mà nằm ở cũng catalog của distribution(nơi cũng chứa luôn ảnh của disk).Ta lại lấy hejaz.dsk làm ví dụ với ổ đĩa là A:
Mở dòng lệnh DOS và thực hiên:

c:\ rawrite a: hejaz.dsk

Chia Đĩa
    Sau khi khởi động xong thì bạn cần phải có phân vùng đĩa cứng riêng cho Slackware.Cần phải có tối thiểu là hai phân vùng:một làm phân vùng hệ thống gốc(\) và một làm phân vùng swap(vùng trao đổi).
Sau khi rootdisk khởi  động xong thì nó sẽ mời bạn đăng nhập vào hệ thống(login).Bạn sẽ đăng nhập như root(passwords=""). Trên shell prompt(Vỏ Lệnh) bạn đánh vào cfdisk(8) hoặc fdisk(8).

Ứng dụng cfdisk có interface thân thiện hơn là fdisk nhưng nó sẽ thiếu đi  một vài lệnh cuối.Ở đây chúng ta chỉ xem xét fdisk với việc chia đĩa cứng thôi.

fdisk /dev/hda

Giống như các ứng dụng unix khác,fdisk đưa ra thông báo trên f.
Đầu tiên là cần kiểm tra việc kiểm tra sự tồn tại của phân vùng.Chúng ta làm điều đó bằng tham biến p trên vỏ lệnh:

Command (m for help): p

Ứng dụng đưa ra thông tin cần thiết về phân vùng,nhãn.Hầu hết người dụng chọn những phân vùng tự do để cài đặt và xoá đi hết những gi trên nó.

Chú Ý: Ban cần phải lưu lại nhưng thông tin quan trọng đối với bạn trên phân vùng mà bạn đang chuận bị xoá.Bởi sau khi xoá phân vùng thi việc khôi phục thông tin  trên nó không phải đơn giản và không phải ai cũng làm được.

Trên bảng phân vùng bạn nhìn thấy số kí tự phân vùng cùng dạng format của nó.Chúng ta chuẩn bị xóa hết các phân vùng trên disk và tạo phân vùng riêng cho Linux.Để xóa phân vùng sử dụng tham biến d:

Command (m for help): d
Partition number (1-4): 1

Cần phải lập lại quá trình trên cho tất cả các phân vùng mà bạn có ý định xóa.Sau khi xóa xong thì bạn cần tạo phân vung mới cho Linux.và tạo một phân vung swap.
Bây giờ chúng ta tạo phân vùng ,sử dụng tham biến n:

Command (m for help):n
Command action
    e extended
    p primary partition (1-4)
p
Partition number (1-4):
First cylinder (0-1060, default 0):0
Last cylinder or +size or +sizeM or +sizeK (0-1060, default 1060):+64M

Vậy là bạn đã tạo ra một phân vùng đầu tiên.Phân vùng sẽ dùng làm swap.Chúng ta chỉ cho fdisk định dạng phân vùng này là phân vùng chính(primary).Nó bắt đầu từ cylinder 0 và kết thúc bằng cylinder mà chúng ta ghi +64M.Như vậy chúng ta nhận được phân vùng đầu tiên là 64M làm swap(Dung lượng phân vung swap phụ thuộc vào lượng RAM trên hệ thống của bạn.Có những thông báo rằng dung lượng swap cần phải nhiều hơn RAM hai lần). Sau đó bạn tạo ra phân vùng thứ hai,bắt đầu từ cylinder cho phép và kết thúc ở cuối đĩa cứng.

Command (m for help):n
Command action
    e extended
    p primary partition (1-4)
p
Partition number (1-4):2
First cylinder (124-1060, default 124):124
Last cylinder or +size or +sizeM or +sizeK (124-1060, default 1060):1060

Và thế là việc chia đĩa cứng gần hoàn thiện xong.Bây giờ cần phải dịnh dạng phân vùng đầu tiên với mã số 82(linux swap).Bạn chọn tham số t,bạn chọn phân vùng đầu tiên và điền vào 82.Trước khi quyết dịnh ghi sự phân chia lên đĩa cứng thì khuyên bạn nên kiểm tra lại một lần nữa bằng tham số p.Nếu tất cả ổn thoả bạn chọn tham số w để lưu lại sự biến đổi trên disk.

Chương Trình cài đặt

Sau khi bạn đã tạo ra các phân vùng có nghĩa là bạn đã chuẩn bị cho quá trình cài đặt Slackware.
Bước tiêp theo của quá trình cài đặt là chạy ứng dụng setup(8).Bạn chỉ cần gõ lệnh setup trên vỏ lênh(shell prompt).SETUP là menu điều khiển cho quá trình cài đặt packages(túi ) và cấu hình hệ thống.


Qúa trình cài đặt được thực hiện theo các bước như sau: Bạn tiến hành theo từng sự chọn lựa các chương trình cài đặt theo một thứ tự đã thiết lập sẵn.Tất nhiên khi bạn đã thành thạo rồi thì bạn có thể làm theo thứ tự của chính mình,nhưng mà chúng tôi không khuyên làm vậy bởi hệ thống có thể làm việc không đúng tiêu chuẩn.Sự chọn lựa  các menu-programs với  sự giúp đỡ  các mũi tên  sang trái,phải,lên,xuống, và nút "OK" hoặc "Cancel".Các chọn lựa trong từng menu được hiển thị bằng dấu gạch chéo [X].Có thể chọn hoặc ngắt các chọn lựa bằng phím "Cách".

Để có thêm thông tin bạn có thể tìm trong phần HELP của menu.

HELP

Nếu bạn cài đặt Slackware lần đầu thì công việc đầu tiên là lên đọc phần này.O đó co ghi rõ từng phần của quá  trình setup(giống như bây giờ chúng ta đang nói tới)và cách di chuyển trong quá trình cài đặt


KEYMAP

Bạn cần phải chọn cách đọc vào từ bàn phím. Bạn đừng chọn là United States "qwerty" bởi nó là ngầm định . Trong phần này bạn có thể tìm thấy một danh sách lớn các định dạng bàn phím khác nhau.


ADDSWAP

Nếu bạn có phân vùng swap(xem phần chia đĩa cứng) thì  menu dưới đây giúp bạn tự động tìm ra nó ,đưa ra màn hình thông tin cần thiết về phân vùng swap và giúp bạn chọn nó(Sẽ tự động định dạng lại và bật swap lên)


TARGET

Trong mục này dùng để xác định các phân vùng khác(không là swap) cần được định dạng lại và được bật lên với điểm mount trên hệ thống file của bạn. Trên  màn hình đưa ra thông tin về các phân vùng của đĩa cứng.Đối với từng phân vùng sau khi chọn lựa cần được định dạng lại(hoặc kiểm tra các bad-block)  và danh sách các khu vực bỏ qua.Thông thường giá trị kích cỡ theo ngầm định.
Sự chọn lựa đầu tiên  của mục target - chọn phân vùng làm hệ thống file gốc(\).sau đó bạn có thể liên kết với các phân vùng khác trên đĩa cứng.(Ví dụ: bạn muốn phân vùng thứ 3 làm catalog home của các tài khoản thì bạn chỉ ra :/dev/hda3.Đây chỉ là ví dụ,bạn hãy liên kết với các phân vùng nào mà bạn thấy cần thiết)


SOURCE

Mục source(nguồn) cho phép bạn chọn thiết bị mang thông tin mà từ đó bạn tiến hành cài đặt Slackware.Hiện nay có 4 phương pháp chọn lựa :Floppy,CD-ROM,NFS hoặc dưới catalog được mount


Phương án Floppy cần phải một khối lượng lớn đĩa floppy,phương án này đòi hỏi mất nhiều thời gian,phải kiên nhẫn ,nhưng mà chung quy là có thể.(Chúng tôi không khuyến khích các bạn sử dụng phương án này)

Phương án CD-ROM tức là kích hoạt từ CD.Mục này cho bạn hai cách chọn lựa hoặc tự động tìm ổ đĩa CD của bạn hoặc là từ danh sách liệt ra.Chú ý rằng  Slackware CD cho vào ổ đĩa khi mà bạn bắt đầu  tìm kiếm .Sau đó chương trình bắt đầu tìm kiếm CD-ROM bạn sẽ chọn một trong hai phương án "slakware" hoặc "slaktest".Thông thường là chọn "slakware" (dạng chuẩn cài đặt),dạng "slaktest" là dạng nhỏ nhất tối thiểu chọn lựa các chương trình lên đĩa cứng.Bạn có thể bổ sung CD "live" từ bộ đĩa CD-Gốc khi chọn lựa những phương án này.

Phương án qua NFS sẽ hỏi  những thông tin về mạng của NFS Server.NFS Server cần phải được thiết lập từ trước đó.Chú ý bạn không thể sử dụng tên mạng mà phải sử dụng IP-Adress và cho máy của bạn cũng như cho NFS Server
Phương án Pre-mounted directory được coi là  phương án mềm dẻo. Bạn có thể sử dụng phương pháp này với các thiết bị mang thông tin như Jaz disk,NFS qua PLIP với định dạng FAT.Sử dụng hệ thống file dưới dạng mount với điểm mount cần thiết trước khi chạy chương trình cài đặt,sau đó chỉ ra điểm đã mount.

SELECT

 Mục này cho phép bạn chọn khu vực ứng dụng nào bạn muốn cài đặt.Chú ý là bạn cần cài đặt khu vực A để có được một hệ thống tối thiểu.Các khu vực khác có thể coi là  không quan trọng.


INSTALL

Khi bạn đã thực hiện xong các mục "target","source","select",thì mục này giúp bạn chọn những packages nào từ những phần bạn đã chọn để cài đặt.Ngược lại có thể quay trở lại bước  trước để hoàn thiện các mục chương trình cài đặt. Mục này giúp bạn chọn một trong các phương án sau:
full,newbile,menu,expert,custom và tag path


Mục full cho phép cài đặt toàn bộ packages từ  những mục chọn các chương trình,tất cả hoàn toàn tự động không thêm một câu hỏi nào thêm cả.Đấy là một cách đơn giản cài đặt,bởi vì bạn không cần phải quyết định thêo kiểu:"packages nào cần cài,cái nào không cần cài".Tất nhiên mục này yêu cầu bạn có đủ không gian đĩa cứng.

Mục newbie giúp bạn cài đặt tất cả các packages cần thiết từ các khu vực bạn đã chọn.Còn với các packages còn lại cần phải trả lời câu hỏi "yes","no","skip".Yes và No thì rõ ràng rồi,còn skip thì bỏ qua tất cả những cái không cần thiết từ khu vực  hiện tại và đi đến vùng chương trình tiếp theo.Phương án này khuyến khích cho những người mới sử dụng bởi vì nó bảo đảm tất cả các packages sẽ được cài đặt.Tuy nhiên phương pháp này chậm hơn các cách khác do co nhiều câu hỏi.

Thật là may mắn bởi vì phương pháp menu được coi là nhanh hơn và mở rộng ra.Đối với từng khu vực chương trình bạn sẽ nhìn thấy ở dạng menu mà ở trong đó bạn có thể chọn các packages.Những packages được chọn nhất định sẽ được cài đặt,còn những packages đã được cài đặt thì không nhất thiết là phải được hiển thị là đã cài đặt rồi trên menu.
Dành cho những người dùng kinh nghiệm thì khuyến khich bạn chọn cách expert.Đây là phương án giúp bạn có được thông tin tuyệt đối về những packages nào cần được cài đặt. Mặt khác bạn co quyền kiểm soát tuyệt đối cái nào cần được cài đặt trên hệ thống của bạn.Phương án này chung tôi không khuyến khich cho người mới dùng.Bởi vì bạn có thể bắn vào chân của mình.

Custom và tag path là những phương án cài đặt khuyến khích cho những người dùng kinh nghiệm,những phương án này dựa trên chủ yếu dang files tag.Nó rất là lâu,nếu trong tay bạn là một máy tính tốc độ cao thì có thể so sánh là nhanh.Để có thêm thông tin bạn lên dọc thêm phần cách sử dụng tag.

Làm ơn chú ý rằng nếu bạn chọn quá nhiều packages cho cài đặt mà không để ý đến lượng không gian trên đĩa cứng của bạn thì không gian trên đĩa cứng của bạn có thể bị hết.Phương pháp duy nhất giải quyết là bạn không lên vội vã cài đặt một vài vùng chương trình mà bạn có thể cài đặt nó sau.Bạn có thể làm được với sự giúp đỡ của các công cụ Slackware dùng cho các packages.

CONFIGURE

Mục configure(cấu hình) giúp bạn thiết lập những  cấu hình chính của hệ thống.Ở đây bạn sẽ nhìn thấy sự phụ thuộc rất lớn vào những packages mà bạn đã cài.Nhưng mà bạn sẽ nhìn thấy những điều sau
-Chọn nhân:Ở đây bạn cần chọn kernel nào để sử dụng.Bạn có thể cài từ đĩa khởi động mà bạn sử sụng trong quá trình cài đặt,hoặc từ đĩa CD-ROM Slackware hoặc những đĩa khác(đã được chuẩn bị sẵn).Ngược lại bạn có thể bỏ qua bước này và khi đó nhân sẽ được chọn theo ngầm định


Tạo đĩa khởi động

Tạo đĩa khởi động là để cho việc sử dụng ở tương lai,có lẽ là một ý hay.Bạn có thể format một floppy và sau đó tạo một trong hai loại đĩa khởi động.Dạng simple - Đơn giản xao chép nhân lên  floppy,còn dạng chuẩn hơn là tạo đĩa khởi động lilo.Để có thêm chi tiết về cấu hình lilo bạn có thể đọc thêm thông tin trong phần cấu hình lilo.


Modem

Chương trình sẽ hỏi bạn về cấu hình của modem của bạn.Tốt nhất bạn nên chọn nếu bạn có modem và đã mắc với cổng nối tiếp.


Mũi Thời Gian(Timezone)

Timezone -cho phép bạn chọn theo mũi giờ nào trên máy tính của bạn.Nếu như bạn chọn theo vùng Zulu thì chúng tôi đành xin lỗi bạn bởi vì mũi giờ của vùng đó nằm ở cuối của bảngdanh sách.


Chuột

Mục này hỏi bạn xem loại nào cài trên máy của bạn cũng như lệnh gpm(8)(bảo đảm cho chuột hoạt động ở chế độ vỏ lệnh(shell prompt)) được tự chạy  khi hệ điều hành khởi động


Đồng hồ máy tính(Hardware Clock)

Hardware Clock - Phần này hỏi bạn xem đồng hồ bên trong máy tính của bạn có tương ứng với thời gian chuẩn GTM(UTC).Đa số trả lời không.


Font

Phông chữ - Phần này giúp bạn  phông chữ cần thiết cho vỏ lệnh(shell prompt)


LILO

Ở đây chương trình hỏi bạn về cách cài đặt Lilo (Linux Loader). Nếu Slackware là HĐH duy nhất  trên  máy của bạn thì bạn chọn simple.Còn nếu như bạn có thêm một vài HĐH khác nữa thì bạn cần chọn expert.Còn mục thứ 3 thì chúng tôi không khuyến khích.Nếu như bạn chọn expert install thì bạn bạn cần phải quyết định LILO sẽ được ghi ở đâu.Bạn sẽ chuyển nó đến MBR(Master Boot Record - sector khởi động chính) của đĩa cứng,ở superblock của phân vùng gốc Linux hoặc trên Floppy.Chú Ý nếu như bạn sử dụng thêm HĐH khác (có vùng boot riêng)thì khuyến khích bạn cài đặt lilo ở superblock trên phân vùng gốc Linux hoặc Floppy.Sử dụng MBR chỉ khi nó ảnh hưởng đến các HĐH khác trên máy của bạn


Network

Mang - Mục này để cấu hình mạng, thực chất bạn có thể bằng ứng dụng netconfig.
CD-ROM
Ở đây hỏi bạn có muốn hay không hệ thống tự động kiểm tra có hay không đĩa CD-ROM và tự động mount nó khi khởi động
X Windsows Manager
Trình duyệt cửa sổ -  bạn có thể chọn môi trường làm việc nào theo ngầm định.


Không phụ thuộc vào packages nào bạn cài đặt,môi trường cửa sổ nào bạn chọn,..chương trình hỏi bạn xem bạn có thích thiết lập password cho  root không.Chúng tôi khuyến khích bạn nên làm việc đó ,có lẽ  đó là điều làm cho hệ thống của bạn thêm an toàn hơn.
EXIT

Chắc chắn là mọi người đều biết mục này.Chúng tôi không nói thêm nữa và cũng chấm dứt phần này ở đây.Chúc các bạn tìm được những điều mới mẻ ở Slackware Linux

Chương 4 Cấu hình

4.1 Cấu hình hệ thống

Trước khi tiến tới cấu hình hệ thống thì bạn nên làm quen với hệ thống,cách hình thành nó,cách tìm kiếm trong nó một chương trình,một tập tin.Bạn cần phiên dịch lại nhân hệ thống hay không?Phần này giúp bạn làm quen với các tổ chức hệ thống cũng như cấu hình các tập tin,sau đó  tiến tới thiết lập cấu hình phức tạp hơn của các thành phần khác.

4.1.1 Hình ảnh hệ thống.

Sẽ rất quan trọng khi bạn nắm rõ cách tổ chức Linux trước khi thực hiện các khuynh hướng khác nhau theo cấu hình của nó.Hệ thống Linux khác với hệ thống DOS hoặc Windows( kể cả Macintosh OS).Phần này giúp bạn làm quen với sự phân bố các thành phần chính của hệ thống.

Tổ chức hệ thống các tập tin

Nguyên tắc khác biệt đầu tiên của Slackware Linux với DOS và Windows chính là việc tổ chức hệ thống các tập tin.Đối với các người mới sử dụng: ở Linux thì các phân vùng đĩa cứng không phân biệt bởi các chữ.Ở trong hệ thống này chỉ có duy nhất một catalog gốc(chính).Bạn có thể coi nó như là C: ở trong DOS.Các phân vùng khác của đĩa cứng có thể mount(kết nối) tới một trong các catalog khác.

Chúng ta gọi thư mục gốc của phân vùng là catalog gốc,nó được phân biệt là (/).Cái hệ thống này có thể làm cho bạn lạ nhưng mà trên thực tế nó rút ngắn đi đời sống  khi mà bạn muốn tăng kích cỡ sử dụng không đĩa cứng.Ví dụ như bạn không có đủ không gian trên đĩa cứng mà được chứa trong /home(Thông thường khi cài Slackware người sử dụng thường tạo một phân vùng đĩa cứng rất lớn làm phân vung gốc - đó chỉ là ví dụ).Bởi vì các phân vùng đĩa cứng có thể kết nối vào bất kì catalog nào cho lên trong trường hợp này bạn chỉ cần vào cửa hàng vi tính và mua một HDD nữa để kết nối vào /home.Vậy là bạn không sợ thiếu không gian cho hệ thống của bạn nữa.Tất cả đều không cần thiết lập lại hệ thống cũng như không cần di chuyển các chương trình.
Dưới đây là những thông tin cơ bản về những catalog chính bậc trên của hệ thống Slackware.

/bin

Chứa những chương trình quan trọng cho người sử dụng.Có thể nói đây là những lệnh quan trọng cần cho người dùng khi làm việc với hệ thống.Ví dụ như vỏ lệnh và lệnh của hệ thống tập tin(ls,cp..).Catalog /bin thông thường không chịu sự thay đổi sau khi cài đặt.Nếu như có chỉ là những packages được nâng cấp

/boot

tập tin sử dụng để khởi động Linux là LILO.Mục lục này cũng sẽ không thay đổi sau khi cài đặt

/cdrom
(/mnt/cdrom)

Hãy nhớ rằng tất cả các disk được kết nối với một catalog xác định.Và catalog /cdrom chỉ dùng cho việc kết nối với đĩa compact của bạn

/dev

Trong Linux tất cả coi là tập tin.Thậm chí kể cả các bộ phận cứng cũng như các công nối tiếp,máy scan.đĩa cứng...Việc sử dụng với các bộ phận khác nhau sẽ được thực hiện bởi các tập tin khác nhau(gọi là device node).Chúng nằm trong catalog /dev.Nó giống như trong Unix và các phiên bản khác.

/etc

Chứa các tập tin cấu hình.Tất cả từ tập tin cấu hình X-Windows,cơ sở dữ liệu người sử dụng tới các script tự thực thi.Administrator tất nhiên cần phải nắm rõ catalog này

/home

Linux được coi là hệ thống đa tài khoản.Mỗi tài khoản có một thư mục riêng biệt làm nơi gốc của mình.Tên chung của nó là "home" catalog tài khoản.Catalog /home chính là vị trí của những catalog home của các tài khoản.

/lib

Hệ thống thư viện cần thiết cho các chương trình.Thư viện C,thư viện động của vật mang khởi động,thư viện ncurses và module kernel - đây là nơi lưu trữ chính.

/lost+found

Khi khởi động hệ thống có sảy ra hiện tượng kiểm tra hệ thống tập tin bị lỗi.Nếu như có lỗi thì thực thi fsck và sửa chữa chúng.Phần têp tin được khôi phục sẽ được cất dữ tại đây

/mnt

Catalog dùng làm điểm kết nối tạm thời cho các đĩa cứng hoặc ngưng kết nối với các bộ phận

/opt

Dùng cho các packages bổ sung.Ý tưởng như sau,tất cả các packages sẽ được cài đặt vào đấy(ví dụ /opt/<program>)và cuối cùng nếu như packages không cần thiết thì chỉ cần xóa bỏ catalog của packages là kết thúc.Ở Slackware một vài chương trình được đặt vào /opt(như KDE /opt/kde)nhưng bạn có thể thoải mái bổ sung vào /opt

/proc

Có lẽ đây là một catalog đặc biệt.Thực tế nó không coi là một phần của hệ thống.Nó là hệ thống file ảo mà coi là truy cập từ nhân.Những thông tin khác nhau mà nhân muốn thông báo đến bạn.Nó được thể hiện thông qua các tập tin trong /proc.Bạn có thể thử như
cat /proc/cpuinfo

/root

Administrator của hệ thống - root.Catalog home của nó là /root thay vì /home/root.Nguyên nhân là catalog /home có thể nằm ở những phân vùng ngoài (/).Nếu như  /home có thể không được kết nối tới thì bản thân root sẽ cần phải đăng nhập để giải quyết vấn đề này.

/sbin

Những chương trình chính thực hiện bởi root cũng như các tiến trình khởi động cũng được lưu trữ tại đây.Những tài khoản thông thường không sử dụng những chương trình này.

/tmp

Đây là môi trường lưu trữ tạm thời cơ sở dữ liệu.Tất cả các tài khoản có quyền đọc,ghi vào catalog này

/usr

Đây là một catalog lớn trong Linux có thể nói tất cả những gì còn lại đều nằm ở đây.Chương trình,tài liệu,mã gốc nhân và X-Windows.Chính xác vào catalog này bạn sẽ cài đặt các chương trình.

/var

Hệ thống tập tin log,tập tin đệm...Catalog này thường xuyên thay đổi.


Bây giờ bạn đã có một hình tượng khách quan về những cái nào chứa trong những catalog nào.Và bạn sẽ dễ dàng tìm được tập tin mà bạn muốn tìm trên hệ thống(tất nhiên không bằng tay).

Tìm kiếm tập tin

Bạn đã biết những cái nào chứa trong những cái catalog nào rồi những cũng không có nghĩa là giúp bạn tìm được các tập tin cụ thể.Tất nhiên bạn có thể thực hiện trên tất cả các catalog việc tìm kiếm tuy nhiên có nhiều biện pháp nhanh hơn.Trong Slackware có bốn công cụ chủ yêu cho việc tìm kiếm tập tin.

which

Một công cụ đầu tiên  đó là lệnh which(1).Thông thường sử dụng để tìm kiếm nhanh các chương trình.Nó đơng giản là tìm kiếm ở các catalog được chỉ ra trên đường dẫn mà bạn chỉ ra và  đưa ra  những tương ứng và cả đường dẫn tới tập tin.
$ which bash
/bin/bash
Có nghĩa là  bash nằm ở  catalog /bin.Nhưng hạn chế là nó chỉ tìm trong đường dẫn của bạn.

whereis

Lệnh whereis(1) làm việc giống như which nhưng có bổ sung thêm thông tin vào cuối thông tin man-pages(trang man) cũng như chương gốc.Kết quả của việc tìm kiếm như sau:

$ whereis bash

bash: /bin/bash /usr/bin/bash /usr/man/man1/bash.1.gz

Lệnh không chỉ nói xen chương trình nằm ở đâu mà còn chỉ ra những tài liệu online của nó nằm ở đâu.Nhưng mà nó vẫn hạn chế.Nêu như bạn muốn tìm kiếm những tập tin cấu hình.Điêu này thì which và whereis không giúp đỡ được.
find
Lệnh find(1) có thể giúp bạn tìm kiếm tất cả.Chẳng hạn tôi muốn tìm kiếm xinitrc trên hệ thống

$ find / -name xinitrc
/var/X11R6/lib/xinit/xinitrc

find cần phải có nhiều thời gian để tìm kiếm bởi vì nó thực hiện trên tất cả các catalog của hệ thống.Nếu bạn là một tài khoản bình thường thì lệnh này có lẽ sẽ không ít lần thông báo về lỗi truy cập từ những catalog cấm(với những người có thể truy cập vào root).Nhưng cuối cùng find tìm ra tập tin cần thiết.Đấy là tôt rồi.Nếu như có thể nó làm việc nhanh hơn...

locate

Lệnh locate(1) thực hiện công việc tìm kiếm giống như find nhưng nó tìm kiếm trên cơ sở dữ liệu của mình thay vì trên toàn bộ catalog hệ thống.Cơ sở dữ liệu của nó được kết cấu sao cho tự động cập nhật vào 4:40 sáng.Bạn có thể bằng tay thực hiện điều này bằng updatedb(1) để cập nhật dữ liệu trước khi tìm kiếm(trước khi thực hiện bằng tay cần thực thi su nobody).Ví dụ của locate:

$ locate xinitrc # Không nhất thiết là root
/var/X11R6/lib/xinit/xinitrc
/var/X11R6/lib/xinit/xinitrc.fvwm2
/var/X11R6/lib/xinit/xinitrc.openwin
/var/X11R6/lib/xinit/xinitrc.twm

Chúng ta nhận được nhiều hơn so với mong đợi và rất nhanh.Bạn có thể tìm thấy mọi thứ trên Linux.

Catalog /etc/rc.d

Những tập tin được thực thi bởi hệ thống trong qúa trình khởi tạo(initialization) được lưu trong catalog /etc/rc.d. Slackware sử dụng script khởi tạo theo phong cách của BSD.Từng nhiệm vụ hoặc tầng thực thi(runlevel) có tập tin rc của mình.Chính thế cấu trúc mà chúng ta nhận được sẽ rất dễ dàng sử dụng.

Có một vài mục script khởi tạo.Khởi động ban đầu hệ thống,tầng thực thi,khởi tạo mạng và thích ứng System V.Theo truyền thống chúng ta  chuyển  tất cả còn lại tới một phạm trù khác(other category)

Bước đầu qúa trình khởi động hệ thống

Chương trình đầu tiên mà Slackware thực hiện sau nhân Linux là init(8).Chương trình này đọc tập tin /etc/inittab(5) để biết cách khởi động hệ thống.Thực hiện /etc/rc.d/rc.S script để chuẩn bị cho quá trình chuyển tiếp chọn tầng thực thi(runlevel).tập tin rc.S kích hoạt bộ nhớ ảo,kết nối các tập tin hệ thống,xóa bỏ những tập tin log của catalog khởi tạo các thiết bị plug và play,khởi động module nhân,thiết lập cấu hình thiết bị PCMCIA,kích hoạt các cổng nối tiếp,và tất nhiên cho đến khi kết thúc công việc của mình.Nó gọi ra những script dưới đây từ catalog /etc/rc.d

rc.SNó là khởi tạo các script
rc.modules Khởi động modules nhân.Như là thiết bị mạng,PPP và nhiều thiết bị khác.Nếu như script tìm thấy rc.netdevice thì nó sẽ thực hiện
rc.pcmcia Kiểm tra sự có mặt và thiết lập cấu hình tất cả thiết bị PCMCIA(có mặt trên hệ thống của bạn).Nó thuận lợi cho người sử dụng các máy latop mà có PCMCIA modem và thiết bị mạng.
rc.serial Thiết lập cấu hình cổng nối tiếp và thực hiện tương ứng với lệnh setserial
rc.sysvinit Tìm kiếm khởi tạo System V tương ứng với tầng thực thi(runlevel) đã chọn và khởi động chúng.Chúng ta sẽ thảo luận ở phía dưới.

Script Khởi tạo tầng thực thi

Sau khi quá trình khởi tạo hoàn thành init chuyển sang khởi tạo tầng thực thi.Tầng thực thi diễn tả xem ở trong chế độ nào hệ thống sẽ làm việc.Một âm thanh thừa vang lên.Vậy là runlevel  thông báo cho init "sẽ ở chế độ đa tài khoản(multiuser login) hay là chỉ là đơn tài khoản(single user),sẽ sử dụng hay không dịch vụ mạng,sử dụng hay không X Windows hoặc agetty(8) cho việc quản lý đăng nhập vào hệ thống(logins).Những tập tin dưới đây xác định những tầng thực thi khác nhau trong Slackware

           rc.0 Tắt hệ thống(runlevel 0).Theo mặc định nó là ảnh vào rc.6
           rc.4 Chế độ đa tài khoản(runlevel 4),nhưng X11 với XDM,GDM hoặc KDM làm môi                    trường đăng nhập.
            rc.K Chế độ đơn tài khoản(runlevel 1).
      rc.M Chế độ đa tài khoản (runlevel 2 và 3) nhưng với môi trường đăng nhập là văn                      bản(text-based login).Nó coi là mặc định trong Slackware
Khởi tạo mạng

 Các tầng thực thi 2,3 và 4 tiến hành khởi động các dịch vụ mạng.Những tập tin sau                chịu trách nhiệm cho quá trìng khởi tạo mạng:

            rc.inet1 Tạo thành từ ứng dụng netconfig ,chịu trách nhiệm về cấu hình mạng
            rc.inet2 Thực hiện sau rc.inet1 và khởi động dịch vụ mạng chính
            rc.atalk Khởi động dịch vụ AppleTalk
            rc.httpd Khởi động dịch vụ web Apache
            rc.samba Khởi động dịch vụ Samba
            rc.news Khởi động dịch vụ tin tức

Sự tương hợp với System V

Việc tương hợp với System V được tiến hành trên Slackware 7.0.Có rất nhiều phiên bản Linux sử dụng định dạng này cùng với BSD.Trong môi trường đó mỗi một catalog script tương ứng với một tầng thực thi(runlevel) còn BSD thì chỉ có một script tương ứng với một tầng thực thi.
rc.sysint là một script hướng dẫn tìm kiếm tất cả System V init script ở trong catalog /etc/rc.d và
thực hiện nó(nếu như thích ứng với tầng thực thi).Điều nãy sẽ có lợi nếu như bạn sử dụng các chương trình thương nghiệp mà cài đặt các script System V,tuy nhiên trong cùng thời gian đó bạn cũng có thể sử dụng BSD script.

Các files khác

Những script dưới đây là các script khởi động,chúng thông thường được chạy bởi một hay nhiều script kể trên,chính vì thế tất cả  những gì bạn muốn thay đổi cấu hình hệ thống chính là soạn thảo lại nội dung của nó.


rc.cdrom Nếu như kích hoạt thì nó sẽ kiểm tra xem có compact disk trong ổ đĩa hay không,nếu có thì nó sẽ kết nối tới /cdrom
rc.gpm Khởi động dịch vụ làm việc với chuột(general purpose mouse).Nó cho phép bạn có thể sao chép,dán trong console.
rc.ibcs2 Đảm bảo hoạt động trong môi trường Intel Binary Compatibility.Điều này cần thiết khi bạn thiết kế những chương trình cần biên dich cho SCO Unix hoặc những phiên bản thương mại Intel Unix.Khi đó không nhất thiết phải chạy các chương trình Linux
rc.font Khởi động phông chữ theo chọn lựa của người dùng cho vỏ lệnh
rc.local Chứa tất cả các thông tin khởi động đặc biệt cho hệ thống của bạn.Trong những phiên bản Slackware gần đây những tập tin này rỗng.Nó lưu trữ cho hoạt động của administrator hệ thống.Script này thực hiện cuối cùng khi khởi động hệ thống.

Để kích hoạt tất cả các script bạn cần bổ sung cho nó thêm quyền hạn thực thi với lệnh chmod.Để script ngừng thực hiện bạn chỉ cần xoá bỏ quyền hạn thực thi là xong.Để có thêm thông tin về chmod bạn có thể đọc thêm ở trang man của nó.

4.1.2 Chọn kernel

Nhân là một phần của HĐH mà cho phép truy cập tới các thiết bị phụ trợ máy tính,điều khiển các tiến trình và kiểm soát công việc toàn hệ thống.Nhân đảm bảo hoạt động các thiết bị phần cứng,vì thế chọn lựa nhân cho hệ thống của bạn là một công việc rất quan trọng khi cài đặt.

Slackware có khoảng 60-nhân đã biên dịch.Như vậy là bạn đã có rất nhiều cơ hội để chọn lựa.Mỗi kernel chứa tổ hợp các driver(theo tiêu chuẩn) cộng thêm những driver đặc biệt.Bạn có thể sử dụng một từ những nhân đã biên dịch hoặc có thể mình biên dịch cho hệ thống của bạn.Khi đó bạn sẽ chắc chắn rằng nhân của bạn đảm bảo cho các thiết bị phần cứng hoạt động trên hệ thống của bạn.

Catalog /kernels trên Slackware CD-ROM

Nhân Slackware chưa biên dịch được chứa trên catalog /kernels của Slackware CD-ROM và trên site  FTP  trong catalog chính Slackware.Việc xuất hiện các phiên bản mới sẽ dùng để nâng cấp nhân và tất cả các tài liệu liên quan tới nó nằm trong cùng catalog với nhân.Catalog /kernels chứa các catalog con cho từng phần của nhân.Tên của catalog con trùng với tên nhân.Trong từng catalog con bạn có thể tìm thấy những tập tin sau:

Tập tin                              Ý nghĩa

System.map                    Hệ thống map files cho nhân
bzImage(zImage)            Ảnh của nhân
config                              tập tin gốc cấu hình của nhân

Để cài đặt nhân hãy sao chép System.map và config vào catalog /boot của hệ thống,còn ảnh của nhân thì sao chép vào /vmlinuz.Thực hiện ứng dụng /sbin/lilo(8) để cài đặt LILO cho nhân mới sau đó khởi động lại hệ thống.Tất cả những công việc này bạn phải làm cho cài đặt nhân từ những nhân chưa được biên dịch cho hệ thống của bạn.

Nhân kết thúc tại ".i" - đó là IDE kernel. Có nghĩa là không chứa dịch vụ đảm bảo hoạt động cho SCSI trong nhân.Nhân kết thúc tại ".s" - đó là SCSI kernel.Chúng chứa dịch vụ đảm bảo hoạt động cho IDE như ".i" và cộng với SCSI.

Biên dịch kernel từ mã gốc

Những người mới sử dụng thường hỏi :"Tôi có lên biên dich nhân cho hệ thống của mình không?".Câu trả lời là có thể.Hầu như  người sử dụng một trong những nhân đã biên dịch với những modules cho các thiết bị trên máy mà các nhân cũ không có.Bạn muốn tự biên dịch nhân chỉ khi mà bạn muốn nâng cấp nhân lên một phiên bản cao hơn mà vẫn chưa được đặt vào trong các phiên bản Slackware hoặc là bạn muốn vá lại nhân trên hệ thống của bạn.

Việc tông hợp kernel của mình không khó.Công việc đầu tiên là cần phải biết có cái gì trên tập tin cấu hình của nhân trên hệ thống của bạn. Chú ý là bạn đã cài đặt từ khu vực K trong quá trình cài đặt hệ thống.Bạn cần bổ sung thêm packages từ khu vực D và một phần trình biên dịch C,GNU make cùng GNU binutils.Nói chung là không tồi nếu như toàn bộ khu vực D đã được cài đặt nếu như bạn dự định tiến hành tinh chế cài gì đó.Bây giờ chúng ta đã chuẩn bị cho tổng hợp nhân.

$ su
Password:
# cd /usr/src/linux

Công việc đầu tiên là đưa mã gốc nhân về trạng thái ban đầu của nó.Bạn thực hiện như sau:

# make mrproper

Bây giờ bạn sẽ xây dựng nhân trên hệ thống của bạn.Những kernel mới thường giới thiệu ba phương pháp để thực hiện công việc này.Phương pháp 1:Đó là hệ thống tiêu chuẩn câu hỏi-câu trả lời  không sử dụng menu.Hệ thống sẽ đưa ra rất nhiều câu hỏi cho bạn trả lời sau đó tiến hành tạo tập tin cấu hình.Nhưng có một vấn đề là nếu bạn trả lời sai thì bạn cần phải làm lại hoàn toàn từ đầu.Phương pháp thứ 2: Được đông đảo sử dụng là sử dụng menu.Và cuối cùng là phương pháp sử dụng công cụ X để cấu hình nhân.Chọn phương pháp nào mà bạn thích theo các lệnh tương ứng sau:

# make config     (câu hỏi-câu trả lời,chế độ dòng lệnh)
#make menuconfig (menu,chế độ dòng lệnh)
#make xconfig    (X-công cụ,chú ý bạn phải ở trong X)


Đối với người mới sử dụng có lẽ menuconfig được coi là phương án đơn giản.Bạn có thể tìm thấy những thông tin chỉ dẫn từng phần của nhân trên màn hình.Sau khi xây dựng cấu hình của nhân bạn hãy thoát ra khỏi chương trình.Nó sẽ tạo ra tập tin cấu hình.Bây giờ chúng ta có thể chuẩn bị cho tổng hợp nhân:

# make dep
# make clean

Bước tiếp theo là biên dịch nhân.Đầu tiên đưa ra lệnh zImage.Nếu như không thành công do nhân quá lớn thì đừng lo bạn có thể sử dụng bzImage

# make zImage(thử ban đầu)
# make bzImage(Dùng khi lệnh trên không thành công)

Dựa vào tốc độ của processor mà quá trình này có thể lâu hay nhanh.Trong quá trình tổng hợp bạn sẽ nhìn thấy trên màn hình các lệnh biên dịch nhân.Sau khi tổng hợp ảnh của nhân bạn thích tổng hợp tất cả các phần của kernel mà bạn chỉ ra sẽ thực hiện như modules

# make modules

Bây giờ chúng ta có thể cài đặt kernel mới cùng với các modules của nó.Để cài đặt nhân trên Slackware bạn cần thực hiện theo sau:

# mv /vmlinuz /vmlinuz.old
# cat arch/i386/boot/zImage > /vmlinuz
# mv /boot/System.map /boot/System.map.old
# cp System.map /boot/System.map

Thay zImage bằng bzImage nếu bạn tổng hợp kernel rất lớn.Có lẽ bạn thích soạn thảo lại tập tin /etc/lilo.conf và bổ sung vào nó một phần riêng cho nhân cũ của bạn,dùng k

4.2 Cấu hình mạng

4.2.1 Thiết bị mạng

Giống như phần lớn các đồ vật hấp dẫn khác mà bạn muốn làm việc với máy tính,kết nối nó với mạng cần phải có một thiết bị chuyên dụng.Có thể bạn cần phải bổ sung NIC(Network Interface Card - Interface thiết bị mạng) để kết nối vào LAN và có thể cả modem để kết nối vào internet,và cũng có thể là cả hai hoặc nhiều hơn...rất nhiều nữa.

Khi thiết lập cấu hình bạn cần xác định thiết bị phần cứng nào,PCMCIA(cho các máy laptop)và không thuộc lớp PCMCIA.Thực chất của việc phân chia là do hiện tại driver cho các thiết bị PCMCIA không có sẵn trong các phiên bản kernel mà cần phải có packages bổ sung chứa đựng các driver cần thiết(giống như modules) và một vài chương trình cho thiết lập cấu hình của các thiết bị PCMCIA.Còn lại là được cài sẵn trong nhân.

netmods

Drivers của các thiết bị mạng được chứa trong nhân và thuộc packages netmods(slackware/n3/netmods.tgz).Nếu bạn không cài đặt packages này thì hãy cài nó bây giờ đi(xem thêm phần quản lý packages để thêm thông tin về cài đặt packages).

Modules của nhân  cần phải được bật lên trong qúa trình khởi động máy tính,chúng được bật lênh từ các tập tin rc.modules thuộc catalog /etc/rc.d.Trong tập tin rc.modules có phần  ''Network device support''.Nếu như bạn mở tập tin ra bạn sẽ nhận thấy rằng đầu tiên nó sẽ kiểm tra tồn tại hay không tập tin rc.device ở catalog /etc/rc.d;rc.device được tạo thành trong trường hợp nếu như setup biết cách xác định thiết bị mạng của bạn khi cài đặt.Nếu như thế bạn sẽ không cần đọc thêm nữa còn nếu không thi hãy tiếp tục nhé.

Phía dưới block "if" là danh sách các thiết bị và dòng modprobe,Mỗi một dòng là một chú thích.Bạn hãy tìm thiết bị của bạn và gỡ bỏ những chú giải ấy theo các dòng modprobe,đừng quên lưu lại sự thay đổi trên tập tin.Nếu bạn thực hiện như root cho rc.modules thì drivers cho thiết bị của bạn sẽ được bật lên(cũng giống như các modules khác).chú ý một vài modules (như là nc2000) yêu cầu có những tham biến đi cùng,cho lên hãy thận trọng để làm đúng.

Thiết bị mạng PCMCIA

Thiết bị mạng PCMCIA được thiết kế đơn giản hơn so với những cái còn lại.Chú ý bạn phải cài đặt packages pcmcia(slackware/a11/pcmcia.tgz)(xem thêm phần quản lý packages để thêm thông tin về cài đặt packages).Khi cài đặt  thì packages pcmcia sẽ tạo ra tập tin rc.pcmcia trong catalog /etc/rc.d và trong thư mục /etc/pcmcia và tất nhiên sẽ cài vào catalog /etc/modules/<kernel serial>/pcmcia.Thật là tuyệt vời nó sẽ tự động xác định thiết bị và tự bung ra drivers cho những thiết bị pcmcia cho phép.Nếu như bạn lắp thiết bị mạng vào thì sẽ nghe thếy tín hiệu thông báo khi modules được bật lên.Khi bạn tháo thiết bị ra thì modules cũng tự động ngắt đi.

Thật đáng tiếc nếu bạn nâng cấp nhân thì sớm muộn bạn cũng phải tiến hành biên dịch lại pcmcia modules để nâng cấp.Thông thường mã gốc đi kèm cùng với phiên bản nhân,hãy tìm ở /source/a/pcmcia.Bạn có thể đọc thêm tài liệu ở đó để có thêm thông tin.

4.2.2 Các chương trình làm việc với mạng

ifconfig

Vậy là nhân hệ thống đã làm việc với thiết bị phần cứng.Bây giờ bạn học các chương trình để chỉ định nhân sẽ truyền đạt thông tin như thê nào và ngược lại.

 Chúng ta cần xây dựng cấu hình interface cho thiết bị mạng.Vậy hãy sử dụng ifconfig(8).
ifconfig tốt nhất để thực hành trên các ví dụ.Nêu bạn muốn có thể nhìn vào tập tin rc.net1 để xem chương trình được bắt nguồn từ đâu.Dạng cấu trúc như sau:

# ifconfig eth0 192.168.1.10 broadcast 192.168.1.255 \
netmask 255.255.255.0

Dòng trên có nghĩa là eth0(thiết bị mạng đầu tiên;đối với token là tr0;ppp là ppp0..) với IP 192.168.1.10,IP broadcast là 192.168.1.255 và IP netmask là 255.255.255.0(có nghĩa là ba phần đầu của IP -address là địa chỉ mạng,còn .10 là host của bạn).Bạn có thể thoải mái sử dụng IP broadcast từ ba phần đầu tiên block trên IP-address và kết thúc bằng 255.Còn netmask thì thông thường có thể sử dụng 255.255.255.0.Nếu như bạn làm được điều đó một cách thành thạo thì có thể bạn không cần phải đọc thêm phần này nữa.

ifconfig có thể sử dụng để kiểm tra cấu hình hiện tại.Thực hiện nó(bỏ qua tất cả các tham biến)để có được danh sách các thiết bị mạng trên máy tính của bạn.

#ifconfig(hoặc ifconfig -a)

eth0      Link encap:Ethernet  HWaddr 00:80:48:1F:46:AC 
          inet addr:192.168.10.50  Bcast:192.168.10.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:885 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:58286 (56.9 Kb)  TX bytes:720 (720.0 b)
          Interrupt:11 Base address:0x4000

lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:318 errors:0 dropped:0 overruns:0 frame:0
          TX packets:318 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:118206 (115.4 Kb)  TX bytes:118206 (115.4 Kb)

Khi bạn gọi lệnh /sbin/ifconfig bỏ qua tham biến "-a" mà không nhìn thấy eth0 interface thì có nghĩa là thiết bị mạng của bạn không có giá trị IP-address hoặc route.

route

Để biết được thông tin được gửi đi đâu nhân đã sử dụng routing table.Tôi không có ý định nói sâu về nó.Tuy nhiên bạn có thể xem bảng danh sách đó với sự giúp đỡ /sbin/route(8).

#route

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
localnet        *               255.255.255.0   U     0      0        0 eth0
loopback        *               255.0.0.0       U     0      0        0 lo
default         192.168.10.1    0.0.0.0         UG    1      0        0 eth0

route -n sẽ thông báo cho bạn một bảng IP-address thay vì tên;nó tiện lợi khi mà nảy sinh những khó khăn với tên server của bạn hoặc chỉ đơn giản bạn không thích biểu diễn tên server của mình dưới dạng chữ.Thật may mắn khi bạn chỉ phải xây dựng một hệ thống mạng đơn giản(như bao người khác)thì 2.2.x kernel sẽ tự động tạo bảng routing-table cho bạn.

netconfig

netconfig là một chương trình được cài đặt sẵn trên Slackware giống như bao chương trình khác.Bạn có thể sử dụng nó một mình(không cần sự giúp đỡ).Netconfig không khó khi sử dụng khi hướng dẫn bạn cài đặt cho một kết nối mạng thông thường.Sau khi chạy netconfig thì sẽ có cửa sổ như sau hiện ra:


Sau đó bạn cần phải điền tên host và domain máy tính của bạn.Bạn có thể điền cái gì đó nếu như bạn không định xây dựng server mà sẽ sử dụng cho nhiều người khác nữa.Sau đó bạn sẽ phải nhập vào IP tĩnh,DHCP,hoặc đơn giản loopback.

Nếu bạn không kết nối internet thì hãy chọn loopback.Nếu bạn định kết nối với trường đại học,một văn phòng lớn thì có lẽ lên chọn DHCP.Ngược lại hãy chon IP tĩnh.Nếu như không chọn IP-address thì chương trình sẽ kết thúc.Nếu chọn IP-address tĩnh thì cần phải nhập vào:IP address,IP-broadcast,IP-netmask,IP-server.Netconfig sẽ giúp bạn hiểu rõ các giá trị này.

pppsetup

Trong Slackware có pppsetup - là một ứng dụng để thiết lập cấu hình dialup kết nối với ISP (Internet Server Provider).Nó nằm ở package ppp.tgz trong khu vực chương trình N.pppsetup cũng sử dụng interface như vậy như chương trình cài đặt.pppsetup đưa ra cho bạn nhiều câu hỏi và cài đặt tập tin cấu hình ở /etc/ppp.Từ root bạn có thể chạy pppsetup.Bạn sẽ nhìn thấy như sau.

Phone number

 

Ở đây bạn cần phải chỉ ra số ISP ở dạng tiền tố(prefix) của tổ hợp số.Nếu như số của bạn là 555-1013 thì bạn cần ghi là atdt5551013(chú ý nếu bạn sử dụng bộ âm thanh).Còn nếu như bạn sử dụng điện thoại có call waiting(đợi gọi) mà bạn muốn cắt bỏ chế độ ấy thì có thể như sau:atdt*70,5551013.Dấu "," là nhất định có.Nó cho phép dừng lại 1,5s sau *70 để ngắt bỏ chế độ call waiting.Không có dấu "," sẽ không làm việc.

Modem device


Ở đây bạn cần phải chọn modem sẽ kết nối vào đâu.Nếu bạn biết được cổng COM nào kết nối trên Windows thì bạn có thể chọn tương tự.Thông thường là ttyS0.

Modem baud rate


hãy chọn baud rate gần với modem của bạn nhất.Nếu bạn không biết baud rate thì có thể đọc thêm tài liệu kèm theo modem của bạn.

Callback


Rất ít ISP sử dụng callback vì thế bạn cứ yên tâm chọn "NO".Callback có nghĩa là đầu tiên bạn gọi cho ISP,sau đó họ gọi lại cho bạn chỉ khi bạn đã vào mạng.Nếu bạn thấy cần có thể trả lời "Yes".Khi đó bạn sẽ cần nhập số của bạn vào(kể cả login và password).Và câu cuối là cấu hình bạn sử dụng là gì:CHAP hay là PAP.Nếu là Yes thì bạn cần phải cấu hình nó.Xem phần dưới để biết cách làm,còn nếu 'No' thì hãy xem phần 'Chat script'.

Modem init string


Nếu như bạn có một modem lạ thì bạn đơn giản chỉ cần nhấn Enter để mặc định cho modem là "AT&FH0".Ngược lại hãy xem tài liệu đi kèm modem để rõ thêm.

Domain name


Bạn cần điền tên domain của bạn vào.Có thể như là "primer.net","slackware.com" hoặc đại loại như thế.

DNS IP address


ISP của bạn cần thông báo cho bạn IP-address server của chúng.Nếu bạn có hãy điền vào,ngược lại hãy xem xét lại ISP để rõ hơn.

Authentication method

Bạn cần phải biết ISP sử dụng CHAP hay là PAP hoặc là không một cái nào cả.Để đơn giản hãy gọi đến ISP của bạn và hỏi họ.Và có lẽ sau khi nhập vào bộ số để kết nối bạn sẽ nhìn thấy cửa sổ login và password.Nhưng có lẽ bạn nên sử dụng "SCRIPT".Ngược lại hãy liên hệ với ISP của bạn để biết cách sử dụng.
PAP hoặc CHAP

Nếu chọn PAP hay CHAP thì bạn sẽ phải nhập vào username và password.ISP cần được gán với username,nếu như có gì đó không đúng thì đã có cái gì đó không đúng.Bạn cần phải liên hệ lại để nhận được username của mình.Sau đó sẽ nhập vào password.
Chat Script

Nếu chọn "SCRIPT" thì có lẽ sẽ cần rất lâu để giải thích thế nào là script.Hãy đọc nó một cách cẩn thận,bởi vì nó được ghi rất là rõ ràng trong đó.
Done

Ở cuối cùng sẽ hiển thị tất cả cấu hình của ppp.Bạn không thể miêu tả nội dung của nó,nhưng có thể kiểm tra xem mọi thứ đã đúng chưa.Nhấn enter để lưu lại cấu hình và thoát ra khỏi hệ thống.Để kích hoạt kết nối bạn cần chạy root và gõ lệnh ppp-go,khi nào chương trình thông báo cho bạn biết IP-local và IP-remote thì có nghĩa là bạn đã kết nối vào internet.Khi muốn ngắt liên kết hãy thực hiện ppp-off như root.

4.2.3 /etc

/etc/inetd.conf

Đối với mỗi HĐH thì việc định hướng vào sử dụng mạng cũng như thực hiện các dịch vụ mạng
khác nhau được coi là một công việc rất bình thường.Thông thường đối với mỗi dịch vụ cần có một chương trình chuyên giám sát các kết nối.Có thể gâp áp lực lên hệ thống nếu như nó phải thực hiện công việc cho qúa nhiều dịch vụ.Để giảm trọng tải cho hệ thống người ta đã tạo ra inetd hay là internetsuper.inetd dùng để nghe các yêu cầu theo nhiều socket,khi có yêu cầu thì inetd sẽ nhường lại quyền điều khiển cho server tương ứng để làm việc với yêu cầu.tập tin cấu hình inted là /etc/inetd.conf.Trong nó có chứa các server cần được thực thi đối với các kết nối khác nhau.Bạn có thể xem trong man-pages để có thêm thông tin.

ftp stream tcp nowait root /usr/sbin/tcpd wu.ftpd -l -i -a

Dòng trên có liên quan tới ftp server.Chú ý:đầu tiên là tên protocol "-ftp" và cuối cùng là chương trình cần chạy để trả lời cho yêu cầu.Trong ví dụ trên thì chương trình cần chạy để trả lời cho yêu cầu là /usr/sbin/tcpd.Chương trình "wraper" mà thực hiện các đòi hỏi an toàn cho server cũng được thực thi.wu.ftp khách quan là ftp của chúng ta,nhưng tcpd khởi động nó cho bạn.Bạn có thể xem phần tiếp sau để có thêm thông tin.

Giống như các tập tin hệ thống khác,chú thích trong inted,conf bắt đầu bởi dấu "#".Bạn có thể kích hoạt hoặc ngắt các dịch vụ cho inted,ngắt chú thích(biến dòng chú giải thành dòng lệnh)hoặc bật chú thích(biến dòng lệnh thành chú thích) ở trong tập tin này và cuối cùng là khởi động inted.

/etc/resolv.conf

Tập tin này thông báo trên toàn hệ thống rằng thông tin DNS từ đâu.Tất cả tên server được sử dụng sẽ liệt kê ở dưới,kể cả tên host của bạn.Dưới là một ví dụ của tập tin này(từ máy latop - nịnja.tdn):

domain tdn
nameserver 192.168.1.1
search tdn. slackware.com

Dòng đầu có nghĩa là tên domain tdn cho nịnja.Thứ hai là DNS server trên mạng nhà của bạn.Bạn có thể ghi chúng bao nhiêu tuỳ thích.Chúng sẽ được tinh chế theo thứ tự khi mà một chương trình nào đó cần tìm IP-address tương ứng với tên của domain đã nêu.

Dòng cuối cùng có lẽ là hay hơn,nó ghi ra tất cả tên của domain được gán cho hệ thống.Chẳng hạn như tôi có máy zuul.tdn và hejaz.slackware.com.Khi đó tôi có thể thực hiện ping zuul và ping hejaz.Thực chất khi ping thì lệnh ping đã bổ sung thêm".tdn" vào zuul và tìm host tương ứng.Còn đối với "hejaz" thì đầu tiên nó thử với "hejaz.tdn".Không có host nào tương ứng,cho nên nó tiến hành thử với "hejaz.slackware.com" và ping.Chú ý tất cả các domain được chỉ ra trong search cần phải được kết thúc bằng "." nhưng trừ cái cuối cùng và tất nhiên nếu chỉ có một cái duy nhât thì nó cũng chình là cuối cùng("." không cần chỉ).

/etc/host

Tập tin host làm đơn giản hoá quá trình tìm kiếm host trong domain.Nó chứa danh sách các host cùng với IP-address tương ứng.Nó tiện lợi cho các server không quá lớn,trong lúc hệ thống khởi động lại khi ấy tên các server không hoạt động.Tệp của tôi có dạng như sau:

127.0.0.1 localhost
192.168.1.32 ninja.tdn ninja

Dòng đầu tiên là cần phải có như mặc định.Dòng thứ hai có thể không.Bạn có thể chỉ ra nhiều tên cho một địa chỉ,các tên phân biệt bằng dấu cách.Như vậy là của tôi "192.168.1.32" tương ứng với "ninja.tdn" và ngược lại,còn "ninja"cũng tương tự.

4.2.4 rc.inet1
/etc/rc.d/rc.inet1 - đây là tập tin sử dụng cho thiết bị mạng hồng ngoại.Nó định hướng và cài đặt địa chỉ cùng với đường dẫn. Trong Slackware rc.inet1 được đi kèm cùng với nhiều chú thích.

4.2.5 rc.inet2
Tập tin /etc/rc.d/rc.inet2 liên quan tới một phần khác của mạng:cài đặt dịch vụ và domain.Chúng ta hãy xem ví dụ sau:

#Start the NAMED/BIND name server:
if [ -f $NET/named ]; then
   echo -n ''named''
   $NET/named -u daemon -g daemon
fi
Quan trọng là dòng thứ tư mà khởi động named(8).Tất cả còn lại chỉ là phụ thêm."If" kiểm tra tồn tại hay không named ở đúng vị trí của nó hay không?còn echo đưa ra màn hình thông báo rằng named đã chạy khi khởi động hệ thống.Hầu như các dịch vụ được chạy từ rc.inet2,chúng được khởi động theo các block.Vẫn thế rc.inet2 có rất nhiều chú  giải bạn có thể tìm trong nó nhiều điều thú vị.

4.2.6 NFS(Hệ thống tập tin mạng)

NFS sử dụng chủ yếu để phân chia tài nguyên trên mạng.NFS có cấu trúc sao cho một máy khác có thể mount(kết nối) với các phần tài nguyên trên máy khác như trong mạng nội bộ.
Để có thể xây dựng cấu hình NFS cần phải làm nhiều công việc.Đầu tiên là các dịch vụ cần phải được chạy trên máy server:potmap(8),nfsd(8)và mountd(8).Thứ hai là server cần phải tương ứng xuất (export) cây hệ thống tập tin tới máy khách(client),điều này thực hiện thông qua tập tin exports(5) từ /etc.

Phần đầu được cài đặt bởi tcpip1.tgztrong khu vực chương trình N và bổ sung quyền thực hiện cho rc.inet2.,còn /etc/exports thì hơi phức tạp hơn.

Cho rằng bạn có catalog trên "ninja.tdn"  mà chúng ta muốn kết nối tới catalog trên "battlecat.tdn" ,thì trên battlecat cần dòng như dưới đây trong /etc/exports

/var/media/images   ninja.tdn(ro)

Bây giờ trên ninja có thể thực hiện lệnh:

#mount -t nfs battlecat.tdn:/var/media/images /mnt

Nó giúp kết nối catalog images sang catalog /mnt.Tuy nhiên chúng ta đã cấm quyền hạn ghi lên trên catalog này - do có tham biến "ro" trên tập tin /etc/exports của máy battlecat.Tất cả các tham biến này được chỉ ra sau tên của client và nằm trong dấu "()" được tách nhau bởi dấu ";".

"rw" -"đọc và ghi"(Bạn có thể xem man-pages để có thêm thông tin).Vẫn còn có tham biến nữa
đó là "squash" tôi nghĩ sẽ thú vị hơn khi bạn tự thực hành với nó.Nếu bạn định làm việc với NFS thì exports(8) sẽ là một người bạn tốt.

4.2.7 tcp_wrappers

tcp_wrappers - Đấy là một hệ thống kiểm soát quyền truy cập tới các dịch vụ với những host đặc biệt.Nó làm việc theo nguyên tắc sau:

inetd khởi động nhiều dịch vụ chủ yếu là wrap bởi chương trình tcpd.Chính xác là tcpd khởi động các dịch vụ này nhưng inetd không biết được điều này(chính xác không để ý đến).Tcpd tiến hành thử kết nối sau đó kiểm tra các tập tin /etc/hosts.allow và /etc/hosts.deny để kiểm tra cho phép hay không quyền truy cập các dịch vụ này.

Xác định đúng nguyên tác làm việc cho những tập tin này rất là khó. Giải sử pyramid.tdn muốn tấn công vào mojo.tdn.Để bảo vệ thì trên mojo.tdn có thể bổ sung vào /etc/hosts.deny dòng sau:

ALL: pyramid.tdn

Có nghĩa là cấm host pyramid.tdn truy cập tới tất cả  các dịch vụ lên mojo.tdn mà được khởi động bởi tcpd.Nếu như bạn muốn ngăn chặn với tất cả các domain thì có thể thêm dong sau:

ALL: pyramid.tdn, .annoying.domain

Nếu như bạn muốn bạn của mình có thể truy cập lên hệ thống(tuy nhiên không chỉ 1 người mà cho nhiều người) thì rất đơn giản hãy làm việc với /etc/hosts.allow.Dòng dưới đây sẽ cho phép các bạn của bạn quyền truy cập lên hệ thống:

ALL: hobbes.annoying.domain

4.4 Khởi Động Hệ Thống

Cấu hình khởi động của Linux có thể đơn giản hoặc phức tạp tuỳ theo mức độ sử dụng. Có nhiều người dùng chỉ đơn giản cài nguyên Slackware trên máy của mình chính vì thế họ chỉ đơn giản bật máy và sử dụng,không cần phải suy nghĩ nhiều làm gì.Còn số còn lại thì ngược lại,họ sử dụng HĐH vào các mục đích khác nhau chính vì thế đòi hỏi có sự liên kết giưa các HĐH để cho không có một cái nào bị chết.
Trong phần này chỉ miêu tả chi tiết cách sử dụng Lilo và Loadlin - hai thiết bị khởi động có được trên Slackware.

4.4.1 LILO

Lilo(Linux Loader) là công cụ khởi động phổ biến sử dụng trong các phiên bản Linux.Nó có cấu hình tương đối chặt chẽ và có thể sử dụng cho các HĐH khác nhau.

Slackware Linux cho phép sử dụng Lilo bằng menu-program để thiết lập cấu hình lilo,ứng dụng gọi là liloconfig.Ứng dụng này được gọi ra lần đầu trong quá trình cài đặt hệ thống.

Lilo đọc những tham biến của mình trên file /etc/lilo.conf(5). Tệp tin này không được sử dụng trong các lần khởi động hệ thống mà được sử dụng khi cài đặt LILO. Lilo cần phải được cài lại sau mỗi lần thay đổi cấu hình của nó.liloconfiggiúp đỡ bạn xây dựng cấu hình file một cách hợp lý.
 Nếu bạn thích sửa chữa file /etc/lilo.conf bằng tay thì khi cài lại LILO cần gọi /sbin/lilotừ vỏ lệnh(shell prompt)
Khi dùng liloconfig bạn sẽ nhìn thấy màn hình trên vỏ lệnh như sau:


Nếu như bạn đã cài Lilo đầu tiên rồi thì bạn lên chọn "simple".Trong các trường hợp khác bạn chọn "expert" cho nhanh hơn nếu bạn đã quên làm việc với Linux và Lilo.Chọn "simple" sẽ bắt đầu xây dựng cấu hình Lilo.

Nếu như framebuffer  có trong nhân thì  liloconfig  sẽ hỏi bạn  xem  chế độ video nào bạn muốn sử dụng. Chế độ video này sẽ được sử dụng cho XFree86 frame bufer Server.Nếu như bạn không muốn chạy console ở chế độ video thì nên chọn ở chế độ tiêu chuẩn 80x25 ở chế độ văn bản (text mode)
Bước tiếp theo là phần cấu hình LILO - Đó là chọn chỗ để cài đặt LILO có lẽ đây là bước quan trọng nhất. Bảng sau đây sẽ giải thích rõ hơn các lựa chọn

Root

Đây là phương án cài đặt lilo trên  đầu catalog  gốc .Nó là cách chọn lựa không nguy hiểm nếu như trên máy của bạn có các HĐH khác.Bạn có thể yên tâm rằng không một booter(vật khởi động) của các HĐH khác bị ảnh hưởng.Nhưng mà điểm yếu của nó là Lilo có thể được khởi động chỉ khi Linux là đầu tiên trên hệ thống của bạn

Floppy

Phương án này hầu như la không có nguy hiểm.Nó tạo ra một đĩa khởi động dùng để khởi động Linux trên máy của bạn. Vât khởi động(booter) không nằm trên hệ thống nữa mà nó nằm trên floppy.Nhưng điểm yếu của nó là nếu như floppy bị hỏng hoặc không đọc được.Bạn sẽ phải tiến hành khởi động từ CD-ROM hoặc làm lại đĩa khởi động khác

MBR

Phương pháp này khuyến khích khi trên máy bạn có duy nhất Slackware
Nếu bạn quyết định sử dụng phương pháp này thì nó sẽ ghi lại mọi booter trên MBR


Sau khi chọn chỗ cho booter thì liloconfig sẽ ghi cấu hình của nó và cài đặt lilo và kết thúc.
Bây giờ chuyển sang phương án chọn là "expert" thì bạn có được một menu rất đặc biệt. Các menu con trong nó được đọc trong file /etc/lilo.conf. Menu "expert" như dưới đây:


Vậy đấy,việc thiết lập cấu hình lilo thật đơn giản.Nhưng khi mà lilo đột nhiên không làm việc thì bạn hãy yên tâm vẫn còn có các cách khác để khởi động Linux

4.4.2 LOADLIN

Loadlin là một công cụ khởi động của Linux được sử dụng trên Slackware Linux.Loadlin được coi như là phương pháp khởi động Linux từ môi trường DOS.Để chương trình có thể làm việc thì bạn cần có nhân nằm trong phân vùng DOS.

Khi cài đặt Linux thì loadlin nằm trong thư mục /root ở dạng zip.Để cho loadlin không tự động cài đặt thì bạn cần xao chép nhân Linux (vmlinuz) và loadlin từ home catalog root vào phân vùng DOS
Loadlin rất tiện lợi nếu như bạn thích tạo menu-khởi động ở phân vùng DOS.Menu có thể bổ sung vào file AUTOEXEC.BAT để tiện cho việc chọn lựa HĐH nào từ  hệ thống  khi bật máy.

Nếu bạn chọn Linux thì menu loadlin sẽ gọi loadlin.exe để khởi động  Slackware.Ví dụ dưới dành cho AUTOEXEC.BAT ở  Windows 95:

@ECHO OFF
SET PROMPT=$P$G
SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\
CLS
ECHO Please Select Your Operating System:
ECHO.
ECHO [1] Slackware Linux
ECHO [2] Windows 95
ECHO.
CHOICE /C:12 "Selection? -> "
IF ERRORLEVEL 2 GOTO WIN
IF ERRORLEVEL 1 GOTO LINUX
:WIN
CLS
ECHO Starting Windows 95...
WIN
GOTO END
:LINUX
ECHO Starting Slackware Linux...
CD \LINUX
LOADLIN C:\LINUX\VMLINUZ ROOT=<root partition device> RO
GOTO END
:END 

Bạn cần phải chỉ ra tên phân vùng mà cài đặt Linux(ví dụ /dev/hda2). Và tất nhiên chúng ta sẽ sử dụng loadlin ở vỏ lệnh(shell prompt).Bạn cần phải chỉ tham biến cho chương trình.Bạn có thể đọc thêm hướng dẫn về loadlin trong tài liệu kèm theo.

4.4.3 Hai Tầng khởi động

Rất nhiều người sử dụng xây dựng cấu hình máy tính của mình để khởi động Slackware Linux và thêm HĐH khác nữa .Dưới đây miêu tả một vài hình ảnh khởi động

Windows 9x/DOS

Cấu hình của máy tính cho khởi động windows 9x/Linux có lẽ là thường gặp trong các họ hai tầng khởi động.Có rất nhiều cách thực hiện cho khởi động kiểu này.Chúng tôi giới thiệu hai cách chính.
Thông thường thì cấu hình hai tầng khởi động hệ thống được thực hiện sao cho qua trình khởi động HĐH không nhầm lẫn. Có nghĩa là các HĐH trên máy cần phải có một thứ tự nhất định để cho không có HĐH nào bị chết. Linux thường chiếm quyền kiểm soát nội dung MBR.Chính vì thế chúng tôi khuyến khích các bạn nên cài Linux sau cùng,và đầu tiên lúc nào cũng là windows bởi vì nó sẽ ghi chèn lên MBR cấu hình khởi động của mình

Sử Dụng Lilo

Hầu hết người dùng thích sử dụng LILO để chọn HĐH  trong quá trình khởi động hệ thống  và tất nhiên là Windows ở vị trí đầu tiên.
Chúng ta giả thiết là bạn có một HDD 47Gb IDE,giả sử bạn sử dụng một nửa đĩa để cho Windows và còn lại cho Linux. Trong trường hợp này sẽ có vấn đề cho khởi động Linux. tôi không biết cấu trúc hình học của đĩa cứng thế nào bởi vì 23.5Gb đã vượt qúa giới hạn trong 1024-cylinder. Tốt nhất bạn nên chia đĩa cứng như sau:

1GB  Windows boot (C:)
1GB  Linux root   (/)
22.5  Windows misc (D:)
22.5  Linux /usr  (/usr)

Đừng quyên rằng bạn phải có phần không gian đĩa cứng cho phân vùng swap-linux.Tất nhiên theo như người ta nói:" Dung lượng phân vùng swap cần lớn hơn hai lần dung lượng RAM(ví dụ cho máy có 64Mb thì cần có 128Mb swap".Sau đó bạn tiến hành cài đặt Windows và sau đó cài thêm Linux.Cài đặt LILO đòi hỏi bạn cần chú ý hơn khuyến khích bạn chọn phương án "expert" cho LILO.

Vậy là đã có một cấu hình mới cho LILO và bạn lên chọn phương án cài vào MBR để có thể sử dụng LILO cho việc chọn các HĐH khác nhau.Sau đó từ menu bạn bổ sung thêm vào phân vùng Linux,Windows cũng như DOS và cuối cùng là chạy "install lilo"

Khởi động lại máy tính,LILO nhất định sẽ chạy và chờ đợi sự chọn lựa của bạn.Bạn có thể ấn phím Alt để có được lời mời từ vỏ lệnh "boot:".Bạn điền tên hệ thống mà bạn muốn khởi động(Những tên này chọn khi bạn cài đặt LILO).Nếu bạn không nhớ thì hãy nhấn phím TAB để có được danh sách các HĐH cho phép khởi động.Bạn có thể xây dựng LILO một cách chi tiết hơn bằng con đường hiệu đính file /etc/lilo.conf.Bạn có thể cấu hình nó như thế nào đó để khi khởi động lại máy tính bạn thu được một menu như sau:

System Boot Menu
================
1 - Linux
2 - Windows

LILO boot:
Khi ấy tệp tin /etc/lilo.conf của tôi như sau:

# LILO configuration file
boot = /dev/hda
vga = normal
message = /boot/message
image = /vmlinuz
root = /dev/hda2
label = 1
read-only
other = /dev/hda1
label = 2
table = /dev/hda

còn  /boot/message sẽ có dạng sau:

System Boot Menu
================
1 - Linux
2 - Windows

Lilo là một phong cách nhẹ nhàng cho cấu hình hệ thông khởi động máy tính.Nó không chỉ giới ở Linux và DOS.Nó có thể khởi động bất cứ một HĐH nào(Theo Lý Thuyết).Bạn có thể thêm chi tiết về lilo qua lệnh man lilo(8).

Nhưng mà điều đáng ngại là LILO không làm việc.Có những máy mà không hề làm việc với LILO.Bạn sẽ làm gì.Dừng lo đã có những công cụ khác để khởi động Linux.Trong Slackware Linux còn cho phép một công cụ kèm theo là LOADLIN

Sử dụng LOADLIN

Đây là phương án  khi mà lilo không làm việc trên máy tính của bạn hoặc là bạn muốn có cái gì đó mới mẻ hơn.Phương án này thường dùng cho những người hay cài lại Windows.Mỗi lần cài lại Windows là nó lại ghi chèn lên MBR cấu hình của mình.Tất nhiên LOADLIN chỉ dành cho khởi động LINUX.

Khi sử dụng LOADLIN bạn có thể cài đặt các HĐH theo bất cứ thứ tự nào bạn thích.Nhưng khi cài Linux thì đừng ghi lên MBR.Tốt nhất chỉ lên cài đặt LILO và kết thúc.
Sau khi cài đặt xong Linux thì bạn xao chép tệp tin loadlinX.zip(X-mã số phiên bản) tử catalog của root(/root) vào phân vùng Windows.Đừng quyên xao chép ảnh kernel  lên đây.Miêu tả đơn giản như sau:

# mkdir /win
# mount -t vfat /dev/hda1 /win
# mkdir /win/linux
# cd /root
# cp loadlin* /win/linux
# cp /vmlinuz /win/linux
# cd /win/linuz
# unzip loadlin16a.zip

Tạo catalog  C:\LINUX trên phân vùng windows(có thể coi là /dev/hda1) và xao chép tất cả cần thiết cho LOADLIN.Sau đó khởi động lại máy tính,đăng nhật vào Windows để lập menu khởi đông.Bạn vào dòng lệnh  DOS  trong Windows.Thực hiện công việc sau:

C:\> cd \
C:\> cattrib -r -a -s -h MSDOS.SYS
C:\> edit MSDOS.SYS

Bạn bổ sung thêm dòng sau:

BootGUI=0

Lưu lại sự biến đổi.Thoát khỏi trình soạn thảo.Bây giờ cần thêm menu vào tệp tin

 C:\AUTOEXEC.BAT(Bạn hãy xem ví dụ dưới đây)

cls
echo System Boot Menu
echo.
echo 1 - Linux
echo 2 - Windows
echo.
choice /c:12 ''Selection? -> ''
if errorlevel 2 goto WIN
if errorlevel 1 goto LINUX
:LINUX
cls
echo ''Starting Linux...''
cd \linux
loadlin c:\linux\vmlinuz root=/dev/hda2 ro
goto END
:WIN
cls
echo ''Starting Windows...''
win
goto END
:END

 Chìa khoá của giải pháp là LOADLIN,chúng ta thông báo cho nó những thông tin sau để khởi động HĐH(Nhân(kernel),catalog gốc Linux...).
Tất cả các công cụ cần cho phương án này được chuẩn bị sẵn trên SlackWare Linux.Tuy nhiên trên chợ LINUX tồn tại một khối lượng khổng lồ các vật mang khởi động để thực hiện bất cứ các loại hai tầng khởi động nào.

Windows NT

Một trong các  phương án phổ biến cho hai tầng khởi động Windows NT và LINUX.Với Windows NT thì có phức tạp hơn,có nhiều vấn đề hơn.Vấn đề chính là khi LILO ghi lên MBR thì bạn thân Windows NT sẽ không khởi động được.Chính vì thế khi quyết định  sử dụng loại này thì cần có  một thứ tự tiến hành cách bước sau:

1

Cài đặt Windows NT

2

Cài đặt Linux,còn LILO cài ở sperblock phân vùng Linux

3

Đọc 512bytes đầu tiên ở phân vùng gốc Linux và khi lên phân vùng Windows NT

4

Soạn thảo lại C:\BOOT.INI từ Windows NT và bổ sung vào Linux

 
Cài đặt Windows NT có thể coi là công việc đơn giản cũng như với Linux.Việc xao chép lại 512bytes đầu tiên trên phân vùng gốc của Linux cũng không khó lắm.Bạn hãy đăng nhập vào Linux(giả thuyết phân vùng là /dev/hda2)

# dd if=/dev/hda2 of=/tmp/bootsect.lnx bs=1 count=512

Vậy là bạn đã chuẩn bị xong.Bạn cần xao chép bootsect.lnx sang phân vùng Windows NT.Nhưng bạn đừng vội mừng,Linux không cho phép ghi lên phân vùng định dạng NTFS.Nếu như khi cài đặt Windows NT bạn chọn định dạng là NTFS thì bạn lên xao chép bootsect.lnx sang một disk định dạng FAT hoặc FAT32.Sau đó đăng nhập vào Windows NT và đọc nó.

Còn may mắn nếu bạn chọn phân vùng Windows NT là FAT thì bạn chỉ đơn giản là xao chép nó sang là xong.Tuy nhiên mọi con đường đều dẫn đến việc copy tệp tin /tmp/bootsect.lnx  đến C:\BOOTSCT.LNX trên Windows NT.

Bước cuối cung là bổ sung Linux  vào menu-khởi động của Windows NT.Chạy DOS,thực hiện công việc sau:

C:\WINNT> cd \
C:\> attrib -r -a -s -h boot.ini
C:\> edit boot.ini
Bổ sung vào dòng sau:
C:\bootsect.lnx=''Slackware Linux''

Lưu lại sự thay đổi và thoát khỏi trình soạn thảo.Khởi động lại máy tính. Từ màn hình bạn chọn mục "Slackware Linux" và tiếp theo la Linux được Khợi động.
Chúc các bạn may mắn với những bài thực hành này.

Chương 5 Sử dụng Slackware Linux

5.1 Shell(vỏ)

Trong môi trường đồ họa thì interface chính là các chương trình mà vẽ lên các cử sổ,đường thẳng,menu...Trong môi trường câu lệnh(dòng lệnh) thì interface là vỏ(shell) và dùng để làm sáng tỏ các câu lệnh.Ngay sau khi tài khoản đăng nhập thì sẽ đi vào shell ngay lập tức.Bạn có thể làm việc ở đấy.Trong phần này chỉ giới thiệu chung về shell và những thông tin cần thiết về môi trường bash(Bourne Again Shell)- được sử dụng phổ biến trong thế giới Linux.Để có thêm thông tin hãy sử dụng man của bash(1).

5.1.1 Tài khoản sử dụng

Đăng nhập vào hệ thống

Sau khi hệ thống hoàn thành qúa trình khởi động.Trước mặt bạn sẽ hiện ra như sau:

Welcome to Linux 2.2.14
darkstar login: 

uhm..không có ai nói cho tôi biết về login? Còn darkstar là gi?Bạn không phải lo lắng.Darkstar chỉ là tên của máy tính theo ngầm định.Nếu như trong qúa trình cài đặt hệ thống mà thay đổi tên máy tính thì khi đó màn hình login sẽ như sau:

Welcome to Linux 2.2.14
<tên mà thay đổi> login:

Nếu như bạn đăng nhập vào hệ thống lần đầu tiên thì bạn cần đăng nhập vào bằng root.Hệ thống hỏi bạn password.Nếu bạn thay đổi nó trong qúa trình cài đặt thì hãy nhập vào còn không thì chỉ nhấn Enter là được.

Root - superuser

Như vậy root là gì?Có vai trò gì trong hệ thống.
Có thể nói trong thế giới Unix và các hệ thống tương tự(Linux) thì root là tài khoản chính của hệ thống.Nó có đầy đủ các quyền hạn trên hệ thống.Sẽ là tốt nhất nếu bạn là root.
Đó có đúng là rất tuyệt vời.Bạn cần phải biết rằng root có thể phá hỏng hết mọi thứ nếu muốn.Bạn có thể xem phần "Hệ thống Administrator" để xem các quyền hạn của root(bổ sung tài khoản sử dụng,đăng nhập các root...).Một câu nói thông minh thế này:Sử dụng root chỉ khi nào điều đó thật cần thiết để sửa chữa lại hệ thống.

Nếu bạn đăng nhập vào hệ thống như các tài khoản thông thường mà bạn muốn thực hiện các lệnh nhử root thì hãy sử dụng su(1).Bạn cần phải nhập vào mật khẩu root.Bạn trở thành root cho đến khi kết thúc công việc và thoát ra.Khi sử dụng su bạn có thể trở thành bất cứ tài khoản nào nếu bạn biết mật khẩu của nó.Ví dụ: su logan...

5.1.2 Vỏ lệnh

  Chạy các chương trình

Thật là khó có thể làm việc gì mà không phải chạy một chương trình bào cả.Và đừng quên là trong Linux tất cả mọi thứ đều là các tập tin.Đối với các chương trình cũng vậy.Mỗi một lệnh mà bạn thực hiện(nếu như không thuộc shell) sẽ tương ứng với một tập tin.Bạn có thể chạy các chương trình nhưng phải chỉ rõ đầy đủ đường dẫn tới nó.

Ví dụ như su?Thực tế nó là một tệp tin thuộc catalog /bin.Để gọi nó hãy thực hiện /bin/su
Nhưng tại sao chỉ cần su là được mà không cần phải chỉ ra hẳn /bin/su.Tại sao máy tính lại biết để thực hiên...Câu trả lời là biến PATH;Hầu như shell có biến PATH hoặc là một cái gì đó tương tự.Trong đó chứa danh sách các catalog mà dùng để tìm các chương trình khi bạn nhập vào.Chính vì thế khi mà bạn chạy su thực ra là shell đã tìm kiếm su trong các catalog cho bạn,và khi tìm thấy sẽ thực thi nó.Có trường hợp khi mà bạn chạy chương trình nhưng lại nhận được thông báo "Command not found".Điều đó có nghĩa là chương trình mà bạn định tìm không có trong các catalog liệt kê trong PATH(Nó có nghĩa là chương trình không tồn tại..).Chúng ta sẽ bàn luận về PATH chi tiết hơn ở bash.

Wildcard Matching

Thực tế thấy rằng mọi shell đều cho phép sử dụng một vài kí hiệu thay thế,"ở đây có thể bất kì".Những kí hiệu này gọi là "wildcards".

Phổ biến trong chúng là "*" và "?".Kí hiệu "?" có thể thay thế bất kì một kí hiệu nào.Chẳng hạn bạn có catalog trong đó có:example1.txt,example2.txt,và example3.txt.Bạn muốn sao chép tất cả những tập tin này bằng chương trình cp vào catalog /tmp
Hãy thực hiên như sau:

cp example1.txt example2.txt example3.txt /tmp

Điều này sẽ thực sự là quá nhiều để ghi hết câu lệnh.Có lẽ đơng giản hơn

cp example?.txt /tmp

Khi ấy "?" sẽ thay thế lần lượt là "1","2","3".Tuy nhiên vẫn rất là nhiều.Thật là kinh khủng nếu số lượng phải thay thế là quá lớn.Tuy nhiên bạn vẫn có thể thoát khỏi nó bằng kí hiệu "*".

Có lẽ phải nói thêm "*" sẽ tự thay thế tất cả các kí hiệu không có mặt.Nếu như trường hợp bạn sử dụng "*"  thay thế cho tất cả thì nó sẽ lấy hết những gì nó gặp.

Chẳng hạn bạn có example.txt và hejaz.txt và chúng ta muốn sao chép example.txt còn hejaz.txt để lại.
cp example*.txt /tmp sẽ giúp bạn làm điều này.Nhưng còn:

cp example?.txt /tmp

Tất nhiên cũng sẽ làm việc nhưng chỉ với ba tập tin example1.txt example2.txt example3.txt  mà thôi còn example.txt(mà cần sao chép) thì nó bỏ lại.Hic..bạn nghĩ thế nào?

Định hướng lại vào/ra và piping

(Có cài gì đó rất hấp dẫn ở đây)
$ ps > blargh

Điều đó có nghĩa là gì.Tôi thực hiên ps để xem có những tiến trình nào đang hoạt động(xem phần quản lý các tiến trình).Tuy nhiên đó không phải là điều chính mà hãy để ý đến  "> blargh".Ý nghĩa của nó chính là thực hiện ps và ghi nội dung thu được lên tập tin blargh.Tuy nhiên hãy chờ nhiều điều thú vị hơn.

$ ps | less

Có nghĩa là thực hiện ps và biểu diễn qua less
$ ps >> blargh

Nó thực hiên giống như  ps > blargh tuy nhiên bổ sung vào tập tin blargh(có sẵn) nội dung thu được tại thời điểm hiện tại.,còn nếu như blargh không tồn tại thi nó hoàn toàn như ps > blargh.
(Chú ý:">" có nghĩa là ghi nội dung vao blargh còn "<" có nghĩa là nội dung được lấy từ nguồn sau đây.)

$ fromdos < dosfile.txt > unixfile.txt

Việc kết hợp các toán tử sẽ làm cho quá trình định hướng vào/ra chở lên hiệu quả hơn.

$ ps | tac >> blargh

Lúc này ps sẽ thực hiện và sắp sếp lai các dòng thu được đồng thời ghi vào tập tin blargh.
Bạn có thể sử dụng tổ hợp các lệnh tuỳ ý nhưng chú ý là chúng được thể hiện từ trái sang phải.

5.1.3 The Bourne Again Shell (bash)
Môi trường biến số

Hệ thống Linux như là một cuộc thử thách.Có nhiều thứ mà cần phải quan sát,nhiều chi tiết nhỏ tham gia vào những hoạt động thông thường của bạn với những chương trình khác nhau(một trong số chúng thậm chí bạn không biết rõ).Không ai muốn chỉ ra quá nhiều tham biến đối với chương trình,chỉ ra dạng terminal nào mà sẽ sử dụng,tên host máy tính,..

Bởi vì như liên kết cơ học,các tài khoản nhận được những thứ gọi là environment(Bao quanh).Môi trường này xác định điều kiện mà các chương trình sẽ thực hiện trong đó.Một vài điều kiên coi là tam thời.Tài khoản có thể thay đổi và sử dụng nó cho mục đích của mình.

Thực tế cho thấy,mỗi shell có một môi trưòng biến số (nếu như không thì có lẽ là một shell rất là tốt).Ở đây chúng ta sẽ đưa ra các lệnh sử dụng trong bash để làm rõ với môi trường biến số:

$ set

Bản thân của set sẽ hiển thị tất cả các môi trường biến số cùng với các giá trị của nó tại thời điểm tạm thời.Giống như các lệnh khác trong bash,set cũng được sử dụng trong cácmục đích khác.Chúng ta không đi sâu hơn bởi vì các thông tin đó có ở trọng man của bash.
Hãy chạy set và trên màn hình sẽ như sau:

PATH=/usr/local/lib/qt/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:
/usr/openwin/bin:/usr/games:.:/usr/local/ssh2/bin:
/usr/local/ssh1/bin:
/usr/share/texmf/bin:/usr/local/sbin:/usr/sbin:/home/logan/bin
PIPESTATUS=([0]="0")
PPID=4978
PS1='\h:\w~$ '
PS2='> '
PS4='+ '
PWD=/home/logan
QTDIR=/usr/local/lib/qt
REMOTEHOST=ninja.tdn
SHELL=/bin/bash

Chú ý rằng,trên PATH tạm thời mà chúng ta đã nói ở trên,chúng ta có thể thực hiên mọi chương trình thuộc catalog đã nhớ.Đơn giản chỉ cần chỉ ra tên của chương trình(không cần đường dẫn).

$ unset VARIABLE

Nó sẽ xoá đi nội dung được chỉ ra trong lệnh và cả biến,bash sẽ quên rằng cái biến đấy đã tồn từng tại.

$ export VARIABLE=some_value

Bây giờ export thực sự là một lệnh có lợi.Với sự giúp đỡ của nó bạn có thể gán biến số một vài giá trị.Nếu như biến không tồn tại thì nó tự động sẽ được tạo ra.Nếu như biến tồn tại thì nó sẽ xoá nội dụng cũ đi và thay vào nội dung mới.Nếu bạn chỉ đơn giản bổ sung thêm tên catalog vào PATH,thì hãy thực hiện như sau:

$ export PATH=$PATH:/some/new/directory

Chú ý vào $PATH: khi bạn muốn bash thay đổi biến(biến nó thành giá trị của nó) thì hãy đặt dấu "$" trước tên của biến($tên biến).Ví dụ:

$ echo $PATH
/usr/local/lib/qt/bin:/usr/local/bin:/usr/bin:/bin: /usr/X11R6/bin:
/usr/openwin/bin:/usr/games:.:/usr/local/ssh2/bin:/usr/local/ssh1/bin:
/usr/share/texmf/bin:/usr/local/sbin:/usr/sbin:/home/logan/bin

Kết thúc công việc bằng TAB


Interface commandline đòi hỏi phải đánh máy rất nhiều
Đánh máy là công việc.
Không ai thích công việc này

Có lẽ bash sẽ cứu giúp chúng ta khỏi công việc này.

Kết thúc bằng tab giống như sau:
Bạn hãy điền tên tập tin vào.Có thể nó có ở PATH,có thể ở catalog tam thời.Thế nào cũng được,đó là thông tin cần thiết đánh vào để xác định tập tin.Sau đó hãy nhấn tab.
bash sẽ xác định xem bạn cần gì và bổ sung đầy đủ tên tập tin cho bạn.

Ví dụ như: Catalog /usr/src chứa hai catalog con: /usr/src/linux và /usr/src/sendmail.Tôi muốn kiểm tra xem có cai gì thuộc /usr/src/linux.

Tôi đánh vào ls /usr/src/l,và nhấn TAB.Khi đó bash sẽ đưa ra ls /usr/src/linux.

Bây giờ bạn hãy nghĩ là bạn có hai catalog  /usr/src/linux và /usr/src/linux-old.Nếu bạn chỉ đánh vào ls /usr/src/l và nhấn TAB thì bash sẽ làm đầy  đến mức có thể và tôi nhận đươc  /usr/src/linux.

Tôi có thể dừng lại như thế nào hoặc khi nhấn TAB lần nữa bash lại hiển thị cho tôi danh sách catalog mà đã được đánh vào.
Như vậy là không phải đánh máy quá nhiều.Thật là tuyệt phải không.

5.1.4 Virtual Terminal

Nếu bạn muốn làm một cái gì đấy thì bạn phải làm một cái gì đấy.Theo ý tưởng ấy bạn có thể vứt những cái mà đã làm được và chuyển sang làm cái khác.Tất cả nói chung là một hệ đa tài khoản.Bạn có thể đăng nhập bao nhiêu tuỳ ý.Sau đó tiến hành xử lý các công việc hoặc cũng có thể song song làm các công việc khác.

Vấn đề là chúng ta không thể kết nối với một vài bàn phím cùng,chuột,màn hình với một máy tính.Và tất nhiên đại đa số cũng không muốn điều đó.Thực tế mà nói,việc bổ sung các thiết bị không phải là giải pháp tốt.Còn các chương trình thì lại có thể.Linux làm được điều này bằng cách sử dụng các "Virtual Terminal"(VTs)

Nhấn Alt cộng với các phím hàm số(F1,...F6(trong Slackware có 6 VT)),bạn có thể chuyển đến làm việc trên các VT khác nhau.Các phím hàm sẽ tương ứng với terminal của mình.Slackware sử dụng 6 VT theo ngầm định.Atl+F2 - chuyển sang VT thứ hai,Alt+F3 - chuyển sang VT thứ ba...

Các phím hàm còn lại sử dụng trong X session.Mỗi X session có một VT của mình,được bắt đầu từ bẩy(Alt+F7)và cao hơn.Khi bạn ở tròng X,Atl+phím hàm được thay bằng Ctrl+Alt+phím hàm.Chính vì thế khi ở X mà muốn chuyển sang VT thứ ba hãy nhấn Ctrl+Alt+F3(Để quay trở lại X hãy nhấn Alt+F7 - nếu sử dụng X session thứ nhất).

5.2 Cấu trúc hệ thống tệp tin(Filesystem Structure)

Chúng ta đã làm quen với cấu trúc catalog trong Slackware Linux.Bạn biết cách tìm kiếm các tệp tin,catalog cần thiết.Linux là một hệ thống đa tài khoản.Tất cả các thành phần coi như là một hệ thống tệp tin.Hệ thống này cất giữ thông tin của từng người riêng biệt không xâm phạm lẫn nhau(nếu không cho phép).Và no còn cho phép sử dụng ảnh và kết nối NFS.Ở trong phần này chúng ta chủ yếu xem xét các khía cạnh khác nhau của tính đa tài khoản trên cấu trúc hệ thống tệp tin.

5.2.1 Quyền chủ sở hữu

Hệ thống tệp tin lưu trữ thông tin về quyền chủ sở hữu cho từng tệp tin cũng như catalog.Bao gồm thông tin về tài khoản,nhóm mà nó trực thuộc.Phương pháp đơn giải để xem những thông tin ấy là dung lệnh ls:

$ ls -l /usr/bin/wc
-rwxr-xr-x   1 root     bin    7368 Jul 30  1999 /usr/bin/wc

Chúng ta không quan tâm tới cột thứ ba và thứ tư.Chúnh chứa thông tin về tên và nhóm mà tệp tin trực thuộc.Trong ví dụ trên file thuộc tài khoản root và nhóm bin.

Chủ của file có thể thay đổi  bởi lệnh chown(1)(có nghĩa là "change owner"- thay đổi chủ sở hữu),còn nhóm thì có thể bằng lệnh chgrp("change group -Thay đổi nhóm sở hữu").Để thay đổi chủ sở hữu là "daemon" thì cần lam như sau:

#chown daemon /usr/bin/wc

Còn muốn chuyển nhóm sang "root" thì làm như sau:

#chgrp root /usr/bin/wc

Lênh chown có thể sử dụng  theo cách sau:

# chown daemon.root /usr/bin/wc

Tính sở hữu files được coi là một phần quan trọng trên hệ thống Linux thậm chí ngay cả khi có duy nhất một tài khoản trên hệ thống mà đôi khi bạn vẫn phải cần chỉnh lại quyền sở hữu các files và các nodes thiết bị.

5.2.2 Quyền truy cập

Quyền truy cập - cũng là một trong những phát sinh trên hệ thống đa tài khoản Linux.Nhờ có nó mà bạn có thể đọc,ghi,xoá chúng.

Quyền truy cập được lưu trữ ở dạng bốn con số thuộc cơ số tám.Mỗi số đại diện cho một quyền hạn với một block riêng.Block chủ sở hữu,block nhóm,và block cho các đối tượng còn lại.Bốn số hệ tám này sử dụng để lưu lại thông tin đặc biệt như :ID chủ sở hữu,ID nhóm sở hữu,"sticky" bits.Giá trị các số này tương ứng với quyền hạn sử dụng(Nó có thể sử dụng chữ để diễn tả và được hiển thị bởi các chương trình như ls và có thể sử dụng với chmod:

Kiểu

Giá trị (cơ số 8)

Chữ

"sticky" bits

1

t

set user ID

4

s

set group ID

2

s

read

4

r

write

2

w

execute

1

x


Gía trị của các nhóm quyền hạn có thể cộng lại.Chẳng hạn bạn muốn quyền hạn của nhóm là "read" và "write" thì bạn có thể sử dụng giá trị "6".Quền hạn theo ngầm địng của bash:

$ ls -l /bin/bash
-rwxr-xr-x   1 root     bin  477692 Mar 21 19:57 /bin/bash

Trong ví dụ trên ta thấy tiền tố đầu "-" là dùng chỉ định rằng đấy là tệp tin,còn nếu là "d" - dành cho catalog.Bạn nhìn thấy ba nhóm quền hạn sử dụng(chủ sở  hữu,nhóm sở hữu,nhóm còn lại),trong đó chủ sở hữu có quền hạn "rwx"(đọc,ghi,thực thi),còn nhóm sở hữu có quyền hạn "r-x"(đọc,thực thi) và các nhóm còn lại có quyền hạn "r-x"(đọc,thực thi).

Vậy chúng ta sẽ gán quền hạn sử dụng cho các tệp tin như thế nào.Bạn hãy quan sát ví dụ sau:

$ touch /tmp/example
$ ls -l /tmp/example
-rw-rw-r-  1 david    users    0 Apr 19 11:21 /tmp/example

Chúng ta sử dụng chmod(1)("change mode"- thay đổi cách thức) để tiến hành gán quền hạn sử dụng cho tệp tin

Hãy cộng các số(trong cơ số 8) để có được quền hạn mà bạn muốn.Để cho chủ sở hữu có đủ quền hạn(đọc,ghi,thực thi) thì bạn cần sử dụng số 7,(đọc và thực thi) là số 5.Chúng ta hãy tiến hành gán chúng cho tệp tin:

$ chmod 755 /tmp/example
$ ls -l /tmp/example
-rwxr-xr-x   1 david    users    0 Apr 19 11:21 /tmp/example

Tuy nhiên bạn có thể ghĩ rằng tại sao lại không xác định ngay quền hạn theo ngầm định cho các tệp tin mới được tạo ra?.Câu trả lời rất đơn giản.Bash có thể thực hiện được điều này với sự giúp đỡ của umask.Đây là một trong các ứng dụng tiêu chuẩn trên các phiên bản Unix.Nó xác định quền hạn mặc định cho các tệp tin mới được sinh ra.Giá trị ngầm định của nó là 0022.

$umask
0022

Bây giờ hãy xác định giá trị mặc định cho hệ thống là 0077

#umask 0077
$touch tempfile
$ls -l tempfile
-rw-------- 1 david    users     0 Apr  19 11:21  tempfile

Bạn có thể xem man-pages để có thêm thông tin.
Để tạo ra quền hạn đặc biệt thì bạn hãy cộng các số lại và đặt chúng ở cột đầu tiên.

$ chmod 6755 /tmp/example
$ ls -l /tmp/example
-rwsr-sr-x   1 david    users    0 Apr 19 11:21 /tmp/example 

Tuy nhiên nếu bạn khó khăn trong việc nhớ các số thì hãy sử dụng các chữ in.

chủ sở hữu         u
nhóm                  g
nhóm còn lại      a

Để làm giống như trên bạn cần thực hiện những lệnh sau:

$ chmod a+rx /tmp/example
$ chmod u+w /tmp/example
$ chmod ug+s /tmp/example

Một vài thích làm việc với các chữ in,tuy nhiên kết qủa vẫn là như nhau.Tóm lại chúng ta phải nhớ  cách gán quền hạn sử dụng tệp tin cho tài khoản và nhóm tài khoản.Có khi nào đó bạn không hiểu nó là cái gi?Có thể nói thông thường như sau:Khi bạn khởi động một tệp tin mà có các quền hạn như trên,còn bạn chỉ là một người sử dụng  thông thường.Thật là công bằng,nó sẽ được thực hiện với các quền hạn có sẵn mà bạn có.Tuy nhiên với sự giúp đỡ của "set user ID" thì bạn có thể bắt nó chạy với quền chủ sở hữu(ví dụ "root"),còn "set group ID" cũng tương tự nhưng dành cho nhóm.
Hãy cận thận,bởi vì "set user ID và set group ID" có thể làm ảnh hưởng đến an toàn của hệ thống.Nếu như bạn cài đặt quền hạn bằng root thì tất cả các tài khoản khác cũng có thể sử dụng nó như root.Nó là cả một vấn đề an toàn trên hệ thống của bạn.

5.2.3 Liên kết(link)

Link chính là một ảnh lên files.Sử dụng link khi bạn tạo ra các tệp tin mà có thể truy cập được từ nhiều vị trí khác nhau,với nhiều tên khác nhau.Có hai loại link khác nhau:Liên kết trực tiếp(Link hard),Liên kết gián tiếp(link soft).

Link trực tiếp:Đấy đơn giản chỉ là những tên khác nhau của cùng một tệp tin.Nó thực hiện được chỉ trong cùng một catalog và bị  xoá khi mà tệp tin gốc xoá.Trong một vài trường hợp có lợi nhưng hầu như đông đảo đều sử dụng liên kết gián tiếp.

Link gián tiếp: Có thể kết nối với những tệp tin ở bên ngoài catalog hiện hành.Khách quan thì nó là một tệp tin nhỏ chứa đầy đủ các thông tin cần thiết.Bạn có thể bổ sung,xoá bổ liên kết mà không ảnh hưởng đến tệp tin gốc.

Hầu như các Link không được gán quyền hạn truy cập,mà thay vào đó nó hiển thị quyền hạn của tệp tin mà nó kết nối đến.Trong Slackware sử dụng liên kết gián tiếp là chủ yếu:

$ ls -l /bin/sh
lrwxrwxrwx   1 root     root     4 Apr  6 12:34 /bin/sh -> bash

Vỏ lệnh sh trong Slackware trên thực tế chính là bash.Bạn có thể xóa bỏ link bằng rm.Còn tạo link bằng ln.Bạn có thể đọc man-pages của chúng để có thêm thông tin.

5.2.4 Mount devices(Kết nối các thiết bị)

Như đã nói trong phần "Cấu trúc hệ thống tệp tin",tất cả các disk cũng như các thiết bị khác trong Linux được xem như là một hệ thống các tệp tin.Những phân vùng đĩa cứng,CD-ROM,ổ đĩa compact....chúng thuộc trên cùng một cây thư mục.Để kết nối chúng với các hệ thống tệp tin bạn cần sử dụng lệnh mount và umount.

Một vài hệ thống tự kết nối trong quá trình khởi động máy tính.Chúng được liệt kê ở file /etc/fstab.Bạn muốn chúng tự động kết nối ,hãy khai báo chúng ở đây(trên một dòng).Còn các thiết bị khác thì hãy sử dụng bằng lệnh nếu muốn sử dụng chúng.

$cat /etc/fstab
dev/sda1     /       ext2  defaults 1  1
/dev/sda2   /usr/local   ext2 defaults 1  1
/dev/sda4 /home ext2 defaults 1  1
/dev/sdb1 swap swap defaults 0  0
/dev/sdb3 /export ext2 defaults 1  1
none /dev/pts devpts gid=5,mode=620  0  0
none /proc proc defaults 0  0
/dev/fd0 /mnt ext2 defaults 0  0
/dev/cdrom /cdrom iso9660   ro 0  0

Ở cột đầu tiên chỉ ra tên thiết bị.Trong trường hợp này có năm phần  của hai đĩa cứng SCSI và hai hệ thống files đặc biệt(không cần tới hệ thống  files),floppy và ổ đĩa CD-ROM.Cột thứ hai cho biết các thiết bị sẽ kết nối đi đâu.Catalog đó nhất thiết là phải tồn tại(trừ phân vùng swap).Cột thứ ba cho biết định dạng hệ thống tệp tin cho thiết bị.Thông thường  định dạng cho Linux là ext2(hệ thống tệp tin mở rộng thứ hai).Còn đối với CD-ROM sẽ là iso9660,còn đối với Windows là vfat hoặc msdos.

Cột thứ tư  liệt kê các chọn lựa mà sử dụng khi mount các thiết bị.Thông thường là "defaults".Tuy nhiên khi mà gán quền truy cập cho thiết bị chỉ đọc thì khuyến khích là "ro".Có rất nhiều các chọn lựa khác nhau nữa,bạn có thể xem man-pages để biết thêm thông tin.Hai cột cuối cùng sử dụng cho chương trình fsck và các lệnh khác.

Khi cài đặt Slackware Linux,chương trình sẽ xây dựng lên tệp tin fstab một cách tối thiểu.Bạn có thể bổ sung,soạn thảo lại theo mục đích của mình.

mount và umount

Trong Linux việt kết nối các thiết bị rất đơng giản.Công việc phải làm là chạy ứng dụng mount và chỉ ra một vài tham biến đi kèm với nó.Sử dụng lệnh này trên thực tế nhỏ gọn hơn so với việc ghi chép vào /etc/fstab.Giả sử bạn muốn kết nối với CD-ROM (tất nhiên fstab như trong ví dụ trên),hãy thực hiện lệnh sau:

#mount /cdrom

Để làm được điều này thì rõ ràng trong fstab phải đã có sẵn một dòng cho thiết bị CD-ROM rồi,mount chỉ việc lấy các tham số trong đó và thực hiện công việc của mình.Nếu như trong fstab không có các thông tin về CD-ROM thì bạn phải chỉ ra bằng tay trên lệnh

# mount -t iso9660 -o ro /dev/cdrom /cdrom

Dòng lệnh này cũng như trong fstab nhưng trong một dạng hình khác.Chúng ta hãy xem xét kĩ hơn các tham biến.

"-t iso9660" đây là định dạng hệ thống files cho thiết bị cd-rom
"-o ro" thiết bị kết nối chỉ dùng cho đọc
/dev/cdrom tên của thiết bị mà sẽ kết nối tới /cdrom(catalog này mình có thể thay đổi)

Cách ngắt kết nối với các thiết bị như thế nào(tại thời điểm hiện tại chúng đang mounted).Bạn cần phải ngắt chúng ra bằng lệnh umount.Tuy nhiên tai sao không phải là unmount.Hic..câu này khó quá chúng tôi không thể nào trả lời được có lẽ tác giả không muốn như vậy.Bạn có thể sử dụng tên của thiết bị hoặc là tên của điểm mounted sau lệnh umount.Ví dụ sau dùng để ngưng kết nối với đĩa cd-rom của bạn:

# umount /dev/cdrom
# umount /cdrom

5.2.5 NFS ( Network Filesystem)

NFS không là hệ thống tệp tin hiện thực nhưng mà có thể sử dụng để kết nối với các thiết bị khác qua mạng.

Hầu như trong các mạng Unix lớn,công việc phân chia tài nguyên là rất cần thiết.Vấn đề đó được giải quyết bởi NFS.Nó có thể phân chia một tổ hợp catalog home giữa các trạm với nhau.Khi đó các tram này kết nối(mount) với catalog này và sử dụng nó như là nó trực thuôc của trạm.Xem phần 4.2.6 và man-pages để có thêm thông tin về exports(5),nfsd(5) và mount.

5.3 Làm việc với files,catalogs

Slackware Linux được hình thành theo chiều hướng  đơn giản hóa đi câu trúc theo Unix truyền thống. Unix chuẩn chủ yếu theo dạng vỏ lệnh(Shell Prompt).Trong Slackware Linux có trang bị thêm graphic interfaces và tuy nhiên vỏ lệnh vẫn là môi trường giao tiếp chính với hệ thống.Chính vì thế việc lắm vững hệ thống lệnh cơ bản là rất quan trọng trong Linux.
Phần này  sẽ giúp bạn làm quen với những lệnh chính làm việc với tệp tin, các thư mục cũng như có các ví dụ kèm theo.Bạn có thể sử dụng man-pages để có thêm thông tin.

5.3.1 ls

Lệnh này dung cho việc hiển thị danh sách các files trong catalog.Bạn có thể tìm thấy lệnh DIR tương tự trong DOS và Windows.Khi đó ls(1) đưa ra danh sách các files ở catalog hiện hành.Để xem được nội dung của catalog gốc bạn cần làm như sau:

$ cd /
$ ls

Kết qủa

bin  cdrom  home  mnt  sbin  usr
boot  dev  lib  proc  suncd  var
cdr  etc  lost+found  root  tmp  vmlinuz

Tuy nhiên nó không thuận tiện chút nào cả ,bạn không thể xác định được đâu là files đâu là catalog.Để giúp điều đó bạn cần thêm tham số vào dòng lệnh ls(1)

$ ls -FC

bin/  cdrom/  home/  mnt/  sbin/  usr/
boot/  dev/  lib/  proc/  suncd/  var/
cdr/  etc/  lost+found/  root/  tmp/  vmlinuz

Tham số này hiển thị như sau:" Nếu là catalog thì bổ sung thêm đằng sau dấu" /",còn nếu là files thực thi thì bổ sung đằng sau dấu  "*".
Ngoài ra lệnh ls còn cho phép nhận được những thông tin cụ thể về files.Ví dụ như sau:

$ls -l
total 172
drwx------    4 root     root         4096 Aug 18 18:22 Desktop
-rw-r--r--    1 root     root        11423 Aug 19 11:55 install
-rw-r--r--    1 root     root        11423 Aug 19 11:54 install~
drwx------    2 root     root         4096 Aug 19 06:44 mail
lrwxrwxrwx    1 root     root            5 Aug 18 17:43 mnt -> /mnt/
drwxr-xr-x    6 root     root         4096 Aug 19 18:28 phim
-rw-r--r--    1 root     root       111806 Aug 19 17:19 Screenshot.png
drwxr-xr-x    4 root     root         4096 Aug 20 05:23 slackware
-rwx------    1 root     root          134 Aug 16 14:42 sound.sh
drwxr-xr-x    3 root     root         4096 Aug 19 08:41 thu
drwxr-xr-x    8 root     root         4096 Aug 18 17:14 TuDienHND
-rwx--x--x    1 root     root           30 Aug 16 02:54 tv.shell
-rw-r--r--    1 root     root            0 Aug 20 05:53 vu.txt

Nếu như bạn muốn nhìn thấy những files ẩn(hides) ở catalog hiện hành thì bạn có thể sử dụng lệnh sau:
#ls -a

.gnome
.gnome2
.gnome2_private
.gnome-desktop
.gstreamer
.gtkrc
.gtkrc-1.2-gnome2
.gtkrc-kde
.ICEauthority
.icons
install
install~
.kde
.kderc
.pinerc
.qt
.recently-used

Screenshot.png
slackware
sound.sh
.xscreensaver
.xsession-errors
.xvnkbrc

Những tệp tin bắt đầu từ dấu "."(Gọi là đốt files) không hiện ra với lệnh ls bình thường hay còn gọi là files ẩn(hides).Bạn nhìn thấy nó chỉ với tham biến "-a" đi kèm ls.
Để thêm thông tin về ls bạn có thể đọc trong man-pages về ls(1).

5.3.2 cd

Lệnh cd sử dụng để thay đổi catalog làm việc.Đơn giản chỉ cần theo cấu trúc sau: cd /đường dẫn/tên catalog.Ví dụ:

darkstar: $ cd /bin
darkstar:/bin$ cd usr
bash: cd: usr: No such file or directory
darkstar:/bin$ cd /usr
darkstar:/usr$

Để có thêm thông tin bạn có thể đọc man-pages của lệng cd

$help cd

Lệnh này giúp bạn hiểu rõ những tham biến đi kèm của lệnh cd

5.3.3 more
more(1) được coi là ứng dụng để chia nhỏ các trang ra.Thông thường các lệnh đưa ra các thông báo có kích cỡ to hơn là kích cỡ màn hình.Những lệnh khác không biết cách chia nhỏ những kết  quả của mình trên màn hình ra thành các trang nhỏ hơn.Chính vì thế more(1) dung để làm công việc này.
Lệnh more chia các thông báo thành các trang nhỏ khác nhau và chờ đợi bạn nhấn phím cách để chuyển tiếp sang trang tiếp theo,phím Enter dùng để di chuyển tới dòng tiếp theo.Ví dụ:

$ cd /usr/bin
$ ls -l

Bạn hẳn sẽ thấy kết quả là lớn hơn nhiều so với kích cỡ màn hình.

$ ls -l | more

Vậy là có tôt hơn không,bạn có thể đọc từng trang một...
Để có thêm thông tin về more(1) bạn hãy đọc man-pages của nó.

5.3.4 less

Lệnh more được coi là rất thuận tiện,nhưng khi bạn đang đọc thông báo mà bỗng nhiên bị bỏ qua một trang nào đấy mà more không cho phép quay lại để đọc nó.Lệnh less cho phép bạn làm được điều đó.Nó được sử dụng về cấu trúc giống như more

$ls -l | less

Để có thêm thông tin hãy đọc man-page của less(1).

5.3.5 cat
cat(1) - concatenate(kết lại,nối lại thành dãy).Nó dùng để kết nối một vài văn bản soạn thảo thành một văn bản thống nhất.Nhưng cũng có thể sử dụng cho các mục đích khác nữa.
Cấu trúc lệnh như sau:

#cat file1 file2 file3 > bigfile

Lệnh cat  đem nội dung của file1,file2,file3 và nối lại thành bigfile
Lênh cat cũng có thể  dùng để xem nội dung của  files.Để xem nội dung của files bạn  thực hiện lệnh sau đây(đừng quên dùng more hoặc less kèm theo):
 $ cat file1 | more

Lệnh cat cũng có thể dùng để sao chép bất cứ files nào mà bạn muốn.

$cat /bin/bash > ~/mybash

Tệp tin /bin/bash sẽ được sao chép vào catalog home gốc của tài khoản với tên là mybash
Dưới đây chỉ là những điển hình thông dụng của cat.Để có thêm thông tin bnaj hãy đọc man-pages của nó.

5.3.6 touch
touch(1) dùng để thay đổi thời gian sau các biến đổi với files.Với lệnh này bạn có thể kiểm soát  dấu hiệu thay đổi từng thời điểm với files(Thời gian cho phép sử dụng,thời gian lần đầu thay đổi,lần cuối thay đổi).Nếu như files chỉ ra không tồn tại thì touch tạo ra một files rỗng với tên như đã chỉ ra.Cấu trúc như sau:

$touch file1

Lệnh touch có  nhiều tham biến đi cùng,để có thêm thông tin bạn cần đọc man-pages của nó.

5.3.7 echo

Lệnh echo(1) dùng để hiển thị ra màn hình một chuỗi thông tin cần thiết.Chuỗi cần được chỉ ra sau lệnh echo.Theo ngầm định echo hiển thị câu,kí tự đứng sau nó.
Hãy đọc man của nó để có thêm thông tin.

5.3.8 mkdir

Dùng để tạo ra một catalog mới.Đơn giản chỉ cần đưa ra  tên của catalog,ví dụ:

 $mkdir hejaz
hoặc bạn có thể tạo theo đường dẫn:

$mkdir /usr/local/hejaz

Tham biến "-p" đi kèm với mkdirđể tạo ra catalog nằm trong(catalog con).Bởi vì nếu như catalog local không tồn tại thì mkdir sẽ thông báo lỗi.Chính vì thê cần có cấu trúc sau:

$ mkdir -p /usr/local/hejaz

5.3.9 ln

ln(1) dùng để tạo link(liên kết) tới files.Có thể là HDD,floppy hoặc kí tự liên kết.Sự khác nhau của những dạng này được thảo luận trong phần "Cấu trúc hệ thống tập tin". Nếu như bạn muốn tạo simbol-link tới catalog /var/media/mp3 và đặt nó trong catalog home của chính mình thì cần thực hiện như sau:

$  ln -s /var/media/mp3 ~/mp3

Tham biến "-s" đi kèm với ln chỉ rằng liên kết là dạng kí tự(simbol).Trong ví dụ trên đã tạo ra file mp3 dùng để chỉ đến /var/media/mp3.
Tạo liên kết với đĩa cứng cũng làm tương tự nhưng chỉ bỏ đi tham biến -s.

$ ln /var/media/mp3 ~/mp3

5.3.10 cp

cp(1) sử dụng để sao chép các tệp tin.Trong DOS có câu lệnh tương tự:COPY.Lệnh này có nhiêu tham biến đi kèm khuyến khích các bạn lên đọc man của lệnh này.
Thông thường nó được dùng theo cấu trúc sau:

$ cp vu.mt /tmp

Lệnh cp đã tạo ra một bản sao của file vu.mt từ catalog hiện hành tới /tmp
Nếu bạn muốn lưu lại những dấu hiệu thời gian trên files thì cấu trúc như sau:

$cp -a vu.mt /tmp

Nó sẽ lưu lại toàn bộ dâu hiệu thời gian biến đổi của file gốc trên bản sao
Còn bạn thích sao chép cả một catalog sang một catalog khac:

 $ cp -R <tên thư mục> /tmp

Nó sẽ sao chép toàn bộ nội dung của thư mục sang catalog /tmp

5.3.11 mv
mv(1) dùng để cắt file và di chuyển nó từ một chỗ này sang chỗ khác.Ở trong DOS là move.
Khi sử dụng lệnh này cần phải chỉ ra gốc và kí hiệu:

# mv myfile /usr/local/share/mt

Bạn có thể đọc man-pages của nó để biết thêm thông tin.

5.3.12 rm

rm(1) dùng để xóa tệp tin hoặc cây thư mục.Giống như trong DOS có lệnh:del và deltree.
Sử dụng rm có thể nguy hiểm nếu như bạn không biết bạn đang làm gì.Trong Linux files xóa đi khó có thể khôi phục lại được.
Để xóa files bạn chỉ cần chỉ ra tên file cần xóa sau lệnh rm

$ rm file1

Nếu như bạn không có quền hạn ghi  lên tệp tin thì lệnh sẽ thông báo lỗi.
Khi bạn muốn xoá đi cả một catalog thì lên sử dụng tham biến -r và -f đi kèm với rm

$ rm -rf /home/mt/mydir

Chú ý bạn có thể hại chính mình với rm.Cần thận trọng với nó.

5.3.13 rmdir

rmdir(1) dùng để xoá đi một catalog rỗng.Chú ý nếu nó không rỗng thì rmdir không thể xoá được.

$ rmdir <thư mục>
$ rmdir mt

nếu như khi mà catalog không tồn tại thì rmdir sẽ thông báo bạn cần phải chỉ rõ đường dẫn tới  catalog mà bạn muốn xoá.

$rm  /tmp/mt

Ở đây rmdir sẽ xóa đi catalog mt (catalog con của catalog tmp).
Ngoài ra rmdir còn có thể xoá các catalog bố mẹ (parent directory) nếu như có thêm tham biến -p đi kèm với rmdir:

$ rmdir -p /tmp/mt

Lệnh sẽ tiến hành xoá catalog mt nằm trong /tmp.Nếu thành công thì tiếp tục thử xoá catalog /tmp. Lệnh rmdir sẽ xoá catalog này và dừng lại khi gặp thông báo lỗi.

5.4 Điều khiển các tiến trình(Process Control).

Bất kì một chương trình đang thực thi gọi là một tiến trình.Tất cả từ X-Windows tới các trình hệ thống mà khởi động khi bật máy được coi là tiến trình.Mỗi một tiến trình được chạy bằng tên một tài khoản nào đó.Tiến trình được thực thi khi  hệ thống khởi động thông thường dưới quyền root hoặc là nobody.Những tiến trình được thực hiện bởi bạn sẽ mang tên bạn.Tiến trình của các tài khoản khác sẽ mang tên của họ.

Bạn có thể quản lý các tiến trình của bạn.Còn root có thể quản lý mọi tiến trình trên hệ thống kể cả của các tài khoản khác.Các tiến trình có thể được điều khiển,theo dõi bởi các chương trình đặc biệt hoặc một số lệnh trên vỏ lệnh.

5.4.1 Chuyển sang chế độ phông nền(backgrounding)

Chương trình chạy trên vỏ lệnh thường được hiển thị trước nền phông.Nó cho phép bạn nhìn thấy hết thông tin,hành động của chương trình.Tuy nhiên khi bạn không muốn chương trình cản trở màn hình terminal của bạn.Công việc đó gọi là thực hiện ở chế độ phông nền.Có nhiều cách để chuyển một chương trình về chế độ phông nền.

Phương pháp đầu tiên là  bổ sung kí tự "&" vào cuối của dòng lệnh gọi chương trình.Ví dụ như bạn nghe nhạc mp3 bằng amp trong catalog hiện hành.Nhưng bạn không muốn nó chiếm lấy terminal đấy bởi vì bạn muốn làm các việc khác nữa.Hãy thực hiên lệnh sau:

$ amp *.mp3 &

Chương trình sẽ được chạy và bạn lại quay về với lời mời trên vỏ lệnh như lần đầu.
Còn có cách khác để chuyển chương trình sang chế độ phông nền nhưng tiến hành trong khi chương trình đang chạy.Bạn hãy khởi động chương trình,nhấn ctrl+z.Chương trình tạm dừng.Tóm lại đó là tam dừng.Nó bị đình chỉ hoạt động tại thời điểm hiện tại nhưng mà có thể tiếp tục bất cứ lúc nào.Khi mà bạn vừa mới dừng chương trình lại và quay lại với vỏ lệnh thì để chuyển nó sang chế độ phông nền hãy nhập vào lệnh:

$ bg

Như vậy tiến trình tạm dừng đã chuyển sang làm việc trong phông nền.

5.4.2 Thoát khỏi chế độ phông nền

Nếu như bạn cần làm việc với các tiền tình ẩn trong phông nền thì bạn có thể gọi nó ra.Hãy dung lệnh:

$ fg

Sau đó chương trình lại chiếm giữ terminal của bạn,đôi khi chương trình trên phông nền tự động kết thúc,khi đó bạn nhìn thấy thông báo sau:

[1]+  Done              /bin/ls $LS_OPTIONS

Có nghĩa là tiến trình trong phông nền đã kết thúc(khi đấy ls - không quan tâm đến nó)
Khi cùng một lúc có nhiều tiến trình chayi đồng thời trong phông nền,muốn gọi chúng trở lại bình thường thì phải biết được bạn cần tiến trình nào.Nếu như chỉ đơn giản thực hiện fg thì tiến trình phông nền cuối cùng sẽ được gọi quay trở lại bình thường.Thật may mắn bash có thể kiểm soát được tất cả các tiến trình.Lệnh đó là jobs và nó hình dung là:

$ jobs
[1] Stopped vim
[2]- Stopped amp
[3]+ Stopped man ps

Lệnh này đưa ra danh sách các tiến trình trong phông nền.Như bạn thấy,chúng đang tạm dừng,và hãy nhìn vào số ID của từng tiến trình.Bạn nhìn thấy với tiến trình "man ps" có số ID là "[3]+" có nghĩa là nó sẽ được gọi ra bằng lệnh fs không có tham biến đi kèm.
Nếu như bạn muốn gọi ra lại tiến trình vim thì hãy nhập vào lệnh:

$ fg 1

Vim sẽ được hiển thị lại trên terminal của bạn,Việc chuyển các tiến trình vào chế độ phông nền có lợi nếu như bạn chỉ có một terminal.Bạn có thể sử dụng đồng thời nhiều chương trình và chuyển đổi giữa chúng theo ý muốn.

5.4.3 ps

Như vậy là bạn đã biết cách làm việc với các tiến trình trên và trong phông nền.Tuy nhiên vẫn có nhiều tiến trình thực hiện trong suốt thời gian hoạt động hệ thống.Bạn muốn kiểm soát chúng.Hãy sử dụng lệnh ps(1).Nó có rất nhiều tham biến đi kèm,chúng tôi chỉ đưa ra các tham biến chính.Để có thêm thông tin hãy xem ở phần 2.2.1
Lệnh ps thông thường chỉ hiển thị như sau:

$ ps 
PID TTY TIME CMD
7923     ttyp0     00:00:00     bash
8059     ttyp0     00:00:00     ps

Không nên để ý rằng các tiến trình không nhiều mà thông tin về nó lại đại khái,hình thức.Bạn có thử bao nhiều lần cũng thế với lệnh ps thông thường.Vậy chúng có ý nghĩa gì.
Chúng có thể hiểu như sau:

PID
    Kí hiệu nhận dạng tiến trình(ID).Mỗi một tiến trình có một PID khác nhau.Trong kernel 2.2.x thì ID của các tiến trình nằm trong khoảng 1 tới 32767.Mỗi một tiến trình sẽ có được một PID ngẫu nhiên.Khi mà tiến trình kết thúc thì các số PID cũng được giải phóng.Khi mà số PID đã cực đại thì số PID tiếp theo sẽ là số nhỏ nhất trong các số đã được giải phóng.Tuy nhiên sẽ có sự thay đổi ở nhân 2.4.x.Chúng sẽ được biểu diễn ở dạng 32-bits PID.

TTY
  cho biết trên terminal nào tiến trình được thực hiện.Lệnh ps đơn thuần chỉ hiển thị các tiến trình trên terminal hiện hành.Trong ví dụ trên các tiến trình đều thuộc tty0.Nó thông báo cho ta biết các tiến trình được thực hiện hoặc là trên các máy từ xa hoặc là từ X-terminal

TIME
  cho biết các tiến trình thực hiện trong bao lâu.Tuy nhiên nó khác với thời gian thực tế tính từ thời điểm bắt đầu.Nhớ là Linux là hệ thống đa nhiệm.Chính vì thế trong bất cứ thời điểm nào cũng có nhiều tiến trình đang thực thi.Tuy nhiên chúng chiếm giữ  processor không lâu.Chính vì thế trong cột TIME chỉ ra khoảng thời gian có thể nói nhỏ hơn thời gian thực tế rất nhiều.Nếu như một trong số chúng lâu hơn khoảng một phút thì có lẽ sẽ có một cái gì đó không ổn.

CMD
   Cuối cùng là chỉ ra tên chương trình đang thực hiện.Nó hiển thị chỉ tên của chương trình.Những tham biến đi kèm cùng những thông tin khác không được hiển thị.Để hiển thị các thông tin đấy bạn cần phải có những tham biến đi kèm lệnh ps.
Bạn có thể nhận được một bảng danh sách các tiến trình đang thực thi nếu sử dụng các tham biến đi kèm.Hãy thử lệnh sau:

 PID TTY      STAT   TIME COMMAND
    1 ?        S      0:05 init
    2 ?        SW     0:00 [keventd]
    3 ?        SWN    0:00 [ksoftirqd_CPU0]
    4 ?        SW     0:01 [kswapd]
    5 ?        SW     0:00 [bdflush]
    6 ?        SW     0:00 [kupdated]
   10 ?        SW<    0:00 [mdrecoveryd]
   11 ?        SW     0:00 [kjournald]
   22 ?        SW     0:00 [kjournald]
   76 ?        SW     0:00 [eth0]
  150 ?        SW     0:00 [khubd]
  850 ?        S      0:00 [rpc.portmap]
  856 ?        S      0:00 /usr/sbin/syslogd
  859 ?        S      0:00 /usr/sbin/klogd -c 3 -x
  861 ?        S      0:00 /usr/sbin/inetd
  864 ?        S      0:00 /usr/sbin/sshd
  873 ?        S      0:00 [lpd]
  876 ?        S      0:00 /usr/sbin/crond -l10
  878 ?        S      0:00 [atd]
  881 ?        S      0:00 [sendmail]
  884 ?        S      0:00 [sendmail]
  891 ?        S      0:00 /usr/sbin/gpm -m /dev/mouse -t ps2
  893 tty1     S      0:00 -bash
  894 tty2     S      0:00 /sbin/agetty 38400 tty2 linux
  895 tty3     S      0:00 /sbin/agetty 38400 tty3 linux
  896 tty4     S      0:00 /sbin/agetty 38400 tty4 linux
  897 tty5     S      0:00 /sbin/agetty 38400 tty5 linux
  898 tty6     S      0:00 /sbin/agetty 38400 tty6 linux

Hầu như các tiến trình trên được thực thi trong qua trình khởi động hệ thống Linux.Trong hệ thống của mình,tôi đã thay đổi một số thứ để bạn nhìn thấy rõ hơn cái gì đó khác biệt.Tuy nhiên đại đa số bạn sẽ nhìn thấy trên hệ thống của bạn.Như bạn thấy tham biến đi kèm với ps đã bắt nó hiển thị không chỉ tên của lệnh mà các tham biến đi cùng lệnh.Tuy nhiên vẫn còn có những cột thông tin hấp dẫn hơn.

Có lẽ bạn sẽ để ý ngay đến các tiến trình thực hiện trên tty "?".Đó là các tiến trình không được thực hiện trên các terminal  hiện hành.

Bây giờ bạn nhìn thấy cột "STAT".Nó cho biết trạng thái(status) của tiến trình.S sử dụng cho các tiến trình đang ngủ:đó là các tiến trình đang đợi để tiếp tục.Z sử dụng cho các tiến trình zombied(nửa sống,nửa chết).Đó là các tiến trình mà tiến trình cha mẹ sinh đã kết thúc  và chỉ để lại các tiến trình con ở lại.Điều này không tốt.

Nếu bạn muốn thêm thông tin nữa hãy thực hiện lệnh sau:

$ ps -aux

USER       PID %CPU %MEM   VSZ  RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0   480   64 ?        S    Aug21   0:05 init
root         2  0.0  0.0     0    0 ?        SW   Aug21   0:00 [keventd]
root         3  0.0  0.0     0    0 ?        SWN  Aug21   0:00 [ksoftirqd_CPU0]
root         4  0.0  0.0     0    0 ?        SW   Aug21   0:01 [kswapd]
root         5  0.0  0.0     0    0 ?        SW   Aug21   0:00 [bdflush]
root         6  0.0  0.0     0    0 ?        SW   Aug21   0:00 [kupdated]
root        10  0.0  0.0     0    0 ?        SW<  Aug21   0:00 [mdrecoveryd]
root        11  0.0  0.0     0    0 ?        SW   Aug21   0:00 [kjournald]
root        22  0.0  0.0     0    0 ?        SW   Aug21   0:00 [kjournald]
root        76  0.0  0.0     0    0 ?        SW   Aug21   0:00 [eth0]
root       150  0.0  0.0     0    0 ?        SW   Aug21   0:00 [khubd]
rpc        850  0.0  0.1  2360  676 ?        S    Aug21   0:00 [rpc.portmap]
root       856  0.0  0.1  2280  728 ?        S    Aug21   0:00 /usr/sbin/syslogd
root       859  0.0  0.1  2216  576 ?        S    Aug21   0:00 /usr/sbin/klogd -c 3 -x
root       861  0.0  0.1  2252  644 ?        S    Aug21   0:00 /usr/sbin/inetd
root       864  0.0  0.2  3888 1240 ?        S    Aug21   0:00 /usr/sbin/sshd
lp         873  0.0  0.2  4196 1128 ?        S    Aug21   0:00 [lpd]
root       876  0.0  0.1  2340  704 ?        S    Aug21   0:00 /usr/sbin/crond -l10
daemon     878  0.0  0.1  2344  748 ?        S    Aug21   0:00 [atd]
root       881  0.0  0.2  4132 1308 ?        S    Aug21   0:00 [sendmail]
smmsp      884  0.0  0.2  4128 1208 ?        S    Aug21   0:00 [sendmail]
root       891  0.0  0.1  2260  572 ?        S    Aug21   0:00 /usr/sbin/gpm -m /dev/mouse -t ps2
root       893  0.0  0.2  3132 1128 tty1     S    Aug21   0:00 -bash
root       894  0.0  0.1  2212  516 tty2     S    Aug21   0:00 /sbin/agetty 38400 tty2 linux
root       895  0.0  0.1  2212  516 tty3     S    Aug21   0:00 /sbin/agetty 38400 tty3 linux
root       896  0.0  0.1  2212  516 tty4     S    Aug21   0:00 /sbin/agetty 38400 tty4 linux
root       897  0.0  0.1  2212  516 tty5     S    Aug21   0:00 /sbin/agetty 38400 tty5 linux
root       898  0.0  0.1  2212  516 tty6     S    Aug21   0:00 /sbin/agetty 38400 tty6 linux

Đây có thể nói là một khối lượng thông tin đầy đủ.Bạn có thể nhìn thấy ai  đã chạy chương trình,chiếm bao nhiêu tài nguyên CPU(%CPU,%MEM,VSZ,RSS),ngày tháng khi chương trình chạy.Rõ ràng đây là những thông tin cần thiết cho administrator.Nêu như thông tin không hiển thị trên màn hình thì tham biến "-w" có thể hiển thị.

Hiển thị thông tin trên màn hình tuy không qua dễ nhìn nhưng mà bạn vẫn có thể làm việc.Tuy nhiên đó không phải là tất cả,vẫn còn có nhiều thông tin khác về các tiến trình.Hãy xem man-pages của ps để có thêm thông tin.

5.4.4 kill

Đôi khi có cái gi không như mong muốn xảy đến với chương trình của bạn.Nó làm cho hệ thống rối loạn và cần phải lập lại trật tự trên nó.Chương trình kill(1) giúp bạn trong trường hợp đó.Nó có thể sử dụng để tiêu diệt các tiến trình bằng nhiều cách khác nhau theo mục đích của bạn.
Nếu như chương trình của bạn vượt ra ngoài kiểm soát,chiếm giữ nhiều tài nguyên processor hoặc là chúng tồn tại trong bộ nhớ,điều này làm bạn không thích và đi đến quyết định tiêu diệt nó.Để tiêu diệt các tiến trình,bạn cần phải biết PID hoặc tên của nó.Để có thể biết đuợc PID bạn hãy dùng ps như phần trên.Ví dụ để tiêu diệt tiến trình 4747 bạn thực hiện lệnh sau:

$ kill 4747

Tuy nhiên chú ý là để tiêu diệt tiến trình bạn phải là chủ sở hữu của nó.Mục đích của việc này chính là vấn đề an toàn.Nếu bạn có thể tiêu diệt tiến trình của những người khác thì sẽ sảy ra những hành động trả thù lẫn nhau trên hệ thống của bạn.Tuy nhiên root có thể tiêu diệt bất cứ tiến trình nào.
Một chương trình nữa có thể nói là anh em với kill là killall(1).Tính năng của nó là sử dụng tên của chương trình.Nó tiêu diệt tất cả các chương trình có tên đã chỉ ra.Chẳng hạn bạn muốn tiếu diệt tất cả các tiến trình vim thì hãy sử dụng lệnh sau:

$killall vim

Tất cả các tiến trình có tên vim sẽ bị tiêu diệt.Nếu bạn sử dụng như root thì nó sẽ tiêu diệt tất cả các tiến trình vim trên toàn hệ thống của bất cứ tài khoản nào.

#killall bash

Đôi khi kill cũng không thể thực hiện được công việc của mình.Một vài tiến trình không thể tiêu diệt bởi kill thông thường.Bạn cần phải bổ sung cho nó tham biến đi kèm cụ thể là "-9".

$ kill -9 4747

Chác chắn tiến trình 4747 sẽ bị tiêu diệt.Bạn có thể sử dụng vẫn với tham biến này cho lệnh killall.Tham biến này sẽ gửi những tín hiệu khác nhau tới chương trình.Còn kill thông thường chỉ gửi đến tiến trình tín hiệu SIGTERM(kết thúc).Còn kill -9 sẽ gửi đến tín hiệu SIGKILL(tiêu diệt).Để nhìn thấy những tín hiệu mà kill thực hiện,bạn có thể thực hiện lệnh sau:

$kill -l

 1) SIGHUP      2) SIGINT     3) SIGQUIT    4) SIGILL
   5) SIGTRAP     6) SIGABRT    7) SIGBUS     8) SIGFPE
   9) SIGKILL    10) SIGUSR1   11) SIGSEGV   12) SIGUSR2
  13) SIGPIPE    14) SIGALRM   15) SIGTERM   17) SIGCHLD
  18) SIGCONT    19) SIGSTOP   20) SIGTSTP   21) SIGTTIN
  22) SIGTTOU    23) SIGURG    24) SIGXCPU   25) SIGXFSZ
  26) SIGVTALRM  27) SIGPROF   28) SIGWINCH  29) SIGIO
  30) SIGPWR

Kill  sẽ sử dụng các số, còn killall sẽ sử dụng tên loại bỏ phần SIG.Ví dụ như:

$ killall -KILL vim

Có một phương án kill được sử dụng như khởi động chương trình.Nó gửi tín hiệu SIGHUP và chúng ta ép buộc chương trình phải đọc lại cấu hình của mình.Nó thuận lợi khi bạn thay đổi cấu hình của một chương trình nào đó.

5.4.5 top

Đây là một chương trình dùng để hiển thị liên tục thông tin về các tiến trình trên hệ thống.
Để hiển thị bạn hãy thực hiện

$top

Lệnh sẽ đưa ra toàn màn hình thông tin về các tiến trình đang chạy trên hệ thống,cũng như những thông tin chung về hệ thống.(mức độ làm việc processor,tổng số lượng tiến trình,trạng thái processor,bộ nhớ,PID của từng tiến trình,tên tài khoản,thời gian thực thi..)

 

Chương trình có tên là top,bởi vì có lẽ những thông tin được hiển thị ở phía trên bảng liệt kê,nó  được coi là rất thuận tiện cho việc xác định chương trình nào vượt qua giới hạn kiểm soát.

5.5 Hệ thống Administrator

Bạn là administrator tất cả các máy tính nếu trên đó bạn là superuser - root.Có thể là một máy tính cá nhân để bàn với một hoặc hai tài khoản hoặc cũng có thể là một server với hằng trăm tài khoản .Tuy việc ở đây là giúp bạn có kiến thức cơ bản về các sử lý với các tài khoản trên máy tính cũng như cách tắt máy an toàn.Trên thực tế điều này không khó lắm có lẽ có thể tập thành thói quen được.Thêm vào đó bạn có thể làm quen với một vài ý tưởng,nguyên tắc làm việc với mật khẩu.

5.5.1 Tài khoản và Nhóm tài khoản

Một trong những thủ thuật với những tài khoản là sử dụng các script cùng các chương trình khác nhau.Slackware cho phép làm việc với các tài khoản bằng các chương trình sau:adduser(8),userdel(8),chfn(1),passwd(1).Còn làm việc với các nhóm tài khoản có các ứng dụng sau:groupadd(8),groupdel(8) và groupmod(8).Ngoại trừ chfn,chsh,passwd  còn các ứng dụng kể trên chỉ có thể sử dụng cho Root  bởi vì chúng nằm ở  /usr/sbin. Đối với chfn,chsh,passwd thì có thể thoải mái bởi vì chúng nằm ở /usr/bin

Lập thêm tài khoản chỉ có thể với sự giúp đỡ adduser.Chúng ta sẽ xem xét những câu hỏi cần thiết có liên quan tới ứng dụng này,cũng như những thông tin cần thiết về nó.

#adduser

Login name for new user (8 characters or less) []: mt

Đấy là tên của tài khoản mà sẽ được đăng nhập vào hệ thống.Nó cấu thành từ tám hay ít hơn kí tự bởi vì tất cả các ứng dụng login chỉ cho phép đến thế.Thông thường sử dụng chỉ dung các chữ in thường nhưng có thể dùng chữ in hoa.

User id for mt [ defaults to next available]:

ID(UID) của tài khoản - thông thường Linux sử dụng những ID này để kiểm tra ai là chủ sở hữu của tệp tin.Mỗi một tài khoản có một số ID riêng biệt không trùng lặp.Trong Slackware bắt đầu từ 1000.Bạn có thể chọn UID cho tài khoản mới và có thể đơn giản cho phép adduser gán tài khoản với một số ID tự do.

Initial group for mt [users]:

Tất cả các tài khoản theo mặc định sẽ thuộc nhóm user.Bạn có thể muốn tạo một nhóm tài khoản riêng cho từng tài khoản tuy nhiên chúng tôi không khuyến khích điều này.

Additional groups for mt (seperated with commas, no spaces) []:

Ở đây chúng tôi giới thiệu cách bổ sung các nhóm tài khoản mới.Một tài khoản có thể tham gia vào nhiều nhóm tài khoản khác nhau.Thật là tốt nếu bạn thuộc vào các nhóm tài khoản khác nhau.
mt's home directory [/home/mt]:

Catalog nhà ở của các tài khoản nằm ở catalog /home.Nếu bạn làm việc trên một hệ thống lớn thì có thể sảy ra trường hợp di chuyển  catalog home đi ra chỗ khác.Có thững chọn lựa giúp bạn thực hiện được điều này.Bạn có thể định hướng được catalog home của tài khoản sẽ nằm ở đâu theo ý muốn.Nhưng tôi không khuyến khích các bạn làm việc này.

mt's shell [/bin/bash]: 

Bash chính là một môi trường vỏ lệnh theo ngầm định của Slackware Linux và được nhiều người sử dụng.Tuy nhiên nếu bạn là người sử dụng Unix kinh nghiệm thì bnaj có thể thay đổi nó bằng một vỏ lệnh khác mà bạn quen thuộc.Bạn có thể làm ngay bây giờ hoặc muộn hơn với sự giúp đỡ chsh.

mt's account expiry date (YYYY-MM-DD) []:

Bạn có thể chỉ định ngày mà sau cái ngày đó thì tài khoản sẽ không có quền truy cập vào hệ thống nữa.Theo mặc định số ngày là không có giới hạn.Ví dụ như  sự chọn lựa này có lợi cho ISP nếu họ muốn tạo ra các tài khoản trong khoảng thời gian xác định khi mà họ chưa nhận được tiền thuê bao cho năm tới.

OK, I'm about to make a new account. Here's
what you entered so far:
New login name: mt
New UID: [Next available]
Initial group: users
Additional groups: [none]
Home directory: /home/mt
Shell: /bin/bash
Expiry date: [no expiration]
This is it... if you want to bail out, hit Control-C.
Otherwise, press ENTER to go ahead and make the account.

Bây giờ bạn nhìn thấy những thông tin cần thiết.Nếu như có gì không ổn thì sử dụng Ctrl+C để dừng lại và bắt đầu lại từ đầu.Ngược lại bạn có thể nhấn Enter và tài khoản sẽ được tạo thành.

Making new account...
Changing the user information for mt
Enter the new value, or press return for the default
           Full Name []: vudung
           Room Number []: sovietskay 2
           Work Phone []:
           Home Phone []:
           Other:

Tất cả các thông tin bổ sung dùng cho finger.Bạn có thể để chúng chống nếu muốn.Bạn có thể thay đổi những thông tin này ở bất cứ thời điểm nào với sự chợ giúp của chfn.Tuy nhiên có thể tiện lợi hơn nếu bạn chỉ ra tên họ,số điện thoại...và khi cần thiết sẽ liên hệ.

Changing password for mt
Enter the new password (minimum of 5, maximum of 127 characters)
Please use a combination of upper and lower case letters and numbers.
New password:
Re-enter new password:
Password changed.
Done...

Bạn sẽ phải nhập vào mật khẩu cho tài khoản mới.Nếu như người sử dụng mới  không có mặt thì bạn chỉ cần để mật khẩu ngầm định và nhắn cho người đấy cần thay đổi mật khẩu để an toàn hơn.

      Chọn mật khẩu:Việc chon password tốt chính là bước đầu tiên để bảo vệ hệ thống của bạn.Mật khấu không được dễ dàng đoán ra bởi vì đó chính là cơ hội để nảy sinh những vấn đề không an toàn cho hệ thống.Ý tưởng của việc chọn mật khẩu chính là tổng hợp những kí tự một cách ngẫu nhiên bao gồm cả chữ in hoa và in thường,số .....Theo tôi  TAB không lên sử dụng  bởi vì  khi đăng nhập từ xa sẽ có vấn đề nó phụ thuộc vào kết cấu từng hệ thống.
        Nói chung  đừng nên chọn mật khẩu theo ý tưởng sau: Ngày sinh,những câu chung,những cái gì liên quan tới bạn....ví dụ "secure1" là một  mật khẩu tồi.

Việc xóa tài khoản lại là một quá trình đơn giản.Bạn chỉ cần thực thi userdel và điền tên tài khoản cần xoá vào.Nhưng bạn phải nhớ rằng khi ấy tài khoản này không đăng nhập trong hệ thống,không có một tiến trình nào được thực hiện bởi nó.Và khi xóa tức là nó sẽ không còn tồn tại tron hệ thống nữa.

#userdel mt

Hãy thực hiện lệnh này khi bạn muốn xóa tài khoản "mt" ra khỏi hệ thống của bạn.Qúa trình như sau.Lệnh sẽ xóa tài khoản từ tệp tin /etc/passwd và /etc/group nhưng không xóa đi catalog home của nó.Nếu bạn muốn xoá đi catalog home của tài khoản "mt" thì cần phải làm như sau:

#userdel -r mt

Trong thời gian đình chỉ hoạn động tài khoản được viết rõ trong mục "Thay đổi mật khẩu" bởi vì ở lúc đó cần phải thay đổi lại mật khẩu tài khoản.Việc thay đổi thông tin cá nhân của người dùng sẽ được diễn tả rõ ràng ở phần "Thay đổi mật khẩu" và "Thay đổi thông tin cá nhân tài khoản".
Chương trình tạo và xóa nhóm tài khoản rất đơn giản groupadd.Nó tạo ra một nhóm khác trong tệp tin /etc/group với một nhóm ID riêng biệt.Còn groupdel thì xóa đi tên của nhóm đã được tạo ra.

Tạo nhóm tài khoản

#groupadd cvs

và xóa nhóm tài khoản

#grpoupdel cvs

Thực hiện bằng tay

Tất nhiên có khả năng bổ sung hoặc xóa tài khoản cũng như nhóm tài khoản bằng tay.Khi mà bạn đã làm quên với các hàm số thì  bạn có thể sử dụng các script để thực hiện các công việc này hơn là bằng tay.
Đầu tiên,bạn bổ sung tên tài khoản mới vào tệp tin /etc/passwd(5),/etc/shadow(5),/etc/group(5).Tệp tin passwd chứa một vài thông tin về tài khoản nhưng không chứa mật khẩu.Tệp tin này cần phải được cấp quyền hạn "đọc" cho tất cả các tài khoản khác,nhưng bạn không muốn password (thậm chí đã được mã hoá) có quyền truy cập cho tất cả mọi người(bởi vì đó sẽ là một sự giúp đỡ cho những kẻ xấu).Chính vì thế password (đã mã hóa) cần phải được lưu vào một tệp tin bảo vệ (shadow)(tệp tin bóng) mà chỉ có quyền hạn đọc đối với root.
Còn ở file passwd thì mật khẩu được biểu diễn như "x".Tệp tin group hiển thị danh sách tất cả các nhóm và quan hệ của tài khoản với các nhóm.

Chúng ta hãy xem tệp tin /etc/passwd để bổ sung vào thêm ai đó.Một dòng đại diện như:
chris:x:1000:100:Chris Lumens,Room 2,,:/home/chris:/bin/bash

Mỗi một dòng tương ứng với một tài khoản.Mỗi một vùng phân cách nhau bởi dấu":".Các khoảng này sắp sếp từ trái sang phải: Tên tài khoản,mật khẩu(mã hóa kí hiệu "x" cho tất cả các phiên bản Slackware,bởi vì chúng tôi sử dụng file mật khẩu bóng),ID tài khoản,ID nhóm tài khoản,thông tin bổ sung về tài khoản được phân biệt bằng dấu";",catalog nhà ở(home),và vỏ lệnh.Bạn cần phải làm gì ,chỉ cần bổ sung vào cuối cung của tệp tin một dòng mà đã bổ sung tất cả các mục kể trên theo đúng thứ tự.

Chú ý là mật khẩu x,và ID là riêng biệt và ID nhóm user của Slackware là "100" và phải chọn đúng vỏ lệnh.

Bây giờ bạn bổ sung thêm  một dòng vào tệp tin /etc/shadow mà chứa mật khẩu.Nó có dạng như sau:
chris:$1$w9bsw/N9$UWLr2bRER6YyBS.CAEp7R.:11055:0:99999:7:::

Lần này cũng vậy,từng dòng tương ứng với một tài khoản và các vùng phân cách nhau bởi dâu":".Tên tài khoản,mật khẩu mã hoá,số ngày từ ngày của một kỉ nguyên(1 tháng 1 1970) tới ngày,khi nào mật khẩu thay đổi lần cuối,số ngày mà sau đó mật khẩu có thể thay đổi,số ngày mà sau đó mật khẩu cần phải thay đổi,số ngày trước khi tài khoản bị đóng,số ngày mà tài khoản nhận được thông báo về đình chỉ hoạt động,số ngày mà sau đó tài khoản bị khoá hoàn toàn,số ngày tính từ kỉ nguyên khi tài khoản bị đóng và thực hiện lưu trữ.

Như bạn đã thấy đó là những thông tin chính về quá trình khoá tài khoản.Nếu bạn không sử dụng những thông tin này thì bạn chỉ cần nhớ một vài từ những vùng chính có giá trị đặc biệt.Ngược lại bạn sẽ phải thực hiện lại từ đầu một vài quá trình cho đến khi bạn nhớ hết các khu vực này.Còn đối với tài khoản mới thì bạn chỉ cần ghi cái gì đấy vào vùng mật khẩu.Đừng có sợ đó không hẳn là mật khẩu ngay đâu bởi vì chúng ta sẽ thay đổi nó ngay bây giờ.Ở trong vùng mật khẩu bạn có thể sử dụng bất kì kí tự nào (chú ý trừ dấu ":").Còn số ngày từ ngày thay đổi mật khẩu bạn để trống,điền phần tiếp theo 0,9999 và 7 giống như ví dụ trên các vùng còn lại để trống.

Đối với những người trong các bạn nhìn thấy mật khẩu của tôi ở trong ví dụ trên mà nghĩ có thể giải mã được mật khẩu thì xin hãy cứ làm.Bạn hãy nhớ rằng mật khẩu được bảo vệ bởi firewall(nó sẽ giúp đỡ bạn).

Bởi vì tất cả các tài khoản theo mặc định thuộc nhóm user cho nên bạn không cần phải bổ sung nó vào nhóm user.Nếu như bạn thích tạo một nhóm mới hoặc bổ sung vào các nhóm tài khoản khác thì bạn cần phải soạn thảo lại /etc/group
cvs::102:chris,logan,david,root
Vùng: tên nhóm,mật khẩu nhóm,ID nhóm và thành phần của nhóm.Việc tạo một nhóm mới thực ra là bổ sung một dòng vào tệp tin với ID riêng cùng với danh sách tài khoản mà bạn muốn bổ sung vào nhóm.Nếu như tài khoản ở thời điểm hiện tại đang đăng nhập thì cần phải thoát ra và đăng nhập lại để những biến đổi có hiệu quả.

Bây giờ chúng ta quay trở lại lệnh passwd để tạo mật khẩu cho tài khoản mới sau đó mới dùng mkdir để tạo catalog nhà ở cho tài khoản mà chúng ta đã chỉ ra trong /etc/passwd
Nếu như bạn cài đặt sendmail(8) thì bạn cần phải tạo thêm một tệp tin tương ứng thuộc tài khoản đó ở /var/spool/mail như ví dụ sau:

#touch /var/spool/mail/mt
#chown jellyd.users /var/spool/mail/mt
#chmod 660 /var/spool/mail/mt

Những lệnh này lân lượt tạo các tệp tin thư điện tử(mail spool) cho tài khoản "mt" và thiết lập đúng quyền hạn sử dụng cho file
Để xoá tài khoản thì đơn giản là xóa đi toàn bộ những gì mà bạn tạo ra.Xóa thông tin có liên quan tới tài khoản ở trong /etc/passwd và /etc/group.Xoá đi tên tài khoản từ tất cả các nhóm ở trong /etc/group,xóa đi hết thư của tài khoản nêu như có và đừng quên xóa đi catalog nhà ở của nó(nếu như thấy cần thiết).

Việc xoá nhóm tài khoản có vẻ dễ ràng hơn.Đơn giản chỉ cần xóa đi dòng nhóm từ /etc/group

Thay đổi mật khẩu

Chương trình passwd cho phép thay đổi mật khẩu và lưu lại trong /etc/shadow.Tệp tin này chứa tất cả mật khẩu của hệ thống ở dạng mã hoá.Để thay đổi mật khẩu của bạn cần làm như sau:

$passwd chirs
Old password:
Enter the new password (minumum of 5, maximum of 127 characters)
Please use a combination of upper and lower case letters and numbers.
New password:

Như bạn đã nhìn thấy đầu tiên hệ thống hỏi bạn mật khẩu cũ.Sau đó bạn cần nhập vào mật khẩu mới.Passwd thực hiện nhiều qúa trình kiểm tra mật khẩu của bạn và nhắc nhở bạn nếu như bạn có mật khẩu không tốt.Bạn có thể không cần quan tâm đến thông báo đấy(nếu như có).Sau đó bạn cần lập lại mật khẩu một lần nữa để khẳng định.

# passwd ted

Bạn cần phải lập lại quá trình trên nhưng mà lại không cần nhập vào mật khẩu cũ của tài khoản(đó là một trong các quyền lợi của root).

# passwd -l david

Thay đổi mật khẩu david bởi vì không thể mã hóa.Để cho tài khoản hoạt động lại cần thực hiện:

# passwd -u david

Bây giờ david(bị khóa) lại bắt đầu hoạt động lại như trước.Việc đình chỉ hoạt động có thể có lợi nếu như tài khoản sử dụng không đúng quyền hạn của mình trên hệ thống hoặc xuất đi quá  nhiều bản sao xeyes(1) vào môi trường X của bạn.

Thay đổi thông tin tài khoản

Người sử dụng có thể thay đổi môi trường vỏ lệnh của mình cũng như những thông tin cá nhân finger.Trong Slackware Linux sử dụng ứng dụng chsh(change shell -thay đổi vỏ lệnh) và chfn(change finger-thay đổi finger).

Người sử dụng có thể chọn bất cứ một vỏ lệnh nào được liệt kê trong /etc/shell. Bash được coi là phổ biến.Có những người thích làm việc với vỏ lệnh trong các phiên bản Unix truyền thống.Việc chọn vỏ lệnh có thể thực hiện với sự giúp đỡ chsh:

$chsh
Password:
Changing the login shell for chris
Enter the new value, or press return for the default
        Login Shell [/bin/bash]:

Sau khi nhập vào mật khẩu thì bạn hãy nhập vào đường dẫn tới vỏ lệnh mới.Chú ý nó được liệt kê trong /etc/shell(5).Tài khoản root có thể thay đổi môi trường vỏ lệnh của  các tài khoản khác.
finger -thông tin cá nhân có thể không bắt buộc.Nó chứa những vùng như tên ,số điện thoại,văn phòng làm việc.Bạn có thể thay đổi khi sử dụng chfn cũng như khi bị khóa.Và tất nhiên root có quyền thay đổi finger thông tin của tất cả các tài khoản.

5.5.2 Tắt máy an toàn

Tắt máy đúng cách cũng là rất quan trọng.Việc ngắt nguồn điện tạm thời có thể dẫn đến thảm họa cho hệ thống.Khi mà máy tính đang chạy(thậm chí khi  bạn không làm gì cả)thì một vài tệp tin vẫn chạy.Hãy nhớ rằng phông nền màn hình của bạn cũng được thực hiện bởi một tiến trình nào đó.Các tiến trình này điều khiển hệ thống và các tệp tin khác trong suốt thời gian này.Nếu bạn chỉ đơn giản tắt máy thì có thể làm cho các tệp tin này không được đóng đúng cách và chình vì thế rất là hại.Phụ thuộc vào mức độ tổn hại của các tệp tin này mà làm cho hệ thống bị hư hại.Trong bất cứ trường hợp nào bạn cũng sẽ phỉa trải qua một quá trình dài để kiểm tra lại hệ thống ở lần khởi động sau.

Chính vì thế nêu bạn định khởi động,tắt máy thì cần phải làm đúng theo các tiêu chuẩn bởi vì nó rất là quan trọng.Có rất nhiều con đường để làm điều đó tuy nhiên bạn có thể chon cái nào mà bạn thích.Hầu như tất cả đều chọn cách tắt máy tính thông qua khởi động lại máy tính.
Phương án thông thường là shutdown

# shutdown -h now

Trong trường hợp này chúng ta không gửi đi thông báo cho tất cả các tài khoản khác .Họ sẽ nhìn thấy thông báo từ trình  shutdown."now" chính là thời gian khi bạn muốn tắt máy,còn "-h" chính là  halt(dừng lại).Nhưng đó không là phương pháp tối ưu cho việc tắt máy tính(đặc biệt với hệ thống nhiều tài khoản),còn đối với máy cá nhân thì nó là đủ rồi.Tối ưu hơn đối với các hệ thống nhiều tài khoản là:

#shutdown -h +60

Lệnh này sẽ tắt máy sau 60 phút.Nó là bình thường đối với các hệ thống lớn.Thậm chí những hệ thống quan trọng còn có thời gian biểu tắt máy,khởi động lại máy ở /etc/motd(5).
Để khởi động lại hệ thống thì vẫn dung lệnh đấy nhưng thay vì "-h" là "-r".

#shutdown -r now

Bạn có thể sử dụng thời gian cho shutdown -r như trong shutdown -h. Tuy nhiên có nhiều công việc khác mà bạn có thể sử dụng shutdown để kiểm soát khi nào là tắt hệ thống,khi nào khởi động lại hệ thống.Để có thêm thông tin hãy xem ở trang man của nó.
Phương pháp thứ hai để tắt,khởi động lại hệ thống là sử dụng halt(8) và reboot(8).hatl không chậm chễ tắt ngay hệ thống còn reboot thì chỉ là ảnh của halt.Thực hiện chúng như sau:

#halt
#reboot

Một mức độ thất hơn để khởi động lại hệ thống là thông báo trực tiếp cho init.Tất cả các phương pháp trên thực chất là các cách thông báo khác nhau cho init nhưng bạn có thể thông báo trực tiết cho init bằng tiện ích telinit(8)(chú ý trong tên lệnh chỉ có một chữ "l").Sử dụng telinit để thông báo cho init chuyển tới tầng thực thi nào(runlevel) và thực hiện vài trò của mình ,chạycác script đặc biệt.Những script này sẽ tiêu diệt hoặc vô hiệu hoá các tiến trình thích ứng với tầng thực thi đã chọn.Điều đó có thể sử dụng để tắt hệ thống hoặc khởi động lại bởi vì chúng được xác định ở những tầng thực thi khác nhau.

#telinit 0

Tầng thực thi 0 - đấy là chế độ tắt hệ thống.Thông báo cho init đi và chế độ 0,chúng ta ép nó tiêu diệt hết tất cả các tiến trình khác,ngắt liên kết với các tệp tin hệ thống và hệ thống dừng lại.Nó khác với phương pháp tắt máy.Trên các máy laptop thì nó có thể tắt đi nguồn điện.

#telinit 6

Tầng thực thi 6 - đấy là chế độ khởi động lại hệ thống.Tất cả các tiến trình sẽ bị tiêu diệt,các tệp tin hệ thống sẽ unmount và hệ thống khởi động lai.Đấy là một phương pháp đúng nhất.

Vẫn còn có  một phương pháp khởi  động máy tính.Phương pháp này chỉ thực hiện bởi root.Có lẽ chỉ dùng để khởi động lại,nếu như bạn không là root mà khi bạn lại có quyền sử sụng bàn phím .Việc thực hiện tổ hợp phím Ctrl+Alt+Delete sẽ nhanh chóng khởi động lại máy tính.Thực tế bạn đã sử dụng ứng dụng ctraltdel(8) trong /usr/bin.Còn nếu như chúng không tồn tại hoặc không có các quyền hạn lạ thì việc sử dụng tổ hợp phím sẽ không dẫn đến hậu quả gi được.

5.6  Các lệnh cơ bản về mạng(Basic Network commands)

Network coi như một hệ thống máy tính liên kết với nhau.Network đơn giản là một hệ thống cấu tạo từ một vài máy tính kết nối với nhau có thể trong nhà,trong cơ quan,trong văn phòng..có thể lớn hoặc nhỏ..Nếu máy tính của bạn là một phần trong mạng lưới có nghĩa là bạn có thể truy cập đến các phần khác trong mạng,có thể trực tiếp hoặc dịch vụ(e-mail,web..).
Có rất nhiều cách chương trình mạng khác nhau.Một vài trong chúng thuận tiện cho kiểm tra hoặc sửa lỗi. Còn lại(chương trình đọc tin tức,web..) thuận lợi cho công việc của bạn và giao tiếp với các người khác.

5.6.1 ping
ping(8) gửi đi package ICMP ECHO_REQUEST tới host.Nếu như host trả lời thì bạn nhận được ICMP ngược lại.Có vẻ như rất lạ.Bạn có thể ping để xem máy tính tồn tại hay không.Đây là  cuộc nói chuyện giữa các người sử dụng Linux:

Người A:Loki tắt rồi
Người B:Cậu chắc chắn chứ?
Người A: uh,mình ping mà không thấy trả lời.

Đấy là một trong những ứng dụng của ping.Nó giúp nhanh chóng xác định có thể truy cập được hay không vào máy tính khác.

$ping <ip-address hoặc tên host>

Tất nhiên chương trình có một vài tham biến đi kèm.Hãy xem man-pages của ping(1) để có thêm thông tin.

5.6.2 finger

finger(1) hỏi về thông tin đặc biệt của tài khoản.Bạn chỉ cho finger tên tài khoản,e-mail và chương trình thử kết nỗi với server cần thiết và hỏi những thông tin về tài khoản:Tên,số điện thoại,và nhiều thông tin khác.Ví dụ như:

$finger [email protected]

finger có thể đưa ra tên tài khoản,e-mail,số điện thoại,..và tệp tin .plan,.project.Có lẽ những thông tin trên phụ thuộc vào từng server cụ thể.Server Slackware cung cấp các thông tin sau:

Tên người sử dụng
Số phòng
Số điện thoại nhà ở
Số điện thoại văn phòng
Trạng thái đăng nhập
Trạng thái e-mail
Nội dung .plan tệp tin trong catalog home của tài khoản
Nội dung .project tệp tin trong catalog home của tài khoản

Bốn dòng đầu tiên có thể thay đổi bởi chương trình chfn.Những thông tin này được lưư lại trên tệp tin /etc/passwd.Để thay đổi thông tin trên .plan và .project bạn có thể sử dụng một trình soạn thảo văn bản bất kì.Chúng nhất thiết phải nằm trong catalog home của tài khoản tương ứng với .plan và .project.

Có rất nhiều người sử dụng finger với các account của mình trên các máy điều khiển từ xa để kiểm tra xem họ có e-mail hay không.Bạn cũng có thể xem các kế hoạch,các phương án của tài khoản.Giống như các chương trình khác finger có nhiều tham biến,bạn có thể đọc man của nó để có thêm thông tin.

5.6.3 telnet

Ai đó đã nói telnet(1) - Là một cái gì đó tuyệt vời nhất từ thế giới máy tính.Có khả năng kết nối với các máy ở xa và làm việc trên các máy Unix và các phiên bản Unix khác.

telnet cho phép bạn đăng nhập vào các máy ở xa giống như bạn đang ngồi trước nó.Chỉ cần nhập vào tên,mật khẩu và  bạn đã được đăng nhập vào hệ thống với vỏ lệnh.Và bạn có thể làm việc bình thường trên vỏ lệnh.Có thể viết thư,đọc tin tức,di chuyển tệp tin,...Nếu như bạn ở X và bạn kết nối với các máy khác qua telnet trên xterm thì bạn có thể thực hiện các chương trình trên các máy đó và biểu diễn trên máy của bạn.Xem thêm ở 4.3.5
Để kết nối với các máy ở xa bạn cần thực hiện lệnh sau:

$telnet <host name>

Nếu host trả ,lời thì bạn sẽ thấy một thông báo đăng nhập vào hệ thống quen thuộc.Nhập vào tên và mật khẩu.Vậy là bạn đã  đang ở trong vỏ lệnh.Để thoát ra khỏi telnet hãy sử dụng logout hoặc là exit.
  Quan trọng:
Telnet không mã hoá thông tin mà nó gửi đi.Tất cả những cái gì bạn gửi đi giống như một văn bản thông thường thậm chí cả mật khẩu.Cho lên đừng lên sử dụng telnel trên internet.Một giải pháp khác -Secure Shell mã hoá tất cả  và miễn phí.Xem http://www.ssh.org để biết thêm thông tin.
Đây là một ví dụ về sử dụng telnet tới HTTP server trên cổng 80 và lấy một vài thông tin trên nó:


5.6.4 FTP

FTP(File Transfer Protocol) thực hiện quá trình trao đổi các tệp tin giữa hai máy tính với nhau.
Một bên là FTP Server còn bên kia là FTP Client.Trong phần này chúng ta sẽ thảo luận về FTP client.
Bạn chính là một FTP client.Còn FTP Server chính là máy mà trả lời cho yêu cầu của bạn và giúp bạn đăng nhập vào hệ thống.Bạn sẽ tải về hoặc gửi lên server các tệp tin cần thiết.Client không thể nhận các  FTP liên kết khác,nó chỉ có thể kết nối với Server.
Để kết nối với FTP server chỉ đơn giản gọi lệnh ftp(1) và tên server cần kết nối.

$ftp <name host>

Nếu như host có FTP server thì nó sẽ hỏi bạn tên và mật khẩu.Bạn có thể đăng nhập bằng tài khoản của mình cũng có thể bằng "anonymous".Anonymous FTP thường được sử dụng như là nơi lưu trữ các chương trình.Như là có thể tải Slackware Linux qua FTP và bạn phải sử dụng anonymous FTP.
Bạn đăng nhập vào FTP.Tất nhiên nó cũng sử dụng hệ thống lệnh giống như  các lệnh thông thường.Đây là danh sách các lệnh cơ bản:

Lệnh

Chú thích

ls

Hiển thị danh sách tệp tin

cd <tên catalog>

Chuyển đổi vào catalog khác

ascii

Thiết lập qúa trình truyền tải ở chế độ ASCII

bin

Thiết lập qúa trình truyền tải ở chế độ nhị phân

get <tên files>

Tải tệp tin

put <tên files>

Gửi lên tệp tin

hash

Nếu như bật nó lên thì đối với mỗi kb gửi lên sẽ biểu diễn bằng dấu #

mget <mask>

Tải tệp tin hay nhóm tệp tin.Có thể sử dụng tên theo mẫu

mput <mask>

Gửi lên tệp tin hay nhóm tệp tin.Có thể sử dụng tên theo mẫu

quit

Thoát khỏi FTP server


Bạn cũng có thể sử dụng một vài lệnh dưới đây chmod,delete,rename,rmdir,mkdir....Bạn có thể sử dụng help để có thể thêm thông tin hoặc man của ftp.Đây là một ví dụ sử dụng ftp:


5.6.5 ncftp

ncftp(1)(phát âm nik-F-T-P) - Nó là một giải pháp khác đối với FTP được sử dụng trên Slackware.Nó là một chương trình với interface  lệnh,nhưng không có nhiều chức năng phụ như so với ftp,bao gồm có:

kết thúc bằng tab
Bookmarks file
More liberal wildcard users
Command history
Passive and no-passive FTP transfer modes

Theo ngầm định ncftp đăng nhập vào server bằng anonymous.Bạn có thể bắt chương trình hiển thị bảng đăng nhập bằng tham biến "-u".Sau khi đăng nhập bạn có thể thực hiện các lệnh giống như trong ftp,tuy nhiên interface có khuynh hướng giống bash.
Dưới đây là ví dụ sử dụng ncftp:

 

5.6.6 Thư điện tử(e-mail)

E-mail là một dịch vụ phổ biến trên internet.Trong năm 1998 theo thống kê thì số lượng e-mail được gửi đi lớn hơn thư tay.Đó là điều tất nhiên bởi vì đơn giản,tiện lợi và là một dịch vụ cần thiết.
Trong  Slackware chúng tôi sử dụng  e-mail server theo tiêu chuẩn và một vài e-mail client khác.Ở đây các client làm việc trên console,có nhiều người sử dụng Windows sẽ khó khăn nhưng họ sẽ thấy rằng làm việc trên console rất là thoải mái và đặc biệt khi kiểm tra các hộp thư ở xa.

5.6.6.1 pine

 pine không phải là elm.Thông thường người ta nói như vậy.Trường đại học Washington đã tạo ra một chương trình của mình cho internet,thông tin,e-mail tuy nhiên đầu tiên dùng cho những sinh viên của mình giống như mail-client.Ngày nay pine coi như là một trong những e-mail client phổ biến và được phép truy cập từ bất cứ phiên bản Unix nào thậm chí cả Windows.


Như bạn đã nhìn thấy các menu-lệnh cùng một loạt các phím khác nhau được sử dụng.Pine có thể nói là một chương trình phức tạp.Nhưng chúng ta sẽ không nói thêm về vấn đề này nữa.Để kiểm tra có thư hay không trong "inbox"(hộp thư) hãy nhấn "i".Các  tin nhắn của bạn có chứa thông tin về ngày tháng,tác giả,đề mục.Di chuyển con trỏ tới tin nhắn mà bạn muốn đọc và nhấn Enter.Nếu muốn trả lời e-mail thì hãy nhấn "r".Sau khi  bạn viết  vào nội dung cần thiết thì nhấn Ctrl+X để gửi tin nhắn.Có thể sử dụng phím "i" để quay trỏ về danh sách các tin nhắn.

Nếu muốn xóa tin nhắn hãy nhấn phím "d".Khi đấy tin nhắn sẽ chuyển vào thùng rác và xóa đi.Pine xóa thư đi khi bạn thoát khỏi chương trình.pine lưu trữ thư vào một thư mục riêng.Để có được danh sách của chúng bạn hãy nhấn "l".Có thể lưu tin nhắn vào thư mục khác bằng phím "s".
pine có nhiều tính năng phụ khác.Bạn có thể tìm thấy trong man của nó.

5.6.6.2 elm
elm cũng là một trong các chương trình làm việc với e-mail thông dụng dưới môi trường console.Interface của nó không thân thiện như trong pine.Chương trình này tồn tại lâu đời hơn pine.


Theo mặc định bạn sẽ vào thẳng hộp thư.Các tin nhắn được sắp xếp theo số thứ tự,ngày tháng,đề mục.Hãy sử dụng các mũi tên lên xuống để tìm đến tin nhắn cần thiết.Để xem hãy nhấn Enter.
Để viết tin nhắn hãy nhấn "m" từ màn hình chính."d" dùng để xoá tin nhắn.còn "r" để trả lời tin nhắn.
Hãy đọc man của nó để có thêm thông tin cần thiết.

5.6.6.3 mailx

mailx(1) - là một e-mail client được điều khiển bằng vỏ lệnh.Nó không hề hướng bạn tới việc sử dụng interface.Có lẽ chương trình rất có lợi khi bạn cần gửi nhanh một cái gì đó mà bạn không muốn mất thời gian khi ghi trên các script của các hộp thư.Thông thường có cấu trúc sau:

$mailx -s <đề mục><ai>

mailx đọc thân của thư từ dạng nhập vào thông thường.Bạn có thể cat mọi tệp tin để gửi nó hoặc cũng có thể in ra bằng phím Ctrl+D khi bạn kết thúc.
Đây là một ví dụ gửi qua e-mail một chương trình:

$cat randomfunc.c | mailx -s "Đây là hàm số" \
[email protected]

Bạn có thể đọc man của nó để có thêm thông tin.
mutt cũng là một e-mail client.Dạng chuẩn interface của nó là giống như elm,tuy nhiên có nhiều cải tiến và có một số tính năng khác.Một vài tính năng đặc trưng bao gồm:

sử dụng mầu
làm việc với MIME và PGP/MIME
làm việc với POP và imap
làm việc với nhiều hộp thư khác(mbox,MMDF,MH,maildir..)
message threading(mạch tin nhắn)
highly customizable(khả năng tự cấu hình lớn)


Như bạn thấy thanh điểu khiển của mutt nằm ở trên cùng.Tất cả các câu hình của mutt bạn có thể thay đổi theo ý muốn kể cả các phím.Nếu thích có thể dùng cả các macro.
Để có thêm thông tin hãy đọc man của mutt.
5.6.7 Trình duyệt Web

5.6.7.1 lynx

lynx(1) là một trình kiểm duyệt web ở trong console.Nó là một phương pháp rất nhanh để tìm một cái gì đó trên internet.Thỉnh thoảng hình ảnh trở lên không cần thiết nếu bạn biết cái gì mình cần tìm.Để chạy lynx hãy gõ lệnh:

$lynx


Bạn có thể chỉ ra site mà bạn muốn kết nối từ lynx:

$lynx http://www.slackware.com

lynx hiển thị các phím lệnh ở phía dưới.Các phím lên xuống cho phép bạn di chuyển trên các trang web.Enter để chuyển đến các địa chỉ khác trên liên kết.Phím "d" để tải các tệp tin về.Phím "g" sẽ đưa ra một dònh trống và hãy nhập vào URL của site cần chuyển tới.Phím "h" để giúp bạn có những thông tin cần thiết.

5.6.7.2 wget

wget(1) là một ứng dụng trên terminal sử dụng các câu lệnh để tải các tệp tin với các URL cho sẵn.Nó tiện lợi khi bạn muốn tải về hẳn một website để xem xét hoặc là để tải các tệp tin từ các HTTP hoặc FTP server (hơn hẳn so với Netscape).Cấu trúc như sau:

#wget <url>

Bạn có thể chỉ ra các tham biến đi kèm để tải site slackware về như sau:

$wget -recursive http://www.slackware.com

wget sẽ tạo ra một catalog www.slackware.com và ghi vào trong nó thứ tự các tệp tin như trên thực tế(như trên site).
wget có thể làm việc với FTP site,bạn hãy chỉ ra tên của FTP URL vào chỗ của HTTP URL


wget có nhiều tham biến đi kèm,hãy đọc man của nó để có thêm thông tin.

5.6.7.3 links

Có thể nói links và lynx là dạng trình duyệt web dưới dạng console,và đều sử dụng các phím để điều khiển.Tuy nhiên khi bạn nhấn phím ESC thì nó sẽ hiển thị ra một menu trên màn hình của bạn.Điều này giúp cho công việc trở lên nhẹ nhàng hơn.Người nào không sử dụng quen có thể sự dụng tiềm năng này.
links được hình dung như dưới đây:


5.6.8 traceroute

Slackware sử dụng chương trình 4.4BSD traceroute.Đó là một công cụ rất tiện lợi để sửa chữa hệ thống.traceroute chỉ ra tên của từng host mà packages sẽ di qua để tới đích.Bạn có thể xem bao nhiêu chặng mà packages đi qua để tới site slackware.Hãy sử dụng lệnh sau:

$traceroute www.slackware.com

và kết quả như sau:

traceroute to www.slackware.com (204.216.27.13), 30 hops max, 40 byte packets
1 zuul.tdn (192.168.1.1) 0.409 ms 1.032 ms 0.303 ms
2 207.171.227.254 (207.171.227.254) 18.218 ms 32.873 ms 32.433 ms
3 border-sf-2-0-4.sirius.com (205.134.230.254) 15.662 ms 15.731 ms 16.142 ms
4 pb-nap.crl.net (198.32.128.20) 20.741 ms 23.672 ms 21.378 ms
5 E0-CRL-SFO-03-E0X0.US.CRL.NET (165.113.55.3) 22.293 ms 21.532 ms 21.29 ms
6 T1-CDROM-00-EX.US.CRL.NET (165.113.118.2) 24.544 ms 42.955 ms 58.443 ms
7 www.slackware.com (204.216.27.13) 38.115 ms 53.033 ms 48.328 ms

traceroute giống như ping,nó cũng sử dụng packages ICMP.Chương trình này có nhiều tham biến đi cùng.Theo mặc định lớn nhất là  khoảng 30 host tuy nhiên có thể thay đổi nhờ tham biến "-m".

5.6.9 Giao tiếp qua mạng

5.6.9.1 talk

talk(1) cho phép mọi người nói chuyện với nhau thông qua các mẩu tin nhắn.Khung cửa sổ được chia thành hai phần .Để bắt đầu nói chuyện với người khác hãy sử dụng lệnh sau:

$talk <người> [tên tty]

 

Nếu như bạn chỉ có nêu tên của người  sử dụng thì yêu cầu chat(giao tiếp) chỉ coi như là cục bộ(local) và tất nhiên chỉ có tài khoản trên mạng local mới có thể tham gia nói chuyện.Tên của tty cần phải chỉ ra nếu như bạn muốn nói chuyện với họ trên một terminal đặc biệt.(chẳng hạn như họ có nhiều terminal mở).

Để có thêm thông tin hãy đọc man của talk(1) hoặc lệnh w(1).
talk có thể liên lạc với các tài khoản ở xa.Bạn chỉ cần chỉ ra e-mail và talk sẽ thử kết nối với tài khoản ấy trên host đã chỉ ra.
talk co hạn chế,chỉ dùng cho hai người và trên hai nửa của màn hình.

5.6.9.2 ytalk

ytalk(1) đó là cải tiến của talk.Trong Slackware nó được sử dụng như là lệnh ytalk.cấu trúc giống như talk tuy nhiên có nhiều cải tiến

$ytalk <username>[#tttyname]


Tên của tài khoản và terminal được gọi ra giống talk,tuy nhiên chúng được cách nhau bởi dấu "#".
ytalk có các tiến bộ sau:


cho phép nhiều hơn hai người dùng
menu có thể sử dụng khi nhấn ESC
có thể thoát khỏi vỏ lệnh trong khi vẫn ở talk
còn nhiều nữa

Nếu bạn là administrator thì phải biết rằng cổng của ntalk được cho phép trong tệp tin /etc/inetd.conf.Nó cần cho hoạt động bình thường của ytalk.

5.6.9.3 wall

wall(1) là một ứng dụng để viết tin nhắn cho các tài khoản khác trên hệ thống.Câu trúc như sau:

%wall [file]

Tất cả nội dung của files sẽ bắt đầu hiển thị trên terminal của bạn.Nếu bạn không có tệp tin sẵn thì wall sẽ tiếp nhận bằng cách nhập vào thông thương.Tuy nhiên bạn cũng phải định dạng tin nhắn của bạn.Để kết thúc nhấn Ctrl+d.
Tuy nhiên wall cũng có nhiều nhược điểm.Hay dọc man của nó để tự tìm hiểu.

5.6.10 Các công cụ DNS

DNS(Domain Name Service) đấy là một protocol đặc biệt cho phép các máy tính chạy dưới một cái tên như là www.slackware.com với môt IP-address là 64.57.102.34.Những máy không thể  chuyển packages đi qua được www.slackware.com nhưng chúng có thể chuyển các packages qua được domain của IP-address.Nó tiên lợi cho việc nhớ tên máy hơn là nhớ địa chỉ IP của nó.Sử dụng tên thay cho máy tính thật là tốt tuy nhiên sơ đồ liên hệ của nó với IP-address như thế nào.

5.6.10.1 host

host(1) là một công cụ cho ta biết IP-address của một máy dưới một cái tên trên mạng.Điều này rất là quan trọng.Ví dụ đối với tên www.slackware.com hãy thực hiện lệnh sau:

$host www.slackware.com
www.slackware is an alias for slackware.com
slackware.com has address 64.57.102.34

Tuy nhiên lại có người muốn biết tên domain của một IP-address.Chúng ta phải làm gì.

nslookup

nslookup là một chương trình lâu đời có tên tuổi.nslookup đã bị phản đối nhưng có thể được cứu trong tương lai.Nó không có man-pages.


5.6.10.2 dig

dig là một công cụ dùng để tìm kiếm các thông tin trên DNS.Nó có thể chộp lấy bất cứ những cái gì trên DNS bao gồm truy cứu các lỗi A,CNAME,MX,SP và TXT.dig có nhiều tham biến đi kèm.Hãy đọc man của nó để có thông tin.Đây là một ví dụ của dig:


Ở đây "@192.168.1.254" là một DNS đặc biệt được dùng.Còn "www.slackware.com" là domain cần truy cứu và "mx" là dạng chúng ta cần xem xét.

5.7 Dạng lưu trữ tập tin(Archive Files)

Trong Slackware Linux có một vài chương trình mà có thể sử dụng để nén và lưu trữ tập tin.Những chương trình đặc biệt có lợi khi bạn tạo ra các files backup(sao dự phòng) cho các tài liệu quan trọng hoặc để chuyển đổi giữa các máy tính trọng mạng.Bạn có thể tìm thấy các chương trình làm việc với các dạng lưu trữ này trên các hệ thống Unix cũng như Windows.

5.7.1 gzip

gzip(1) thuộc  GNU là một trong các ứng dụng để nén thông tin.Nó có câu trúc sau:

$gzip infile

Kết quả là sẽ tạo ra infile.gz và tất nhiên sẽ nhỏ hơn tập tin ban đầu rất nhiều.Nhưng chú ý rằng infile.gz thay thế infile cũng có nghĩa là infile chấm rứt sự tồn tại của mình.Còn lại chỉ có bản nén của nó thôi.Tuy nhiên có những tập tin đã ở dạng nén rồi như .jpeg,.jpg....thì chúng không thể nén hơn nữa.Tuy nhiên mức độ nén cao nhất có thể nhờ lệnh sau:

$gzip -9 infile

Tuy nhiên cách này làm mất rất nhiều thời gian nhưng bù lại files tạo thành sẽ nén cực đại.
Việc giải nén gzipped(Giải nén GNU zip) có thể thực hiện với sự giúp đỡ của hai lệnh tuy nhiên cho rằng chúng là một.Ứng dụng gzip sẽ giải nén bất kì một tập tin nào có phần mở rộng .gz
Phương án đầu:

$gunzip infile.gz

Khi thực hiện lệnh này thì vị trí mà files nén trong catalog hiện hành sẽ xuất hiện catalog con giải nén của tập tin nén và phần .gz mở rộng sẽ biến mất.
Phương án hai:

$gzip -d infile.gz

Nói chung gunzip chính là ảnh của /bin/gzip
Thực vây:

$ca /usr/bin
$ls -l gunzip
lrwxrwxrwx 1 root root 9 Feb 2 09:45 gunzip -> /bin/gzip

Chính vì thế khi gọi gunzip thực tế chính là gọi gzip theo tên khác.Chương trình có thể phân biệt được tên ứng dụng nhập vào và cách làm việc với chúng.

5.7.2 bzip2

bzip2  không được coi là chương trình nén tiêu chuẩn trên Slackware Linux.Nó sử dụng một quy trình hoàn toàn khác so với gzip mà có nhiều ưu điểm và nhược điểm.Ưu điểm của bzip2 chính là chất lượng nén tốt hơn so với gzip.Thỉnh thoảng cũng có những tập tin kém hơn so với gzip.Nhưng mà nói chung là rất tốt cho các người dùng với những modem yếu.

Nhược điểm của bzip2 chính là nó có khuynh hướng tăng chỉ số hoạt động của CPU so với gzip.Có nghĩa là khi sử dụng bzip2 sẽ chiếm nhiều thời gian yêu cầu với CPU sẽ cao hơn so với gzip.Khi mà bạn chon ứng dụng nén thì lên chú ý đến tốc độ nén -đấy là điều quan trọng.
Sử dụng bzip2 giống như sử dụng gzip,chúng ta không nên mất nhiều thời gian cho việc bàn luận này.Cấu trúc của nó như sau:

$bzip2 infile

tập tin tạo thành sẽ có dung lượng nhỏ hơn so với tệp ban đầu và tất nhiên bạn sẽ nhận được têp tin dạng nén sau:infile.bz2.

Bạn có thể sử dụng những tham biến khác đi kèm cung bzip2 để tăng thêm khả năng nén.
Cũng giống như gzip khả năng nén cao nhất của  bzip2  khi  đi với tham biến -9

$bzip2 -9 infile

Có hai cách giải  nén tập tin dạng .bz2.Giống như gzip bạn có thể sử dụng  bzip2 hoặc bunzip2

Cách1:

$bzip2 -d infile.bz2

Lệnh  bzip2 sẽ giải  files nén  ở  catalog hiện hành và files sẽ mất phần mở rộng .bz2

Cách 2:

$bunzip2 infile.bz2

Kết quả cũng tương tự như là sử dụng  bzip2 tuy nhien chúng cũng coi như là một.bunzip2 chính là ảnh của bzip2

$ cd /bin
$ ls -l bunzip2
lrwxrwxrwx 1 root root 5 Feb 2 09:45 /bunzip2 -> bzip2

5.7.3 tar

tar(1) thuộc GNU là một băng lưu trữ thông tin.Nó chứa nhiều tập tin hoặc catalog và tạo ra một tập tin lớn.Nó giúp bạn nén cả một hệ thống cây catalog.Tar có rất nhiều tham số mà bạn có thể xem ở trang man của nó để có thêm thông tin.Chúng ta chỉ xem xét các phương án thông dụng khi dùng tar.

Thông thường tar sử dụng để bung hoặc gom lưu trữ các tập tin khác nhau trong một hệ thống .
Hầu hết các tập tin trên internet hoặc ftp có dạng mở rộng .tar.gz. Trên các hệ Unix-truyền thống thường dùng dạng .tar.Z.

Thỉnh thoảng bạn sẽ gặp dạng nén .tar.bz2.Một điều đáng lưu ý là mã gốc kernel thường nằm trong dạng này  để cho dung lượng của nó nhỏ đi so với thực tế.

Bạn có thể bung chúng ra từ những dạng lưu trữ này với lệnh tar cùng với những tham biến đi kèm
Tuy nhiên bạn chú ý khi làm việc với dạng .tar.gz thì cần phải có thêm tham biến -z

$ tar -xvzf mt.tar.gz

Tuy nhiên bạn có thể theo cách sau: Đầu tiên sử dụng gzip sau đó dùng tar đơn thuần.
Với rất nhiều tham biến như vậy nhưng chúng có ý nghĩa như thế nào:

"-x" có ngiã là  bung ra
"-v" khi dùng nó chương trình  sẽ hiển thị danh sách các tập tin trong qúa trình bung
"-vv" với tham biến này thi bạn sẽ nhận được nhiều thông tin hơn
"-z " chỉ dung chuyên dụng với .tar.gz
"-f" chỉ ra rằng khi ở vỏ lệnh tên của tập tin sẽ sử dụng là gì.

Có nhiều phương án ghi câu lệnh dạng này như sau:

$ gzip -dc mt.tar.gz | tar -xvf -

Dòng lệnh này đầu tiên giải nén tập tin sau đó tiến đến tar.Bởi vì gzip ghi trên sản phẩm của mình bằng dạng chính tắc nếu như yêu cầu nó.Chính vì thế sản phẩm tạo thành là dạng chính tắc.Thông qua pipe tập tin này sẽ được gửi đến tar để bung ra."-" có nghĩa là lệnh sẽ làm việc với dạng chính tắc.

$tar xvzf hejaz.tar.gz

Trên Slackware thì tar có thể làm việc như bzip2 nhưng thay vào tham biến "-z" là "-y".

$ tar -xvyf foo.tar.bz2

Chú ý là tar bung các tập tin ở trong catalog hiện hành.Nếu như lưu trữ thông tin của bạn nằm ở /tmp mà bạn lại muốn sau khi bung ra nó nằm ở catalog nhà(home) của chính bạn.Có hai phương án giải quyết như sau:
 Lưư trữ có thể chuyển đến catalog gốc(home) của bạn sau đó sử dụng tar. Hoặc là bạn đơn giản chỉ đường dẫn tới

$  tar -xvzf /tmp/bar.tar.gz

Nội dung của lưu trữ sẽ được chuyển tới catalog gốc(home) của bạn.Còn lưu trữ gốc sẽ nằm lại ỏ /tmp.
Một trong các ứng dụng phổ biến của tar là tạo ra dạng lưu trữ thông tin của mình bằng tar.Tạo lưu trữ thông tin không khó bằng việc bung ra đối với các dạng lưu trữ khác nhau.

Để tạo ra dạng nén thông tin tar từ các tập tin trong catalog hiện hành(bao gồm cả catalog con và tập tin của nó) bạn cần thực hiện lệnh sau:

$tar -cvzf mt.tar.gz

"-c" có nghĩa là tạo dạng lưu trữ
"-z" nén vớ gzip

mt.tar.gz - đấy là sản phẩm tạo thành của bạn.
ví dụ như

$ tar -cvzf /tmp/archive.tar.gz

Trong trường hợp này thì lưu trữ tạo ra sẽ nằm ở /tmp.Bạn có thể chỉ ra tất cả các tập tin cũng như catalog mà bạn muốn dồn vào lưu trữ và nhớ ghi chúng ở cuôi cùng của lệnh.

5.7.4 zip

Vây là cũng kết thúc phần này, tuy nhiên cũng  có hai công cụ làm việc với zip-files. Mặc dù zip được coi là dạng nén phổ biến trong Windows, nhưng Linux cũng co những công cụ làm việc với chúng .

Ứng dụng gọi là zip(1) và unzip(1)-dùng để giải nén.
Nén bằng zip rất đơn giản:

$zip mt *

Kết qủa bạn  tạo ra một tập tin foo.zip mà có chứa tất cả các tập tin ở catalog hiện hành.Zip sẽ tự động bổ sung phần mở rộng .zip cho tập tin tạo thành,bạn không cần phải chỉ rõ trong vỏ lệnh.
Bung nén cũng .zip rất đơn giản

$unzip mt

Nó sẽ bung ra tất cả các tập tin cũng như catalog bên trong mt.zip
Zip cũng có một vài tham số bổ sung khi tạo dịnh dạng zip cũng như tập tin rạng tự bung(self-extracting).

5.8 vi

vi(1) là một trình soạn thảo tiêu chuẩn của Unix,mà được sử dụng trong các hệ thống bởi các adminstrator.Có nhiều phiên bản của vi: vi,elvis,vile,vim.Một trong số chúng có ở bất kì phiên bản Unix và Linux.Tất cả chúng đều sử dụng một tập hợp các lệnh cở bản,vì vậy sử dụng thành thạo các lệnh cơ bản bạn sẽ dễ dàng sử dụng trong các phiên bản khác.

 vi chứa một tập hợp các công cụ trợ giúp hùng mạnh,bao gồm:cấu trúc ánh sáng(syntax highlighting),định dạng mã(code formatting),macro,cơ chế tìm kiếm và thay thế....Những công cụ này làm cho vi trở lên đặc biệt với các nhà lập trình.Hệ thống  administrators sẽ đánh giá cao khả năng tự động và liên kết với shell.

Trong Slackware phiên bản vi là elsvi(theo mặc định).Các phiên phản khác cũng có thể sử dụng là vim và gvim nếu bạn cài đặt theo packages tương ứng.

5.8.1 Khởi động vi

vi có thể chạy từ vỏ lệnh theo nhiều cách khác nhau:
$ vi


Lệnh trên sẽ chạy vi từ một buffer rỗng,bạn sẽ nhìn thấy một màn hình trống không.Chương trình bấy giờ đang chờ đợi bạn làm một điều gì đó.Bạn hãy đọc tiếp phần sau để biết các cách chạy vi.Để thoát khỏi vi hãy nhập vào

:q

Nếu như không có gì thay đổi trên tập tin thì bạn sẽ thoát khỏi chương trình.Nếu bạn thay đổi điều gì đó thì chương trình sẽ thông báo cho bạn rằng nội dung đã bị thay đổi  và bạn sẽ thoát trong khi các thay đổi đó không được lưu lại.

Bạn có thể mở một tập tin đã có sẵn bằng vi.Ví dụ để mở /etc/resolv.conf cần thực hiên:

$ vi /etc/resolv.conf

Cũng như thế vi có thể mở tập tin tại một dòng được định trước.Ví dụ như chạy vi từ dòng 47 của tập tin /usr/src/linux/init/main.c,bạn cần làm như sau:

$ vi +47 /usr/src/linux/init/main.c

vi hiển thị trên màn hình nội dung tập tin được chỉ ra và con trỏ được đặt tại dòng 47.Nêu như con số đưa ra lớn hơn so với tổng số dòng có trên tập tin thì con trỏ sẽ chuyển đến dòng cuối cùng của tập tin.Điều này có lợi cho các nhà lập trình khi họ muốn mở tập lệnh tại dòng bị lỗi.

5.8.2 Chế độ làm việc

vi được sử dụng trong các chế độ khác nhau,cho các mục đích khác nhau.Nếu bạn chạy vi là bạn vào ngay chế độ câu lệnh.Tại đây bạn có thể thực hiện những lệnh khác nhau để soạn thảo văn bản,dị chuyển bên trong tập tin,lưu trữ và thoát khỏi nó.Để thay đổi văn bản hãy dùng chế độ insert(lồng vào).Bạn có thể chuyển đổi giữa các chế độ khác nhau với tổ hợp phím được ghi ở dưới.

Chế độ câu lệnh

Dầu tiên bạn rơi vào chế độ câu lệnh.Từ chế độ này bạn không thể đánh thẳng nội dung vào được hoặc soản thảo lại tập tin có sẵn.Nhưng bạn có thể điều khiển văn bản,tìm kiếm,thoát..Tất cả chỉ là ảnh của chế độ câu lệnh.Để xem các lệnh khác nhau ,hãy xem phần 5.8.7

Có lẽ thông thườn người ta sử dụng lệnh ở chế độ câu lệnh để chuyển sang chế độ insert.Hãy nhấn i và bạn đi vào chế độ insert.Con trỏ được thay đổi hình dạng và dòng " -INSERT-" sẽ sáng lên ở góc cuối màn hình(trong các bản sao không có).Trong chế độ này bạn có thể nhập vào các câu,dòng,đoạn văn bản.. và nó sẽ hiển thị trên màn hình.Để chuyển về chế độ câu lệnh hãy nhấn ESC.

Chế độ câu lệnh thuận tiện thể di chuyển bên trong tập tin.Trên các hệ thống khác có thể sử dụng các phím lên,xuống,trái,phải để điều khiển.Trong các hệ thống khác bạn sẽ phải sử dụng cách truyền thống là "hjkl".

h đi sang trái một kí tự
l đi sang phải một kí tự
k đi lên trên một kí tự
j đi xuống dưới một kí tự


Chỉ đơn giản sư dụng chữ cái tương ứng với các hướng cần thiết.Tuy nhiên vẫn có các tổ hợp phím làm cho qúa trình di chuyển nhanh hơn.Rất nhiều lệnh trong chế độ này bắt đầu bằng dấu ":".Ví dụ để thoát ra chương trình ":q"....

Dấu ":" đơn giản chỉ ra rằng:đây là lệnh,ở thời điểm đấy.Còn "q" thông báo với vi là bạn muốn thoát.Còn có các tổ hợp số(không nhất thiết) và chữ.Trước  các lệnh này,không cần phải dùng ":",chúng được sử dụng để di chuyển trong văn bản.

Ví dụ như để xoá một dòng từ tập tin.Hãy di chuyển con trỏ đến dòng cần xóa và thực hiện 4dd,lúc đó vi sẽ xóa dòng tại vị trí con trỏ và ba dòng sau nó.Nói chung con số sẽ  chỉ định số lần vi thực hiện.Ví dụ như 10k thì sẽ di chuyển lên trên 10 dòng theo văn bản.

Chế độ câu lệnh cũng có thể dùng để cắt và dán các đoạn văn bản và đọc các tập tin khác ở buffer.Sao chép văn bản được thực hiện với sự giúp đỡ của phím "y".Sao chép dòng hiện thời bằng cách "yy" và có thể sử dụng số đi kèm để sao chép liên tiếp nhiều dòng.Sau đó di chuyển đến vị trí cần thiết và nhấn "p".Đoạn văn bản sẽ được dán vào dòng hiện hành và các dòng tiếp theo.
Cắt các đoạn văn bản thực hiện với sự giúp đỡ dd và p,được sử dụng để dán các đoạn văn bản bị cắt ngược lại vào tập tin.Đọc từ các tập tin khác thì lại là một quá trình đơn giản.Hãy nhấn ":r",dấu cách " ",và tên tập tin chứa đoạn văn bản ấy mà bạn muốn dán.Nội dung của tập tin sẽ được chuyển vào buffer tạm thời bắt đầu từ dòng mà con trỏ đứng sau nó.Các bản sao hoàn thiện của vi kết thúc các tập tin giống như làm việc trên shell.

Chức năng cuối cùng trong chế độ này là tìm kiếm.Chế độ câu lệnh cho phép tìm kiếm thông thường và mở rộng.
Để tìm kiếm hãy nhấn "/" và nhập vào nội dung cần tìm.vi sẽ bắt đầu tìm kiếm từ vị trí của con trỏ và hướng đến cuối tập tin và dừng lại tại vị trí trùng lặp đầu tiên.Chú ý trùng lặp không hoàn toàn cũng làm cho quá trình tìm kiếm dừng lại.Ví dụ như,cần tìm kiếm "the" thì kết qủa có thể là "then" hoặc "thenfor"...Kết qủa là những gì chứa "the".

Sau khi tìm thấy sự trùng lặp đầu tiên thì bạn có thể tìm tiếp bằng cách nhấn "/" và Enter.Có thể chỉ định hướng tìm kiếm từ vị trí con trỏ đến đầu của tập tin.Để làm việc đó thay vào chỗ của "/" bạn cần sử dụng "?".ví dụ: ?the(tìm kiếm "the" về phía đầu của tập tin từ vị trí con trỏ).

Chế độ insert

Dán và thay thế các đoạn văn bản thực hiện trong chế độ này.Giống như đã nói để chuyển sang chế độ này cần nhấn "i",và tất cả những gì bạn viết được chuyển vào buffer hiện thời.Nhân ESC để chuyển về chế độ câu lệnh.

Thay thế nội dung các đoạn văn bản được thực hiện bởi nhiều cách khác nhau.Nhấn "r" từ chế độ câu lệnh cho phép bạn thay thê một kí tự tại vị trí con trỏ.Đơn giản là nhập vào kí tự cần thiết và nó sẽ chiếm lấy vị trí mà con trỏ đang sáng nhấp nháy.Ngay sau khi bạn quay lại chế độ câu lệnh hãy nhấn ngay "R",nó cho phép bạn thay thế bao nhiêu tuỳ thích.Để thoát khỏi chế độ thay thế hãy nhấn ESC và bạn rơi vào chế độ câu lệnh.

Còn có phương pháp khác để di chuyển giữa dán và thay thế là nhấn nút "insert" từ chế độ câu lệnh,nó sẽ đưa bạn vào chế độ insert.Khih bạn đã ở chế độ insert rồi thì nút "insert" cho phép bạn thay đổi giữa chế độ dán và thay thế.

5.8.3 Mở tập tin
vi cho phép mở các tập tin từ chế độ câu lệnh như vỏ lệnh,hãy chỉ ra tên tập tin sau chương trình.Để mở tập tin /etc/lilo.conf ta làm như sau:

:e /etc/lilo.conf

Nếu như trong buffer có những biến đổi mà chưa được lưu lại thì vi sẽ thông báo cho bạn biết.Bạn có thể mở tập tin mà không ghi buffer hiện thời là bằng :e!,dấu cách,tên tập tin cần thiết.
Nếu bạn thích đọc lại tập tin hiện hành thì có thể chạy e!.Điều này thuận lợi khi bạn làm hỏng một cái gì đấy và muốn đọc lại.

Một vài bản sao của vi(như vim) cho phép mở nhiều buffer cùng một lúc.Ví dụ để mở tập tin 09-vi.sgml ở trong catalog home,và trong cùng thời điểm đấy mở một tập tin khác.Tôi sử dụng:

:split /09-vi.sgml

Tập tin mới được hiện ra ở nửa màn hình phía trên,còn tập tin cũ ở nửa dưới.Có rất nhiều lệnh để điều khiển qúa trình phân chia màn hình,và nhiều trong chúng giống như ở EMACS.Hãy đọc trang man của chúng để có thêm thông tin.

5.8.4 Lưu lại các tập tin

Để lưu lại các tập tin ơ vi bạn có thể sử dụng nhiều lệnh khác nhau.Nếu bạn muốn lưu buffer vào tập tin randomness thì hãy thực hiện:

:w randomness

Sau đó,khi mà bạn đã lưu lại lần thứ nhất,để lập lại lần thứ hai thì đơn giản hãy nhấn :w.Khi đó tất cả những biến đổi sẽ được lưu lại.Sau khi lưu trữ,bạn sẽ rơi vào chế độ câu lệnh.Nếu bạn muốn lựu lại biến đổi và thoát khỏi vi thì hãy thực hiện lệnh sau:

:wq

Thỉnh thoảng bạn muốn lưu lại tập tin chỉ có quyền hạn đọc thì hãy làm như sau:

:w!
:wq!

Trong các trường hợp đặc biệt,bạn không thể ghi những thay đổi mà bạn làm trên tập tin(nếu như tập tin thuộc một tài khoản khác) thì vi sẽ thông báo cho bạn biết rằng bạn không thể ghi lên tập tin được.Nếu bạn thực sự muốn ghi lên thì bạn cần phải quay về sử dụng root và soạn thảo lại.

5.8.5 Thoát khỏi vi

Một cách để thoát khỏi vi là sử dụng :wq - lưu trữ buffer hiện thời và thoát khỏi chương trình.Bạn cũng có thể thoát khỏi chương trình mà không lưu lại sự biến đổi khi sử dụng ":q" hoặc là ":q!".Phương án cuối dùng khi bạn biến đổi tập tin nhưng lại không muốn lưu lại các biến đổi đó.

Có những trường hợp khi hệ thống hoặc là vi bị đình chỉ.Khi ấy cả hai bản sao(elvis và vim) sẽ cố gắng làm cho sự mất mát của buffer là nhỏ nhất.Cả hai trình trên lưu lại các buffer đang mở bằng các tập tin tạm thời.Những tập tin này giống như các tập tin đang mở nhưng với dấu "." ở đầu.Nó là tập tin ẩn.

Những tập tin này sẽ tự động được xóa đi sau khi bạn hoàn thành công việc của mình một cách bình thường.Còn nếu như chương trình bị đình chỉ hoạt động thì tập tin này sẽ tồn tại.Nếu bạn muốn soạn thảo lại tập tin này thì chương trình sẽ hỏi bạn cách thức như thế nào.Tuy nhiên phần lớn của công việc sẽ được phục hồi.elvis thậm chí còn gửi cho bạn thư thông báo về bản sao của tập tin.

5.8.6 Cấu hình vi

Các phiên bản của vi có thể  được xây dựng bằng các cách khác nhau.
Tập hợp các lệnh có thể được nhập vào ở chế độ câu lệnh cho cấu hình nó một cách tự do.Bạn có thể kích hoạt các hàm số,rút gọn lập trình,cài đặt macro cho các nhiệm vụ tự động...tất cả phụ thuộc vào trình soạn thảo của bạn.

Hầu như tất cả các lệnh đấy có thể đưa vào tập tin cấu hình trong catalog home của bạn.elvis sẽ tìm tập tin .exrc còn vim sẽ tìm .vimrc Hầu như các câu lệnh cấu hình có thể nhập vào từ vỏ lệnh hoặc chuyển vào các tập tin cấu hình.Bao gồm các thông tin cài đặt,hoán vị văn bản,macro...
Việc thảo luận về các tham biến đi kèm và sự khác nhau giữa các trình soạn thảo không phỉa là mục đích của cuốn sách này.Nếu như bạn quan tâm đến các chức năng mở rộng của trình soạn thảo thì hãy đọc các trang man của nó hoặc theo lệnh ":help".Bạn có thể xem cuốn sách "Cùng học soạn thảo trên vi" của tác giả Lamb và Robbins.

Có nhiều chương trình ở Linux mở các tập tin theo mặc định bằng vi.Ví dụ như soạn thảo tập tin crontab sẽ lấy vi làm trình soạn thảo mặc định.Nếu bạn không thích vi và bạn muốn chương trình khác sẽ chạy theo mặc định.Bạn có thể làm được điều đó bằng cách thiết lập giá trị VISUAL cho biến môi trường bằng tên của trình soạn thảo mà bạn thích.Để có thông tin về biến  môi trường hãy xem mục 5.1.3.Nếu bạn muốn trình soạn thảo của bạn được coi là ngầm định trong mỗi lần đăng nhập thì bạn hãy cài đặt giá trị  cho biến VISUAL ở tập tin  .bash_profile hoặc là trong tập tin .bashrc.

5.8.7 Các phím điều khiển vi

Phần này như là mục tham khảo nhanh các lệnh cơ bản của vi.Một vài trong số  chúng bạn đã làm quen ở trên,một vài là mới:

Operators                                                               Phím

Trái,dưới,trên,phải                                                h,j,k,l
di chuyển đến cuối của dòng                                $
di chuyển đến đầu dòng                                       ^
di chuyển đến cuối tập tin                                     G
di chuyển đến đầu tập tin                                      :1(số 1)
di chuyển đến dòng thứ 47                                    :47




Operators                                                               Phím

xóa dòng                                                               dd
xóa 5 dòng                                                            5dd
thay thế kí tự                                                          r
xóa kí tự                                                                 x
xóa 10 kí tự                                                            10x
huỷ bỏ tác đông cuối cùng                                     u
Liên kết dòng hiện tại với dòng tiếp theo               j




Operators                                                               Phím

tìm kiếm "asdf" sau vị trí con trỏ                          /asdf
tìm kiếm "asdf" trước vị trí con trỏ                       ?asdf
lặp lại tìm kiếm cuối cùng ở văn bản                      /
sau vị trí con trỏ
lặp lại tìm kiếm cuối cùng ở văn bản                      ?
trước vị trí con trỏ



Operators                                                               Phím

Thoát khỏi                                                            :q
Thoát không ghi                                                   :q!
lưu lại và thoát                                                      :wq
lưu lại không thoát                                                :w
mở lại tập tin hiện hành                                         :e!
lưu lại nội dung buffer hiện hành                           :w asdf
mở tập tin hejaz                                                      :e hejaz

5.9 Quản Lý Packages Slackware

Packages là những gói chương trình đã được kiểm tra và sẵn sàng cho cài đặt.Khi bạn tải những chương trình mã gốc trên internet về ở dạng nến(.zip,.rar,.tag,.gz...)thì bạn cần phải biên dịch nó lại và cài đặt bằng tay. Packages là những chương trình đã được làm sẵn rồi.Tất cả công việc của bạn là cài đặt.Một vấn đề nữa là các packages rất rễ cài đặt,xóa bỏ,nâng cấp khi bạn muốn.

5.9.1 Dạng format packages
Trước khi bạn học các công cụ làm việc với packages  thì bạn hãy làm quen với dạng format packages của Slackware.Nó là tập hợp các dạng lưu trữ  tar,hoặc nén dạng gzip.Packages được xây dựng để cho nó có thể bung ra ở catalog gốc của hệ thống.
Đây là ví dụ về một ứng dụng và cấu trúc packages của nó:

./
usr/
usr/bin/
usr/bin/makehejaz
usr/doc/
usr/doc/makehejaz-1.0/
usr/doc/makehejaz-1.0/COPYING
usr/doc/makehejaz-1.0/README
usr/man/
usr/man/man1
usr/man/man1/makehejaz.1.gz
install/
install/doinst.sh

Hệ thống quản lý packages sẽ bung files này vào catalog gốc  để cài đặt nó. Công việc sẽ tiến hành theo những cấu trúc trên cơ sở dữ liệu của packages,bao gồm cả nội dung của nó để sau này có thể nâng cấp hoặc là xoá đi.

Chú ý ở catalog con INSTALL/. Đây là một catalog đặc biệt chứa các Script(đoạn mã)mà sẽ được thi hành sau khi sao chép tập tin.Script có tên là doinst.sh.Nếu như chưong trình tìm thấy script trên thì nó sẽ thực hiện sau khi cài đặt packages.

5.9.2 Công cụ làm việc với packages

Có bốn công cụ chính dùng để quản lý packages.Với các công cụ này chúng ta có thể cài đặt,xoá bỏ,nâng cấp các packages.

pkgtool

pkgtool(8) là một trình quản lý menu,cho phép cài đặt hoặc xoá bỏ các packges.

 

Cài đặt có thể thực hiện ở catalog hiện hành hoặc từ các catalog khác hoặc từ floppy.Chỉ đơn giản chọn phương pháp mà bạn thích và pkhtool sẽ  làm việc với packages của bạn.
Bạn có thể nhìn thấy danh sách các packages như sau:


Nếu như bạn muốn xoá packages thì  hãy chọn tham biến  xoá packages.Bạn sẽ nhìn thấy danh sách các packages đã được cài  đặt.Và tất nhiên là có thể  xóa bỏ đi một vài packages mà bạn cảm thấy không cần thiết.Chọn packages mà bạn định xoá và nhấn phím OK.Sau đó pkgtool sẽ xoá bỏ nó đi ra hỏi hệ thống.

installpkg

installpkg  thực hiện công việc cài đặt những packages mới lên hệ thống của bạn.Cấu trúc của nó như sau:

#[ROOT=<path>]installpkg [option]<packages name>.....

installpkg có ba tham biến chính.Chỉ có một trong chung được sử dụng khi gọi chương trình.

Tham biến

Tác Động

-m

Thực hiện makepkg ở catalog hiện hành

-warn

Cho biết chuyện gì sẽ sảy ra khi bạn cài đặt Packages

-r

Cài đặt packages theo trình tự từ catalog hiện hành.


Nếu như bạn chỉ ra môi trường tạm thời  ROOT trước khi thực hiện installpkg thì đường dẫn sẽ sử dụng  tạm thời là catalog gốc của HĐH. Điều này có lợi cho cấu hình hệ thống với các đĩa cứng khác bởi vì thông thường nó hay sử dụng mount tới /mnt hay chỗ khác... nhưng khác với /
Thông tin dữ liệu về các packages đã cài đặt được nằm ở files /var/log/packages.
Đối với một packages ở đây sẽ tạo ra một tập tin văn bản.Bạn có thể tìm thấy những thông tin khác về packages mình đã cài đặt tại đây.
Chú ý rằng installpkg không thông báo cho bạn về việc ghi lại lên packages đã cài rồi.Nó đơng giản là cài lên trên packages cũ.Nếu bạn muốn chắc chắn là packages cũ đã bị xoá đi ra khỏi hệ thông thì hãy dùng upgradepkg

removepkg

removepkg(8) thực hiện công việc xoá packages ra khỏi hệ thống của bạn.Cấu trúc như sau:

#  [ROOT=<path>]removepkg [option] <package name>...

Đối với removepkg có bốn chọn lựa chính:

Tham biến

Tác Động

-copy

Packages sẽ được sao chép vào catalog lưu trữ.Nó được tạo ra từ packages  gốc trên cây catalog(Đừng có xoá nó)

-keep

Lưu lại files thời gian được tạo ra khi xóa packages.Nó có lợi khi bạn kiểm tra lại hệ thống

-preserve

Packages bị xóa ngay ra khỏi hệ thống và ngay lúc đó bản sao của nó được lưu lại ở catalog lưu trữ

-warn

Thông báo cho bạn biết chuyện gì sảy ra khi xóa packages


Nếu như bạn chỉ ra môi trường tạm thời  ROOT trước khi thực hiện removepkg thì đường dẫn sẽ sử dụng  tạm thời là catalog gốc của HĐH. Điều này có lợi cho cấu hình hệ thống với các đĩa cứng khác bởi vì thông thường nó hay sử dụng mount tới /mnt hay chỗ khác...nhưng khác với /
Trong thời gian xóa packages thì sẽ hiển thị trạng thái làm việc,cở sở dữ liệu được ghi chép về files /var/log/remove_packages
Giống như installpkg,bạn có thể chỉ ra một vài packages để xoá hoặc có thể dùng tập hợp tên đại diện.

upgradepkg

upgradepkg(8) dùng để nâng cấp packages đã được cài vào trong máy tính của bạn.Cấu trúc như sau:

# [ROOT=<path>] upgradepkg <package name>...
hoặc là
 [ROOT=<path>] upgradepkg \
<old package name>%<new package name>

upgradepkg  đầu tiên là tiến hành cài đặt packages mới à sau đó xóa đi packages cũ theo cách sau:"Files từ  packages cũ không bị chết ở trong catalog của bạn".Nếu như tên của packages nâng cấp biến đổi thì hãy sử dụng phương án thứ hai là làm việc trực tiếp với chương trình,chỉ rõ tên của packages cũ(đã cài vào hệ thống) và sau dấu % là tên của packages mới(bạn sẽ cài đặt).

Nếu như bạn chỉ ra môi trường tạm thời  ROOT trước khi thực hiện upgradepkg thì đường dẫn sẽ sử dụng  tạm thời là catalog gốc của HĐH. Điều này có lợi cho cấu hình hệ thống với các đĩa cứng khác bởi vì thông thường nó hay sử dụng mount tới /mnt hay chỗ khác...nhưng khác với /
Giống như installpkg,removerpkg,bạn có thể chỉ ra một vài packages để xoá hoặc có thể dùng tập hợp tên đại diện.

rpm2tgz/rpm2targz

Red Hat Package Manager là một trong những định dạng packages rầt là phổ biến.Có rất nhiều nhà lập trình định dạng sản phẩm của mình ở dạng .rpm format.Nhưng đó không phải là dạng chuẩn format của Slackware Linux.Chính vì thế chúng tôi không khuyến khích các bạn sử dụng chúng.Tuy nhiên vẫn có các công cụ cho phép sử dụng được cả mã nguồn của RPM.Chúng ta giới thiệu ứng dụng chuyển đổi từ dạng RPM(.rpm) sang TGZ(.tgz) có tên là rpm2tgz và rpm2targz dùng để chuyển RPM(.rpm) sang TAR.GZ(.tar.gz).

5.9.3 Tạo packages

Việc tạo packages có thể nói rất đơn giản và cũng rất phức tạp.Không có một phương pháp nào chuẩn mực cả.Tuy nhiên yêu cầu chung là packages cần phải ở dạng tar gziped nếu cần script-install thì nó nhất thiết phải ở catalog /install/doinst.sh.
Nếu như bạn thích tạo một packages cho hệ thống của bạn hoặc mạng thì bạn cần phải xem xét tới những script-build khác nhau ở catalog gốc hệ thống Slackware.Tuy nhiên vẫn còn có một vài phương pháp khác để tạo packages.

explodepkg

explodepkg(8) được coi là như installpkg dùng để bung packages ra nhưng mà không tiến hành cài đặt.Không có bất cứ một thay đổi nào về cơ sở dữ liệu packages.Nó chỉ đơn giản bung packages ra catalog hiện hành.

Nếu như bạn để ý vào cây catalog gốc Slackware thi bạn sẽ nhận thấy chúng tôi sử dụng nó cho  khung cấu hình của packages.Những packages  này chứa  những  khung bao giống như vẻ bên ngoài của nó.Nó lưu lại tất cả các thông tin cần thiết,tên files,quền hạn,buid-script..

makepkg

makepkg(8) được  chạy từ catalog hiện hành bên trong Slackware package.Nó tìm hết những liên kết kí tự(link simbol) và bổ sung vào chúng script-build package.Chương trình đưa ra thông báo khi mà  xác định được  những file zero-lenght(độ dài không) ở cây catalog trong package.
Chương trình này thường được thực hiện sau khi bạn đã tạo ra cây catalog trong package của bạn.

5.9.4 Tạo  tags và  tagfiles(cho chương trình  cài đặt)

Chương trình  cài đặt Slackware thực hiện cài đặt packages  vào hệ thống của bạn.Tuy nhiên có những tập tin mà  các ứng dụng cài đặt thường nói:"Những files này nhất định phải cài vào,những files này không nhất thiết,loại nào theo ngầm định..."
tagfile sẽ tìm kiếm ở  catalog  những  bộ tập tin mà gọi là tagfile.Nó sẽ đếm những packages trên những đĩa khác nhau và trạng thái của nó.Trạng thái có thể là:

ADD

Package cần thiết cho hệ thống làm việc bình thường

SKP

Package cần thiết cho tự động thực thi

REC

Package không nhất định cần thiết nhưng mà khuyến khích

OPT

Package không nhât định cần thiết

Dạng cấu trúc đơn giản như sau:

<package name>: <status>

Một package trên một dòng.Dạng chuẩn tagfiles cho mỗi loại chương trình được lưu lại ở tagfile.org. Vì vậy nếu như bạn cảm thấy có gì không ổn thì có thể khôi phục lại dạng chuẩn của nó.Có rất nhiều nhà quản lý(Administrators) thích viết ra những tagfiles riêng cho chính mình và sau đó khi cài đặt chỉ đơn giản chon "full".Chưong trình cài đặt tìm tagfiles và thực hiện cài đặt với tương ứng nội dung trong nó.Nếu như bạn chọn REC hoặc OPT thì xuất hiện hộp thoại hỏi bạn về việc có cài tiếp package hay không.Chính vì thế khuyến khích chọn lựa dùng ADD và SKP nếu như bạn tự mình tạo ra tagfiles cho quá trình tự động cài đặt.

Chú ý  tập tin tagfiles của bạn sẽ cần phải  nằm ở vị trí tiêu chuẩn  hoặc là bạn có thể chỉ đường dẫn cho nó bằng cách  sử dụng tagfile.


gửi tập tin asdf vào buffer                                       :r asdf
gửi kết quả của ls vào buffer                                   :r !ls

5.10 ZipSlack và BigSlack

5.10.1 Thế nào là ZipSlack/BigSlack?

ZipSlack là một phiên bản đặc biệt của Slackware Linux.Đó là một bản sao của Slackware được chuẩn bị cho chạy từ DOS hoặc Windows.Nó chứa các thành phần chính của hệ thống.Nó không chứa hết các packages  của Slackware.Nếu bạn thích thì có thể thử BigSlack

ZipSlack - Nó có tên là vậy bởi vì nó được cấu thành từ một tập tin lớn .ZIP.Những người làm việc trong DOS và Windows có lẽ đã làm quen với các loại tập tin như thế này.Nó là dạng nén.ZipSlack chứa trong mình tập hợp các chương trình cần thiết để cho Slackware làm việc bình thường.

Bạn phải biết rằng ZipSlack  và BigSlack khác nhiều so với cài đặt thông thường.Không để ý đến một số chức năng như nhau và một số chương trình như nhau,chúng được tạo ra cho những mục đích khác nhau và cho những người dùng khác nhau.Trong ZipSlack và BigSlack có những ưu điểm và nhược điểm mà chúng ta sẽ thảo luận ở mục dưới

Bao giờ cũng vậy bạn phải đọc các tài liệu kèm theo trong các phiên bản ZipSlack và BigSlack.Ở đấy bao giờ bạn cũng sẽ tìm được những thông tin về cài đặt,cách sử dụng sản phẩm và có gì cải tiến ở phiên bản này.

Ưu điểm:

Không cần phải chia lại đĩa cứng
Một phương pháp tôt nhất học Slackware mà không cần cài đặt hệ thống

Nhược điểm

Sử dụng hệ thống tập tin DOS kém hơn so với hệ thống tập tin Linux
Không làm việc với Windows NT

5.10.2 Cách nhận được ZipSlack/BigSlack

Để có được ZipSlack hoặc BigSlack thì không khó chút nào.Nếu bạn mua bản gôc  Slackware Linux CD thì chắc chắn là có trên đĩa một phiên bản ZipSlack hoặc BigSlack đi kèm.Đơn giản là hãy tìm CD,mà chứa phiên bản bạn cần và đặt nó vào ổ đĩa CD-ROM.Thông thường nó là disk thứ ba hoặc là thứ tư.

Nếu bạn muốn tải ZipSlack hoặc BigSlack từ trên internet hãy vào trang "Get Slack" để lấy thông tin cần thiết:

http://www.slackware.com/getslack/ .

ZipSlack và BigSlack được coi là một phần của mỗi lần phát hành Slackware.Bạn hãy tìm nó trong các phiên bản đã phát hành Slackware trên FTP.Catalog tương ứng với phiên bản mới nhất là:

ftp://ftp.slackware.com/pub/slackware/slackware/

Bạn sẽ tìm thấy  ZipSlack trong catalog con /zipslack và BigSlack ở catalog /bigslack.ZipSlack được gom lại như một tập tin lớn .ZIP hoặc floppy cỡ lớn.Loại này nằm ở  catalog /zipslack/split.Không nên chỉ tải .ZIP .Bạn nên tải thêm các tài liệu kèm theo và một disk boot images(đĩa ảnh khởi động) có sẵn trong catalog.

5.10.3 Cài đặt

Sau khi bạn tải các thành phần cần thiết về,bạn cần bung nó ra.Bạn có thể sử dụng 30-bits unzipper.Kích cỡ và tên các tệp tin qúa lớn cho 16-bits.Ví dụ bạn sử dụng Winzip hoặc PKZIP cho Windows.

Cả ZipSlack và BigSlack được cấu hình sẵn để bung ra trong catalog gốc(/) của hệ thống(như là C: hoặc D:).Sẽ phải tạo một catalog \LINUX mà chứa Slackware và những tập tin cần thiết cho qúa trình khởi động hệ thống.

Sau khi bạn bung các tập tin ra ở đĩa mà bạn chọn,đĩa mà chứa \LINUX(Để rõ ràng chúng ta giả sử là đĩa C:).

5.10.4 Khởi động ZipSlack/BigSlack

Bạn có thể sử dụng nhiều phương pháp để khởi động hệ thống ZipSlack và BigSlack.Một phương pháp phổ biến là sử dụng LINUX.BAT từ DOS(hoặc DOS ảo của Windows)
Tập tin cần phải được biến đổi tuỳ vào cách chọn lựa hệ thống của bạn.

Chúng ta bắt đầu mở tập tin C:\LINUX\LINUX.BAT bằng bất kì một trình soạn thảo văn bản nào.Trên đỉnh của tập tin có những hướng dẫn chỉ cho bạn cách soạn thảo tập tin(nó giống như bạn khởi động từ một disk ZIP ngoại vi).Đừng có sợ,nếu bạn không hiểu root=setting.Trong tập tin có một vài ví dụ để bạn có thể sử dụng một cách thoải mái.Nếu như thử nghiệm của bạn có vẻ không thành công,bạn có thể sử dụng thêm một lần nữa thay đổi nội dung của tập tin,chú thích hoá những dòng không làm việc và lệnh hoá những dong chú thích khác.

Sau khi đã lệnh hoá một số dòng cần thiết theo con đường "rem" ở đầu dòng hãy lưu lại những biến đổi đó và thoát khỏi trình soạn thảo.Chuyển hệ thống về DOS.
Chú ý DOS ảo trong Windows 9x không làm việc.

Hãy chạy C:\LINUX\LINUX.BAT để khởi động Slackware.Nếu như tất cả bình thường thì trước mặt bãn sẽ xuất hiện màn hình đăng nhập(login).
Hãy đăng nhập như root không cần mật khẩu.Nhanh chóng bạn sẽ đặt lại mật khẩu cho root,và tạo các tài khoản cho mình.Khi đó bạn hãy xem phần "Những điêu cơ bản sử dụng hệ thống" trong cuốn sách này.

Nếu như LINUX.BAT không hoạt động thì hãy đọc tập tin C:\LINUX\README.1ST để thử các cách khác.

5.10.5 Bổ sung,xóa và nâng cấp các chương trình

Trong ZipSlack và BigSlack có thể sử dụng các packages chương trình giống như trong các hệ thống Slackware được cài đặt bình thường.Chình vì thế bạn có thể sử dụng các công cụ truyền thống của Slackware để quản lý các packages.Bạn có thể bổ sung các packages thẳng từ trên CD-ROM.
Hãy xem mục "quản lý packages" để có thêm thông tin.

5.10.6 Các vấn đề chính

Ơ đây đưa ra các vấn đề cơ bản thường gặp khi sử dụng ZipSlack hoặc BigSlack.Cùng với nó chúng tôi giới thiệu một vài cách tìm kiếm sự giúp đỡ,nếu như bạn gặp phải vấn đề không có ở dưới đây.Tiếp theo là một vài phương pháp nhận được sự bảo dảm.
Không mở được console ban đầu

Thông thường nguyên nhân là chỉ ra không đúng phân vùng đĩa cứng cho root=tham biến trong tập tin  LINUX.BAT .Hãy soạn thảo lại LINUX.BAT một lần nữa và chọn một phân vùng khác ở vai trò root=.Nếu như bạn không biết mình đang làm gi thì rất đơn giản,hãy đọc lại tài liệu cho đến khi hiểu thì thôi.

Một vấn đề cũng khá quan trọng là giải nén tập tin .ZIP cần phải ở catalog catalog gốc của đĩa cứng chứ không phải ở một catalog con.Bạn có thể.
Kernel panic : VFS : Unable to mount root fs

Bạn chỉ ra không đúng thiết bị cho root=tham biến ở tập tin LINUX.BAT.Bạn cần phải soạn thảo lại nó để chọn lại thiết bị cho root=thiết bị.Nếu như bạn không biết mình đang làm gi thì rất đơn giản,hãy đọc lại tài liệu cho đến khi hiểu thì thôi.

Bạn đang đọc truyện trên: Truyen2U.Pro