很多計算機系統包含無線電傳輸,其中包括Wi-Fi、藍牙和3G設備。這些設備消耗電源,在不使用這些設備時是一種能源浪費。
RFKill 是Linux內核中的一個子系統,它可提供一個接口,在此接口中可查詢、激活並取消激活計算機系統中的無線電傳輸。當取消激活傳輸時,可使其處於可被軟件重新激活的狀態( 軟鎖定 )或軟件無法重新激活的位置( 硬鎖定 )。
RFKill 為內核子系統提供應用程序編程界面(API)。內核驅動程序被設計為支持RFKill使用這個API注冊內核,並包含啟用和禁用這個設備的方法。另外,RFKill提供用戶程序可解讀的通知以及用戶程序查詢傳輸狀態的方法。
RFKill接口位於 /dev/rfkill,其中包含系統中所有無線電傳輸的當前狀態。每個設備都在 sysfs 中注冊當前RFKill狀態。另外,在啟用了RFKill的設備中每當狀態更改時,RFKill會發出 uevents。
rfkill 是一個命令行工具,您可使用它查詢和更改系統中啟用了RFKill的設備。要獲得這個工具,請安裝 rfkill 軟件包。
如果開機時在可以搜索到無線網絡且輸入密碼正確但仍然無法接入的情況下,就可能是rfkill這個程序阻攔了接入,它是個用來控制無線網絡及藍牙的使用的軟開關。
使用命令 rfkill list 獲得設備列表,每個都包含與之關聯的索引號 ,從 0 開始。
rfkill list
您可以使用這個索引號讓 rfkill 停使或者使用某個設備,例如:
rfkill block 0
停用系統中第一個啟用RFKill的設備。
您還可以使用 rfkill 阻斷某一類設備,或者所有啟用了RFKill的設備。例如:
rfkill block wifi
停用系統中的所有Wi-Fi設備。要停用所有啟用了RFKill的設備,請運行:
rfkill block all
要重新使用設備,請運行 rfkill unblock
。要獲得 rfkill 可停用的完整設備類別列表,請運行 rfkill help。