本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,特別是涉及一種nvidia顯卡驅(qū)動(dòng)安裝的方法及裝置。
背景技術(shù):
隨著計(jì)算機(jī)技術(shù)的發(fā)展進(jìn)步,工作站已經(jīng)被越來(lái)越多地被應(yīng)用在監(jiān)控系統(tǒng)中。
工作站是一種高檔的微型計(jì)算機(jī),主要用于圖形圖像處理、高性能計(jì)算、數(shù)值模擬、氣象數(shù)據(jù)處理、有限元分析、可視化超大圖形、地質(zhì)勘探、石油天然氣以及4k視頻編輯等方面。為了發(fā)揮出工作站的穩(wěn)定性能,工作站的操作系統(tǒng)一般使用linux系統(tǒng)的redhat系統(tǒng),顯卡則一般使用nvidia的獨(dú)立顯卡。
現(xiàn)有的工作站的nvidia顯卡驅(qū)動(dòng)安裝的方式一般是運(yùn)行下載好的顯卡驅(qū)動(dòng)即可。對(duì)于redhat6以上的系統(tǒng)來(lái)說(shuō),由于系統(tǒng)默認(rèn)安裝了nouveau驅(qū)動(dòng),在安裝nvidia顯卡驅(qū)動(dòng)時(shí),系統(tǒng)會(huì)報(bào)錯(cuò),提示nouveau驅(qū)動(dòng)已存在,使得nvidia顯卡驅(qū)動(dòng)無(wú)法順利安裝。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種nvidia顯卡驅(qū)動(dòng)安裝的方法及裝置,目的在于解決在redhat6以上的系統(tǒng)中無(wú)法順利安裝nvidia顯卡驅(qū)動(dòng)的問(wèn)題。
為解決上述技術(shù)問(wèn)題,本發(fā)明提供一種nvidia顯卡驅(qū)動(dòng)安裝的方法,該方法包括:
檢測(cè)當(dāng)前系統(tǒng)內(nèi)的nouveau驅(qū)動(dòng)是否處于運(yùn)行狀態(tài),所述當(dāng)前系統(tǒng)為redhat6以上的系統(tǒng);
當(dāng)所述nouveau驅(qū)動(dòng)處于所述運(yùn)行狀態(tài)時(shí),關(guān)閉所述nouveau驅(qū)動(dòng);
刪除位于黑名單中的nvidia受限驅(qū)動(dòng);
執(zhí)行安裝指令,運(yùn)行預(yù)下載的nvidia顯卡驅(qū)動(dòng)文件,完成nvidia顯卡驅(qū)動(dòng)安裝。
可選地,所述當(dāng)所述nouveau驅(qū)動(dòng)處于所述運(yùn)行狀態(tài)時(shí),關(guān)閉所述nouveau驅(qū)動(dòng)包括:
當(dāng)所述nouveau驅(qū)動(dòng)處于所述運(yùn)行狀態(tài)時(shí),將所述nouveau驅(qū)動(dòng)加入至所述黑名單,關(guān)閉所述nouveau驅(qū)動(dòng);
執(zhí)行配置生成指令,重新生成nouveau驅(qū)動(dòng)的配置文件。
可選地,在所述刪除位于黑名單中的nvidia受限驅(qū)動(dòng)之前還包括:
檢測(cè)所述nouveau驅(qū)動(dòng)是否處于所述運(yùn)行狀態(tài);
若是,則關(guān)閉所述nouveau驅(qū)動(dòng);
若否,則執(zhí)行后續(xù)步驟。
可選地,在所述執(zhí)行安裝指令,運(yùn)行預(yù)下載的nvidia顯卡驅(qū)動(dòng)文件,完成nvidia顯卡驅(qū)動(dòng)安裝之前還包括:
檢測(cè)所述nvidia受限驅(qū)動(dòng)是否處于運(yùn)行狀態(tài);
若是,則刪除所述nvidia受限驅(qū)動(dòng);
若否,則執(zhí)行后續(xù)步驟。
此外,本發(fā)明還提供了一種nvidia顯卡驅(qū)動(dòng)安裝的裝置,該裝置包括:
第一檢測(cè)模塊,用于檢測(cè)當(dāng)前系統(tǒng)內(nèi)的nouveau驅(qū)動(dòng)是否處于運(yùn)行狀態(tài),所述當(dāng)前系統(tǒng)為redhat6以上的系統(tǒng);
第一關(guān)閉模塊,用于當(dāng)所述nouveau驅(qū)動(dòng)處于所述運(yùn)行狀態(tài)時(shí),關(guān)閉所述nouveau驅(qū)動(dòng);
第一刪除模塊,用于刪除位于黑名單中的nvidia受限驅(qū)動(dòng);
運(yùn)行模塊,用于執(zhí)行安裝指令,運(yùn)行預(yù)下載的nvidia顯卡驅(qū)動(dòng)文件,完成nvidia顯卡驅(qū)動(dòng)安裝。
可選地,所述關(guān)閉模塊包括:
加入單元,用于當(dāng)所述nouveau驅(qū)動(dòng)處于所述運(yùn)行狀態(tài)時(shí),將所述nouveau驅(qū)動(dòng)加入至所述黑名單,關(guān)閉所述nouveau驅(qū)動(dòng);
生成單元,用于執(zhí)行配置生成指令,重新生成nouveau驅(qū)動(dòng)的配置文件。
可選地,還包括:
第二檢測(cè)模塊,用于檢測(cè)所述nouveau驅(qū)動(dòng)是否處于所述運(yùn)行狀態(tài);
第二關(guān)閉模塊,用于若是,則關(guān)閉所述nouveau驅(qū)動(dòng);
第一執(zhí)行模塊,用于若否,則執(zhí)行后續(xù)步驟。
可選地,還包括:
第三檢測(cè)模塊,用于檢測(cè)所述nvidia受限驅(qū)動(dòng)是否處于運(yùn)行狀態(tài);
第二刪除模塊,用于若是,則刪除所述nvidia受限驅(qū)動(dòng);
第二執(zhí)行模塊,用于若否,則執(zhí)行后續(xù)步驟。
本發(fā)明所提供的一種nvidia顯卡驅(qū)動(dòng)安裝的方法及裝置,通過(guò)檢測(cè)當(dāng)前系統(tǒng)內(nèi)的nouveau驅(qū)動(dòng)是否處于運(yùn)行狀態(tài),上述當(dāng)前系統(tǒng)為redhat6以上的系統(tǒng);當(dāng)nouveau驅(qū)動(dòng)處于運(yùn)行狀態(tài)時(shí),關(guān)閉nouveau驅(qū)動(dòng);刪除位于黑名單中的nvidia受限驅(qū)動(dòng);執(zhí)行安裝指令,運(yùn)行預(yù)下載的nvidia顯卡驅(qū)動(dòng)文件,完成nvidia顯卡驅(qū)動(dòng)安裝。本申請(qǐng)通過(guò)關(guān)閉導(dǎo)致nvidia顯卡驅(qū)動(dòng)無(wú)法安裝的nouveau驅(qū)動(dòng),且刪除了黑名單中的nvidia受限驅(qū)動(dòng),使得nvidia顯卡驅(qū)動(dòng)順利安裝于redhat6以上的系統(tǒng)。
附圖說(shuō)明
為了更清楚的說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例所提供的nvidia顯卡驅(qū)動(dòng)安裝方法的一種具體實(shí)施方式的流程示意圖;
圖2為本發(fā)明實(shí)施例所提供的nvidia顯卡驅(qū)動(dòng)安裝裝置的結(jié)構(gòu)框圖。
具體實(shí)施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說(shuō)明。顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
請(qǐng)參見圖1,圖1為本發(fā)明實(shí)施例所提供的nvidia顯卡驅(qū)動(dòng)安裝方法的一種具體實(shí)施方式的流程示意圖,該方法包括以下步驟:
步驟101:檢測(cè)當(dāng)前系統(tǒng)內(nèi)的nouveau驅(qū)動(dòng)是否處于運(yùn)行狀態(tài),所述當(dāng)前系統(tǒng)為redhat6以上的系統(tǒng);
具體地,接收檢測(cè)指令,運(yùn)行檢測(cè)程序,檢測(cè)當(dāng)前系統(tǒng)內(nèi)的nouveau驅(qū)動(dòng)是否運(yùn)行。該檢測(cè)指令可以具體為:lsmod|grepnouveau。
運(yùn)行檢測(cè)程序,可以通過(guò)判斷是否有結(jié)果返回,來(lái)判斷nouveau驅(qū)動(dòng)是否處于運(yùn)行狀態(tài),即若有結(jié)果返回,則nouveau驅(qū)動(dòng)處于運(yùn)行狀態(tài),若沒有結(jié)果返回,則nouveau不處于運(yùn)行狀態(tài)。
步驟102:當(dāng)所述nouveau驅(qū)動(dòng)處于所述運(yùn)行狀態(tài)時(shí),關(guān)閉所述nouveau驅(qū)動(dòng)。
具體地,執(zhí)行檢測(cè)指令后,有檢測(cè)結(jié)果返回,則nouveau驅(qū)動(dòng)正在運(yùn)行。首先將nouveau驅(qū)動(dòng)加入黑名單中,然后執(zhí)行關(guān)閉指令,關(guān)閉nouveau驅(qū)動(dòng),然后重新生成nouveau驅(qū)動(dòng)的配置文件。
作為一種具體實(shí)施方式,上述當(dāng)所述nouveau驅(qū)動(dòng)處于所述運(yùn)行狀態(tài)時(shí),關(guān)閉所述nouveau驅(qū)動(dòng)的過(guò)程具體可以為:當(dāng)所述nouveau驅(qū)動(dòng)處于所述運(yùn)行狀態(tài)時(shí),將所述nouveau驅(qū)動(dòng)加入至所述黑名單,關(guān)閉所述nouveau驅(qū)動(dòng);執(zhí)行配置生成指令,重新生成nouveau驅(qū)動(dòng)的配置文件。
需要說(shuō)明的是,上述黑名單可以是指redhat6以上的系統(tǒng)內(nèi)的黑名單,即blacklist。
首先可以在#vi/etc/modprobe.d/blacklist-nouveau.conf中增加代碼blacklistnouveau,optionsnouveaumodeset=0,以將nouveau驅(qū)動(dòng)加入黑名單,并關(guān)閉該驅(qū)動(dòng);然后可以根據(jù)配置生成指令(#dracut–force),生成配置文件kernelinitramfs。
步驟103:刪除位于黑名單中的nvidia受限驅(qū)動(dòng)。
具體地,可以在配置文件地址將blacklistnvidiafb刪除或注釋掉,然后加上blacklistnouveau,以解除nvidia受限驅(qū)動(dòng)。該配置文件地例如可以為:#vi/usr/lib/modprobe.d/dist-blacklist.conf。
為了防止nouveau驅(qū)動(dòng)關(guān)閉失敗,導(dǎo)致nvidia顯卡驅(qū)動(dòng)無(wú)法順利安裝的情況發(fā)生,可以再次nouveau驅(qū)動(dòng)是否處于運(yùn)行狀態(tài)。
作為一種具體實(shí)施方式,在上述刪除位于黑名單中的nvidia受限驅(qū)動(dòng)之前還可以包括:檢測(cè)所述nouveau驅(qū)動(dòng)是否處于所述運(yùn)行狀態(tài);若是,則關(guān)閉所述nouveau驅(qū)動(dòng);若否,則執(zhí)行后續(xù)步驟。
具體地,在重新啟動(dòng)機(jī)器后,再次檢查nouveau驅(qū)動(dòng)是否正在運(yùn)行,其檢測(cè)過(guò)程可以和上文的檢測(cè)過(guò)程類似,請(qǐng)參見上文相應(yīng)內(nèi)容,在此不再贅述。
可以理解的是,當(dāng)檢測(cè)出nouveau驅(qū)動(dòng)正在運(yùn)行時(shí),其關(guān)閉過(guò)程和上文的關(guān)閉過(guò)程類似,在此不再贅述。
可以看出,二次檢測(cè)nouveau驅(qū)動(dòng)的狀態(tài),可以避免nouveau驅(qū)動(dòng)關(guān)閉失敗導(dǎo)致的nvidia顯卡驅(qū)動(dòng)無(wú)法正常安裝的問(wèn)題出現(xiàn)。
步驟104:執(zhí)行安裝指令,運(yùn)行預(yù)下載的nvidia顯卡驅(qū)動(dòng)文件,完成nvidia顯卡驅(qū)動(dòng)安裝。
需要說(shuō)明的是,上述安裝指令可以具體表現(xiàn)為#init3,即在機(jī)器重啟之后,運(yùn)行上述安裝指令,即可執(zhí)行預(yù)先下載好的nvidia顯卡驅(qū)動(dòng)文件。
可以理解的是,為了防止nvidia受限驅(qū)動(dòng)刪除失敗,可以在執(zhí)行安裝指令,再次檢查nvidia的狀態(tài)。
作為一種具體實(shí)施方式,在上述執(zhí)行安裝指令,運(yùn)行預(yù)下載的nvidia顯卡驅(qū)動(dòng)文件,完成nvidia顯卡驅(qū)動(dòng)安裝之前還可以包括:檢測(cè)所述nvidia受限驅(qū)動(dòng)是否處于運(yùn)行狀態(tài);若是,則刪除所述nvidia受限驅(qū)動(dòng);若否,則執(zhí)行后續(xù)步驟。
需要說(shuō)明的是,此處的受限驅(qū)動(dòng)刪除過(guò)程與上文相應(yīng)過(guò)程類似,在此不再贅述。
本發(fā)明實(shí)施例所提供的nvidia顯卡驅(qū)動(dòng)安裝的方法,通過(guò)檢測(cè)當(dāng)前系統(tǒng)內(nèi)的nouveau驅(qū)動(dòng)是否處于運(yùn)行狀態(tài),上述當(dāng)前系統(tǒng)為redhat6以上的系統(tǒng);當(dāng)nouveau驅(qū)動(dòng)處于運(yùn)行狀態(tài)時(shí),關(guān)閉nouveau驅(qū)動(dòng);刪除位于黑名單中的nvidia受限驅(qū)動(dòng);執(zhí)行安裝指令,運(yùn)行預(yù)下載的nvidia顯卡驅(qū)動(dòng)文件,完成nvidia顯卡驅(qū)動(dòng)安裝。本申請(qǐng)通過(guò)關(guān)閉導(dǎo)致nvidia顯卡驅(qū)動(dòng)無(wú)法安裝的nouveau驅(qū)動(dòng),且刪除了黑名單中的nvidia受限驅(qū)動(dòng),使得nvidia顯卡驅(qū)動(dòng)順利安裝于redhat6以上的系統(tǒng)。
下面對(duì)本發(fā)明實(shí)施例提供的nvidia顯卡驅(qū)動(dòng)安裝裝置進(jìn)行介紹,下文描述的nvidia顯卡驅(qū)動(dòng)安裝裝置與上文描述的nvidia顯卡驅(qū)動(dòng)安裝方法可相互對(duì)應(yīng)參照。
圖2為本發(fā)明實(shí)施例所提供的nvidia顯卡驅(qū)動(dòng)安裝裝置的結(jié)構(gòu)框圖,參照?qǐng)D2nvidia顯卡驅(qū)動(dòng)安裝裝置可以包括:
第一檢測(cè)模塊21,用于檢測(cè)當(dāng)前系統(tǒng)內(nèi)的nouveau驅(qū)動(dòng)是否處于運(yùn)行狀態(tài),上述當(dāng)前系統(tǒng)為redhat6以上的系統(tǒng);
第一關(guān)閉模塊22,用于當(dāng)nouveau驅(qū)動(dòng)處于運(yùn)行狀態(tài)時(shí),關(guān)閉nouveau驅(qū)動(dòng);
第一刪除模塊23,用于刪除位于黑名單中的nvidia受限驅(qū)動(dòng);
運(yùn)行模塊24,用于執(zhí)行安裝指令,運(yùn)行預(yù)下載的nvidia顯卡驅(qū)動(dòng)文件,完成nvidia顯卡驅(qū)動(dòng)安裝。
可選地,上述關(guān)閉模塊包括:
加入單元,用于當(dāng)nouveau驅(qū)動(dòng)處于運(yùn)行狀態(tài)時(shí),將nouveau驅(qū)動(dòng)加入至黑名單,關(guān)閉nouveau驅(qū)動(dòng);
生成單元,用于執(zhí)行配置生成指令,重新生成nouveau驅(qū)動(dòng)的配置文件。
可選地,還包括:
第二檢測(cè)模塊,用于檢測(cè)nouveau驅(qū)動(dòng)是否處于運(yùn)行狀態(tài);
第二關(guān)閉模塊,用于若是,則關(guān)閉nouveau驅(qū)動(dòng);
第一執(zhí)行模塊,用于若否,則執(zhí)行后續(xù)步驟。
可選地,還包括:
第三檢測(cè)模塊,用于檢測(cè)nvidia受限驅(qū)動(dòng)是否處于運(yùn)行狀態(tài);
第二刪除模塊,用于若是,則刪除nvidia受限驅(qū)動(dòng);
第二執(zhí)行模塊,用于若否,則執(zhí)行后續(xù)步驟。
本發(fā)明實(shí)施例所提供的nvidia顯卡驅(qū)動(dòng)安裝的裝置,通過(guò)檢測(cè)當(dāng)前系統(tǒng)內(nèi)的nouveau驅(qū)動(dòng)是否處于運(yùn)行狀態(tài),上述當(dāng)前系統(tǒng)為redhat6以上的系統(tǒng);當(dāng)nouveau驅(qū)動(dòng)處于運(yùn)行狀態(tài)時(shí),關(guān)閉nouveau驅(qū)動(dòng);刪除位于黑名單中的nvidia受限驅(qū)動(dòng);執(zhí)行安裝指令,運(yùn)行預(yù)下載的nvidia顯卡驅(qū)動(dòng)文件,完成nvidia顯卡驅(qū)動(dòng)安裝。本申請(qǐng)通過(guò)關(guān)閉導(dǎo)致nvidia顯卡驅(qū)動(dòng)無(wú)法安裝的nouveau驅(qū)動(dòng),且刪除了黑名單中的nvidia受限驅(qū)動(dòng),使得nvidia顯卡驅(qū)動(dòng)順利安裝于redhat6以上的系統(tǒng)。
本說(shuō)明書中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其它實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同或相似部分互相參見即可。對(duì)于實(shí)施例公開的裝置而言,由于其與實(shí)施例公開的方法相對(duì)應(yīng),所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法部分說(shuō)明即可。
專業(yè)人員還可以進(jìn)一步意識(shí)到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來(lái)實(shí)現(xiàn),為了清楚地說(shuō)明硬件和軟件的可互換性,在上述說(shuō)明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來(lái)執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來(lái)使用不同方法來(lái)實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來(lái)實(shí)施。軟件模塊可以置于隨機(jī)存儲(chǔ)器(ram)、內(nèi)存、只讀存儲(chǔ)器(rom)、電可編程rom、電可擦除可編程rom、寄存器、硬盤、可移動(dòng)磁盤、cd-rom、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。
以上對(duì)本發(fā)明所提供的nvidia顯卡驅(qū)動(dòng)安裝的方法及裝置進(jìn)行了詳細(xì)介紹。本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本發(fā)明的方法及其核心思想。應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以對(duì)本發(fā)明進(jìn)行若干改進(jìn)和修飾,這些改進(jìn)和修飾也落入本發(fā)明權(quán)利要求的保護(hù)范圍內(nèi)。