Giới thiệu HDH Linux

Chia sẻ: Son Cung | Ngày: | Loại File: PDF | Số trang:17

0
868
lượt xem
341
download

Giới thiệu HDH Linux

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Linux là hệ điều hành. Về mặt nguyên tắc hệ điều hành cũng là một software; nhưng đây là một software đặc biệt – được dùng để quản lý, điều phối các tài nguyên (resource) của hệ thống (bao gồm cả hardware và các software khác). Linux còn được gọi là Open Source Unix (OSU), Unix-like Kernel, clone of the UNIX operating system.

Chủ đề:
Lưu

Nội dung Text: Giới thiệu HDH Linux

  1. HỆ ĐIỀU HÀNH LINUX I.Giới thiệu hệ điều hành Linux: 1.Linux là gì? Linux là hệ điều hành. Về mặt nguyên tắc hệ điều hành cũng là một software; nhưng đây là một software đặc biệt – được dùng để quản lý, điều phối các tài nguyên (resource) của hệ thống (bao gồm cả hardware và các software khác). Linux còn được gọi là Open Source Unix (OSU), Unix-like Kernel, clone of the UNIX operating system. Linux do Linus Torvalds, một sinh viên tại trường Đại Học ở Helsinki (Phần Lan) phát triển dựa trên hệ điều hành Minix, một hệ điều hành có cấu trúc tương tự Unix với các chức năng tối thiểu được dùng trong dạy học. Hiện nay, Linux là một hệ điều hành với mã nguồn mở (Open Source) và miễn phí (free) dưới bản quyền của tổ chức GNU (Gnu’s Not Unix). Khởi đầu, Linux được thiết kế để hoạt động trên nền tảng của kiến trúc i386 Intel với khả năng đa tác vụ (multitasking). Tuy nhiên ngày nay, Linux đã có các phiên bản trên các họ chip khác chẳng hạn như chip Alpha. Linux có nguyên lý hoạt động tương tự hệ điều hành Unix (Unix-like). Mặc dù Linux không phải là Unix nhưng người ta vẫn xem Linux như là phiên bản Unix trên PC (PC version of Unix OS). Do là Unix-like; Linux có đầy đủ tất cả các đặc tính của Unix (fullyfunctional). Ngoài ra nó còn hỗ trợ thêm một số tính năng mà trên Unix không có,như long file name (tên file có ký tự space “ ”). Hiện tại có nhiều hãng, nhiều tổ chức, nhiều nhóm khác nhau cùng phát triển Linux. Tất cả các phiên bản (release) Linux đều có chung phần kernel (phần nhân của hệ điều hành) và hầu hết các tính năng đặc trưng, tuy nhiên các tool (công cụ) và utility (tiện ích) có đôi chút dị biệt. Có rất nhiều các ứng dụng cho Linux, tuy nhiên hầu hết các ứng dụng cho Linux hiện có đều là các ứng dụng mang tính chuyên dụng. Để đưa Linux vào từng gia
  2. đình, các tổ chức, các hãng đang cố gắng phát triển các ứng dụng mang tính phổ cập trên Linux chẳng hạn hãng SUN đưa ra phiên bản Star Office tương tự như MS Office – và cũng tương thích với MS Office - cho những người sử dụng Linux ở gia đình, văn phòng. Hãng Borland (nay là hãng Inprise) đang phát triển một dự án có tên là KyLix, nhằm đưa ra một môi trường lập trình cấp cao trên Linux, đồng thời các ứng dụng trên Windows được viết bằng Delphi/C++Builder sẽ dễ dàng compile (biên dịch) lại dưới Linux bằng KyLix. Hiện tại Kylix đã có phiên bản thử nghiệm (beta). Dự án này hứa hẹn một loạt các ứng dụng thông thường đã có trên MS Windows sẽ mau chóng được chuyển sang Linux, và điều này sẽ giúp cho hệ điều hành Linux dễ dàng thâm nhập vào thị trường PC nhanh chóng hơn. Các ứng dụng được viết trên Linux đều có thể hoạt động trên các hệ thống UNIX (có thể cần phải compile lại). Các release hiện nay gồm có: RedHat Linux: Hiện đã có version (ấn bản) 7.0; là phiên bản khá phổ biến. Cung cấp khá nhiều tool và utility để hỗ trợ user (người sử dụng) từ các thao tác setup (cài đặt) đến config (cấu hình) hệ thống. Mandrake Linux: Một dòng khác thoát thai từ RedHat Linux, tương thích hoàn toàn với RedHat. Hiện có tới version 7.1 Slackware Linux: Đây là một trong phiên bản Linux lâu đời. Hỗ trợ các dịch vụ mạng rất mạnh, tuy nhiên việc setup và config đòi hỏi user có kiến thức tốt về hệ điều hành này. Hiện có version 7.0 S.u.S.E. Linux: Do hãng S.u.S.E (Đức) phát hành, khá phổ biến tại Âu châu, nhưng không được phổ biến tại các nước khác. Có các công cụ riêng để hỗ trợ setup và config tương đối dễ sử dụng. Hiện đang có đến version 6.3 Free BSD Linux: Được phát triển bởi Đại Học Berkeley, đây không phải là phiên bản thương mại, do vậy ít được phổ biến. Có rất nhiều tiện ích dành cho việc phát triển hệ thống và
  3. lập trình. Hỗ trợ đầy đủ các shell trên Unix. Hiện có version 2.2 Corel Linux: Phát triển bởi hãng Corel, dễ setup, có graphic interface (giao diện đồ họa) khá giống Windows NT kể các tool và utility. Tuy nhiên các config tool chưa hoạt động tốt. Hiện có đến version 1.0 Open Linux: Do hãng Caldera phát triển, dễ cài đặt cũng như sử dụng. Giao diện KDE. Thích hợp cho người sử dụng tại gia đình. Hiện đang có version 2.3 X Linux: Hỗ trợ đa ngôn ngữ. Tương thích với RedHat. Bộ công cụ không lấy gì làm đặc sắc. Tuy nhiên kèm theo nó có khá nhiều ứng dụng. Hiện có version 1.0 Và còn rất nhiều release khác như Turbo Linux, Linux PPC, Debian Linux, Infomagic Linux, Softlanding Linux System Release (SLS) v.v.... Các thông tin và tài nguyên (resource) của Linux có thể tìm thấy ở khắp nơi trên Internet và hầu hết đều free. Thêm vào đó có khá nhiều các trình ứng dụng cũng như tiện ích dành cho Linux dễ dàng được tìm thấy trên Internet. 2. Các tính năng & service cơ bản của Linux: Như đã trình bày, Linux là một hệ điều hành với đầy đủ các tính năng của Unix. Vì thế nó có khả năng đóng vai trò của một Internet/Intranet Server (Web Server, Ftp Server, Mail Server, DNS Server, v.v....), Database Server, File Server v.v... hoặc làm việc như một Unix workstation (máy trạm Unix). Như vậy, Linux là một hệ điều hành mạng với đầy đủ các tính năng của nó. Cũng như Unix, Linux cũng tuân theo chuẩn POSIX (Portable Operating System Interface for Computer Enviroment) mặc dù nó vẫn chưa được tổ chức này công nhận. Các service được cung cấp bởi Linux bao gồm hầu hết các service của Unix như: UUCP (Unix to Unix Copy Protocol): Giao thức hỗ trợ service truyền thông giữa các host Unix. TCP/IP IP (Transmission Control Protocol/Internet Protocol): Giao thức cung cấp service truyền thông trên mạng Internet. X Protocol: Giao thức để xử lý GUI (Graphics User Interface) trên X Window. PPP: (Point to Point Protocol): Giao thức dùng để truyền thông trực tiếp giữa
  4. hai máy. Samba: Giao thức cung cấp File service tương tự File Service của Windows NT cho phép các windows client truy xuất hệ thống file trên Linux Server. DNS (Domain Name Service): Dịch vụ quản lý tên host trên mạng Internet/Intranet. v.v.... TCP/IP là hệ thống dịch vụ mạng chính của Linux. Tuy nhiên các service trên chỉ là các service tùy chọn, nghĩa là hệ thống có thể có hay không có các service trên vẫn hoạt động tốt. Các service này chỉ làm cho Unix/Linux tăng thêm khả năng và sức mạnh của mình mà thôi. Chúng ta sẽ xem xét chi tiết từng service trên ở trong các phần sau. Còn các service được mô tả sau đây là các service quan trọng của Unix/Linux. Điều đó có nghĩa là nếu không có các service này, hệ thống có thể không hoạt động được. Do vậy, một số trong chúng sẽ được cài đặt một cách tự động khi chúng ta thiết lập một hệ thống Unix/Linux. a. Init: Dịch vụ đơn lẻ quan trọng nhất trong hệ thống Unix/Linux là init. Nó được khởi động như là tiến trình đầu tiên trong mọi hệ thống Unix/Linux. Đây là tiến trình dùng để khởi động (boot) hệ thống. Nó sẽ kiểm tra và mount filesystems vào hệ thống, khởi động các daemon. Nó cung cấp các khái niệm như single user mode (chế độ hoạt động như hệ người dùng đơn lẻ), multiuser mode (chế độ đa người dùng). Một số tài liệu còn gọi là run level (cấp độ hoạt động). Khi hệ thống kết thúc hoạt động (shutdown), init sẽ dọn dẹp (dừng mọi triến trình đang hoạt động, umount filesystems, v.v...). * init 0: Shutdown hệ thống (halt). * init 1: Admin single user mode: chỉ có root account có thể login ở mode này. * init 2: Multi user mode, không có hỗ trợ NFS. * init 3: Multi user, có hỗ trợ NFS: cho phép chia sẻ hệ thống file với các hệ thống khác trong mạng. * int 4: Không dùng. * int 5: Multi user, hỗ trợ graphic mode (X11) * init 6: reboot (tái khởi động) hệ thống. Lưu ý: không được thiết lập mặc định (default) ở chế độ này. * s (hoặc S): Single user, sử dụng hệ thống như hệ thống cá nhân riêng biệt. (Tại một thời điểm chỉ có một và chỉ một user có quyền đăng nhập hệ thống). b. Login:
  5. Dịch vụ này cho phép user login (đăng nhập) vào hệ thống và khai thác các tài nguyên của hệ thống – trong quyền hạn mà user này được cấp. c. Graphic User Interface (GUI): Đây chính là X Window service. Nó cung cấp khả năng giao tiếp đồ họa với người sử dụng. Nếu không cài đặt X service, một số các chương trình ứng dụng có xử lý đồ họa sẽ không thể chạy. d. Network: Dịch vụ này cho phép user có thể login vào hệ thống từ xa. e. Network File System (NFS): Đây là dịch vụ được hãng SUN phát triển. Nó cho phép các tác vụ về file trong một hệ thống mạng là trong suốt (transparency) đối với user. Nghĩa là, các user thao tác với các tập tin trên máy khác nhau trong cùng hệ thống mạng như đang thao tác trên máy đơn duy nhất. Tóm lại: Cũng như Unix, Linux là một hệ điều hành với các khả năng multiproccessing (đa nhiệm), multitasking (đa tác vụ), multiuser (đa người dùng) sau hơn mười năm phát triển và hiệu chỉnh bởi hàng nghìn lập trình viên trên thế giới đã chứng tỏ được là một hệ điều hành uyển chuyển (có thể hoạt động trên nhiều platform), đáng tin cậy và ổn định. IV.File System (Hệ thống tập tin) của Linux: Hệ thống tập tin Linux được tổ chức theo dạng tree (cây). Có một vị trí khởi điểm, gọi là root (gốc). Bất kỳ một hệ thống Unix/Linux nào cũng có một thư mục đặc biệt gọi là thư mục gốc (root directory) ký hiệu là dấu slash (“/”). Đây là điểm bắt đầu để gắn (mount point) tất cả các phần tử còn lại như hệ thống disks, partions, CDROM v.v... vào hệ thống Linux/Unix. Tất cả các thư mục và tập tin khác, kể cả system files (các tập tin hệ thống) và system directories (các thư mục hệ thống) cũng chỉ là cấp con của root. Khi hệ thống Linux/Unix khởi động (startup), thông qua tiến trình init - nó sẽ tự động mount (gắn) các system files và system directories vào root (/). Hệ thống files của Linux hiện đang sử dụng là Ext2 FS (Second Extended Filesystem). Nó cung một hệ thống tập tin UNIX chuẩn cùng với các tính năng mở rộng. Ext2fs được phát triển cho các hệ thống nhân Linux (Linux kernel) với các khả năng uyển chuyển.
  6. Ext2fs có khả năng quản trị các hệ thống tập tin trên các phân vùng rất lớn (big partion). Ext2fs cung cấp tên tập tin dài (long file name). Đây là khả năng của Linux mà trên các hệ thống UNIX chuẩn (standard UNIX) không hề cung cấp. Tối đa một tên tập tin là 255 ký tự và có thể có khoảng trắng (space). Ext2fs cho phép truy xuất đến các hệ thống khác như FAT, VFAT (FAT32), MSDOS trên windows 9.x và DOS một cách dễ dàng. Ngược lại, chúng ta có thể cũng có thể từ các hệ thống FAT, NTFS, BeOS, OS/2, MacOS truy xuất đến Ext2fs thông qua các trình tiện ích như LTOOLS. Và còn nhiều khả năng khác như có thể dễ dàng thêm vào các khả năng cho Ext2fs. 1. System directories: Thông thường, sau khi thiết lập hệ thống Linux với các default parameters (option mặc định), ta sẽ có được hình ảnh các thư mục hệ thống như sau: · Root filesystem được xác định trên mỗi máy. Đó chính là hệ thống cây thư mục cục bộ (Local filesystem) bao gồm local disks, CDROM, floppy disks v.v... Root directory không hề chứa bất kỳ file nào, ngoại trừ có thể có ảnh để khởi động hệ thống; thông thường là /vmlinuz. Cho đến khi hệ thống được boot; init proccess sẽ mount filesystem vào root directory. Tất cả các thư mục còn lại là thư mục con (subdirectory) của root directory. Ký hiệu root directory là / · /bin: Thư mục này chứa tất cả các lệnh cần thiết được dùng bởi user. · /sbin: Tương tự như bin; tuy nhiên các lệnh ở đây thường không được dùng bởi các users thông thường (normal users); mặc dù họ có thể sử dụng chúng nếu cần thiết và nếu được phép (có quyền sử dụng). · /etc: Lưu giữ các file cấu hình (configuration files) của máy cục bộ (local host). · /root: home directory cho root user. · /lib: Cất giữ các thư viện cần thiết cho các chương trình trên root filesystem. · /lib/modules: Lưu giữ các kernel modules, cần thiết cho việc khởi động hệ thống (boot system). · /dev: Các file thiết bị (device files). Lưu ý: Linux/Unix luôn coi tất cả các thiết bị là file. Điều này sẽ được trình bày chi tiết trong phần dành cho các nhà quản trị hệ thống. · /tmp: Nơi lưu chứa các file tạm thời của các chương trình đang thực thi.
  7. Lưu ý: Các chương trình chạy sau khi bootup (khởi động hệ thống) sẽ sử dụng /var/tmp làm nơi lưu chứa tạm. · /boot: Các file được sử dụng để khởi động. Ví dụ: LILO (LInux LOader) và các ảnh nhân (kernel images) được lưu trữ tại đây. · /mnt: Nơi dùng để mount (gắn) các thiết bị lưu trữ tháo ráp được. Chẳng hạn như CDROM, floopy disks, v.v... Chỉ có người quản trị hệ thống (Administrator) thông thường là root user mới có quyền mount/umout các thiết bị trên. · /usr: Thư mục này khá lớn. Hầu hết các chương trình dành cho user được lưu trữ tại đây. · /var: Chứa các dữ liệu thay đổi khi hệ thống hoạt động. · /proc: Hệ thống filesystem ảo. Nó không hề tồn tại trên disk. Sự thật, kernel tạo ra nó trong bộ nhớ. Nó được sử dụng để cung cấp các thông tin về hệ thống chẳng hạn như thông tin về các proccess. · /home: Nơi dành cho các user. Bao gồm cả các tập tin cần thiết để user login vào hệ thống; cũng như cho phép user lưu trữ data (dữ liệu) lên disk. Trong thư mục /home, mỗi user sẽ có một thư mục mang đúng tên của user_name (default). Các user chỉ có quyền lưu trữ, xóa, thay đổi các file/subdirectory trong thư mục này (trừ root user). Riêng root user thì thư mục này là /root. 2. Các loại file trong Unix/Linux: Trong Unix/Linux có bốn dạng file cơ bản: file thông thường (ordinary file), thư mục (directory), file liên kết (link file) và các file đặc biệt (special file). · File thông thường: Là các file dùng để lưu trữ các dữ liệu dạng text (văn bản) hay binary (thường là các file thi hành được – excuted file hay các file thư viện – lib file). Thí dụ: file lưu trữ mã nguồn của một chương trình được lưu trữ ở dạng text: hello.c · Thư mục: Đây là một file khá đặc biệt, nó được hiểu như là pointer (con trỏ) để trỏ đến các file hay các thư mục con (sub directory) của nó. · File Liên kết: còn gọi là ordinary link. Link file không phải một file thật sự. Đơn giản nó chỉ là một pointer trỏ đến một file/directory nào đó. Và như vậy, user có thể truy xuất đến file/directory này thông qua các link file như đang truy xuất trực tiếp đến file/directory đó. Và như thế, Linux/Unix đã tạo ra thêm một khái niệm – đó là một file có thể có nhiều thư mục cha khác nhau. Đây là khái niệm không có trên các hệ thống khác như Windows NT hay Windows 9.x. Tuy nhiên, Linux xem các ordinary link file và original file là như nhau, nghĩa là hệ thống xem các link file như là các original file.
  8. Có một loại liên kết khác, được gọi là simbolic link. Simbolic link có thể link đến các file/directory trong cùng filesystem, cùng disk, hoặc một file ở trên một máy khác, các simbolic link và original file không ngang hàng với nhau Có sự khác biệt giữa ordinary link và simbolic link: -Nếu ta xóa link file của ordinary link thì dữ liệu thật sự (actual data) và các link file khác vẫn còn nguyên (nếu không bị xóa) cho đến khi link file cuối cùng bị xóa. -Còn nếu ta chỉ cần xóa original file của simbolic link thì lập tức file được link cùng với các link file khác cũng bị xóa theo. · File đặc biệt: Mọi thiết bị vật lý, bao gồm disk, printers, CDROM, v.v... đều được Unix/Linux xem như các file. Và các file này được gọi là special files. Hầu hết – không phải tất cả – các thiết bị được lưu giữ ở trong thư mục /dev. Thí dụ: /dev/cdrom là file quản lý CDROM. Users sẽ config và dùng CDROM thông qua file này. Có hai loại thiết bị trong Linux/Unix: character-special devices (thí dụ: printer) và block-special devices (thí dụ: disk). Tuy nhiên, về phía user chúng ta có thể không cần quan tâm đến việc thiết bị nào thuộc loại nào. Hệ thống sẽ tự lo điều này. 3. File structure: · File name (tên file): Tên file thường dùng các chữ cái, chữ số và dấu gạch dưới (underscore). Có thể dùng dấu phẩy (comma) hay dấu chấm (period). Tuy nhiên, tên file không thể bắt đầu với dấu chấm “.” hay dấu phẩy “,”; ngoại trừ một số trường hợp đặc biệt. Tên file có thể dài đến 256 ký tự, bao gồm cả phần mở rộng (extension of file name). Tuy nhiên Linux/Unix chỉ quản lý thật sự là 32 (hoặc 64) ký tự đầu tiên mà thôi . Nghĩa là nếu hai file chỉ khác nhau kể từ ký tự thứ 33 (hay 65) thì Linux/Unix xem như chúng bị trùng tên. Các ký tự mở rộng này chỉ dành cho user. Có một số các file khởi tạo (initialization) mà nó sẽ nắm giữ các lệnh cấu hình shell, được gọi là các dot file được bắt đầu tên file với dấu chấm. Thí dụ: Các tên file sau là hợp lệ: myfile.txt yourfile.cpp yourfile.cpp.old Các tên file dưới đây là bất hợp lệ: ;hang
  9. *nhuan ?Linh · Path name: là tên đầy đủ của một file, còn gọi là fullname. Fullname chỉ ra một lộ trình (path) đầy đủ để có thể truy xuất đến tập tin đó. Thí dụ: để chỉ ra file tho.txt trong thư mục hang, thư mục hang là thư mục con của home và home là thư mục con của root. Ta có tên đầy đủ của tho.txt như sau: /home/hang/tho.txt Để phân cách giữa các thư mục với nhau Linux/Unix sử dụng dấu slash “/” (trùng với ký hiệu của root). Có hai dạng path name: đường dẫn tuyệt đối (absolute path name) và đường dẫn tương đối (relative path name) Absolute path name chính là full name. Nghĩa là tên một file/subdirectory bắt đầu từ /. Relative path name: tên một file/subdirectory bắt đầu từ thư mục hiện hành (current working directory). Thí dụ: thư mục hiện hành là /home. Relative path name của tho.txt là hang/tho.txt. · File permission: quyền truy cập của file/directory trong Linux/Unix. Có tất cả ba loại quyền truy xuất: read (đọc), write (ghi/xóa) và excute (thực thi) cho ba nhóm khác nhau: owner (chủ sở hữu của file/directory), group (những user cùng nhóm với chủ sở hữu file/dir) và other (các user còn lại). Ngoài owner, thì việc thiết lập các quyền này chỉ có thể thay đổi bởi root user. Những user khác, nếu không được phép của ower sẽ không thể thay đổi các quyền trên. Ký hiệu của quyền read là “r”, write là “w” và excute là “x”, nếu không được set permission là ký hiệu là “-”. 4. Một vài khái niệm khác của file/directory: · Thư mục hiện hành (current working directory): Còn gọi là thư mục đang làm việc. Là thư mục mà user đang làm việc trên đó. Mặc định, khi user đăng nhập vào hệ thống, working directory sẽ là /home/username. Thí dụ: Nếu bạn login vào hệ thống với username là hang. Thì sau khi login xong, working directory sẽ là /home/hang. Ký hiệu của working directory là dot “.”. Để truy cập một file trong working directory, ta có pathname như sau: ./”ten file cần truy cập”. · Thư mục cha (parrent woriking directory): Là thư mục cha của working
  10. directory. Ký hiệu là “..” Thí dụ: Nếu working directory là /home/hang thì parrent directory là /home. Nếu ta muốn truy cập đến một file/subdirectory nào đó ở parrent directory path name sẽ là ../”tên file cần truy cập”. · Thư mục home: Là thư mục có cùng tên với username trong /home. Ký hiệu là “~” Thí dụ: Giả sử username là hang. Thư mục home của hang là /home/hang. Thay vì phải viết ra đầy đủ pathname của file tho.txt là /home/hang/tho.txt, nó có thể được chỉ ra một cách vắn tắt như sau: ~/tho.txt V.Operating System, kernel và shell: Để một máy tính có thể hoạt động được, điều tiên quyết cần có đó là ... một máy tính. Tất cả các thiết bị cấu thành một máy tính gọi chung là hardware (phần cứng). Có một số thiết bị bắt buộc phải có để một máy tính có thể hoạt động như bộ xuất/nhập chuẩn (standard Input/Output) và CPU (Central Proccessor Unit) ; đó thường là bàn phím (keyboard) và màn hình (monitor). Một số thiết bị khác không bắt buộc phải có gọi là thiết bị ngoại vi (peripheral). Thí dụ: scanner (máy quét) hay printer (máy in). Tuy nhiên, chỉ với hardware thì máy tính vẫn chưa thể hoạt động được. Muốn hoạt động được, máy tính còn cần thêm những phần làm cho máy tính hoạt động theo ý muốn người sử dụng. Người ta gọi đó là software (phần mềm). Software là các tập hợp chỉ thị (Instruction) mà CPU có thể hiểu được mà từ đó CPU có thể thực hiện các chỉ thị này theo một trật tự nào đó để cho ra kết quả như ý muốn người sử dụng. Trong tất cả các software, có một vài software có nhiệm vụ cực kỳ quan trọng, đó là điều phối hệ thống máy tính, để làm cho máy tính có thể hoạt động trôi chảy. Như là điều phối việc xuất nhập (I/O), hay điều khiển CPU thi hành các chỉ thị của các software khác. Người ta gọi software này là Hệ Điều Hành (Operating System: OS). Ngoài ra OS còn có một nhiệm vụ khác: làm cầu nối giữa user và computer. Bởi lẽ, con người và máy tính không có cùng “ngôn ngữ”, vì thế nhiệm vụ của OS sẽ là “thông dịch viên” để giúp user ra chỉ thị cho computer và ngược lại thông qua các thiết bị xuất nhập. Hiện nay có nhiều OS khác nhau như: Unix, Linux, MacOS, OS/2, Windows 9.x, Windows NT, BeOS, DOS v.v...
  11. Trong các OS kể trên, Linux hiện nay được các chuyên gia đánh giá một OS ổn định, có tốc độ phát triển nhanh và đáng tin cậy, đồng thời đây lại là một free OS. Bất kỳ hệ điều hành nào cũng có nhiều phần khác nhau, tuy nhiên nó luôn luôn có hai phần chính: phần lõi (kernel) và phần vỏ (shell). Kernel là phần chính của một hệ điều hành. Nó gồm một tập hợp các module làm các chức năng quản lý hardware, điều phối dòng thông tin giữa các ứng dụng (aplication) và CPU. Nó còn quản lý việc truyền thông giữa các máy tính với nhau trong môi trường mạng (network enviroment) . Nhiệm vụ chính của shell là cho phép user giao tiếp với OS. Trên các hệ Unix/Linux có vài shell khác nhau. Shell mặc định của Unix là Bourne shell, còn của Linux là bash (Bourne Again Shell: là Bourne shell với các chức năng mở rộng) được phát triển ở AT&T. Prompt (Dấu nhắc) của bash là $. Một shell khác của Unix là Korn shell (ksh). Ksh có đầy đủ các tập lệnh của Bourne shell cộng thêm một số khả năng khác. Trong Linux là pdksh (Public Domain Korn Shell). Prompt (Dấu nhắc) của pdksh là $. Một shell nữa của Unix là C shell (csh). Csh có đầy đủ các tập lệnh của Bourne shell cộng thêm một số khả năng khác cho việc lập trình được phát triển bởi BSD. Shell tương ứng trong Linux là tcsh. Prompt (Dấu nhắc) của tcsh là %. Ngoài ra, còn một shell khác có tên là zsh trên Linux. Người sử dụng có thể tùy ý chọn shell mà mình ưa thích để làm việc. Thí dụ: Nếu user đang dùng bash, nay muốn chuyển sang tcsh, đơn giản chỉ cần gõ tcsh tại dấu nhắc lệnh. Ngay lập tức, sẽ hiển thị shell làm việc là tcsh. User cũng có thể sửa lại profile để shell mặc định là shell do user muốn dùng. 1. Shell Operators (các tác vụ trên shell): a. Command Line (chế độ dòng lệnh): Sau khi khởi động hệ thống, một nàn hình hiển thị mời user login vào hệ thống. Để đăng nhập vào hệ thống, user cần gởi username tại dấu nhắc (prompt) login. Sau đó, tiếp tục gởi password của user cho hệ thống kiểm tra. Nếu hợp lệ, hệ thống sẽ khởi động các profile của user để user có thể thao tác với hệ thống. Sau khi user hoàn tất việc login vào hệ thống, một prompt “$” sẽ xuất hiện chờ user nhập vào các lệnh muốn thao tác. b.Một vài lệnh thông dụng của Linux/Unix:
  12. · ls (list): Lệnh ls dùng để hiển thị danh sách các file/subdirectory. Cú pháp: ls [option] [filename/directory] Nếu không có tham số, ls sẽ đưa ra tên các file/subdirectory của working directory. Các option: -a: hiển thị tất cả file/subdirectory, kể cả thư mục “.” và thư mục “..” cùng các script file. -A : hiển thị tất cả file/subdirectory, không hiển thị “.” và “..” -l: Hiển thị đầy đủ các thông tin của file/directory. Các ký hiệu khi hiển thị ở dạng đầy đủ thông tin: “d”: là thư mục và “-”: file thông thường Thí dụ: ls –l ~/ total 4 drwxrwxr-x 2 hang hang 4096 Dec 29 20:18 Hang drw-rw-r-- 1 hang hang 19 Jan 2 16:57 Baitaps -rw-rw-r-- 1 hang hang 0 Jan 3 01:21 tho.txt Ta thấy trong mười ký tự đầu tiên, ký tự thứ nhất trên mỗi dòng là “d” hoặc “-” thông báo cho user biết đây là file hay directory. Ba ký tự tiếp theo tuần tự sẽ có ý nghĩa là các mode “read”, “write”, excute” của owner được thiết lập (hoặc không nếu thấy là ký tự “-”) Ba ký tự kế tiếp là các mode tương tự cho các user trong cùng group với owner. Và ba ký tự cuối cùng trong nhóm ký tự này cũng là các mode đó cho các user còn lại. · cat: Lệnh cat dùng để hiển thị nội dung một file, để nối các file lại với nhau. Cú pháp: cat [option] Thí dụ: cat hello.c cat hello.c ~/tho.txt honhop.mix · cp (copy): Lệnh cp dùng để copy file Cú pháp: cp [option] source_file destination_file Các option: -i: option này kiểm tra xem tên des_file có trùng với file nào đang tồn tại hay chưa? Nếu có sẽ đưa ra câu thông báo: “Overwrite ...” (y/n) Nếu không có option, việc kiểm tra trùng tên bị bỏ qua, và lệnh cp sẽ chép đè (overwrite) lên file trước đó (nếu có). -r: cho phép copy một subdirectory vào một directory khác.
  13. Thí dụ: cp hello.c newhello.c · mv (move): Lệnh này dùng để di chuyển một file từ nơi này sang nơi khác. Cú pháp: mv [option] source_file destination_directory Thí dụ: mv hello.c ~/Hang · rm (remove): Xoá (các) file ra khỏi hệ thống cây thư mục. Cú pháp: rm [option] source_file(s) Thí dụ: rm newhello.c · mkdir (make dir): Tạo (các) thư mục Cú pháp: mkdir [option] dir(s) Thí dụ: mkdir dangphuong Linux cho phép user dùng ký tự trắng (space) trong tên file/directory. Thông thường, space dùng để phân cách các option trên dòng lệnh. Để chỉ ra space là một ký tự trong tên file/direfctory, user cần để tên file/directory trong cặp dấu “”. Thí dụ: Để tạo thư mục có tên là Dang và thư mục có tên Phương, user có thể dùng như sau: mkdir Dang Phuong Nhưng nếu để tạo thư mục có tên “Dang Phuong” thì cần dùng như sau: mkdir “Dang Phuong” · rmdir (remove directory): Xóa (các) thư mục Cú pháp: rmdir [option] dir(s) Thí dụ: rm Dang Phuong · cd (change dir): Chuyển thư mục làm việc Cú pháp: cd [directory] Thí dụ: cd ~/Hang · pwd (print working directory): Lấy tên thư mục đang làm việc. Cú pháp: pwd · chmod (change mode): Thiết lập các permission trên file/directory. Để thông vào một permission dùng dấu + và để bỏ một permission dùng dấu trừ ngay trước permission đó. Cú pháp: chmod Thí dụ: chmod +x-w vidu.txt · chown (change owner): Đổi quyền sở hữu file/dir Cú pháp: chown [option] old_owner new_owner Thí dụ: chown hang phuong · chgrp (change group): Đổi nhóm file/directory Cú pháp: chgrp [option] old_group new_group file/directory
  14. Thí dụ: chgrp user root hello.c · ps (proccess status): Xem thông tin các tiến trình đang hoạt động. Cú pháp: ps [option] · kill: Hủy ngang (các) tiến trình. Cú pháp: kill id_proccess · tar (tape archives): Dùng lệnh này để backup (sao lưu) dữ liệu ở dạng nén hoặc dùng để giải nén các file đã được backup bằng chính lệnh này. Cú pháp: tar [option] filename filelist Các option: -c: Tạo một file nén mới hoặc ghi đè lên file nén đã có. -r: Ghi các file có tên trong file list vào cuối file nén đã có. -t: Tạo bảng chỉ mục (table of content). -u: Cập nhật một file nén. -x: Giải nén một file nén ở dạng *.tar. -v: Hiển thị các tên file trong tiến trình xử lý. -f: Xác định tên file nén. Thí dụ: -Nén tất cả các file trong thư mục ~/baitap thành file vidu1.tar. tar -cf vidu1.tar baitap -Nén các file baitap1.c và baitap2.c thành vidu2.tar tar –cf vidu2.tar baitap1.c baitap2.c -Giải nén vidu1.tar vào thư mục hiện hành. tar –xf vidu1.tar · > và ~/list.txt Lệnh trên sẽ yêu cầu kết quả của lệnh ls được xuất ra dạng ở dạng file có tên là list.txt lưu tại home của user. · Cơ chế đường ống (pipes): Ký hiệu: | Nếu có các file nén (*.tar), sau khi nối lại bằng lệnh cat rồi giải nén nó thay vì phải nối lại bằng lệnh cat thành một file trung gian rồi dùng lệnh tar để giải nén file trung gian này, ta có thể dùng kết quả của lệnh cat làm đầu vào
  15. cho lệnh tar như sau: cat *.tar | tar –x · man (manual): Hướng dẫn sử dụng một lệnh này đó của Linux/Unix. Cú pháp: man commandname Thí dụ: man ls · startx: khởi tạo X Window. Cú pháp: startx c. Một số lệnh dành riêng cho Super User (root): · init: Khởi tạo lại trạng thái mới cho tiến trình init. Cú pháp: init Thí dụ: để khởi tạo mode đồ họa (X Window) ta dùng lệnh: init 5 Để khởi tạo mode single user ta sử dụng lệnh: init S · mount: Gắn một thiết bị lưu trữ như partion, disk, CDROM, floppy disk vào cây thư mục hệ thống. Cú pháp: mount [option] filesystem mount_device mount_point Các option: -t: chỉ định loại thiết bị muốn mount -r: mount thiết bị ở dạng read only. Các filesystem được hỗ trợ bởi Linux: ext: Linux filesystem ext2: extension Linux filesystem swap: swap partion filesystem iso9660: CDROM filesystem msdos: DOS filesystem (FAT 16) vfat: DOS filesystem (FAT 32) nfs: Network filesystem Minus: Minus filesystem Một vài thiết bị mount thông dụng: fd: loại thiết bị mount là floppy disk Thí dụ: /dev/fd0: chỉ định thiết bị mount là floppy disk A hd: loại thiết bị mount là hard disk Thí dụ: /dev/hda: chỉ định hard disk thứ nhất của hệ thống /dev/cdrom: loại thiết bị mount là CDROM (thường đó là một link đến /dev/hdc, nếu ổ CDROM được gắn second primary. Khi đó CDROM theo chuẩn ATAPI được xem như
  16. một hard disk). /dev/hda1, /dev/hda2 v.v..: thiết bị mount là một partion của hard disk. sd: loại thiết bị mount là SCSI hard drive st: loại thiết bị mount là SCSI tape drive lp: loại thiết bị mount là printer port tty: loại thiết bị mount là terminal ttyS: loại thiết bị mount là serial port (cổng nối tiếp) cua: loại thiết bị mount là callout device (COM ports) Thí dụ: -Để mount CDROM tại thư mục /mnt/cdrom, ta dùng lệnh mount như sau: mount –t iso9660 /dev/cdrom /mnt/cdrom -Để mount partion 2 – giả sử được format ở dạng FAT32 - tại thư mục /mnt/windows ta dùng lệnh: mount –t vfat /dev/hda2 /mnt/windows · umount: Ngược lại với lệnh mount. Dùng để gỡ bỏ một thiết bị đã được mount trước đó. Cú pháp: umount mountpoint Thí dụ: Sau khi đã mount CDROM tại thư mục /mnt/cdrom, bây giờ muốn unmount, ta dùng lệnh như sau: umount /mnt/cdrom · fdisk: phân chia lại partion và format disk Cú pháp: fdisk · cfdisk: tương tự như fdisk, tuy nhiên có giao diện và menu hướng dẫn sử dụng. Cú pháp: cfdisk d. Một số các tiện ích trên mode command line: mc mail Phần II: Cài đặt và cấu hình hệ thống I. Cài đặt: Việc cài đặt một hệ thống Linux bao gồm bốn bước: (*) Kiểm tra tương thích các thiết bị với phiên bản Linux muốn sử dụng (**) Tạo đĩa khởi động (boot disk) cho quá trình cài đặt. (***) Bắt đầu cài đặt
  17. (****) Thiết lập các thông số cần thiết cho hệ thống 1. Kiểm tra sự tương thích của hardware với phiên bản Linux sử dụng: Thông thường, nếu các thiết bị của bạn không quá cũ hay quá mới và thuộc loại tương đối thông dụng thì bạn có thể hy vọng trên 90% các thiết bị của bạn có thể tương thích với các phiên bản Linux hiện hành. Nếu muốn biết chắc chắn, bạn nên tham khảo tại website của nhà phân phối. Đặc biệt, nên lưu ý các loại thiết bị như monitor, mouse và display adaptor. Bởi vì, nếu các thiết bị này không tương thích với phiên bản Linux của bạn, bạn sẽ không thể giao tiếp với hệ thống. Việc sử dụng các thiết bị đặc biệt như SCSI, modem, scanner, sound card cần phải xem xét kỹ trước khi mua để đảm bảo được rằng các loại thiết bị này có driver hỗ trợ trên hệ thống Linux. Đồng thời cần phải tìm được tài liệu hỗ trợ hướng dẫn việc cài đặt nó trên hệ thống linux (Tùy thuộc vào từng model sẽ có các cách cài đặt khác nhau). 2. Tạo đĩa khởi động cho quá trình cài đặt: Có ba cách để khởi động quá trình cài đặt một hệ thống Linux. (a) Khởi động bằng CDROM (b) Kích hoạt file khởi động từ CDROM trong môi trường DOS (c) Tạo đĩa mềm (floopy disk) để khởi động (d) Khởi động quá trình cài đặt từ mạng a. Khởi động từ CDROM: Bởi vì hiện nay, các bản phân phối Linux trên CDROM đều có hỗ trợ việc khởi động từ CDROM nên nếu hệ thống máy tính của bạn có hỗ trợ chức năng boot từ CDROM (có thể kiểm tra điều này bằng cách vào BIOS để xem) thì bạn chỉ còn một việc là đưa đĩa CDROM vào ổ đĩa và thiết lập trong BIOS chế độ khởi động từ CDROM là xong.
Đồng bộ tài khoản