GIỚI THIỆU CHUNG VỀ LINUX
Chương này tổng quan về lịch sử phát triển của hệ điều hành Unix/Linux và kiến trúc chung của Linux Đồng thời, chương cũng đề cập đến các phiên bản khác nhau của hệ điều hành, nhấn mạnh những điểm khác biệt cơ bản giữa Linux và Windows.
Sau khi học xong chương này, sinh viên có thể:
- Trình bày tổng quan về hệ điều hành Unix/Linux
- Mô tả các đặc điểm cơ bản của các phiên bản hệ điều hành Linux
- So sánh được khác biệt giữa hệ điều hành Linux và Windows
1.1| Giới thiệu về Unix và Linux
1.1.1| Sơ lƣợc sự phát triển của Unix
Năm 1965, Viện Công nghệ Massachusetts (MIT) và phòng thí nghiệm Bell của AT&T đã khởi động dự án Multics (MULTiplexed Information and Computing Service) nhằm 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 trên một mạng lưới máy tính kết nối Dù dự án đạt được một số thành công, nhưng Multics vẫn tồn tại nhiều khiếm khuyết khó khắc phục.
Năm 1969, Ken Thompson và Dennis Ritchie tại phòng thí nghiệm Bell đã 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, bắt nguồn từ một câu gọi đùa của đồng nghiệp Hệ điều hành này đã bao gồm những khởi thảo đầu tiên về hệ thống file Đến năm 1970, hệ điều hành được viết lại bằng assembler cho máy PDP-11/20 và chính thức mang tên UNIX.
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 9
Vào năm 1973, Richie và 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 trở nên dễ dàng cài đặt trên nhiều loại máy tính khác nhau Tính chất này được gọi là tính khả chuyển (portable) của UNIX Trước đó, vào khoảng năm 1971, hệ điều hành được phát triển dựa trên ngôn ngữ B, mà Ritchie đã cải tiến thành ngôn ngữ C.
Năm 1982, hệ thống UNIX-3 là bản UNIX thương mại đầu tiên của AT&T Năm 1983, AT&T giới thiệu Hệ thống UNIX-4 Giai đoạn 1985-
1987, UNIX-5 phiên bản 2 và 3 tương ứng được đưa ra vào các năm 1985 và 1987 Đầu thập kỷ 1990 UNIX-5 phiên bản 4 đƣợc đƣa ra nhƣ là một chuẩn của UNIX
1.1.2| Sơ lƣợc sự phát triển của Linux
Vào tháng 8 năm 1991, Linus Torvalds, một sinh viên người Phần Lan, đã giới thiệu phiên bản đầu tiên của hệ điều hành Linux, dựa trên việc cải tiến một phiên bản trước đó.
UNIX, được phát triển và phổ biến bởi Giáo sư Andrew S Tanenbaum dưới tên Minix, đã tạo nền tảng cho nhân Linux, mặc dù nó nhỏ nhưng lại tự đóng gói Kết hợp với các thành phần trong hệ thống GNU (Giấy phép Công cộng Tổng quát), hệ điều hành Linux đã ra đời Từ đó, theo tư tưởng GNU, hàng triệu chuyên gia trên toàn cầu đã tham gia vào quá trình phát triển Linux, giúp hệ điều hành này ngày càng đáp ứng tốt hơn nhu cầu của người dùng.
Sau ba năm nhân Linux ra đời, đến ngày 14-3-1994, hệ điều hành Linux phiên bản 1.0 đƣợc phổ biến
Vào tháng 3 năm 1995, nhân Linux 1.2 được phát hành, đánh dấu sự khác biệt so với Linux 1.0 nhờ vào khả năng hỗ trợ nhiều loại phần cứng phong phú, bao gồm kiến trúc PCI mới Đây là phiên bản nhân cuối cùng chỉ hỗ trợ cho máy tính cá nhân (PC).
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 10
Khi đánh chỉ số các dòng nhân hệ điều hành Linux, cần lưu ý rằng hệ thống chỉ số được chia thành các mức khác nhau, ví dụ như 2.4 hoặc 2.2.5 Theo quy ước, nếu chỉ số từ mức thứ hai trở đi là số chẵn, điều này cho thấy dòng nhân đã ổn định và tương đối hoàn thiện; ngược lại, nếu là số lẻ, 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 điểm nổi bật: hỗ trợ kiến trúc phức hợp, bao gồm 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ể hoạt động trên bộ xử lý Motorola 68000 và kiến trúc SPARC của SUN Ngoài ra, các phiên bản Linux dựa trên vi nhân GNU Mach cũng có thể chạy trên PC và PowerMac.
Vào năm 2000, nhân Linux 2.4 đã được phát hành, nổi bật với khả năng hỗ trợ mã ký tự Unicode 32 bit Điều này tạo điều kiện thuận lợi cho việc phát triển các giải pháp toàn diện liên quan đến ngôn ngữ tự nhiên trên toàn cầu.
Biểu trƣng chim cánh cụt, dựa trên một hình ảnh do Larry Ewing tạo ra vào năm 1996, biểu trƣng và vật may mắn của Linux
1.2| Kiến trúc của hệ điều hành Linux
Kiến trúc của hệ điều hành Linux đƣợc chia làm 4 hàng bao gồm:
Người dùng (User) -> Shell, Ứng dụng(Application), Tiện ích(Utilies) -
> Nhân(Kernel) -> Phần cứng(Hardware)
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 11
Hình 1.1 - Kiến trúc của hệ điều hành Linux
Hạt nhân Linux là trung tâm điều khiển của hệ điều hành, chứa mã nguồn điều khiển toàn bộ hệ thống Nó được phát triển liên tục với hai phiên bản mới nhất: một phiên bản phát triển và hai phiên bản ổn định Được thiết kế theo mô-đun, kích thước của hạt nhân rất nhỏ, chỉ tải các bộ phận cần thiết vào bộ nhớ, trong khi các bộ phận khác chỉ được tải khi cần thiết Nhờ vào cách quản lý bộ nhớ hiệu quả này, Linux tiết kiệm tài nguyên hơn so với các hệ điều hành khác.
Kernel là trái tim của hệ điều hành Linux, ban đầu phát triển cho CPU Intel 80386 với khả năng quản lý bộ nhớ vượt trội Kernel của Linux có khả năng truy xuất toàn bộ tính năng phần cứng của máy tính Khi các chương trình yêu cầu nhiều bộ nhớ trong khi hệ thống hạn chế, hệ điều hành sử dụng không gian đĩa hoán đổi (swap space) để lưu trữ dữ liệu xử lý Swap space cho phép ghi các trang bộ nhớ vào vị trí trên đĩa, coi như phần mở rộng của vùng nhớ chính Ngoài việc sử dụng swap space, Linux còn hỗ trợ nhiều tính năng khác.
Bảo vệ vùng nhớ giữa các tiến trình, điều này không cho phép một tiến trình làm tắt toàn bộ hệ thống
Chỉ tải các chương trình khi có yêu cầu
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 12
Shell là công cụ giúp người dùng tương tác với kernel để thực hiện các tác vụ Nó nhận lệnh từ người dùng và tiến hành xử lý chúng Bên cạnh đó, shell còn hỗ trợ nhiều tính năng khác như chuyển hướng xuất nhập và cung cấp ngôn ngữ lệnh, cho phép người dùng tạo ra các tập tin lệnh tương tự như tập tin bat trong DOS.
Có nhiều loại shell đƣợc dùng trong Linux Điểm quan trọng để phân biệt các shell với nhau là bộ lệnh của mỗi shell
Shell được sử dụng trong Linux là GNU Bourne Again Shell (bash), phát triển từ Bourne Shell, shell chính trong các hệ thống Unix Bash tích hợp nhiều tính năng mới như điều khiển tiến trình, quản lý lịch sử lệnh và hỗ trợ tên tập tin dài.
Trong hệ thống Linux, người dùng thường xuyên sử dụng nhiều tiện ích cho các thao tác như quản lý tập tin, đĩa, nén và sao lưu Các tiện ích này có thể được truy cập thông qua câu lệnh hoặc giao diện đồ họa, với phần lớn là sản phẩm từ chương trình GNU Linux cung cấp một loạt tiện ích đa dạng, bao gồm trình biên dịch, gỡ lỗi và soạn thảo văn bản Những tiện ích này có thể được sử dụng bởi cả người dùng và hệ thống, trong đó một số tiện ích tiêu biểu như passwd, ls, ps và vi được coi là chuẩn mực trong môi trường Linux.
QUẢN LÝ VÀ THAO TÁC HỆ THỐNG
Chương này mô tả quy trình khởi động và tắt hệ thống trong môi trường Linux, cùng với các chế độ run level của hệ điều hành Ngoài ra, chương còn đề cập đến các thao tác thiết lập và loại bỏ mật khẩu, cũng như các lệnh quản lý hệ thống cần thiết.
Sau khi học xong chương này, sinh viên có thể:
- Trình bày và thao tác được các quá trình khởi động, tắt máy, các chế độ init, …
- Thao tác loại bỏ mật khẩu tài khoản khi không đăng nhập được hệ thống
- Thao tác được lệnh thiết lập mật khẩu GRUB để bảo vệ hệ thống
- Thao tác được các lệnh hệ thống
2.1| Quá trình khởi động và thoát khỏi hệ thống Linux
Quá trình khởi động hệ điều hành Linux bắt đầu khi người dùng nhấn nút nguồn, và sau một thời gian ngắn, dấu nhắc đăng nhập sẽ xuất hiện Trong khoảng thời gian này, hệ thống trải qua nhiều giai đoạn từ lúc bật nguồn cho đến khi hiển thị dấu nhắc đăng nhập, mỗi giai đoạn đều có vai trò quan trọng trong việc khởi động hệ điều hành.
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 23
2.1.1| Quá trình khởi động trên linux
Hình 2.1 - Quá trình khởi động trên Linux
BIOS (Basic Input/Output System)
BIOS là chương trình được chạy đầu tiên khi bạn nhấn nút nguồn hoặc nút reset trên máy tính
BIOS thực hiện quá trình POST (Power-on Self-test) để kiểm tra tính sẵn sàng của phần cứng máy tính, bao gồm bộ nhớ, CPU, thiết bị lưu trữ và card mạng Ngoài ra, BIOS cũng cho phép người dùng thay đổi các thiết lập và cấu hình của hệ thống, thường thông qua các phím như F2, Delete hoặc F10 để truy cập vào giao diện cài đặt.
Nếu quá trình POST thành công và phần cứng hoạt động bình thường mà không có trục trặc nào được phát hiện bởi BIOS, thì BIOS sẽ tiếp tục thực hiện các bước tiếp theo.
Tài liệu giảng dạy về Quản trị hệ thống Linux hướng dẫn cách tìm kiếm và khởi động (boot) hệ điều hành từ các thiết bị lưu trữ như ổ cứng, CD/DVD và USB.
BIOS thường kiểm tra ổ đĩa mềm hoặc CD-ROM để xác định khả năng khởi động từ chúng, sau đó mới kiểm tra phần cứng Thứ tự kiểm tra các ổ đĩa này phụ thuộc vào cấu hình trong BIOS.
Thiết bị khởi động được cài đặt sẵn trong BIOS, thường là CD-ROM, USB hoặc HDD, sẽ được tìm đến tiếp theo Nếu hệ điều hành Linux đã được cài đặt trên ổ đĩa cứng, nó sẽ truy cập vào Master Boot Record để khởi động.
(MBR) tại sector đầu tiên của ổ đĩa cứng đầu tiên
Sector đầu tiên của một thiết bị lưu trữ dữ liệu được gọi là MBR, ví dụ
/dev/hda hoặc/dev/dsa/ MBR rất nhỏ chỉ 512 byte
MBR chứa các chỉ dẫn cho biết cách nạp trình quản lý khởi động
GRUB/LILO cho Linux hay BOOTMGR cho Windows (7, 8)
Có 2 boot loader phổ biến trên Linux là GRUB và LILO
Boot loader tìm kiếm phân vùng boot và truy xuất thông tin cấu hình từ file grub.conf hoặc lilo.conf, hiển thị danh sách các hệ điều hành có sẵn trên máy tính để người dùng lựa chọn khởi động Sau khi chọn, boot loader sẽ nạp kernel của hệ điều hành vào bộ nhớ và chuyển quyền điều khiển cho kernel đó.
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 25
Sau khi chọn kernel trong file cấu hình của boot loader, hệ thống tự động nạp chương trình init trong thư mục /sbin/
The process with PID (process ID) = 1, known as init, serves as the parent of all other processes in the Linux system Subsequently, init reads the /etc/inittab file to determine the operational level (runlevel).
Trên hầu hết các bản phân phối Linux, có 7 mức độ từ 0 đến 6, trong đó mức 4 không được sử dụng Các mức này thường được mô tả trong tệp /etc/inittab.
Bảng 2.1 trình bày các chế độ run level trong Linux, trong đó sau khi xác định runlevel qua biến initdefault, chương trình /sbin/init sẽ thực thi các file startup script nằm trong các thư mục con của /etc/rc.d/ Các script sử dụng runlevel từ 0 đến 6 để xác định thư mục chứa file script tương ứng, ví dụ như /etc/rc.d/rc0.d đến /etc/rc.d/rc6.d Một số file script có thể tham khảo trong thư mục /etc/rc.d/rc3.d/.
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 26
Các tập tin có tên bắt đầu bằng chữ "S" sẽ được thực thi khi hệ thống khởi động, trong khi đó, các tập tin không bắt đầu bằng chữ "S" sẽ không được thực hiện trong quá trình khởi động.
Ký hiệu ―K‖ chỉ ra rằng tập tin sẽ được thực thi khi hệ thống tắt nguồn Số đứng sau các từ khóa ―S‖ và ―K‖ dùng để xác định thứ tự khởi động các script, tiếp theo là tên file script cho từng dịch vụ cụ thể.
2.1.2| Shutdown và reboot hệ thống
[root@localhost ~]# shutdown -hy t (shutdown hệ thống sau khoảng thời gian t giây)
[root@localhost ~]# shutdown -ry 10 (chỉ định 10 phút sau sẽ reboot hệ thống)
2.1.3| Sử dụng các runlevel - init
Runlevel là các mức hoạt động của hệ thống Để chuyển đổi giữa các mức này, ta sử dụng lệnh: init giá_trị, ví dụ để chuyển sang mức 1, ta dùng lệnh init 1 Để đặt runlevel mặc định cho hệ thống, ta chỉnh sửa thông số runlevel X (0->6) trong file /etc/inittab bằng trình soạn thảo vi.
- Run level 0 (init 0): chế độ tắt máy
- Run level 1 (init 1): chế độ này chỉ sử dụng được 1 người dùng
- Run level 2 (init 2): chế độ đa người dùng nhưng không có dịch vụ NFS
- Run level 3 (init 3): chế độ đa người dùng, có đầy đủ các dịch vụ
- Run level 4 (init 4): chƣa đƣợc sử dụng
- Run level 5 (init 5): chế độ đồ họa
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 27
- Run level 6 (init 6): khởi động lại máy
+ Dùng lệnh init 0 để tắt máy:
+ Để khởi động lại máy tính ta dùng lệnh:
+ Khi đang ở chế độ đồ họa ta có thể chuyển sang chế độ dòng lệnh (text mode) bằng cách dùng lệnh:
+ Ngƣợc lại, khi đang ở chế độ dòng lệnh ta có thể chuyển sang chế độ đồ họa bằng cách dùng lệnh:
- Tập tin cấu hình: /etc/inittab
Khi khởi động máy tính, Linux sẽ đọc trong tập tin /etc/inittab để chọn chế độ khởi động Cụ thể là dòng id::initdefault:
- Do đó, ta có thể chỉnh sửa chế độ khởi động bằng cách thay đổi run level ngay dòng này
- Ví dụ: mặc định cho Linux khởi động vào chế độ dòng lệnh ta thay dòng trên thành: id:3:initdefault
[root@localhost ~]# vi /etc/inittab (dùng để mở file inittab)
Sau khi mở file /etc/inittab, ta nhấn I để chỉnh sửa thông tin ở dòng: id:5:initdefault: thành id:3:initdefault: để xài giao diện dạng text
Tiếp theo nhấn ESC rồi nhấn :w rồi enter để lưu, sau đó nhấn ESC rồi :q! rồi enter để thoát tập tin và gõ lệnh reboot
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 28
2.2| Cú pháp lệnh, xem hướng dẫn lệnh
Option: Tùy chọn thực hiện lệnh (Ghi chú: cũng có một số lệnh không có tham số này)
Filename/Path: Tên tập tin hay đường dẫn (Ghi chú: cũng có một số lệnh không có tham số này)
Ví dụ, để xem thư mục làm việc hiện tại, sử dụng lệnh pwd mà không cần tham số Option và Filename/Path Để liệt kê thông tin của thư mục hiện hành, sử dụng lệnh ls -a mà không cần chỉ định Filename/Path Nếu muốn liệt kê thông tin của thư mục thuchanh, bạn có thể sử dụng lệnh ls -a /thuchanh.
2.2.2| Xem hướng dẫn lệnh man man là từ khóa; command là tên lệnh
CÀI ĐẶT GÓI PHẦN MỀM VÀ ỨNG DỤNG
Chương này giới thiệu các loại gói cài đặt hệ điều hành Linux và các phương pháp cài đặt tương ứng cho từng loại gói trong hệ thống.
Sau khi học xong chương này, sinh viên có thể:
- Trình bày được các phương thức cài đặt
- Thực hiện lệnh cài đặt các dạng khác nhau
RPM, viết tắt của "Red Hat Package Management", là một trong những hệ thống quản lý gói phần mềm phổ biến và dễ sử dụng, bên cạnh gói deb Các tập tin RPM thường có đuôi '.rpm' và được sử dụng trên nhiều hệ điều hành như Red Hat, Fedora, CentOS, openSUSE, Scientific Linux, Yellow Dog Linux và Oracle Linux Tên tập tin RPM thường tuân theo một cấu trúc nhất định.
--..rpm
Khi tải xuống gói RPM, người dùng cần chú ý đến phiên bản kiến trúc của gói, chẳng hạn như i386, i586, i686, hay sparc, để đảm bảo tương thích với cấu trúc máy tính của mình Các gói này thường được tổ chức và cung cấp qua các dịch vụ trực tuyến như FTP và HTTP.
Sau khi chọn và tải về các gói mình cần, gõ lệnh sau (cần quyền root) để cài đặt cài đặt gói rpm:
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 37
$ rpm {-i| install} [install-options ]
Chú ý: có thể là một URLs
Cập nhật lên bản mới hơn, phiên bản cũ sẽ bị gỡ bỏ:
$ rpm {-U| upgrade} [ install-options ]
$ rpm {-e| erase} [ allmatches] [ nodeps] [ noscripts] [ notriggers] [ repackage] [ test] # không phải tên tệp tin
- Ngoài ra có thể kết hợp –q với các tùy chọn khác để truy vấn:
$ rpm -qa # Hiển thị danh sách các gói đã đƣợc cài đặt trên hệ thống
$ rpm -qp # Kiểm tra gói đã cài đặt chƣa
$ rpm -qpl # Hiển thị một danh sách các file nằm trong gói này
$ rpm -qpc # Hiển thị các file cấu hình của gói
$ rpm -qpd # Hiển thị các file trợ giúp (HELP) của gói
$ rpm -qpi # Hiển thị thông tin về gói (kích thước, URL, mô tả)
$ rpm -qpR # Hiển thị tất cả các gói phụ thuộc
$ rpm -qf /usr/bin/ssh # Tìm tên gói chứa /usr/bin/ssh
Kiểm tra tính toàn vẹn của tập tin đã cài đặt so với các tập tin gốc của package bằng cách so sánh kích thước, MD5, checksum, quyền hạn, loại tập tin và người sở hữu tập tin.
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 38
Lệnh verify package là #rpm –V
- Rpm –V ten_package: kiểm tra tất cả các tập tin trong package
- Rpm –vf tenfile: kiểm tra tập tin tenfile
- Rpm –Va : Kiểm tra tất cả các packages đã cài
Xem thêm trong man rpm
Gói src.rpm dùng để biên dịch lại phần mềm đó từ nguồn Khi bạn cài gói src.rpm nó sẽ bung ra trong /usrc/src/RPM
Code: rpm rebuild filename.src.rpm cd /usr/src/redhat/RPM/ rpm -iv filename.rpm
3.3| Cài đặt dạng file nén: tar, gz, tar.gz, tar.bz2
- Đối với gói tar.gz: # tar -zxvf tengoi.gz
- Đối với gói tar.bz2: # tar -jxvf tengoi.bz2
Sau khi giải nén, hãy tìm tập tin INSTALL để tham khảo hướng dẫn cài đặt Hầu hết các gói đều tuân theo các thao tác tuần tự nhất định.
To uninstall a package, navigate to the source code directory and execute the command 'make uninstall' Typically, you will also use commands like 'make clean' and 'make distclean' to remove any compiled files and reset the build environment.
Để xóa hết các tập tin đã biên dịch trong thư mục nguồn và làm sạch Makefile, trước tiên bạn cần chạy lệnh 'make uninstall', sau đó là 'make clean' và cuối cùng là 'make distclean' Sau khi thực hiện các lệnh này, bạn sẽ cần chạy lại lệnh /configure để tạo lại Makefile.
Lệnh "configure" thực chất không phải là một lệnh shell, mà là một tập tin bash shell nằm trong thư mục chứa mã nguồn Lệnh /configure được sử dụng để gọi và chạy tập tin bash shell này Hầu hết mã nguồn chương trình đều có tập tin này, như x-unikey hay xvnkb, nhưng một số mã nguồn có thể không có tập tin này và thay vào đó là tập tin khác như autogen.sh Do đó, nếu mã nguồn của bạn không có tập tin configure, bạn sẽ không thể thực hiện lệnh này.
./configure khi nào bạn đang nằm trong folder chứa file nguồn (source code) ví dụ 1: cài xunikey
Download unikey về rồi giải nén ra desktop, đặt lại tên là unikey cd /home/tên_log_in/Desktop/unikey
Nếu không có error thì gõ lệnh make
To install a program without errors, use the command "make" followed by "make install." The configuration can be set with the command "./configure prefix=path," specifying the desired installation directory For example, using "./configure prefix=/home/username/Desktop" will install Unikey on the desktop Similarly, to install the package firefox-3.0.tar.bz2, follow the same procedure.
Download firefox-3.0.tar.bz2 về rồi giải nén ra desktop bằng lệnh
- thƣ mục đang làm việc là Desktop: #cd Desktop
#tar –jxvf firefox-3.0.tar.bz2
- Ta sẽ thấy có 1 tập tin firefox đƣợc giải nén ra Desktop
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 40
- Quá trình cài đặt gói bắt đầu, nếu không có lỗi xãy ra thì sẽ thấy trình duyệt firefox đã đƣợc cài đặt
#yum install tên_phần_mềm_cần_cài
#yum update tên_phần_mềm_cần_cập_nhật
#yum remove tên_phần_mềm_cần_gỡ
Trước khi yum thì nhớ su và nhập pass root vào để có quyền cài đặt !
Hình 3.1 - Lệnh yum cài đặt gói qua mạng
Câu 1: Tiến hành Download các gói phần mềm và tiến hành cài đặt vào máy tính:
MC, KRUSADER, FIREFOX ở các dạng khác nhau vào trong thƣ mục sorfware đƣợc tạo ở Desktop Download các gói ở nhiều dạng khác nhau rpm, .gz, bz2
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 41
Lưu ý: khi Download các gói chú ý đến bản linux đang dùng là gì ? Ví dụ Centos 6.0
Câu 2: Tải và cài đặt VMware tool cho hệ điều hành dùng source từ file ISO Câu 3: Tải và cài đặt các phần mềm nghe nhạc và xem video
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 42
QUẢN LÝ TÀI KHOẢN NGƯỜI DÙNG
Chương này cung cấp thông tin chi tiết về tài khoản và nhóm người dùng, đồng thời hướng dẫn các thao tác và lệnh cần thiết để tạo lập và quản lý hiệu quả tài khoản cùng nhóm người dùng.
Sau khi học xong chương này, sinh viên có thể:
- Mô tả được tài khoản người dùng, tài khoản nhóm, các thuộc tính của người dùng
- Tạo và quản trị được tài khoản người dùng bằng giao diện
- Trình bày các lệnh tạo lập tài khoản và nh m người dùng
- Thực hiện lệnh tạo lập tài khoản người dùng, tài khoản nhóm
Tài khoản si u người dùng (superuser account):
Khi cài đặt phần mềm Linux, tài khoản root được tạo tự động với quyền hạn không giới hạn, nên không nên sử dụng tài khoản này cho các mục đích hàng ngày Tài khoản root có userID là 0, và các userID khác được định nghĩa trong tệp /etc/passwd Ngoài ra, người dùng có thể tạo tài khoản khác nhưng vẫn giữ quyền hạn của root bằng cách gán UserID là 0.
Tài khoản của người sử dụng Để hệ thống được nhiều người sử dụng ta phải tạo ra nhiều tài khoản cho người sử dụng
File /etc/passwd chứa các thông tin về tài khoản của người sử dụng, nên nó đặt dưới quyền sở hữu của root và groupID bằng 0
Các dòng lệnh trong file /etc/passwd đều có khuôn dạng:
Username : Password : userID : groupID : comment : home directory : login command
Tài liệu giảng dạy Quản trị hệ thống Linux đề cập đến các khái niệm quan trọng như username, là tên duy nhất xác định người sử dụng; password, là mật khẩu được mã hóa; userID (UID), là số duy nhất nhận diện người dùng trong hệ điều hành; groupID (GID), là số duy nhất xác định nhóm người dùng nhằm quản lý quyền truy cập file; và comment, là thông tin ghi chú, thường là tên thật của người sử dụng nhưng cũng có thể là thông tin khác.
Home directory: thư mục mà người sử dụng sẽ được đặt vào khi họ đăng nhập(login) vào hệ thống
Lệnh đăng nhập được thực hiện ngay khi người dùng truy cập vào hệ thống, thường gọi là chương trình Shell, bao gồm các loại như bash shell (bash), c-shell (csh) và bourne-shell (sh).
Shell nguyên thuỷ, do Steven Bourne phát triển, hiện diện trên hầu hết các hệ thống Unix/Linux Nó rất hữu ích cho việc lập trình Shell, nhưng không hỗ trợ tương tác người dùng như các Shell khác.
Bourne Again Shell (bash) là phiên bản mở rộng của sh, kế thừa và phát huy những tính năng của sh Với giao diện lập trình mạnh mẽ và linh hoạt, bash cung cấp một giao diện lệnh dễ sử dụng Đây là Shell mặc định trên các hệ thống Linux.
Shell C (csh) Đáp ứng tương thích cho người dung Nó hỗ trợ rất mạnh cho những Programmer C và với đặc tính tự động hoàn thành dòng lệnh
Có thể nói đây là một Shell tuyệt vời, nó kết hợp tính năng ƣu
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 44 việt của sh và csh
Ngoài ra còn có một số Shell khác nhƣ: ssh, nfssh, mcsh,…
Tên người dùng, thường là một xâu kí tự từ 8 kí tự trở xuống, đóng vai trò quan trọng trong việc xác định duy nhất một người dùng Đây là phương tiện giao tiếp chính giữa người sử dụng và máy móc, vì vậy cần đảm bảo tính đơn giản và dễ đoán Người dùng có thể tự do đặt tên cho username của mình, miễn là nó phải duy nhất trong hệ thống mạng Tuy nhiên, tên quá độc đáo có thể gây khó khăn trong việc nhận diện, trong khi tên quá đơn giản, như sử dụng tên thật, có thể dễ bị trùng lặp Ví dụ, nếu tên thật là Nguyễn Văn Việt, username có thể là nvviet.
Linux cũng nhƣ mọi hệ thống Unix khác có phân biệt chữ hoa chữ thường, vì vậy các tên username viết hoa viết thường hiểu là 2 username khác nhau
Hệ thống lưu trữ mật khẩu của người dùng được mã hóa trong trường password, và chỉ có quản trị viên hệ thống mới có quyền thay đổi mật khẩu Người dùng cũng có thể tự thay đổi mật khẩu của mình bằng lệnh passwd Mọi thay đổi trực tiếp khác trên trường này có thể khiến tài khoản tương ứng không còn hoạt động.
Một số phiên bản Unix không lưu trữ mật khẩu đã mã hóa trong file /etc/passwd để đảm bảo an toàn, mà thay vào đó, chúng được lưu trong file /etc/shadow, thường chỉ hiển thị ký tự "x".
Khi người dùng đăng nhập vào hệ thống, chương trình sẽ mã hóa mật khẩu mà họ nhập và so sánh với trường mật khẩu đã lưu trữ Nếu có sự khác biệt, quá trình đăng nhập sẽ không được thực hiện.
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 45
Nếu kí tự đầu tiên của trường password là ‗*‘ thì có nghĩa là không đƣợc sử dụng để truy nhập hệ thống, dấu ‗*‘ hạn chế mọi quyền truy nhập
Nếu trựờng password bị bỏ trắng thì mọi người dùng đều có thể đăng nhập tài khoản này một cách không hạn chế mà không yều cầu mật khẩu
User ID (định danh người sử dụng )
Mỗi người dùng được gán một mã số duy nhất gọi là UID, dùng để nhận diện tất cả các thông tin liên quan đến tài khoản Ví dụ, hệ điều hành Linux sử dụng UID để theo dõi các tiến trình liên quan đến người dùng đang hoạt động.
Hệ thống Linux sử dụng các số UID từ 0 đến 99 cho các tài khoản hệ thống, trong khi các tài khoản người dùng bắt đầu từ 100 trở đi Cụ thể, tài khoản root có UID là 0, và các tài khoản người dùng được gán lần lượt từ 100, 101, và tiếp tục như vậy.
Group ID (số hiệu nhóm)
Số hiệu nhóm là mã số xác định nhóm người dùng khi đăng nhập vào hệ thống, giúp quản lý quyền truy cập vào các tệp tin Các số hiệu nhóm thường bắt đầu từ 0, với nhiều hệ thống Unix sử dụng khoảng từ 0 đến 49 (hoặc từ 0 đến 9) cho các nhóm hệ thống.
50 trở đi cho người dùng Nhóm mặc định là 50
Các nhóm và số hiệu nhóm đƣợc liệt kê trong file /etc/group
Comment (thông tin ghi chú)
Các quản trị viên hệ thống sử dụng tài khoản này để cung cấp thông tin chi tiết cho từng tài khoản trong /etc/passwd, giúp dễ hiểu hơn Thông tin này thường bao gồm tên đầy đủ của người dùng, và đôi khi là phòng ban mà họ thuộc về.
Home Directory (Thƣ mục cá nhân)
Trường này xác định vị trí đăng nhập của người sử dụng khi họ truy cập vào hệ thống, tức là thư mục khởi đầu làm việc của họ.
HỆ THỐNG TẬP TIN
Chương này giới thiệu về cấu trúc hệ thống tập tin và quyền hạn trong hệ thống tập tin trên Linux Nó cũng hướng dẫn cách sao lưu dữ liệu và sử dụng lệnh vi Bên cạnh đó, chương còn đề cập đến các thao tác quản lý hệ thống tập tin, phân quyền sử dụng tài nguyên, và thực hiện sao lưu dữ liệu hiệu quả trong hệ thống.
Sau khi học xong chương này, sinh viên có thể:
- Trình bày được cấu trúc hệ thống tập tin trên Linux
- Trình bày được nghĩa của tài nguyên hệ thống máy tính
- Trình bày được nghĩa sao lưu dữ liệu hệ thống máy tính
- Trình bày được nghĩa quyền hạn hệ thống tập tin trên Linux
- Sử dụng được lệnh thao tác phân quyền hệ thống tập tin trên Linux
- Sử dụng được lệnh thao tác hệ thống tập tin trên Linux
- Thực hiện lệnh nén và giải nén hệ thống tập tin trên Linux
- Sử dụng được lệnh sao lưu dữ liệu theo lập lịch thời gian
5.1| Tổng quan về hệ thống tập tin
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 thư mục gốc ký hiệu là “/” Tất cả thiết bị kết nối vào máy tính, bao gồm ổ đĩa cứng, phân vùng và ổ USB, đều được nhận diện như các tập tin Điều này có nghĩa là mọi tập tin và thư mục đều nằm dưới thư mục gốc, kể cả các tập tin biểu tượng cho ổ đĩa cứng.
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 56
Dưới thư mục gốc (/) của hệ thống tập tin Linux, có nhiều thư mục quan trọng được công nhận trên tất cả các bản phân phối Dưới đây là danh sách các thư mục phổ biến thường thấy trong thư mục gốc (/).
Hình 5.1 – Cấu trúc hệ thống file trong Linux
- Mở từng tập tin và thƣ mục từ thƣ mục Root
- Chỉ có Root user mới có quyền viết dưới thư mục này
- Lưu ý rằng /root là thư mục gốc của Root user
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 57
- Chứa các tập tin thực thi nhị phân (binary executables)
- Lệnh Linux phổ biến sử dụng ở chế độ Singer-user mode nằm trong thƣ mục này
- Tất cả user trên hệ thống nằm tại thƣ mục này đều có thể sử dụng lệnh
- Ví dụ: ps, ls, ping, grep, cp
- Cũng giống nhƣ /bin, /sbin cũng chứa tập tin thực thi nhị phân (binary executables)
- Lệnh Linux nằm trong thƣ mục này đƣợc sử dụng bởi Admin hệ thống, nhằm mục đích duy trì hệ thống
- Ví dụ: iptables, reboot, fdisk, ifconfig, swapon
- Chứa cấu hình 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
- Ngoài ra /etc còn chứa shell scripts startup và shutdown, sử dụng để chạy/ngừng các chương trình cá nhân
- Ví dụ: /etc/resolv.conf, /etc/logrotate.conf
- Chứa các tập tin để nhận biết cho các thiết bị của hệ thống (device files)
- Bao gồm thiết bị đầu cuối, USB hoặc các thiết bị đƣợc gắn trên hệ thống
- Ví dụ: /dev/tty1, /dev/usbmon0
- Chƣa các thông tin về System Process
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 58
Hệ thống tập tin ảo /proc chứa thông tin chi tiết về các quá trình đang chạy trên hệ thống Ví dụ, thư mục /proc/{pid} lưu trữ thông tin đặc biệt liên quan đến quá trình có mã số pid nhất định.
- Đây là một hệ thống tập tin ảo có thông tin về tài nguyên hệ thống Chẳng hạn nhƣ /proc/uptime
- Var là viết tắt của variable file, lưu lại tập tin ghi các số liệu biến đổi (variable files)
- Nội dung các tập tin đƣợc dự kiến sẽ tăng lên tại thƣ mục này
The /var directory in a Linux system contains essential components such as the log file system located in /var/log, data packages and files stored in /var/lib, email services found in /var/mail, print queues managed in /var/spool, lock files located in /var/lock, and temporary files required during system reboot in /var/tmp.
/tmp – Temporary Files (các tập tin tạm thời)
- Thƣ mục chứa các tập tin tạm thời đƣợc tạo bởi hệ thống và user
- Các tập tin tạo thƣ mục này đƣợc xóa khi hệ thống đƣợc khởi động lại (reboot)
- Chứa các ứng dụng, thư viện, tài liệu và mã nguồn các chương trình thứ cấp
Thư mục /usr/bin chứa các tệp tin của các ứng dụng chính đã được cài đặt cho người dùng Nếu không tìm thấy tệp nhị phân người dùng trong thư mục /bin, bạn có thể kiểm tra tại /usr/bin, nơi có các công cụ như at, awk, cc, less và scp.
Thư mục /usr/sbin chứa các tệp ứng dụng dành cho quản trị viên hệ thống Nếu không tìm thấy tệp nhị phân trong /sbin, bạn có thể kiểm tra tại /usr/sbin Một số ứng dụng tiêu biểu bao gồm atd, cron, sshd, useradd và userdel.
- /usr/lib chứa thƣ viện /usr/bin và /usr/sbin
- /usr/local chứa các chương trình user mà bạn cài đặt từ nguồn
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 59
Chẳng hạn khi bạn cài đặt apache từ nguồn, apache nằm dưới /usr/local/apache2
- Thư mục chính lưu trữ các tập tin cá nhân của tất cả user
- Ví dụ: /home/john, /home/nikita
- Chứa các tập tin cấu hình cho quá trình khởi động hệ thống
- Các file Kernel initrd, vmlinux, grub nằm trong /boot
- Ví dụ: nitrd.img-2.6.32-24-generic, vmlinuz-2.6.32-24-generic
- Chứa các file thư viện hỗ trợ các thư mục nằm dưới /bin và /sbin
- Tên file thƣ viện có thể là ld* hoặc lib*.so.*
- Ví dụ: ld-2.11.1.so, libncurses.so.5.7
/opt – Optional add-on Applications
- Opt là viết tắt của Optional (tùy chọn)
- Chứa các ứng dụng add-on từ các nhà cung cấp
- Ứng dụng add-on được cài đặt dưới thư mục /opt/ hoặc thư mục /opt/ sub
- Gắn kết các thƣ mục hệ thống tạm thời(thƣ mục Temporary) nơi Sysadmins có thể gắn kết các file hệ thống
Khi một thiết bị lưu động như đĩa CD hoặc máy ảnh kỹ thuật số được kết nối, hệ thống sẽ tự động tạo ra các thư mục tạm thời Những thư mục này giúp người dùng dễ dàng quản lý và truy cập vào dữ liệu từ thiết bị lưu trữ.
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 60
- Ví dụ: /media/cdrom for CD-ROM; /media/floppy for floppy drives; /media/cdrecorder for CD writer
- Svr viết tắt của service
- Chứa các service của máy chủ cụ thể liên quan đến dữ liệu
- Ví dụ: /srv/cvs chứa dữ liệu liên quan đến CVS Ổ đĩa và các Partition (phân vùng)
/dev/hda Ổ đĩa cứng IDE đầu tiên (chính)
/dev/hdb Ổ đĩa cứng IDE thứ hai (thứ cấp)
/dev/sda Ổ đĩa cứng SCSI đầu tiên
/dev/sdb Ổ đĩa cứng SCSI thứ hai
/dev/fd0 Ổ đĩa mềm đầu tiên
/dev/fd1 Ổ đĩa mềm thứ hai
5.2| Các lệnh thao tác hệ thống tập tin
5.2.1| Các lệnh xử lý file
cd /dir - Di chuyển tới 1 thƣ mục dir
pwd - Hiển thi đường dẫn thư mục hiện hành
mkdir inet - Tạo 1 thƣ mục có tên inet
rm tesst.txt - Xóa 1 file test.txt
rm -rf dir/ - Xóa toàn bộ thƣ mục dir và các file bên trong
mv dir1 dir2 - Đổi tên thƣ mục dir1 thành dir2
cp file1 file2 - Copy file 1 thành file 2
cat hautx.txt - Xem nội dung 1 file có tên hautx.txt
tail -f /var/log/message - Hiện nội dung của file message và cập nhật liên tục, khởi đầu với 10 dòng cuối
wc đếm số dòng, số kí tự… trong tập tin
touch tạo một tập tin
more xem nội dung tập tin theo trang
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 61
less xem nội dung tập tin theo dòng
head xem nội dung tập tin (mặc định xem 10 dòng đầu)
vi khởi động trình soạn thảo văn bản vi
man Xem hướng dẫn thực hiện các lệnh
5.2.2| Các lệnh quản lý file và thƣ mục
ls xem danh sách các file và thƣ mục con trong thƣ mục hiện thời
ls -l Giống như ls, nhưng liệt kê cả kích thước file, ngày cập nhật…
ls -a liệt kê tất cả các file ẩn
ln Tạo Link cho file
rmdir xóa thƣ mục rỗng
rm -rf xóa thƣ mục không rỗng
mv đổi tên / di chuyển thƣ mục hoặc file từ nơi này sang nơi khác
cp copy file hoặc thƣ mục
pwd xem thƣ mục hiện hành
find /etc -name inittab : tìm file có tên inittab trong thƣ mục /etc
5.2.3| Lệnh nén và giải nén
tar -cvf nén file/thƣ mục sang định dạng tar
tar -xvf giải nén file tar
gzip chuyển file tar sang tar.gz
gunzip chuyển file tar.gz về tar
tar -xzf giải nén file tar.gz
tar -zxvf giải nén file tar.bz2
tar -jxvf giải nén file tar.gz2
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 62
Phân quyền trên hệ thống tập tin là một yếu tố quan trọng trong quản trị tài nguyên trên Linux, giúp đảm bảo tính bảo mật giữa các người dùng Việc phân chia quyền hạn cho từng user tương ứng với tài nguyên sử dụng không chỉ bảo vệ dữ liệu mà còn duy trì an ninh cho toàn bộ hệ thống.
5.3.1| Dùng lệnh ls: xem nội dung của thƣ mục, tập tin:
Cú pháp sử dụng lệnh `ls` trong hệ điều hành Linux bao gồm các tùy chọn như sau: `ls -a` để xem tất cả tập tin, bao gồm cả tập tin ẩn; `ls -l` để hiển thị chi tiết thông tin của tập tin; `ls -x` để xem tập tin trên nhiều cột; `ls -R` để xem nội dung trong các thư mục con; và `ls -F` để thêm thông tin mô tả vào sau tên tập tin Ví dụ sử dụng lệnh: `ls -l /etc`.
-rw-r r 1 root root 920 jun 25 2001 im_palette- small.pal
Trong bảng thông tin, cột đầu tiên biểu thị loại tập tin: ký tự "-" đại diện cho tập tin thường, "d" cho thư mục, "l" cho liên kết, và "c" hoặc "b" cho tập tin đặc biệt Cột thứ hai cung cấp chỉ số liên kết với tập tin tương ứng.
Cột 3, 4: người sở hữu và nhóm sở hữu
Cột 5: kích thướt tập tin, thư mục
Cột 6: chỉ ngày, giờ sửa đổi cuối cùng
Cột 7: tên tập tin, thƣ mục
5.3.2| Lệnh thay đổi sở hữu tài nguyên
Định nghĩa quyền sở hữu tập tin:
Bất cứ một tập tin nào cũng sẽ đƣợc sở hữu bởi hai thành phần:
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 63
Tập tin đƣợc sở hữu bởi một User nhất định
Tập tin đƣợc sở hữu bởi một Group nhất định
Thay đổi quyền sở hữu của tập tin:
Thay đổi User sở hữu:
Cú pháp: chown
Hiện tại myfile đang đƣợc sở hữu bởi user1 ls –l myfile
-rw-r r 1 user1 group1 myfile Đổi quyền sở hữu: chown user2 myfile ls –l myfile
Thay đổi Group sở hữu:
Cú pháp chgrp
Hiện tại myfile đang đƣợc sở hữu bởi group1 ls –l myfile
-rw-r r 1 user2 group1 myfile Đổi quyền sở hữu: chown group3 myfile ls –l myfile
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 64
5.3.3| Phân quyền cho các User trên tập tin:
Nhóm quyền dành cho file:
Bất kỳ một File nào cũng sẽ có ba nhóm quyền:
- 1 nhóm quyền là dành cho User tạo nên File đó
- 1 nhóm quyền là dành cho Group có User tạo nên File đó
- 1 nhóm quyền là dành cho các User khác
Ký tự đại diện cho ba nhóm quyền trong hệ thống là: u (User ), g (Group), o (Others), và ký tự a (All) đại diện cho tất cả các nhóm quyền Mỗi nhóm quyền này bao gồm ba quyền cơ bản.
Quyền Read (r) cho phép người dùng xem nội dung của một file, trong khi đối với một folder, quyền này cho phép xem danh sách các subfolder và file bên trong folder đó.
Quyền Write (viết) cho phép người dùng chỉnh sửa nội dung của một file, bao gồm việc thêm hoặc sửa đổi Đối với thư mục, quyền này cho phép người dùng thêm hoặc xóa các subfolder và file bên trong thư mục đó.
Quyền thực thi (Execute) cho phép thực hiện một file nếu file đó là chương trình hoặc script, đồng thời cho phép truy cập vào thư mục khi thực hiện lệnh cd.
Không có quyền làm một thao tác gì đó đối với một file hay folder xác định
Read ( đọc ) Write (viết ) Excute ( thi hành ) r W x
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 65
Nhƣ vậy quyền của 1 tập tin sẽ gồm nhƣ sau:
Ví dụ: 1 tập tin abc.txt có quyền trên 3 nhóm nhƣ sau:
Có nghĩa là: User sở hữu tập tin có cả 3 quyền: đọc, ghi và thi hành
THIẾT LẬP MẠNG TRÊN HỆ THỐNG
Chương này cung cấp thông tin về mạng trên hệ điều hành Linux, bao gồm phương pháp định tuyến hệ thống mạng Nó cũng hướng dẫn các thao tác và lệnh cần thiết để thiết lập và quản lý mạng cũng như định tuyến cho hệ thống.
Sau khi học xong chương này, sinh viên có thể:
- Trình bày nghĩa của kết nối mạng
- Trình bày được nghĩa chia sẻ dữ liệu trên Linux
- Trình bày được nghĩa dịch vụ samba trên Linux
- Thực hiện cấu hình network card cho hệ thống mạng
- Thực hiện cấu hình định tuyến cho hệ thống mạng
- Thực hiện phân quyền và chia sẻ tài nguyên trên Linux
6.1| Cấu hình card mạng bằng lệnh
Kiểm tra IP của card mạng
Hình 6.1 – Thông tin network card Ở trên ảnh, ta chú ý các thông số sau:
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 86 eth0: Card mạng eth0
HWaddr: Địa chỉ MAC của card mạng inetaddr: IP của card mạng
Mask: Giá trị subnet mask
RX bytes: Lƣợng băng thông vào
TX bytes: Lƣợng băng thông ra
#vi /etc/sysconfig/network-scripts/ifcfg-eth0 và tiến hành sửa các thông số sau:
ONBOOT=yes // Bật card mạng
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 87
BOOTPROTO=none // Có thể để static hoặc dhcp
IPADDR, NETMASK, GATEWAY, DNS1 // Ta nhập các thông số IP vào đây
Sau đó, khởi động lại card mạng:
#service network restart hoặc #/etc/init.d/network restart
#ifconfig eth0 192.168.1.11 netmask 255.255.255.0 up // Dùng để cấu hình card mạng tạm thời
# route add default gw 10.0.0.10 eth0 Ở đây, 10.0.0.10 là địa chỉ của gateway
Network configuration -> Device configuration -> eth0
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 88
Hình 6.2 – Giao diện lệnh setup
Bước 4 Kiểm tra lại card mạng
Bước 5 Ping ra 1 địa chỉ b n ngoài Internet
6.2| Cấu hình card mạng bằng giao diện
Click phải vào biểu tƣợng Network
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 89
Chọn card cần cấu hình
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 90
Chọn tab IPv4 Settings Điền các thông số của card mạng
Hình 6.3 – Cấu hình network card bằng giao diện
Nếu bạn đã cài đặt CentOS 7 với giao diện đồ họa bạn có thể đặt IP tĩnh nhƣ sau:
R_Click vào biểu tƣợng mạng chọn Network Settings
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 91
Cửa sổ Settings bạn chọn nhƣ hình
Cửa sổ Wired, bạn chọn tab IPv4 , phần Addresses chọn Manual để thiết đặt
IP thủ công , sau khi đã thiết đặt những thứ cần thiết bạn chọn Apply
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 92
6.3| Cấu hình định tuyến tĩnh
Linux là một hệ điều hành mạnh mẽ có khả năng hoạt động như một router và firewall, yêu cầu thiết lập các định tuyến để kết nối với các mạng khác nhau.
Bảng định tuyến là công cụ quan trọng giúp xác định lộ trình đến một mạng cụ thể, chỉ ra địa chỉ IP và card mạng cần sử dụng Cấu trúc bảng định tuyến trong hệ điều hành Linux được thiết kế để tối ưu hóa quá trình định tuyến dữ liệu.
Bảng định tuyến cho biết để đến địa chỉ 192.168.1.x, người dùng cần sử dụng card mạng eth0 Tuyến route này cung cấp thông tin quan trọng cho việc xác định đường đi trong mạng.
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 93 thêm vào một cách tự động bởi vì chúng ta khai báo card mạng eth0 có địa chỉ là 192.168.1.103
Cấu hình mạng của các thiết bị được trình bày như sau: Máy M1 có 1 card mạng với IP tĩnh 192.168.2.2/24, sử dụng VMnet2 và gateway là 192.168.2.1 Router R1 có hai card mạng, card thứ nhất (VMnet2 - eth0) với địa chỉ IP 192.168.2.1/24 và card thứ hai (VMnet3 - eth1) với địa chỉ IP 192.168.1.1/24 Máy M2 cũng có 1 card mạng với IP tĩnh 192.168.3.2/24, sử dụng VMnet4 và gateway là 192.168.3.1 Router R2 có hai card mạng, card thứ nhất (VMnet4 - eth0) với địa chỉ IP 192.168.3.1/24 và card thứ hai (VMnet3 - eth1) với địa chỉ IP 192.168.1.2/24.
Bước 2: Một số lệnh cần sử dụng
Thiết lập IP forward trên 2 Server R1 và R2 o #vi /etc/sysctl.conf > net.ipv4.ip_forward = 1
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 94
Để thiết lập đường đi cho tuyến 192.168.3.0/24 trên máy R1, bạn cần cấu hình thông qua địa chỉ IP 192.168.1.2 Thực hiện việc này trên card mạng eth1 bằng cách chỉnh sửa tệp cấu hình tại đường dẫn /etc/sysconfig/network-scripts/route-eth1, thêm dòng lệnh "192.168.3.0/24 via 192.168.1.2 dev eth1" Lưu ý rằng 192.168.1.2 là địa chỉ IP của router R2.
Để thiết lập đường đi cho tuyến 192.168.2.0/24 trên máy R2 thông qua địa chỉ IP 192.168.1.1, bạn cần thực hiện các bước sau: mở tệp cấu hình bằng lệnh #vi /etc/sysconfig/network-scripts/route-ethx và thêm dòng 192.168.3.0/24 via 192.168.1.2 dev eth1, trong đó 192.168.1.2 là địa chỉ IP của router R2.
Khởi động lại card mạng
Xem lại bảng định tuyến trên 2 server R1 và R2 xem đường mạng mới đã cập nhật chƣa
Bước 4: Tiến hành ping để kiểm tra, nếu ping từ máy con M1 đến M2 không được thì tại các router chúng ta tắt dịch vụ tường lửa bằng lệnh
#service iptables stop rồi tiến hành ping lại là kết quả
6.4| Cấu hình chia sẻ dữ liệu
Lưu ý đăng nhập bằng quyền root để thực hiện
Bước 1:Disable Firewall bằng lệnh service iptables stop
Bước 2:Disbaled Selinux sau đó reboot
Vào file selinux bằng lệnh: vi /etc/sysconfig/selinux chỉnh SELINUX từ enforcing thành disabled
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 95
Hình 6.5 – Thông tin file selinux Bước 3:Mount ổ đĩa chứa source Centos vào /Media bằng lệnh: mount /dev/cdrom /media
Bước 4:Cài đặt 2 gói samba và samba-client bằng lệnh: rpm –ivh đường_dẫn_đến_và_tên_gói_phần_mềm_cần cài đặt
Bước 5: Tạo thư mục và thiết lập quyền truy cập phù hợp cho các thư mục cần chia sẻ Sau đó, thêm người dùng vào Samba bằng lệnh: smbpasswd -a Tên_User.
Sau đó nhập vào mật khẩu 2 lần giống nhau
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 96
Bước 6: Cấu hình cho file /etc/samba/smb.conf bằng lệnh: vi /etc/samba/smb.conf
Hình 6.6 – Thông tin file smb.conf Bước 7: Restart các 2 service smb và nbm 2 lần bằng lệnh: service smb restart
Bước 8: Cho dịch vụ samba khởi động cùng hệ thống bằng lệnh: chkconfig smb on
Bước 9: Kiểm tra xem port samba đã mở 139 chưa bằng lệnh: netstat –antp
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 97
Bước 10: Tiến hành truy cập dữ liệu đã chia sẽ:
Dùng 1 máy xp gõ vào địa chỉ ip của máy linux để truy cập dữ liệu
Yêu cầu nhập vào username và mật khẩu của user đã tạo trên samba
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 98 kết quả:
Hình 6.7 – Truy cập tài nguyên đến server linux
Truy cập tài nguyên từ máy Linux
Dùng các chương trình samba client để kết nối tới samba resources Để kiểm tra chúng ta kết nối vào localhost:
Để truy cập tài nguyên chia sẻ trên máy tính, bạn cần chỉ định tên máy và tên tài nguyên Ví dụ, nếu bạn muốn kết nối đến thư mục downloads, hãy cấu hình trong smb.conf với đường dẫn /root/downloads Để xem những tài nguyên được chia sẻ trên một máy Linux khác, bạn có thể sử dụng lệnh sau với x.x.x.x là địa chỉ IP hoặc tên máy cần truy cập.
Khi sử dụng Samba client trên hệ thống Linux đã đăng nhập, bạn chỉ cần nhập mật khẩu Tài khoản người dùng sẽ tự động tương ứng với tài khoản Linux đã đăng nhập Ngoài ra, bạn có thể sử dụng tùy chọn –U để chỉ định tài khoản người dùng cụ thể.
Lưu ý Printer và Home directory
Khi cài đặt Samba, Printer và Home directory được chia sẻ mặc định Để ngăn chặn việc chia sẻ Printer hoặc không hiển thị các Home directory, bạn cần bỏ dấu # hoặc xóa các dòng lệnh tương ứng trong file smb.conf.
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 99
[Downloads] comment = downloads path = /root/downloads browseable = yes writable = yes public = yes read only = no
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 100
Thực hiện ết nối mạng theo m hình sau
1 Chuẩn bị các máy ảo theo mô hình trên
2 Chuyển các máy Linux sang chế độ Textmode
3 Đặt địa chỉ IP cho các máy
4 Kiểm tra ping từng node mạng
5 Máy Linux2 thêm card network và cấu hình ra internet
6 Máy Linux1,2 cài Vmware Tool để lấy dữ liệu máy thật
B1 Xây dựng hệ thống mạng theo sơ đồ sau:
B2 Tạo thƣ mục theo sơ đồ:
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 101
B3 Thực hiện tạo Users & Group trên máy Server:
“Tất cả password của user là 123” nhomTT(tt1, tt2) nhomNN(nn1, nn2) nhomHSSV(sv1, sv2)
B4 Phân quyền(Share Permission và NTFS Permission)
Quyền share: thƣ mục TDC( full control cho everyone)
Mọi tài khoản(nhóm) chỉ có quyền đọc trên thƣ mục TDC
Mọi tài khoản thuộc nhomTT sẽ toàn quyền trên thƣ mục Thoitrang, các tài khoản khác có quyền đọc
Mọi tài khoản thuộc nhomNN sẽ toàn quyền trên thƣ mục
Ngoaingu, các tài khoản nhóm khách hàng không có quyền
Mọi tài khoản thuộc nhomHSSV sẽ toàn quyền trên thƣ mục HSSV, các tài khoản khác không có quyền
B5 Tạo file logon.bat để kết nối đĩa mạng:
G: Dùng thƣ mục Thoitrang, user: tt1
K: Dùng thƣ mục Ngoaingu, user:tt1
H: Dùng thƣ mục Hssv, user: tt1
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 102
B 1 Xây dựng hệ thống mạng theo sơ đồ sau:
B 2 Tạo thƣ mục theo sơ đồ:
B 3 Thực hiện tạo Users & Group trên máy Server:
“Tất cả password của user là 123” nhomKD(kd1, kd2) nhomGD(gd1, gd2) nhomKH(kh1, kh2)
B 4 Phân quyền(Share Permission và NTFS Permission)
Quyền share: thƣ mục KINHDO( full control cho everyone)
Mọi tài khoản(nhóm) chỉ có quyền đọc trên thƣ mục KINHDO
Mọi tài khoản thuộc nhomKD sẽ toàn quyền trên thƣ mục kinhdoanh, các tài khoản nhóm kinh doanh không có quyền
Mọi tài khoản thuộc nhomKH sẽ toàn quyền trên thƣ mục khachhang, các tài khoản nhóm khách hàng không có quyền
Tất cả tài khoản thuộc nhóm GD sẽ có quyền truy cập toàn diện vào các thư mục kinh doanh, giám đốc và khách hàng Chỉ nhóm GD mới được cấp quyền đầy đủ trong thư mục giám đốc, trong khi các tài khoản khác không có quyền truy cập vào thư mục này.
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 103
B 5 Tạo file logon.bat để kết nối đĩa mạng:
G: Dùng thƣ mục kinhdoanh, user: kd1
K: Dùng thƣ mục Giamdoc, user:kd1
H: Dùng thƣ mục khachhang, user: kd1
Tài liệu giảng dạy Quản trị hệ thống Linux 1 Trang 104