版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Linux操作系統(tǒng)GRUB引導(dǎo)程序配置方法1. GRUB 介紹 計(jì)算機(jī)在啟動(dòng)的時(shí)候,首先由BIOS中的程序執(zhí)行自檢,自檢通過(guò)后,就根據(jù)CMOS 的配置找到第一個(gè)可啟動(dòng)磁盤(pán)的MBR中的Boot Loader程序(一般在啟動(dòng)盤(pán)的第一個(gè)物理扇區(qū),占416字節(jié)),并把控制權(quán)交給Boot Loader,由Boot Loader進(jìn)一步完成操作系統(tǒng)內(nèi)核的加載。當(dāng)Boot Loader找到內(nèi)核之后,就把控制權(quán)交給操作系統(tǒng)內(nèi)核,由內(nèi)核繼續(xù)完成系統(tǒng)的啟動(dòng)。 可以看出,Boot Loader 是計(jì)算機(jī)啟動(dòng)中第二個(gè)要執(zhí)行的程序,它是引導(dǎo)操作系統(tǒng)的關(guān)鍵程序。可以引導(dǎo)操作系統(tǒng)的Boot Loader主要有LiLo、GRU
2、B以及Windows下的MBR程序。其中,GRUB是目前使用最為廣泛,并且非常優(yōu)秀的一款啟動(dòng)引導(dǎo)程序。 (1) GRUB特性 q 提供了圖形和文本兩種操作接口 q 提供文本格式可手工修改的配置文件 q 支持動(dòng)態(tài)加載需要的模塊 q 可以移植到不同的平臺(tái)上 q 支持國(guó)際化語(yǔ)言,如英文,中文,日文漢文等多字節(jié)語(yǔ)言 q 跨平臺(tái)的安裝,允許從另一個(gè)平臺(tái)上安裝GRUB q 支持rescue模式,可用于系統(tǒng)無(wú)法引導(dǎo)的情況 q 支持多種可執(zhí)行文件格式,支持各種a.out格式和ELF格式 q 多文件系統(tǒng)識(shí)別。如BSD FFS,DOS FAT16,F(xiàn)AT32和Linux ext2fs q 支持壓縮文件的解壓縮。能
3、夠解壓縮被gzip壓縮的文件 q 能夠使用BIOS所檢測(cè)到的全部RAM空間 q 支持硬盤(pán)的LBA模式,能夠訪問(wèn)8GB以外的全部硬盤(pán)空間 q 支持網(wǎng)絡(luò)引導(dǎo),可以通過(guò)TFTP協(xié)議從網(wǎng)絡(luò)上得到操作系統(tǒng)映象文件并引導(dǎo) (2) GRUB對(duì)設(shè)備的命名 首先,GRUB對(duì)設(shè)備的命名必須包含在小括號(hào)( )內(nèi);其次,GRUB不區(qū)分IDE硬盤(pán)和SCSI硬盤(pán),統(tǒng)一使用hdx,其中x指定BIOS中硬盤(pán)的編號(hào),并從0開(kāi)始計(jì)數(shù),而且IDE硬盤(pán)編號(hào)小于 SCSI硬盤(pán);第三,GRUB用fdx指定軟盤(pán)設(shè)備,x是軟盤(pán)驅(qū)動(dòng)器號(hào)。下面是一些GRUB對(duì)設(shè)備命名的舉例: q (fd0)表示第1個(gè)軟盤(pán) q (hd0,1)表示第1個(gè)硬盤(pán)的第2
4、個(gè)分區(qū) q (hd0,0)/boot/vmlinuz表示第1個(gè)硬盤(pán)的第一個(gè)分區(qū)下的boot/目錄下的vmlinuz文件。如果沒(méi)有指定某個(gè)分區(qū),則表示使用整個(gè)設(shè)備,否則只使用指定的分區(qū) q (hd0,2,a)專用于FreeBSD,F(xiàn)reeBSD有一個(gè)slice概念,把一個(gè)分區(qū)進(jìn)一步分為幾個(gè)slice,此處指明是第1塊硬盤(pán)的第3個(gè)分區(qū)中的slice a (3) GRUB的執(zhí)行流程 GRUB的工作原理如圖5.2所示。當(dāng)系統(tǒng)加電后,固化在BIOS中的程序首先對(duì)系 統(tǒng)硬件進(jìn)行自檢,自檢通過(guò)后,就加載啟動(dòng)磁盤(pán)上的MBR,并將控制權(quán)交給MBR中的程序(stage1),stage1執(zhí)行,判斷自己是否GRUB,
5、如果 是且配置了stage1_5,則加載stage1_5,否則就轉(zhuǎn)去加載啟動(dòng)扇區(qū),接著,stage2被加載并執(zhí)行,由stage2借助stage1_5驅(qū) 動(dòng)文件系統(tǒng),并查找grub.conf,顯示啟動(dòng)菜單供用戶選擇,然后根據(jù)用戶的選擇或默認(rèn)配置加載操作系統(tǒng)內(nèi)核,并將控制權(quán)交給操作系統(tǒng)內(nèi)核,由內(nèi)核完 成操作系統(tǒng)的啟動(dòng)。 從上面的敘述可以看出,GRUB涉及到幾個(gè)重要的文件: 第一個(gè)就是stage1。它被安裝在MBR扇區(qū)(0面0磁道的第1扇區(qū)),大小為512字節(jié)(446字節(jié)代碼+64字節(jié)分區(qū)表+2字節(jié)標(biāo)志55AA),它負(fù)責(zé)加載存放于0面0道第2扇區(qū)的start程序。 第二個(gè)是stage1_5。stag
6、e1_5負(fù)責(zé)識(shí)別文件系統(tǒng)和加載stage2, 所以stage1_5往往有多個(gè),以支持不同文件系統(tǒng)的讀取。在安裝GRUB的時(shí)候,GRUB會(huì)根據(jù)當(dāng)前/boot/分區(qū)類型,加載相應(yīng)的 stage1_5到0面0磁道的第3扇區(qū)。stage1_5是由start加載的。 第三個(gè)是stage2。它負(fù)責(zé)顯示啟動(dòng)菜單和提供用戶交互接口,并根據(jù)用戶選擇或默認(rèn)配置加載操作系統(tǒng)內(nèi)核。同前兩個(gè)文件不同,stage2是存放在磁盤(pán)上/boot/grub下。 第四個(gè)是menu.lst(/boot/grub/grub.conf的鏈接)。 grub.conf是一個(gè)基于腳本的文本文件,其中包含菜單顯示的配置和各個(gè)操作系統(tǒng)的內(nèi)核加載配
7、置。GRUB根據(jù)grub.conf顯示啟動(dòng)菜單,提供 同用戶交互界面。GRUB正是根據(jù)用戶選擇或默認(rèn)配置和grub.conf的內(nèi)核配置加載相應(yīng)的內(nèi)核程序,并把控制權(quán)交給內(nèi)核程序,使得內(nèi)核程序完成真正 的操作系統(tǒng)的啟動(dòng)。 其它重要文件,GRUB除了上面敘述的主要文件之外,還包括支持交互功能的一些磁 盤(pán)程序。主要包括/sbin/下的grub、grub-install、grub-md5-crypt和grub-terminfo和 /usr/bin/mbchk,以及/boot/grub下的設(shè)備映像文件(device.map)和菜單背景圖像文件(splash.xpm.gz)。 通過(guò)上面的分析總結(jié),可以很容
8、易地看出,GRUB實(shí)際上包含兩部分,一部分被安裝 在磁盤(pán)的特殊扇區(qū),另外一部分則以文件的形式存在。要讓GRUB啟動(dòng)操作系統(tǒng),就必須首先把GRUB的stage1和stage1_5(根據(jù)文件系統(tǒng)自動(dòng) 選擇是否安裝)安裝到磁盤(pán)的特殊扇區(qū),另外,在磁盤(pán)的/boot/grub下存在有g(shù)rub.conf、device.map等文件和支持交互的程序,而 且這些程序必須在PATH環(huán)境變量指定的路徑中。具備了這些知識(shí),相信不管是安裝、配置、備份或修復(fù)GRUB都不是件很難的是情。下面,就來(lái)逐個(gè)講解這些 知識(shí)。 2. 編譯安裝GRUB 一般情況下,當(dāng)完成Linux操作系統(tǒng)的安裝后,系統(tǒng)中已經(jīng)安裝好了LILO或 GR
9、UB引導(dǎo)程序。由于系統(tǒng)出現(xiàn)故障或需要更換LILO為GRUB時(shí),需全新或重新安裝GRUB。如何安裝和配置GRUB就是下面要介紹的內(nèi)容。而有時(shí) 候,GRUB出現(xiàn)了故障,但并不需要重新安裝,從后面的內(nèi)容中,讀者也可以讀到如何修復(fù)GRUB的知識(shí)。 (1) 下載安裝包 可以從下載GRUB的源碼。具體安裝方法請(qǐng)參考下面的內(nèi)容,這里的安裝過(guò)程都是在RHEL 4中進(jìn)行的。 (2) 檢查是否安裝GRUB #rpm -q grub 如果顯示grub-0.95-3.5或其它版本的GRUB的信息,說(shuō)明系統(tǒng)已經(jīng)安裝了,則執(zhí)行如下命令首先將其卸載: #rpm -e grub (3) 編譯源碼安裝 a.) 編譯條件 要編譯
10、GRUB的源代碼,系統(tǒng)必須具備以下條件: q GCC2.95或者以上版本 q 安裝了GNU Make q binutils.23或者個(gè)更高版本 q Texinfo 4.0或者更高版本 q Autoconf 2.5x q Automake 1.7 或者更高版本 b.) 編譯安裝 這里,假設(shè)下載的GRUB源代碼為grub-0.95.tar.gz,并放在/(當(dāng)前用戶的主目錄)下。通過(guò)編譯源代碼安裝GRUB的基本過(guò)程如下: #tar -zxvf grub-0.95.tar.gz #解壓源代碼 #cd grub-0.95 #轉(zhuǎn)入grub目錄 #./configure #生成Makefile
11、文件 #make install #編譯代碼并安裝 (4) 安裝GRUB到MBR GRUB的工作目錄是在/boot/grub下,而make install并沒(méi)將其安裝到/boot/grub。所以,安裝完成后要執(zhí)行如下一些操作: a) 把/usr/local/share/grub/i386-pc/目錄下的所有文件統(tǒng)統(tǒng)拷貝到/boot/grub/目錄下 #cp /usr/local/share/grub/i386-pc/* /boot/grub/ b) 在/boot/grub下創(chuàng)建grub.conf文件,并建立一個(gè)到grub.conf的軟鏈接menu.lst #cd /boot/grub #tou
12、ch grub.conf #ln -s grub.conf menu.lst 注意!如果已經(jīng)存在grub.conf,就最好不要再次創(chuàng)建,需要時(shí)直接修改即可。 c) 確認(rèn)/usr/local/sbin和/usr/local/bin在PATH變量的值中,執(zhí)行如下命令檢查 #env |grep PATH 如果發(fā)現(xiàn)/usr/local/sbin和/usr/local/bin不在PATH變量中,可以通過(guò)如下命令修改: #export PATH=$PATH /usr/local/sbin:/usr/local/bin d) 安裝GRUB到MBR GRUB在啟動(dòng)中,被BIOS調(diào)用,只有放在MBR中才可以被調(diào)
13、用,所以,GRUB要讓BIOS調(diào)用,就必須安裝在MBR中。實(shí)際上是將stage1安裝到MBR中,也可能根據(jù)文件系統(tǒng)選擇安裝了stage1_5。下面,提供幾個(gè)安裝GRUB的例子: #grub-install /dev/hda /將GRUB安裝到第1塊IDE硬盤(pán)的MBR #grub-install /dev/sda /將GRUB安裝到第1塊SCSI硬盤(pán)的MBR #grub-install /dev/fd0 /將GRUB安裝到軟盤(pán) #grub-install /dev/hda1 /將GRUB安裝到第1快硬盤(pán)的0扇區(qū),當(dāng)用其它引導(dǎo)程序引導(dǎo)系統(tǒng)時(shí),往往選擇這種方式,以免覆蓋其它引導(dǎo)程序。 e) 在GRU
14、B的命令行模式下安裝GRUB 關(guān)于GRUB命令行模式及其操作方法請(qǐng)參考3小節(jié)的內(nèi)容。在系統(tǒng)顯示啟動(dòng)菜單時(shí)候按下c鍵,或者系統(tǒng)啟動(dòng)后在命令行執(zhí)行/usr/sbin/grub程序,都可以進(jìn)入GRUB的命令行模式。命令行模式下安裝GRUB的基本過(guò)程如下: q 指定啟動(dòng)設(shè)備 grub>root (hd0,0) #除了root后必須有空格,別的位置均不能有空格! 此處(hd0,0)是指第1塊硬盤(pán)的第1個(gè)分區(qū)。如果不能確定包含GRUB的stage1文件的分區(qū),可以通過(guò)find指令查找確定: grub> find /boot/grub/stage1 #查找stage1 GRUB將會(huì)查找文件/bo
15、ot/grub/stage1并顯示包含這個(gè)文件的設(shè)備名,這個(gè)設(shè)備就是上面要用到的設(shè)備。 q 安裝GRUB grub> setup (hd0) #除了setup后必須有空格,別的位置均不能有空格! 這條命令將會(huì)在第1塊硬盤(pán)的MBR安裝GRUB,如果不想在MBR安裝GRUB,而是希望將GRUB安裝在某分區(qū)的引導(dǎo)扇區(qū)的話,可以用下面的命令安裝: grub> setup (hd0,0) #除了setup后必須有空格,別的位置均不能有空格! 這將會(huì)在第1塊硬盤(pán)的第1個(gè)分區(qū)的引導(dǎo)扇區(qū)安裝GRUB。 q 退出GRUB grub>quit f) 重啟機(jī)器,新安裝的GRUB生效 3. GRUB
16、的交互操作 為了方便用戶交互使用GRUB,GRUB提供了交互模式,下面分別作一介紹: (1) 命令行模式 登陸Linux系統(tǒng)后,在命令行中輸入grub,便可以進(jìn)入到命令行模式。如圖4-3所示。進(jìn)入命令行模式后GRUB會(huì)給出一個(gè)命令提示符“grub>”,此時(shí)就可以鍵入命令,按回車執(zhí)行。此模式下允許類似于Bash shell的命令行編輯功能: <C-f>或<右箭頭鍵> 光標(biāo)右移一個(gè)字符<C-b>或<左箭頭鍵> 光標(biāo)左移一個(gè)字符<C-a><HOME> 到這一行的開(kāi)頭<C-e>或<END> 到行尾&l
17、t;C-d>或<DEL> 刪除光標(biāo)處的字符<C-h>或<BackSpace> 刪除光標(biāo)左邊的字符<C-k> 刪除光標(biāo)右邊的所有字符(包括光標(biāo)處的字符)<C-u> 刪除光標(biāo)左邊的所有字符(包括光標(biāo)處的字符)<C-y> 恢復(fù)上次刪除的字符串到光標(biāo)位置<C-p>或<向上鍵> 歷史記錄中的上一條命令<C-n>或<向下鍵> 歷史記錄中的下一條命令啟動(dòng)時(shí)GRUB命令行模式在命令行模式下鍵有補(bǔ)全命令的功能,如果你敲入了命令的前一部分,鍵入系統(tǒng)將列出所有可能以你給出的字符串開(kāi)頭的命令。
18、如果你給出了命令,在命令參數(shù)的位置按下鍵,系統(tǒng)將給出這條命令的可能的參數(shù)列表。 在計(jì)算機(jī)啟動(dòng)的時(shí)候,GRUB首先顯示啟動(dòng)菜單,這是如果用戶按鍵盤(pán)的“c”鍵,便進(jìn)入如圖4-4所示的命令行模式,它的操作和在Linux的命令行模式是一樣的。 (2) 菜單模式 系統(tǒng)在啟動(dòng)時(shí),如果找到/boot/grub/menu.lst,則grub顯示grub并進(jìn)入菜單模式,如圖4-4所示。菜單模式下用戶可以選擇要啟動(dòng)的操作系統(tǒng),或者修改配置。菜單的定義在menu.lst文件中,也可以從菜單模式按鍵進(jìn)入命令行模式,并且可以按鍵從命令行模式返回菜單模式。菜單模式下按鍵將進(jìn)入菜單編輯模式。 (3) 菜單編輯模式 菜單編輯
19、模式用來(lái)對(duì)菜單項(xiàng)進(jìn)行編輯改變,其界面和菜單模式的界面十分類似,不同的是菜單中顯示的是對(duì)應(yīng)某個(gè)菜單項(xiàng)的命令列表。如果在編輯模式下按下,則取消所有當(dāng)前對(duì)菜單的編輯并回到菜單模式下。在編輯模式下選中一個(gè)命令行,就可以對(duì)這條指令進(jìn)行修改,修改完畢后按下回車,GRUB將提示你確認(rèn)并完成修改。如果你想在當(dāng)前命令列表中增加一條命令,按在當(dāng)前命令的下面增加一條指令,按在當(dāng)前命令前處增加一條指令,按刪除一條指令。 在實(shí)際中,菜單模式用于選擇要啟動(dòng)的操作系 統(tǒng),菜單編輯模式用于臨時(shí)修改編輯啟動(dòng)菜單,這樣的修改可疑通過(guò)命令寫(xiě)入MBR活指定的分區(qū),但并不影響grub.conf。命令行模式也是一樣,可以通 過(guò)命令方式動(dòng)
20、態(tài)啟動(dòng)一個(gè)操作系統(tǒng),同時(shí)也不影響grub.conf。所以,菜單編輯模式和命令行模式常常用來(lái)安裝GRUB到MBR或動(dòng)態(tài)引導(dǎo)一個(gè)操作系 統(tǒng)。而GRUB的配置文件,則是系統(tǒng)啟動(dòng)時(shí)GRUB程序必須加載的配置文件,這個(gè)文件中有關(guān)于GRUB的各種配置。不需要用戶每次啟動(dòng)都執(zhí)行繁瑣的命令 了。 4. GRUB配置文件 grub.conf是GRUB的配置文件,其結(jié)構(gòu)比較簡(jiǎn)單,可以分為兩部分,第一步分是全局配置,另外一部分就是每個(gè)操作系統(tǒng)的啟動(dòng)配置。其中可以有多個(gè)操作系統(tǒng)的菜單配置。下面就是一個(gè)具體的例子。 #=/boot/grub/grub.conf文件范例= timeout 30 # 等待用戶選擇菜單項(xiàng)的時(shí)
21、間(以秒計(jì)),超時(shí)則引導(dǎo)默認(rèn)的選項(xiàng) default 0 # 默認(rèn)選項(xiàng),第一項(xiàng) fallback 1 # 如果第一項(xiàng)出錯(cuò),則啟動(dòng)下面的后備選項(xiàng) splashimage=(hd0,0)/grub/splash.xpm.gz #GRUB啟動(dòng)畫(huà)面 #以下是啟動(dòng)Linux的配置 titleRed Hat Linux Enterprise AS3 for syd168 #啟動(dòng)項(xiàng)的菜單標(biāo)題 root (hd0,0) #指定根文件系統(tǒng),第1塊硬盤(pán)第1個(gè)扇區(qū)中的/boot。 kernel /vmlinuz-2.4.18 ro root=LABEL=/ #內(nèi)核在/boot中 initrd /initrd-2.4.
22、18-14.img #啟動(dòng)RAM盤(pán)在/boot下 #以下是啟動(dòng)Windows的配置,如果只有Linux就不需要 title Windows2003 Enterprise for syd168 #Windows啟動(dòng)菜單標(biāo)題 root noverify(hd0,1) #該操作系統(tǒng)在hd0的第二分區(qū),不mount chainloader +1 #從第一個(gè)硬盤(pán)的第二個(gè)分區(qū)引導(dǎo)Windows #=/boot/grub/grub.conf文件范例= 上面的例子,只是簡(jiǎn)單說(shuō)明了GRUB中啟動(dòng)Linux和Windows的配置方法。更多的啟動(dòng)配置請(qǐng)參考下面內(nèi)容。 5. 引導(dǎo)多系統(tǒng)配置 GRUB支持多操作系統(tǒng)引導(dǎo)。用GRUB引導(dǎo)后可以進(jìn)入命令行模式或者菜單模式,可 以通過(guò)靈活的命令行模式選擇引導(dǎo)各個(gè)分區(qū)的操作系統(tǒng),指定引導(dǎo)參數(shù)。GRUB支持三種引導(dǎo)方法,一種是直接引導(dǎo)操作系統(tǒng)內(nèi)核,另一種是通過(guò) chainload進(jìn)行間接引導(dǎo),第三種就是通過(guò)網(wǎng)絡(luò)引導(dǎo)操作系統(tǒng)。 對(duì)于GRUB能夠支持的Linux,F(xiàn)reeBSD,OpenBSD,NetBSD,GUN Mach等可以通過(guò)直接引導(dǎo)完成,但是對(duì)于GRUB不支持的操作系統(tǒng)(如Windows),需要用第二種方法chainload來(lái)完成。下面就分別來(lái)看看這幾種引導(dǎo)方法: (1) 直接引導(dǎo) 配置過(guò)程通常如下: a) 用root命令設(shè)置包含操作系統(tǒng)內(nèi)核的根
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度戶外用品銷售居間協(xié)議范本
- 2025年度水塔施工合同終止與解除協(xié)議2篇
- 2025版軟裝搭配師工作室合作合同
- 2025年度水產(chǎn)養(yǎng)殖技術(shù)研發(fā)與產(chǎn)品銷售合同3篇
- 二零二五年度辦公用品倉(cāng)儲(chǔ)物流服務(wù)合同2篇
- 二零二五年度沖孔樁機(jī)操作員崗位安全教育與協(xié)議3篇
- 二零二五年便利店加盟店能耗監(jiān)控與管理合同3篇
- 2024年裝修項(xiàng)目勞務(wù)分包合作合同版B版
- 二零二五年度住宅小區(qū)消防設(shè)施應(yīng)急演練與維保協(xié)議3篇
- 二零二五年度單間租賃合同(含租客信用評(píng)估體系)3篇
- 民航空乘英語(yǔ)全套教學(xué)課件
- 2024奧數(shù)競(jìng)賽5年級(jí)培訓(xùn)題-答案版
- 主題班會(huì)記錄表20篇
- 2024年北京通建信息系統(tǒng)有限公司招聘筆試參考題庫(kù)含答案解析
- 秦代建筑配色特征研究報(bào)告
- 安徽省建設(shè)工程工程量清單計(jì)價(jià)依據(jù)說(shuō)明
- 冷庫(kù)安全操作規(guī)程培訓(xùn)
- 省級(jí)非急救醫(yī)療轉(zhuǎn)運(yùn)管理規(guī)范
- 課程設(shè)計(jì)DLP4-13型鍋爐中硫煙煤煙氣袋式除塵濕式脫硫系統(tǒng)設(shè)計(jì)
- 煤泥綜合利用的可行性研究報(bào)告
- 三年級(jí)《剪窗花》課件
評(píng)論
0/150
提交評(píng)論