•Quátrình khởi động hệthống.
•Quản lý người dùng.
•Hệthống log files.
8 trang |
Chia sẻ: Mr Hưng | Lượt xem: 1040 | Lượt tải: 0
Nội dung tài liệu Hệ điều hành - Bài 4: Quản trị hệ thống, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
1Bài 4. Quản trị hệ thống
Ngô Duy Hòa – KHMT - CNTT
Nội dung bài học
• Quá trình khởi động hệ thống.
• Quản lý người dùng.
• Hệ thống log files.
• ..
1. Quá trình khởi động
Boot process
Các bước cụ thể Power-up / Reset
• Máy tính bắt đầu khởi động, CPU thực
hiện chương trình ở địa chỉ 0xFFFF0 trong
BIOS (Basic Input Output System).
• Công việc chia làm 2 phần:
– POST – Power On Self Test:
• Nạp vào RAM code ÆKiểm tra các phần cứng
• Nếu OK Æ POST code bị đảy ra khỏi RAM.
– Runtime services:
• Đọc CMOS Æ tìm ra boot device.
2BIOS boot monitor
• Runtime Services xác định được thiết bị
khởi động: HDD, Floppy, CD-ROM,..
• Xác định MBR (Master Boot Record) của
thiết bị.
– MBR – first sector : 512 Byte.
– Địa chỉ: sector 1, cylinder 0, header 0.
• Nạp MBR vào RAM Æ BIOS trao quyền
thực hiện cho MBR.
Boot Sector Floppy & HDD
Master Boot Record Master Boot Record
• MBR chứa 3 phần:
– BootLoader (446 bytes) chương trình mồi
gồm 2 phần:
• Code chương trình: thực hiện việc tìm kiếm phân
vùng tích cực (để khởi động).
• Các thông báo lỗi (error message).
– Bảng phân vùng (64 bytes):
• 4 thành phần (16 bytes): lưu trữ thông tin về các
phân vùng chính (primary partition).
– Magic number: 0xAA55.
Cấu trúc các thành phần Master Boot Record
• Chỉ có 4 phân vùng chính (primary Part.).
• Nếu cần nhiều hơn 4 phân vùng:
– 1 phân vùng chính = 1 phân vùng mở rộng
(extended part.).
– Chia thành các phân vùng logic (logical Part.)
• Sector đầu tiên của các phân vùng đều là
boot sector Æ có thể cài OS trong phân
vùng bất kỳ.
3Extended Partition Stage 1 bootloader
• Xác định phân vùng tích cực thông qua
boot flag.
• Nếu không tồn tại Æ thông báo lỗi.
• Sau khi xác định được:
– Nạp boot sector của phân vùng khởi động
vào RAM Æ trao quyền điều khiển cho
chương trình boot sector.
– Bắt đầu giai đoạn thứ 2 (stage 2 bootloader)
Stage 2 bootloader
• Nhiệm vụ chính của giai đoạn này là:
– Nạp nhân HĐH (Linux kernel) vào RAM.
– Nạp RamDisk vào RAM.
• Có sự khác biệt giữa các chương trình
BootLoader:
– LILO : Linux Loader
– GRUB : GRand Unified Bootloader.
LILO
• Linux Loader là chương trình truyền thống
của Linux hỗ trợ khởi động hệ thống với
nhiều dạng HĐH khác nhau.
• LILO có kích thước >> 512 byte Æ được
chia làm 2 giai đoạn:
– Stage 1 (như đã nói phần trước):
• Có thể nằm ở MBR
• Có thể nằm ở phân vùng cài Linux.
– Stage 2 : nạp nhân HĐH
Các bước LILO thực hiện
• Thực hiện và in ký tự ra màn hình:
– Stage 1 thực hiện và in chữ L.
– Stage 1 nạp mã lệnh của Stage 2 vào RAM
và in chữ I.
– Stage 2 bắt đầu thực hiện và in chữ L.
– Cửa sổ gõ lệnh xuất hiện. Thực hiện lệnh lilo
để truy cập đến map-file, là file xác định các
nhân HĐH.
– Khi map-file được nạp hoàn toàn vào RAM Æ
hiển thị ký tự cuối cùng O.
File cấu hình LILO
• Cấu hình LILO:
/etc/lilo.conf
• boot: boot device
• map: map-file
• install: chứa bootstrap
code - chương trình
mồi khởi động OS
• image: kernel image
4Nhược điểm LILO
• LILO đọc map-file để xác định vị trí vật lý các
nhân OS.
• Nếu kernel hoặc ổ đĩa có 1 sự thay đổi nào đó
Æ map-file thay đổi Æ phải tạo lại map-file.
GRUB
• Giải quyết vấn đề của LILO bằng cách trong
stage 2 chia ra hai phần:
– Stage 1.5: xác định kiểu file system của phân vùng
chứa nhân OS.
– Stage 2: nạp nhân OS vào RAM.
Cấu hình GRUB
• File cấu hình: /etc/grub/grub.conf
Chạy GRUB bằng tay
Ví dụ
• Khi màn hình hiển thị dòng chữ GRUB thì ấn C
để chạy chế độ dòng lệnh.
– Lệnh kernel xác định kernel image.
– Lệnh initrd xác định ramdisk.
– Lệnh boot nạp kernel image Æ khởi động hệ thống.
Kernel stage
• Kernel image được nạp vào RAM Æ
quyền điều khiển chuyển đến kernel img.
• Kernel image là dạng file nén:
– zImage : dạng nén với kích thước < 512KB.
– bImage : dạng nén với kích thước > 512KB.
• Gọi một số lệnh đặc biệt Æ chia thành các
chế độ làm việc riêng: user & kernel mode.
• Thực hiện giải nén kernel image.
5Linux 2.6 kernel image Sơ đồ các bước thực hiện
Sơ đồ các bước thực hiện
• Startup_32() : swapper - process 0:
– Giải nén kernel image.
– Khởi tạo bảng trang trong bộ nhớ (page tables,
memory tables)
– Xác định kiểu CPU.
• Startup_kernel():
– Thiết lập hệ thống ngắt (interrupt).
– Nạp RAMdisk vào hệ thống.
• Init process 1: tiến trình người dùng đầu tiên.
Vai trò RAMdisk
• Tạo một file system tạm thời trong RAM.
• Cho phép hệ thống khởi động mà không
cần làm việc trực tiếp với ổ cứng.
• Chứa một số các modules cần thiết làm
việc với các thiết bị phần cứng.
• Sau khi kernel boot Æ file system tạm bị
đẩy ra ngoài, thay vào đó là file system
thực của OS.
Cây thư mục trong RAMdisk Init process
• Hệ thống khởi động và được cấu hình làm
việc ở các mức khác nhau: runlevel.
• Init là tiến trình người dùng đầu tiên luôn
có PID = 1.
• Init đọc cấu hình từ file /etc/inittab để khởi
động các dịch vụ cần thiết.
• Mỗi một mức làm việc có một tập các dịch
vụ cụ thể tương ứng.
6Runlevel Runlevel
• Một số lệnh làm việc:
– Xác định mức làm việc hiện tại: runlevel.
– Chuyển sang mức khác : init N
• Chú ý đến mức 0 và mức 6 là các mức
dùng để tắt hay khởi động lại máy.
• Để tắt hay khởi động lại có thể sử dụng 1
số lệnh: shutdown, reboot, halt, poweroff
Shutdown option halt/reboot/poweroff option
Cấu hình /etc/inittab
• Các dòng có cấu trúc như sau:
id:runlevels:action:process
7Ví dụ 1 /etc/inittab file
/etc/rc.d/rc5.d
Linux initialization process Một số bài tập
• 1. Sử dụng USB flash để boot hệ thống.
• 2. Nếu có sẵn Window, hãy dùng NTLDR
để boot Linux.
• Tìm hiểu cấu trúc RAMdisk để tự xây
dựng một phiên bản RAMdisk cho riêng
mình (tạo ramdisk.img giống như initrd)
– Tài liệu tham khảo: google.com Æ “Linux
initial RAM disk (initrd) overview”
82. Quản lý người dùng Thank you!
Các file đính kèm theo tài liệu này:
- sv_bai_4_925.pdf