linux內核引導
1. linux系統引導問題
grub安裝在硬碟的MBR中,而grub的配置文件存在你的rh下的/boot中。裝紅旗有時候會再裝一次grub,裝好就沒有問題。
但是如果不會使用救援模式,建議裝個紅旗算了。如果不想使用linux了可以用windows的修復台,使用fixmbr來修復mbr ,然後grub就給刪除了。該過程中啟動引導程序要完成多個初始化過程,當這些過程順利完成後才能使用系統的各種服務。
簡介
Linux,全稱GNU/Linux,是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX的多用戶、多任務、支持多線程和多CPU的操作系統。伴隨著互聯網的發展,Linux得到了來自全世界軟體愛好者、組織、公司的支持。
它除了在伺服器方面保持著強勁的發展勢頭以外,在個人電腦、嵌入式系統上都有著長足的進步。使用者不僅可以直觀地獲取該操作系統的實現機制,而且可以根據自身的需要來修改完善Linux,使其最大化地適應用戶的需要。
2. linux編譯內核時已經有了引導,為什麼還要用其他程序來引導內核
Linux源碼中沒有內核引導程序,啟動內核需要第三方bootloader搬移內核,設置內核運行環境,進而引導內核啟動。
3. 關於linux引導內核的問題
內核不是放在kernel目錄裡面的 直接放在/boot裡面 修復內核需要在修復模式下進行 先創建一個目錄如 /fff 掛起光碟如 mount /mnt/sr0 fff/ cd切換到 fff/dvd/Packages 裡面找kernel安裝包 要強制安裝 再安裝initrd 文件 也需要強制安裝
grub.conf 這樣寫就行了
default=0
timeout=3
title redhat6.0
root(hd0,0)
kernel /vmlinuz-2.6.32-220.el6.i686 ro root=你的根分區 rhgb quiet
initrd /initramfs-2.6.32-220.el6.i686.img
樓主的你grub.conf寫錯了 還有內核放錯位置了
其實你模擬排錯 只需要刪除 /boot/*
就可以按照我的方法排錯了
對了還有什麼不懂的可以問我·
4. linux怎麼進入內核引導
編譯完成生成內核文件和虛擬內存檔文件後,執行grub-mkconfig會找到新的內核並生成新的菜單配置文件,開機啟動就可以選擇相應的菜單項進入系統
5. Linux內核引導參數簡介 怎麼解決
Linux設置內核參數的方法
1 內核參數的查看方法
使用「sysctl -a」命令可以查看所有正在使用的內核參數。內核參數比較多(一般多達500項),按照前綴主要分為以下幾大類:net.ipv4、net.ipv6、net.core、vm、fs、dev.parport、dev.cdrom 、dev.raid、kernel等等。相同的linux,安裝的組件和使用的方式不一樣,正在使用的內核參數是不一樣的。
所有的內核參數的說明文檔是放到/usr/src/linux/Documentation/sysctl中的,如果想知道對內核參數的說明,可以到該目錄下查看相應的說明文檔。
2 內核參數的的設置方法
由於Linux的內核參數信息都存在內存中,因此可以通過命令直接修改,並且修改後直接生效。也可以通過文件的方式進行設置。下面就介紹這兩種修改方法。
2.1 命令設置的方式
可以用兩種方法實現。
1、使用「sysctl -w 參數名=值」的方式
假設我們把net.ipv4.ip_forward的值修改為1,使用命令「sysctl -w net.ipv4.ip_forward=1」。
2、修改內核參數對應的proc文件
內核參數位於/proc/sys/之下,參數名稱是以文件所在的路徑,並將「/」以「.」來取代。舉例來說,/proc/sys/net/ip_forward的參數名稱為net.ipv4.ip_forward。
同樣把net.ipv4.ip_forward的值修改為1,使用命令「echo 「1」 > /proc/sys/net/ipv4/ip_forward」。
注意,這里proc文件跟普通的文件不一樣。一般一個文件用echo寫入內容之後,會變成一個文本文件,但echo修改proc文件之後還是個空文件。
6. Linux內核引導時,從哪個文件中讀取要載入的文件系統
一、 Linux內核引導時,從文件【 /etc/fstab 】中讀取要載入的文件系統。
二、 Linux面試題部分享:
1. 在Linux系統中,以 文件 方式訪問設備 。
2. Linux內核引導時,從文件 /etc/fstab 中讀取要載入的文件系統。
3. Linux文件系統中每個文件用 索引節點來標識。
Linux文件系統使用索引節點來記錄文件信息,作用於Windows的文件分配表類似,索引節點是一個數據結構,它包含了一個文件的文件名,位置,大小,建立或修改時間,訪問許可權,所屬關系等文件控制信息,一個文件系統維護了一個索引節點的數組,每個文件或目錄都與索引結點數組中的唯一一個元素對應,系統為每個索引結點分配了一個號碼,也就是該結點在數組中的索引號,稱為索引結點號。
Linux文件系統將文件索引結點號和文件名同時保存在目錄中,所以目錄只是將文件的名稱和它的索引結點號結合在一起的一張表。目錄中每一對文件名稱和索引結點號稱為一個連接。
4. 全部磁碟塊由四個部分組成,分別為引導塊 、專用塊 、 i節點表塊 和數據存儲塊。
Linux系統中的每個文件都被賦予一個唯一的數值,這個數值稱做索引節點。索引節點存儲在一個稱作索引節點表< inode table>中,該表在磁碟格式化時被分配。每個實際的磁碟或分區都有其自己的索引節點表。一個索引節點包含文件的所有信息,包括磁碟上數據的地址和文件類型。文件類型包括如普通文件、目錄和特殊文件這樣的信息。
linux硬碟組織方式為:引導區、超級塊(superblock),索引結點(inode),數據塊(datablock),目錄塊(diredtory block)。其中超級塊中包含了關於該硬碟或分區上的文件系統的整體信息,如文件系統的大小等;超級塊後面的數據結構是索引結點,它包含了針對某一個具體文件的幾乎全部信息,如文件的存取許可權、所有者、大小、建立時間以及對應的目錄塊和數據塊等;數據塊是真正存儲文件內容的位置。但是索引結點中不包括文件的名字,文件名是放在目錄塊里的。目錄塊里包含有文件的名字以及此文件的索引結點編號。
7. 請教如何用grub2引導linux內核
執行update-grub應該可以找到新內核的引導吧?如果不行,編輯grub.cfg手動添加啟動項:
menuentry
"我的Ubuntu
"
{
linux
/boot/vmlinuz-xxx
initrd
/boot/initrd-xxx.lz
}
或者編輯/etc/grub.d/40_os-prober,將上面代碼添加到文件末。然後執行update-grub。