Tổng quan về Hệ điều hành Linux
Hệ điều hành Unix
1.1.1 Lịch sử hệ điều hành Unix
Vào giữa năm 1965, phòng thí nghiệm Bell của AT&T cùng một số trung tâm khác đã khởi động dự án xây dựng hệ điều hành Multics (Multiplexed Information and Computing Service) với mục tiêu phát triển một hệ điều hành đa người dùng, có khả năng tính toán và lưu trữ cao, hoạt động trên mạng lưới máy tính kết nối rộng Tuy nhiên, dự án chỉ đạt được thành công hạn chế và đã bộc lộ một số khiếm khuyết khó khắc phục.
Năm 1969, Ken Thompson, một chuyên viên tại phòng thí nghiệm Bell, cùng với Dennis Ritchie đã phát triển hệ điều hành đa-bài toán UNICS (UNiplexed Information and Computing Service) trên máy PDP-7 Đến năm 1971, hệ điều hành này được viết lại bằng ngôn ngữ assembler cho máy PDP-11/20 và được đổi tên thành UNIX (Version 1).
Năm 1973, Thompson đã viết lại nhân của hệ điều hành UNIX bằng ngôn ngữ C, giúp hệ điều hành này dễ dàng cài đặt trên nhiều loại máy tính khác nhau Tính năng này được gọi là tính khả chuyển (portable) của UNIX.
Vào năm 1979, Unix phiên bản thứ 7 được phát hành, trở thành hệ điều hành gốc cho tất cả các hệ thống Unix hiện nay Từ thời điểm đó, lịch sử Unix trở nên phức tạp với sự phát triển của Berkeley Software Distribution (BSD) do cộng đồng các trường đại học và học viện, đặc biệt là Berkeley, dẫn dắt, trong khi AT&T tiếp tục phát triển Unix với tên gọi “System III” và sau đó là “System V”.
Vào những năm cuối của thập kỷ 1980 cho đến các năm đầu thập kỷ 1990, một
Cuộc chiến giữa hai hệ thống chính đã diễn ra căng thẳng, dẫn đến sự phát triển riêng biệt của mỗi hệ thống Trong thị trường thương mại, “System V” đã giành ưu thế nhờ vào việc sử dụng các giao thức chuẩn, khiến nhiều nhà cung cấp phần cứng chuyển sang hệ thống của AT&T Cuối cùng, “System V” đã tích hợp các cải tiến từ BSD, tạo ra một hệ thống pha trộn giữa hai nhánh Unix Nhánh BSD vẫn tồn tại và được ứng dụng rộng rãi trong nghiên cứu và phát triển phần cứng.
PC, và cho các server đơn mục đích (vd: nhiều website sử dụng một nguồn BSD)
Bảng sau đây liệt kê một số cài đặt UNIX khá phổ biến (thường thấy có chữ X ở cuối tên gọi của Hệ điều hành):
Tên hệ Nhà cung cấp Nền phát triển
AIX International Business Machines AT&T System V
A/UX Apple Computer AT&T System V
Dynix Sequent BSD(Berkeley SoftWare
HP-UX Hewlett-Packard BSD
Irix Silicon Graphics AT&T System V
OSF/1 Digital Equipment Corporation BSD
SCO UNIX Santa Cruz Operation AT&T System V
Solaris Sun Microsystems AT&T System V
SunOS Sun Microsystems BSD UNIX
Digital Equipment Corporation BSD UNIX
XENIX MicroSoft AT&T System III-MS
1.1.2 Đặc trưng của hệ điều hành UNIX
Hệ điều hành được phát triển bằng ngôn ngữ lập trình bậc cao, giúp cho việc đọc và hiểu trở nên dễ dàng hơn Điều này cũng tạo điều kiện thuận lợi cho việc thay đổi và cài đặt trên các loại máy móc mới, đảm bảo tính khả chuyển của hệ thống.
Giao diện người dùng của UNIX được thiết kế đơn giản nhưng mạnh mẽ, đáp ứng đầy đủ các dịch vụ mà người dùng cần So với các hệ điều hành trước đây, giao diện này đánh dấu một bước tiến vượt bậc trong công nghệ.
Để xây dựng các chương trình phức tạp, cần tuân thủ nguyên tắc phát triển từ những chương trình đơn giản hơn Bắt đầu với các module cơ bản của nhân, sau đó tiến hành phát triển cho đến khi hoàn thiện toàn bộ hệ điều hành.
Sử dụng duy nhất một hệ thống File có cấu trúc cây cho phép dễ dàng bảo quản và sử dụng hiệu quả
Sử dụng một dạng đơn giản để trình bày nội tại của File dưới dạng dòng các byte giúp việc viết chương trình ứng dụng truy cập và thao tác với dữ liệu trong File trở nên dễ dàng hơn.
Kết nối với thiết bị ngoại vi trở nên đơn giản nhờ vào các file thiết bị đã được cài đặt sẵn trong hệ thống File, giúp chương trình người dùng dễ dàng tương tác với các thiết bị này.
Là hệ điều hành đa người dùng, đa quá trình, trong đó mỗi người dùng có thể thực hiện các quá trình của mình một cách độc lập
Tất cả các thao tác vào - ra của hệ điều hành diễn ra thông qua hệ thống file, trong đó mỗi thiết bị vào ra tương ứng với một file cụ thể Người dùng chỉ cần tương tác với file mà không cần quan tâm đến tên gọi của file đó liên quan đến thiết bị nào trong hệ thống.
Cấu trúc máy được che khuất giúp người dùng duy trì tính độc lập của chương trình so với dữ liệu và phần cứng Điều này tạo điều kiện thuận lợi cho lập trình viên khi phát triển các ứng dụng chạy trên hệ điều hành UNIX, ngay cả khi phần cứng có sự khác biệt đáng kể.
Tổ chức phần mềm miễn phí (Free Sofrware Foundation-FSF)
Vào năm 1984, Richard Stallman đã thành lập tổ chức Phần mềm Miễn phí (FSF) với mục tiêu loại bỏ các hạn chế trong việc phân phối, sao chép, sửa đổi và nghiên cứu phần mềm Các công ty thương mại lúc bấy giờ giữ bí mật mã nguồn và bảo vệ phần mềm bằng bằng sáng chế, điều này gây hại cho sự phát triển ứng dụng, giảm chất lượng và tạo ra nhiều lỗi không xác định Hơn nữa, điều này làm chậm quá trình trao đổi ý tưởng và phát triển ứng dụng mới, khi lập trình viên phải viết lại từ đầu thay vì sử dụng mã nguồn có sẵn.
Dự án GNU, khởi đầu trong khuôn khổ FSF, nhằm phát triển các chương trình ứng dụng miễn phí Tên gọi GNU là viết tắt của cụm từ "GNU's not UNIX", nhấn mạnh rằng các sản phẩm của dự án này không thuộc về hệ điều hành UNIX.
Những gì mà dự án GNU phát triển là tự do, nhưng điều này không có nghĩa là chúng không được bảo vệ bởi bản quyền Các chương trình mã nguồn mở (Open Source) được phân phối theo Giấy phép Công cộng GNU (GPL) Bạn có thể tìm hiểu thêm về bản quyền này tại http://www.gnu.org/copyleft/gpl.html và phiên bản tiếng Việt không chính thức tại http://vi.openoffice.org/gplv.html Tóm lại, bản chất của GPL cho phép người dùng phát triển, sửa đổi, chuyển nhượng hoặc bán các chương trình ứng dụng, với điều kiện rằng các kết quả thu được cũng phải được phân phối theo cùng một giấy phép GPL.
Dự án GNU đã đạt được thành công lớn trong việc phát triển nhiều thành phần hữu ích, nổi bật với trình biên dịch C hàng đầu gcc, trình soạn thảo văn bản ấn tượng emacs và một bộ công cụ cơ bản đa dạng.
Vào những năm 1990, FSF đã đối mặt với thách thức lớn trong việc phát triển kernel cho hệ điều hành, điều này khiến giấc mơ xây dựng một hệ điều hành miễn phí của họ khó có thể trở thành hiện thực.
Sơ bộ về Linux
Linus Torvalds, một sinh viên tại Đại học Tổng hợp Helsinki, Phần Lan, đã phát hành phiên bản đầu tiên của nhân Linux vào tháng 8 năm 1991, dựa trên phiên bản UNIX có tên Minix do Giáo sư Andrew S Tanenbaum phát triển Tuy nhiên, nhân Linux lúc bấy giờ vẫn chưa đủ để trở thành một hệ điều hành hoàn chỉnh, vì vậy nó cần được kết hợp với các chương trình ứng dụng từ tổ chức GNU để hình thành hệ điều hành GNU/Linux Do đó, người dùng thường gọi hệ điều hành này đơn giản là Linux.
Dưới đây là một số mốc thời gian quan trọng trong quá trình hình thành và phát triển hệ điều hành Linux:
Vào ngày 14-3-1994, hệ điều hành Linux phiên bản 1.0 được phát hành, đánh dấu một cột mốc quan trọng sau năm năm phát triển Phiên bản này nổi bật với việc hỗ trợ giao thức mạng TCP/IP chuẩn UNIX, tương thích với giao thức socket BSD, giúp cải thiện khả năng lập trình mạng Ngoài ra, Linux 1.0 đã bổ sung trình điều khiển thiết bị để chạy IP trên mạng Ethernet, modem và các tuyến đơn Hệ thống file của Linux 1.0 vượt trội hơn so với Minix, đồng thời hỗ trợ điều khiển SCSI cho các đĩa tốc độ cao Hệ thống quản lý bộ nhớ ảo cũng được mở rộng, cho phép điều khiển trang cho các file swap và ánh xạ bộ nhớ của file đặc quyền, với một ánh xạ bộ nhớ chỉ đọc được thực thi trong phiên bản này.
Vào tháng 3 năm 1995, nhân Linux 1.2 được phát hành, nổi bật với khả năng hỗ trợ đa dạng phần cứng, bao gồm cả kiến trúc PCI mới Đây là phiên bản cuối cùng trong dòng nhân Linux chỉ hỗ trợ cho PC.
Khi đánh chỉ số các dòng nhân của hệ điều hành Linux, cần lưu ý rằng hệ thống chỉ số được phân chia thành nhiều mức, như 2.4 hoặc 2.2.5 Theo quy ước, các chỉ số từ mức thứ hai trở đi cho biết rằng nếu là số chẵn, dòng nhân đó đã ổn định và hoàn thiện, trong khi số lẻ cho thấy dòng nhân vẫn đang trong quá trình phát triển.
Vào tháng 6 năm 1996, nhân Linux 2.0 được phát hành với hai đặc trưng nổi bật: hỗ trợ kiến trúc phức hợp, bao gồm cả cổng Alpha 64-bit đầy đủ, và khả năng hỗ trợ kiến trúc đa bộ xử lý Phiên bản này cũng có thể được triển khai trên bộ xử lý Motorola 68000 và kiến trúc SPARC của SUN.
Linux dựa trên vi nhân GNU Mach cũng chạy trên PC và PowerMac
Đến năm 2000, nhân Linux 2.4 được phát hành với tính năng nổi bật là hỗ trợ mã ký tự Unicode 32 bit, góp phần quan trọng trong việc phát triển các giải pháp toàn diện cho vấn đề ngôn ngữ tự nhiên trên toàn cầu.
1.3.2 Một số phiên bản Linux
Redhat và FedoraCore là hai bản phân phối Linux nổi bật nhất thế giới, được phát hành bởi công ty Redhat Kể từ năm 2003, Redhat Inc đã chuyển hướng kinh doanh, tập trung vào phát triển sản phẩm Redhat Interprise Linux (RHEL) nhằm phục vụ cho các doanh nghiệp Để phục vụ người dùng cá nhân, Redhat đã khởi động dự án Fedora, trong đó công ty đầu tư tài chính và hỗ trợ kỹ thuật, đồng thời kêu gọi các nhà phát triển toàn cầu tham gia xây dựng FedoraCore Phiên bản cuối cùng của bản Linux Redhat là 9.0, trong khi phiên bản của FedoraCore bắt đầu từ 1.
WhiteBox Linux: Bản clone của Redhat EnterpriseLinux 3.0 Build trên sourcecode của RHEL bởi một nhóm các kỹ sư ở LA, HoaKỳ Hiện nay server
Nhatban.NET đang dùng bản này
SuSE Linux: Made in Germany Bản Linux cực kỳ thịnh hành ở châu Âu và
Năm 2003, công ty SuSE đã được Novell mua lại, với mục tiêu đầu tư mạnh mẽ vào SuSE nhằm thu hút người dùng doanh nghiệp và cạnh tranh với Redhat Phiên bản SuSE mới nhất hiện nay là 10.3.
Mandrake Linux: Made in France Cũng là một bản Linux rất thịnh hành ở châuÂu, Mỹ, và Việt Nam Phiên bản MDK mới nhất hiện nay là 10.1
Turbo Linux, nổi bật tại Nhật Bản và Trung Quốc, đang đầu tư mạnh mẽ để chiếm lĩnh thị trường Linux tại Trung Quốc Phiên bản mới nhất của Turbo hiện nay là 10F.
Debian Linux là một trong những phân phối nổi bật trong cộng đồng Linux, được nhiều người khuyên dùng cho các chuyên gia nhờ vào tính ổn định vượt trội của nó Trong khi đó, Fedora Core thường được đề xuất cho những người mới bắt đầu để dễ dàng tiếp cận các công nghệ mới nhất Phiên bản mới nhất hiện nay của Debian là 3.1.
Vine Linux: Cực kỳ được ưa chuộng tại Nhật Được phát triển trên nền
Redhat 6.2 nổi bật với kích thước nhẹ chỉ với một đĩa CD và hỗ trợ hoàn toàn tiếng Nhật Bên cạnh đó, Vine Linux cũng tích hợp một số tính năng của Debian, chẳng hạn như apt-get Phiên bản mới nhất hiện nay là 4.2.
Knoppix Linux, một bản liveLinux nổi tiếng xuất xứ từ Đức, cho phép người dùng khởi động trực tiếp từ CD mà không cần cài đặt vào ổ cứng Phiên bản mới nhất hiện nay là 5.1.1, mang lại trải nghiệm sử dụng tiện lợi và hiệu quả.
Vietkey Linux: Made in Vietnam Hoàn toàn không có tiếng tăm gì ngoài chuyện được giải trong cuộc thi TTVN 2003 Phát triển bởi nhóm Vietkey trên nền Redhat 7.2
VnlinuxCD: Bản liveCD by LarryNguyễn Nguyên tắc của vnlinuxCD giống Knoppix nhưng được build trên nền Mandrake 9.2 Hỗ trợ khá tốt các vấn đề về tiếng Việt
Ubuntu là một bản phân phối Linux phổ biến, chủ yếu dành cho máy tính để bàn, được phát triển dựa trên Debian GNU/Linux Phiên bản của nó được phát hành mỗi 6 tháng và người dùng có thể khởi động trực tiếp từ đĩa LiveCD.
Các phiên bản khác còn rất nhiều distributor khác: Check, Slackware, Gentoo, College, YellowDog, SGI, Momonga,
1.3.3 Đặc điểm chính của Linux
Linux là một hệ điều hành mã nguồn mở, miễn phí, với sự tham gia của nhiều lập trình viên từ những ngày đầu phát triển, giúp nó trở thành hệ điều hành hiện đại và bền vững nhất hiện nay Hệ thống này nhanh chóng hỗ trợ các công nghệ mới và áp dụng nhiều nguyên tắc thiết kế của Unix Giao diện đồ họa của Linux, bao gồm cửa sổ, biểu tượng và thực đơn, được xây dựng dựa trên giao diện dòng lệnh, cho thấy rằng hệ thống tập tin của Linux được thiết kế để quản lý dễ dàng thông qua các lệnh.
Dưới đây trình bày một số đặc điểm chính của của hệ điều hành Linux hiện tại:
Nhiều tiến trình thực sự
Tất cả các tiến trình hoạt động độc lập mà không bị cản trở bởi nhau nhờ vào chế độ phân chia thời gian của bộ xử lý trung tâm Mỗi tiến trình được cấp phát một khoảng thời gian thực hiện riêng biệt, điều này khác biệt hoàn toàn so với chế độ "nhiều tiến trình đẩy nhanh" trong Windows 95, nơi một tiến trình phải nhường bộ xử lý cho các tiến trình khác, dẫn đến khả năng làm chậm trễ trong việc thực hiện.
Truy cập nhiều người dùng
Sơ bộ các thành phần của Linux
Hệ thống Linux, được thi hành như một hệ điều hành UNIX truyền thống, gồm shell và ba thành phần sau đây:
Nhân hệ điều hành đảm nhiệm việc quản lý các đối tượng trừu tượng quan trọng như bộ nhớ ảo và quá trình Các mô đun chương trình trong nhân được cấp quyền đặc biệt trong hệ thống, bao gồm quyền truy cập thường trực vào bộ nhớ trong.
Thư viện hệ thống cung cấp một tập hợp các hàm chuẩn cho phép các ứng dụng tương tác với nhân và thực hiện nhiều chức năng của hệ thống mà không cần quyền truy cập của mô-đun nhân Một ví dụ điển hình về hệ thống con được xây dựng dựa trên thư viện hệ thống là hệ thống tệp của Linux.
Tiện ích hệ thống là các chương trình thực hiện nhiệm vụ quản lý chuyên biệt, với một số tiện ích được khởi động và cấu hình một lần, trong khi các tiện ích khác, được gọi là trình chạy ngầm (daemon) trong thuật ngữ UNIX, hoạt động liên tục theo chu kỳ Chúng có vai trò quan trọng trong việc quản lý kết nối mạng, tiếp nhận yêu cầu đăng nhập, và cập nhật các file log.
Tiện ích (hay lệnh) có sẵn trong hệ điều hành (dưới đây tiện ích được coi là lệnh thường trực)
Nhân của Linux, hay còn gọi là hệ lõi, là tập hợp các mô-đun chương trình chịu trách nhiệm điều khiển các thành phần của máy tính và phân phối tài nguyên cho người dùng Nó đóng vai trò cầu nối giữa ứng dụng và phần cứng Khi người dùng nhập lệnh qua bàn phím, nhân sẽ chuyển yêu cầu đó tới shell, nơi lệnh được phân tích và các chương trình tương ứng được gọi để thực hiện Nhân cung cấp các chức năng cơ bản cho hệ điều hành, bao gồm quản lý bộ nhớ, quản lý file và quản lý thiết bị nhập xuất, đồng thời là thành phần có độ ưu tiên cao nhất với năm hệ thống nhỏ khác nhau.
Bộ phân thời cho tiến trình (Process Scheduler-SCHED)
Máy tính hoạt động như một hệ thống xử lý đơn, chỉ thực hiện một lệnh tại một thời điểm Tuy nhiên, các hệ điều hành đa nhiệm như Windows và Linux cho phép nhiều chương trình chạy đồng thời bằng cách chuyển đổi nhanh chóng giữa các chương trình Chẳng hạn, khi bạn vừa sử dụng Winword vừa nghe Winamp, hệ thống SCHED sẽ thực hiện một số lệnh của Winword trước, sau đó chuyển sang Winamp, và quay lại Winword, tạo cảm giác như các chương trình đang chạy song song, mặc dù thực tế chỉ có một lệnh được thực thi tại một thời điểm.
Bộ quản lý bộ nhớ (Memory Manager-MM)
Bộ nhớ qui ước của PC chỉ có 640KB, vì chương trình BIOS chỉ quản lý được tới FFFFF, trong khi vùng nhớ cao (từ A0000 trở lên) dùng để ánh xạ BIOS, bộ nhớ card màn hình và các thiết bị ngoại vi khác Điều này dẫn đến việc RAM 512M khi kiểm tra không đủ 512M do chia sẻ với vùng nhớ cao của card màn hình Nhân hệ điều hành có độ ưu tiên cao nhất, cho phép các lời gọi hàm thực thi trực tiếp và đáp ứng ngay yêu cầu về vùng nhớ động Ngoài ra, nhân giả định rằng các hàm không có lỗi, nên không sử dụng cơ chế kiểm lỗi khi nhận yêu cầu.
Hệ thống file ảo (Virtual File System – VFS)
Hệ thống này không chỉ cung cấp truy xuất đến hệ thống file trên harddisk mà còn cho tất cả các thiết bị ngoại vi
Giao diện mạng (Network Interface-NET)
Linux tích hợp sẵn giao thức TCP/IP trong nhân hệ điều hành, cho phép kết nối dễ dàng với các hệ thống khác qua mạng Điều này giúp người dùng truy cập mà không cần lo lắng về thiết bị hoặc giao thức đang được sử dụng.
Bộ truyền thông nội bộ (Inter-process communication IPC)
Cung cấp các phương tiện truyền thông giữa các tiến trình trong cùng hệ thống Linux
Shell, hay còn gọi là hệ vỏ trong Linux, đóng vai trò quan trọng trong hoạt động của hệ điều hành Chương "Lập trình trên shell" sẽ cung cấp những thông tin chi tiết về shell, giúp người dùng hiểu rõ hơn về chức năng và cách thức hoạt động của nó trong môi trường Linux.
Khi người dùng muốn máy tính thực hiện một tác vụ, họ cần nhập lệnh để hệ thống đáp ứng yêu cầu đó Shell đóng vai trò là bộ dịch lệnh, kết nối giữa nhân hệ thống và người dùng Nó nhận dòng lệnh từ người dùng, phân tích và tách các thành phần để thực thi các lệnh tương ứng Khi shell sẵn sàng nhận lệnh, dấu nhắc shell sẽ xuất hiện trên Terminal, cho phép người dùng nhập lệnh.
Linux có nhiều loại shell là:
- SH (Shell Bourne) do Steven Bourne viết, đơn giản và hiệu quả Dấu nhắc lệnh:
$, biên dịch sử dụng sh
- Bash (Bourne Again shell) là phần mở rộng của sh, đây là shell cài đặt mặc định trên các hệ thống Linux
- CSH (C shell) của Bill Joy ở trường đại học Berkeley Dấu nhắc lệnh: %, nó có thể gọi bởi csh, hỗ trợ rất mạng bởi ngôn ngữ lập trình C
- Korn shell của David F Korn kết hợp Bourne shell và C shell nhưng bổ sung thêm các đặc điểm riêng Dấu nhắc lệnh: $, biên dịch sử dụng ksh
Ngoài ra còn có một số loại shell khác như: TCSH, SSH, NFSSH, MCSH…
MC (Midnight Commander) một Shell thực hiện yêu cầu của người dung thông qua môi trường đồ họa…Tương tự như NC (Norton Commander) trong
Lệnh được chia thành 3 loại lệnh:
Hầu hết các lệnh được đề cập trong tài liệu này là lệnh thường trực có sẵn trong Linux, bao gồm các lệnh tích hợp trong shell và các lệnh khác.
Người dùng có thể viết chương trình bằng ngôn ngữ C và sử dụng bộ biên dịch gcc, bao gồm cả trình kết nối link, để chuyển đổi mã nguồn thành chương trình ngôn ngữ máy.
File chương trình shell (Shell Script)
Khi kết thúc một dòng lệnh cần gõ phím ENTER để shell phân tích và thực hiện lệnh
1.4.3.1 Cấu trúc của hệ thống File
Hệ thống tập tin của Linux và Unix được tổ chức theo cấu trúc phân cấp giống như một cây, với gốc ở trên cùng và các lá ở dưới Kiến trúc phân cấp này giúp quản lý và truy cập dữ liệu một cách hiệu quả trong hệ thống file của Linux.
Gốc của kiến trúc phân cấp trong Linux là thư mục gốc “/”, tương tự như “C:\” trong DOS, nhưng khác biệt ở chỗ “C:\” chỉ là phân vùng đầu tiên của đĩa cứng đầu tiên, trong khi thư mục gốc “/” có thể ánh xạ đến bất kỳ phân vùng nào.
1.4.3.2 Thư mục cơ sở (The base directories)
Các thư mục cơ sở là những thư mục con cấp một nằm ngay dưới thư mục gốc
“/” Chúng được tạo ra bởi một gói thường có tên là filesystem
Tiến trình khởi động ánh xạ thư mục gốc đầu tiên, điều này giúp thực hiện các thao tác như kiểm tra phân vùng và nạp module cho nhân Sau khi ánh xạ thư mục gốc hoàn tất, các chương trình như fsck, insmod và mount mới có thể được sử dụng Để đảm bảo quá trình khởi động diễn ra chính xác, các thư mục /dev, /bin, /sbin, /etc và /lib phải là thư mục con của “/” và không được ánh xạ từ bất kỳ phân vùng nào khác.
Sau đây là một số thư mục cơ sở và giải thích ngắn gọn ý nghĩa của chúng:
/bin – Chứa các ứng dụng quan trọng (binary applications)
/boot – Các tập tin cấu hình cho quá trình khởi động hệ thống (boot configuration files)
/dev – Chứa các tập tin là chứng nhận cho các thiết bị của hệ thống (device files)
/etc – Chứa các tập tin cấu hình của hệ thống, các tập tin lệnh để khởi động các dịch vụ của hệ thống
/home – Thư mục này chứa các thư mục cá nhân của những người có quyền truy cập vào hệ thống (local users' homedirectories)
/lib – Chứa các thư viện dùng chung cho các lệnh nằm trong /bin và /sbin và thư mục này cũng chứa các module của hệ thống (systemlibraries)
Thư mục /lost+found được sử dụng để lưu trữ các tập tin không có thư mục mẹ, được phát hiện dưới thư mục gốc (/) sau khi thực hiện lệnh kiểm tra hệ thống tập tin (fsck).
Ubuntu
Giới thiệu chung
Ubuntu là hệ điều hành mã nguồn mở dựa trên nhân Linux, được phát triển bởi cộng đồng Nó cung cấp đầy đủ chức năng của một hệ điều hành hiện đại, hoạt động hiệu quả trên máy tính để bàn, laptop và máy chủ Mặc dù mới ra đời, Ubuntu đã có những bước tiến mạnh mẽ và đang ngày càng phổ biến trên toàn cầu, đặc biệt là tại Việt Nam.
Lịch sử Ubuntu bắt đầu vào tháng 4 năm 2004 khi Mark Shuttleworth, tỷ phú người Nam Phi và là người đầu tiên bay vào vũ trụ, tập hợp một nhóm các nhà phát triển phần mềm mã nguồn mở Nhóm này, được đặt tên là Warthogs, đã cùng nhau làm việc trong sáu tháng để phát triển phiên bản đầu tiên của hệ điều hành mới, với mục tiêu hiện thực hóa những ý tưởng sáng tạo.
Họ lấy tên nhóm đặt cho phiên bản Ubuntu đầu tiên này, Warty Warthog
Ubuntu thể hiện triết lý nhân văn qua biểu tượng ba người nắm tay thành vòng tròn, cùng với cái tên "Ubuntu", một từ trong ngôn ngữ Bantu của châu Phi Từ này được dịch sang tiếng Anh là "Humanity to others" hay "I am what I am because of who we all are", mang ý nghĩa "Nhân đạo với người khác" và "Tôi như thế này bởi vì tất cả chúng ta đều là như thế".
Ubuntu dựa trên nền tảng chắc chắn của bản phân phối Debian và chương trình
GNOME (Gnu Network Object Environment) là một phần mềm cung cấp môi trường Desktop thân thiện cho hệ điều hành Linux Với cam kết mạnh mẽ về tự do và thời gian phát hành, Ubuntu đã xây dựng một cộng đồng lên đến 12.000 thành viên chỉ trong ba năm, với số lượng người dùng ước tính vượt quá 8 triệu vào tháng 7 năm 2007.
2.1.2 Tên gọi và phiên bản
Ubuntu có nhiều phiên bản để nhắm vào những người sử dụng mục tiêu khác nhau
Kubuntu là một dẫn xuất chính thức của Ubuntu, nhưng sử dụng môi trường
Desktop KDE thay vì GNOME Phiên bản này là một phần của dự án Ubuntu và có cùng nền tảng bên dưới với Ubuntu
Edubuntu là một dẫn xuất chính thức của Ubuntu, được thiết kế dành cho việc sử dụng trong trường học Edubuntu bao gồm nhiều ứng dụng giáo dục như
GCompris, KDE Edutainment Suite, và Schooltool Calendar
Xubuntu là một phiên bản chính thức của Ubuntu, sử dụng môi trường Desktop XFCE thay vì GNOME Phiên bản này được thiết kế cho các máy tính có cấu hình thấp hoặc các hệ thống đặc biệt cần một môi trường Desktop hiệu suất cao và tốc độ nhanh.
Gobuntu là một phiên bản của Ubuntu dành cho những người tìm kiếm một hệ điều hành Desktop hoàn toàn dựa trên phần mềm tự do Phiên bản này loại bỏ các driver chỉ có gói nhị phân và đảm bảo không sử dụng phần mềm nào hạn chế việc chỉnh sửa hoặc phân phối lại.
Ubuntu phát hành phiên bản mới mỗi 6 tháng vào tháng 4 và tháng 10, bắt đầu từ tháng 10 năm 2004 Các phiên bản này được hỗ trợ cập nhật trong 18 tháng cho cả server và desktop Sau hai năm, Ubuntu sẽ phát hành một phiên bản LTS (Long-Term Support) dành cho doanh nghiệp, với thời gian hỗ trợ lâu hơn, cụ thể là 5 năm cho bản server và 3 năm cho bản desktop Đến nay, phiên bản LTS đầu tiên là 6.06 LTS, và dự kiến phiên bản LTS tiếp theo sẽ ra mắt vào năm 2008.
Mỗi phiên bản Ubuntu được đánh số theo năm và tháng phát hành, ví dụ phiên bản đầu tiên 4.10 ra mắt vào tháng 10 năm 2004 Mỗi phiên bản còn có tên gọi vui, như phiên bản 4.10 được gọi là Warty Warthog, tên của một loài heo có sừng ở châu Phi Dưới đây là danh sách các phiên bản đã phát hành cho đến nay.
Phiên bản 4.10 có tên Warty Warthog với Linux kernel 2.6.8 và Gnome 2.8
Phiên bản 5.04 có tên Hoary Hedgehog với Linux kernel 2.6.10 và Gnome 2.10
Phiên bản 5.10 có tên Breezy Badger với Linux kernel 2.6.12 và Gnome 2.12.1
Phiên bản 6.06 có tên Dapper Drake với Linux kernel 2.6.15 và Gnome 2.14.1
Phiên bản 6.10 có tên Edgy Eft với kernel 2.6.17 và Gnome 2.16
Phiên bản 7.04 có tên Feisty Fawn với kernel 2.6.20 và Gnome 2.18
Phiên bản 7.10 có tên Gutsy Gibbon với Linux kernel 2.6.22 và Gnome 2.20
Phiên bản 8.04 LTS tên gọi Hardy Heron sẽ phát hành vào tháng 4 năm 2008 với Linux kernel 2.6.24 và Gnome 2.22
Ubuntu là một hệ điều hành mã nguồn mở, được xây dựng dựa trên triết lý rằng phần mềm nên miễn phí và dễ tiếp cận cho mọi người, bao gồm cả người khuyết tật Cộng đồng Ubuntu cam kết cung cấp công cụ phần mềm bằng tiếng địa phương và cho phép người dùng tự do sửa đổi, thay thế phần mềm theo nhu cầu của họ.
Ubuntu luôn miễn phí và không tính phí cho phiên bản doanh nghiệp (LTS), cho phép mọi người sử dụng với các điều khoản tự do như nhau.
Ubuntu được thiết kế với kiến trúc tối ưu cho việc chuyển ngữ và tiếp cận cộng đồng phần mềm tự do, nhằm mục tiêu mở rộng số lượng người dùng Ubuntu một cách tối đa.
Ubuntu phát hành mỗi sáu tháng, cung cấp cả bản ổn định và bản phát triển Mỗi phiên bản được hỗ trợ tối thiểu 18 tháng, đảm bảo người dùng có thời gian sử dụng và cập nhật.
Ubuntu cam kết tuân thủ nguyên tắc phát triển phần mềm mã nguồn mở, khuyến khích mọi người sử dụng, phát triển và phân phối phần mềm này.
2.1.4 Điểm khác biệt Ubuntu với Windows
Khi phân biệt giữa Ubuntu và Microsoft Windows, có một số yếu tố quan trọng cần xem xét, bao gồm chi phí, chu kỳ phát hành, độ an toàn, khả năng tùy chỉnh và khả năng di động.
Hệ điều hành Windows của Microsoft là sản phẩm thương mại, do đó chi phí sẽ tăng theo các chức năng và ứng dụng bổ sung Điều này khiến nhiều người cân nhắc việc sử dụng ứng dụng của bên thứ ba Ngược lại, Ubuntu cung cấp các phiên bản phát hành mới và ứng dụng hoàn toàn miễn phí.
Cài đặt
Để lựa chọn cấu hình máy tính phù hợp, bạn nên sử dụng chip Intel P3, P4 hoặc AMD hỗ trợ 32bit Đối với các dòng chip cũ, hãy chọn những phiên bản có mã i386 từ Intel hoặc AMD Nếu bạn đang tìm kiếm các dòng chip đời mới hỗ trợ 64bit, hãy chọn các phiên bản có mã amd64.
Tối thiểu 2GB dung lượng ổ cứng trống nhưng bạn để 10GB trống để cài phần mềm ứng dụng
Download Ubuntu: Khi chọn file iso để tải xuống lưu ý chọn đúng bản phù hợp với cấu hình máy
Ghi ra đĩa là quá trình tạo một LiveCD, bao gồm toàn bộ hệ điều hành và các phần mềm ứng dụng đã được chọn lọc, nhằm khởi động máy tính một cách hiệu quả.
Phân vùng ổ cứng: Dùng Partition Magic hay một chương trình chia ổ đĩa nào đó tạo sẵn một partition lớn khoảng 10GB, format dạng nào cũng được
Chỉnh sửa BIOS: Chọn máy khởi động từ CD/DVD
Để bắt đầu quá trình cài đặt Ubuntu, bạn cần cho đĩa LiveCD vào ổ C và vào BIOS SETUP để thiết lập chế độ khởi động từ ổ CD Dưới đây là hướng dẫn chi tiết về cách thực hiện quá trình khởi động từ đĩa cài đặt.
Lựa chọn chế độ cài đặt
- Màn hình khởi động sẽ xuất hiện với các tùy chọn:
Start or install Ubuntu: Khởi động Ubuntu để chạy thử và cài đặt
Khởi động Ubuntu trong chế độ đồ họa an toàn là một giải pháp hữu ích khi bạn gặp phải lỗi đồ họa trong chế độ khởi động thông thường Chế độ này sử dụng độ phân giải màn hình thấp, giúp bạn khắc phục sự cố và tiếp tục sử dụng hệ điều hành một cách hiệu quả.
Install with driver update CD: Cài đặt với CD cập nhập driver
Memory test: Kiểm tra bộ nhớ
Check CD for defects: Kiểm tra đĩa sau quá trình ghi, thường thì không cần thiết nếu bạn tin tưởng đĩa mình ghi ra hoạt động tốt
Boot from first hard disk: khởi động từ ổ cứng trước tiên
- Chọn “Start or install Ubuntu” (lựa chọn đầu tiên trên màn hình)
Trong quá trình khởi động có thể xuất hiện cảnh báo, bạn không cần phải lo
Màn hình nền của Ubuntu sẽ hiển thị như hình ảnh bên dưới Lưu ý rằng bạn nên bật loa hoặc đeo tai nghe trong quá trình khởi động để kiểm tra tính năng âm thanh Nếu card âm thanh hoạt động tốt, bạn sẽ nghe thấy âm thanh nào đó trước khi màn hình này xuất hiện.
Để kiểm tra hoạt động của mạng, bạn có thể chạy một số phần mềm, truy cập internet và chat Nếu mọi thứ đều ổn, bạn có thể tiến hành cài đặt bằng cách nhấp đúp vào biểu tượng Install trên màn hình Sau một chút chờ đợi, màn hình chào mừng sẽ xuất hiện.
Lựa chọn ngôn ngữ hiển thị
Cửa sổ chọn ngôn ngữ trong quá trình cài đặt không chỉ xác định ngôn ngữ cài đặt mà còn là ngôn ngữ hệ thống sau khi hoàn tất Sau khi cài đặt, bạn có thể thêm bất kỳ ngôn ngữ nào mà bạn muốn Lưu ý rằng một số phần trong chương trình cài đặt có thể chưa được dịch sang tiếng Việt, nhưng đừng quá lo lắng, vì sau khi cài đặt xong, giao diện sẽ hiển thị tiếng Việt rất tốt.
Chọn múi giờ hiện hành
Lựa chọn kiểu bàn phím
Khi chọn kiểu bàn phím, bạn nên chú ý chọn loại U.S English, vì hầu hết bàn phím tại Việt Nam đều thuộc loại này Việc lựa chọn đúng kiểu bàn phím ngay từ đầu sẽ giúp bạn tránh gặp khó khăn trong quá trình sử dụng sau này.
"làm việc" đấy) Chọn xong thì gõ thử để kiểm tra có hoạt động đúng không
Phân vùng đĩa để cài đặt Ubuntu Đây là phần phức tạp nhất trong quá trình cài đặt Ubuntu, bạn có các lựa chọn như sau :
"Guided - use entire disk" (Hướng dẫn - Dùng toàn bộ đĩa): Nó sẽ xóa sạch toàn bộ ổ cứng và cài đặt lên đó
“Guided - resize and use freed space” (Hướng dẫn – Dùng chỗ rỗng liên tục lớn nhất): Ubuntu sẽ tìm cách phân vùng hợp lý trên các phân vùng trống
“Manual (Bằng tay): Tự phân vùng ổ cứng, tùy chọn sẽ mở ra một cửa sổ gần giống như trình vùng đĩa Partition Magic
Bạn nên sử dụng lựa chọn “Bằng tay” để đảm bảo việc cài đặt được đúng như ý muốn
Chỉnh phân vùng có sẵn:
Nếu không có vùng trống sẵn có, bạn cần tự điều chỉnh kích thước các phân vùng khác để tạo không gian Hãy chọn thu hẹp phân vùng nào có nhiều chỗ trống nhất để dành chỗ cho phân vùng cài đặt Ubuntu.
Các phân vùng đĩa trên ổ cứng của bạn được liệt kê rõ ràng Để chỉnh sửa một phân vùng, bạn chỉ cần chọn phân vùng đó từ danh sách và nhấn vào “Edit partition” Ngay lập tức, cửa sổ thiết lập phân vùng sẽ xuất hiện.
Khi bạn nhập dung lượng mới cho phân vùng, phần còn lại sẽ trở thành Free space để cài đặt Ubuntu Lưu ý không thay đổi định dạng phân vùng hoặc chỉnh sửa “mount point” Việc thay đổi này là không thể quay lại, vì vậy nếu bạn đồng ý, sau khi chỉnh sửa phân vùng đĩa, việc khôi phục sẽ không còn khả thi.
Nếu bạn đã phân vùng ổ cứng từ đầu thì chuyển sang bước tiếp theo
Tạo phân vùng cài đặt Ubuntu
Các phiên bản Linux nói chung khi cài đặt thường yêu cầu 2 phân vùng
Phân vùng swap (hoán đổi) là khu vực lưu trữ dữ liệu tạm thời trong quá trình hoạt động của máy tính, tương tự như bộ nhớ swap trên Windows Đối với máy tính có 512MB RAM trở lên, kích thước phân vùng swap nên bằng kích thước RAM Nếu RAM dưới 512MB, kích thước phân vùng swap nên gấp đôi dung lượng RAM Đối với những phần mềm tiêu tốn nhiều bộ nhớ, người dùng nên cân nhắc tăng dung lượng phân vùng swap để đảm bảo hiệu suất hoạt động mượt mà.
Để lưu trữ dữ liệu hiệu quả, phân vùng cần có dung lượng tối ưu, với dung lượng tối thiểu 2GB cho hệ điều hành Ubuntu Phân vùng này có "mount point" là /.
Để tạo phân vùng mới bạn chọn vào phần Free space có trong danh sách, bên dưới có xuất hiện “New partition”
Bạn chọn vào phần Free space và tạo phân vùng mới
Phần “use as” (dùng làm) chọn thiết lập swap
Phần “new partition size”: Dung lượng phân vùng swap (tính theo MB)
Tạo phân vùng chứa dữ liệu
Bạn chọn vào phần Free space còn lại và tạo một phân vùng mới
Phần “use as” bạn chọn thiết lập là ext3
Phần “mount point” nhập dấu /
Dung lượng phân vùng này càng lớn càng tốt
Tạo tài khoản người dùng
Ubuntu đã giới thiệu một công cụ mới giúp đơn giản hóa quá trình tạo tài khoản người dùng Nếu bạn đã có sẵn một số tài khoản người dùng trên Windows, Ubuntu sẽ hỗ trợ bạn tạo tài khoản mới bằng cách sử dụng thông tin từ các tài khoản đó Những thiết lập sẵn có trong Internet Explorer, ảnh nền màn hình, các tệp tài liệu, và file ảnh nhạc sẽ được tự động sắp xếp đúng vị trí.
- Cửa số này sẽ tạo tài khoản mới cho bạn, sau khi quá trình cài đặt hoàn tất nếu thấy cần bạn có thể tạo thêm sau:
Sau khi đã điền xong các thông tin cần thiết, hãy khẳng định sựa lựa chọn của bạn để đến cửa sổ tiếp theo :
Khi bạn nhấn "Cài đặt" Ubuntu, quá trình cài đặt sẽ được kích hoạt và các ổ đĩa bạn đã chọn sẽ được định dạng Do đó, hãy đảm bảo rằng bạn đã kiểm tra kỹ các lựa chọn và thông tin trước khi quyết định nhấn "Cài đặt".
- Cửa sổ tiến trình cài đặt sẽ hiện ra như sau:
(hoặc là tạm dừng ở 82%) điều này là bình thường, hãy ấn “OK” để tiếp tục cài đặt
- Sau khi hoàn tất cửa sổ hiện ra hỏi bạn muốn tiếp tục dùng Linux trên CD hay khởi động lại và bước vào thế giới Linux "thật":
Môi trường làm việc đồ họa GNOME
Khi nhận dạng các thiết bị phần cứng, đặc biệt là card đồ họa của máy tính, được thực hiện thành công, bạn sẽ thấy màn hình bàn làm việc ảo (Desktop) của người dùng trong môi trường đồ họa GNOME.
Desktop GNOME được tổ chức thành ba khu vực chính: hai bảng điều khiển nằm ở phía trên và phía dưới màn hình, cùng với vùng màn hình chính ở giữa, được gọi là vùng Desktop (bàn làm việc ảo) Bảng điều khiển phía trên bao gồm ba thực đơn chính.
Thực đơn lựa chọn các phần mềm ứng dụng (Applications)
Thực đơn nhập các nơi của hệ thống điều hành (Places)
Thực đơn để quản lý hệ thống điều hành (System)
- Bảng điều khiển phía trên có thêm các biểu tượng của một số phần mềm ứng dụng và thông tin về hệ thống như :
Trình duyệt web FireFox Email Evolution
Thiết bị cuối (Terminal) cho phép người dùng nhập lệnh cho hệ thống, với biểu tượng nối mạng để kết nối, âm thanh để thông báo, cùng với hiển thị ngày và giờ của hệ thống Ngoài ra, biểu tượng thoát khỏi và tắt hệ thống cũng được cung cấp để quản lý phiên làm việc.
Bảng điều khiển phía dưới có biểu tượng Desktop bên trái, cho phép người dùng hiển thị bàn làm việc ảo khi nhấn vào đó Ở phía bên phải, người dùng có thể lựa chọn từ 4 bàn làm việc ảo khác nhau của GNOME.
Thực đơn Applications (phần mềm ứng dụng)
- Khi ấn vào thực đơn Applications, bạn có thể lựa chọn các phần mềm ứng dụng đã được sắp xếp theo các loại ứng dụng chủ yếu như sau :
Loại phần mềm ứng dụng là công cụ ( Accessories ): Thực đơn cho phép chọn các loại phần mềm công cụ sẵn có trên
Terminal(cửa sổ dòng lệnh), text Editor(như Notepad), Take
Screenshot (tiện ích chụp màn hình)
Loại phần mềm là chò trơi
( Games ): Bạn sẽ không thiếu chò trơi để thư giãn hoặc cho các trẻ em giải trí
Loại phần mềm đồ hoạ
(Graphics): Trong các loại phần mềm đồ hoạ, GIMP không thua kém Photoshop và để quét hình bạn có thể dùng
Xsane nếu như máy quét hình được nhân Linux hỗ trợ
Phần mềm khai thác internet bao gồm trình duyệt web Firefox và phần mềm GAIM, cho phép người dùng trò chuyện với bạn bè trên các nền tảng như Yahoo, ICQ và MSN Ngoài ra, còn có tiện ích Terminal Server Client được cài sẵn, giúp quản trị server từ xa một cách hiệu quả.
Loại phần mềm ứng dụng cho văn phòng: Đương nhiên bạn sẽ chọn phần mềm văn phòng OpenOffice.org, tương thích với bộ Office của
Microsoft, có khả năng xuất khẩu các tài liệu theo định dạng
Loại phần mềm ứng dụng để xử lý âm thanh và xem phim:
Các phần mềm hiện có thường chỉ hỗ trợ định dạng mở như ogg Để nghe định dạng mp3, người dùng cần cài đặt thêm các phần mềm chuyên dụng.
Thực đơn Add/Remove trên Ubuntu cho phép người dùng cài đặt thêm phần mềm từ kho ứng dụng thông qua chương trình quản lý gói Synaptic, giúp dễ dàng truy cập và quản lý các ứng dụng cần thiết.
Thực đơn Places (không gian làm việc và phần cứng) Đây là nơi để truy cập vào thư mục cá nhân
(Home Folder) với phần mềm Nautilus
(tương đương của File Explorer trong
Hệ điều hành Windows cho phép người dùng kết nối với các linh kiện bên ngoài như ổ đọc CD và ổ USB, cũng như truy cập vào các máy chủ trên mạng để tìm kiếm tập tin trong hệ thống Thực đơn Recent Documents giúp người dùng mở nhanh các tài liệu đã sử dụng gần đây.
Thực đơn System (hệ thống, hệ điều hành)
Nếu bạn muốn tùy chỉnh hệ thống theo sở thích cá nhân, thực đơn System sẽ hỗ trợ bạn thực hiện điều đó thông qua các tùy chọn trong thực đơn phụ.
Preferences hoặc thực hiện một số nhiệm vụ quản trị hệ thống thông qua thực đơn phụ Administration
Preferences bạn sẽ có khả năng chọn loại bàn phím, nền hình của Bàn làm việc
Administration cho phép thực hiện một số nhiệm vụ quản trị hệ thống cơ bản, như kiểm tra mạng, xác định các thông số mạng như điạ chỉ IP
(Networking), bổ sung máy in, ngôn ngữ, phân vùng điã cứng, v.v
Thực đơn phụ Administration cho phép người dùng sử dụng chương trình Synaptic để quản lý gói phần mềm và Update Manager để cập nhật hệ thống với các bản vá lỗ hổng Người dùng có thể thêm người dùng mới vào hệ thống và xem các thông báo từ System Log Nếu cần, có thể bổ sung thêm các kho phần mềm Universe và Multiverse.
Cài đặt phần mềm
Cài đặt phần mềm cho Ubuntu dựa vào những công cụ sẵn có:
- Cài đặt trực tiếp từ gói phần mềm, hoặc biên dịch từ mã nguồn
Trên Windows, phần mềm thường được phân phối dưới dạng file cài đặt msi hoặc exe, trong khi trên Linux, có nhiều hình thức phân phối hơn Phần mềm cho Linux thường có sẵn tại nhiều nguồn khác nhau.
- Trong bộ đĩa cài đặt (thường với những bản phân phối lớn như Redhat, openSuse, Mandriva… mà bộ đĩa cài lên tới 5 hay 6 đĩa CD)
- Trên trang web của nhà sản xuất (người dùng thường phải tự down về và thường có sẵn hướng dẫn cài đặt cho từng hệ thống)
Repository là kho phần mềm trực tuyến, nơi lưu trữ các ứng dụng cho hệ thống như Ubuntu, Debian, Fedora và openSuse Người dùng có thể dễ dàng tải và cài đặt phần mềm từ repository, giúp việc cập nhật trở nên thuận tiện hơn Các gói phần mềm thường được lưu dưới dạng file cài đặt, phổ biến nhất là định dạng RPM và DEB.
Phần mềm có thể được cung cấp dưới dạng mã nguồn mở, yêu cầu người dùng tự biên dịch và cài đặt trên máy tính Điều này thường áp dụng cho các phiên bản mới nhất của phần mềm nhỏ, việc biên dịch mất ít thời gian, hoặc khi chưa có bản cài đặt deb hay rpm tương ứng.
RPM (Redhat Package Manager) và DEB (Debian Software Package) là hai định dạng file chuyên dụng của Redhat và Debian, chứa tất cả các file cần thiết cho phần mềm, bao gồm thông tin về phần mềm, nhà sản xuất và yêu cầu hệ thống Hệ điều hành Linux sử dụng phần mềm chuyên dụng để cài đặt các gói này, giúp giải nén và cấu hình phần mềm một cách dễ dàng Việc cài đặt phần mềm theo định dạng này trên Linux rất thuận tiện và đơn giản.
RPM thường được sử dụng trong các hệ thống tương tự Redhat như Fedora và openSuse, trong khi DEB được áp dụng trên các hệ thống Debian, bao gồm Debian và các phiên bản của Ubuntu Cả hai loại định dạng này đều có ưu điểm riêng, nhưng không thể khẳng định cái nào tốt hơn cái nào, vì cả hai đều rất đơn giản và dễ sử dụng.
Mỗi file RPM hoặc DEB thường chỉ chứa một phần mềm hoặc một phần của phần mềm, do đó, khi cài đặt, người dùng thường phải cài thêm 1, 2 hoặc nhiều gói khác Những file này hiếm khi bao gồm toàn bộ thư viện cần thiết, dẫn đến tình trạng không thể cài đặt do thiếu một gói nào đó Chương trình cài đặt luôn kiểm tra xem tất cả các gói cần thiết đã được cài đặt chưa; nếu thiếu bất kỳ gói nào, quá trình cài đặt sẽ bị dừng lại Quá trình kiểm tra này được gọi là “check dependency”.
Để giải quyết vấn đề ràng buộc trong cài đặt phần mềm, chúng ta cần sử dụng các công cụ hỗ trợ Những phần mềm này sẽ tự động tải và tìm kiếm tất cả các gói liên quan, sau đó cài đặt chúng theo đúng thứ tự Nhờ vậy, quá trình cài đặt sẽ diễn ra một cách suôn sẻ và hiệu quả.
Để quản lý gói phần mềm trong Ubuntu, bạn có thể khởi động chương trình Application > Add/remove Nếu biết tên chương trình, bạn chỉ cần gõ vào ô Search để tìm kiếm, hoặc chọn một danh mục phần mềm ở bên trái Sau khi chọn, hãy nhấn Apply hoặc OK để tải xuống các phần mềm mới từ internet Nếu máy tính của bạn không có kết nối internet, hãy sử dụng đĩa LiveCD Ubuntu để cài đặt một số gói phần mềm.
Phần mềm cho Ubuntu được phân loại thành nhiều hạng mục, và mặc định chỉ hiển thị những phần mềm hoàn toàn tương thích với hệ điều hành này Tuy nhiên, vẫn có nhiều phần mềm từ các nhà phát triển thứ ba hoặc chưa được xếp hạng Để xem đầy đủ danh sách phần mềm, bạn hãy nhấp vào mục chọn "Show" và chọn danh mục "All available applications".
2.4.3.2 Sử dụng Apt-get với cửa sổ dòng lệnh
Sử dụng dòng lệnh để cài đặt phần mềm có thể tiện lợi hơn so với việc dùng Add/Remove, vì bạn có thể cài đặt riêng từng gói mà không cần cài đặt toàn bộ phần mềm Việc thao tác qua dòng lệnh cũng đơn giản hơn Để mở cửa sổ dòng lệnh, bạn chọn menu Applications > Accessories > Terminal Để sử dụng lệnh apt, bạn cần có quyền quản trị hệ thống sudo Dưới đây là một số lệnh cơ bản thường được sử dụng với chương trình APT.
- Lấy thông tin về gói :
Sudo apt-cache show
- Cài một gói phần mềm: sudo apt-get install
- Loại bỏ một gói phần mềm: sudo apt-get remove sudo apt-get remove purge program
- Tải xuống và cập nhật danh sách các gói phần mềm: sudo apt-get update
- Tìm gói theo từ khóa
Sudo apt-cache search keywords
- Nâng cấp toàn bộ hệ thống:
Sudo apt-get dist-upgrade
Để bắt đầu sử dụng Synaptic Package Manager, người dùng cần truy cập vào chương trình System > Administration > Synaptic Package Manager, nơi cung cấp đầy đủ tính năng cho việc cài đặt, cập nhật và gỡ bỏ phần mềm Lưu ý rằng để khởi động Synaptic, người dùng cần có quyền quản trị thông qua lệnh sudo.
Cửa sổ Synaptic được chia thành 4 khu vực, với hai khu vực chính là danh sách nhóm phần mềm bên trái và danh sách gói phần mềm bên phải Để cài đặt phần mềm, người dùng cần chọn nhóm phần mềm ở khung trái, tìm tên phần mềm ở khung phải và nhấp chuột phải để chọn mục "Mark (this package) for installation" Sau khi chọn xong các phần mềm cần cài đặt, hãy nhấn nút "Apply" trên thanh menu Synaptic sẽ tải xuống các gói phần mềm cần thiết từ kho phần mềm trực tuyến của Ubuntu hoặc từ đĩa CD cài đặt Ubuntu.
Để tìm kiếm một gói phần mềm trên Synaptic, bạn chỉ cần nhập tên hoặc một phần tên của gói vào ô tìm kiếm trên thanh thực đơn và nhấn nút Search Quá trình này sẽ giúp Synaptic lọc và hiển thị một danh sách gói phần mềm ngắn gọn hơn để bạn dễ dàng lựa chọn.
2.4.3.4 Cài đặt phần mềm riêng lẻ
Phương pháp cài đặt phần mềm hiệu quả nhất là sử dụng các chương trình quản lý gói như đã đề cập Mặc dù kho phần mềm của Ubuntu rất phong phú, nhưng vẫn có khả năng không tìm thấy phần mềm mong muốn Trong trường hợp này, bạn có thể tải xuống các gói phần mềm từ các trang web đáng tin cậy để thực hiện cài đặt.
Trước khi cài đặt phần mềm, bạn cần tải chúng từ nguồn cung cấp đáng tin cậy Hiện nay, có nhiều loại phần mềm khác nhau dành cho các bản phân phối Linux.