一,內核編譯
1,內核功能:
系統初始化
硬件驅動
內存管理
進程管理
安全
網絡功能
文件系統
提供緩衝緩存
2,內核三部分
內核本身
initrd
modules (內核模塊,.ko kernel object)
3,交叉編譯 x86---powerpc
make(makefile(./configure,Makefile.in)) 是將源程序組織成項目,然後調用gcc有順序的編譯工具
4,內核編譯:交互式界面,圖形界面 kernel,busybox
5, 1)直接做成內核的組成部分 Y
2)做成內核模塊 M
3)不編譯 N
make config (交互式界面) Development 工具組 與 庫 都需要安裝
make menuconfig (文本圖形界面)ncurses-devel
make kconfig (kde環境圖形界面) KDE software developmen
make gconfig (gnome環境界面) Gnome software developmen
.config 所有配置保存到此文件
make 進行編譯
make modules_install 安裝內核模塊
make install 安裝內核
自動配置 /boot/grub/grub.conf
6,重新編譯前的清理工作
make mrproper (保存以前的配置文件)
make clean
7,screen 同一終端上啓用不同屏幕
Ctrl+a, d
-ls 查看
-r 進入哪個屏幕
8,內核應放到 /usr/src中 並 建立 linux 到 linux-`uname -r` 的鏈接
9,make –j# 實現併線編譯,應該是cpu的2倍
make O=/path/to/somewhere 將生成的目標文件等保存到指定目錄
10,make ARCH=x86_64 交叉編譯
11,make M=parth/to/somewhere 僅編譯某個目錄的模塊
12,make path/to/modules_name.ko 僅編譯某個模塊
13, make SUBDIR=arch/ 僅編譯內核
二:日誌功能
日誌:syslog 爲系統上的應用程序產生的事件記錄
事務日誌:能夠重現整個過程
歷史日誌:只簡單記錄發生時間
klog 爲內核產生的程序記錄日誌
這兩個進程都有 /etc/init.d/syslog 啓動關閉
配置文件 /etc/syslog.conf
設施(日誌類):facility 如mail
日誌級別:priority 如info
mail.info /var/log/mylog mail大於Info級別的日誌
mail.* mail 的所有級別
*.info 所有程序產生的大於等於info的log
mail.none 不記錄mail的
mail,cron.info mail 與 cron
mail.info;cron.warn 這兩個日誌產生到同一個文件
mail.=info 等於Info的
mai.!=info 不等於info的
目標文件:
普遍文件 如果有 - 代表異步寫入
命名管道
終端或控制檯
遠程機器 @172.16.0.1
某列表中的用戶
所有已登錄的用戶
logger syslog爲shell腳本提供的日誌記錄接口