Up 「RF-kill」とは? 作成: 2021-02-12
更新: 2021-02-12


    RFKill (Fedora に関する文書) を引用:
     
    多くのコンピュータシステムが、Wi-Fi、Bluetooth、及び 3G のデバイスを含む電波発信器を格納しています。
    これらのデバイスは電力を消費し、 使用されない時には無駄になります。
    Linux カーネル内のサブシステムである RFKill は、コンピュータシステム内の電波発信器が、クエリ、アクティベート、 そしてディアクティベートされる土台のインターフェイスを提供します。
    発信器がディアクティベートされていると、それらはソフトウェアが 再アクティベートできる状態(ソフトブロック)に置かれるか、又はソフトウェアが再アクティベートできない状態 (ハードブロック)に置かれます。
    RFKill コアはサブシステム用にアプリケーションプログラミングインターフェイス (API) を提供します。
    RFkill をサポートするように設計されているカーネルドライバーは、この API を使用してカーネルで登録し、デバイスを有効にしたり無効にしたりする方法を含んでいます。
    更には、 RFKill コアはユーザーアプリケーションが解釈できる通知と、ユーザーアプリケーションが発信器の状態をクエリする方法を提供します。
    RFKill インターフェイスは /dev/rfkill にありますが、ここにはシステム上にある全ての電波発信器の現在の状態が 含まれています。各デバイスの現在の RFKill 状態は、sysfs に登録されています。
    更には、RFKill は RFKill 対応のデバイス内の状態の各変化について uevents を発行します。


    rfkill コマンド
    • RFKill 対応のデバイス一覧を取得
        $ rfkill list
    • デバイスのブロック
        $ rfkill block [デバイス番号]
        $ rfkill block [デバイスカテゴリー]
    • デバイスのアンブロック
        $ rfkill unblock [デバイス番号]
        $ rfkill unblock [デバイスカテゴリー]

    例:
      $ rfkill block wifi
      $ rfkill unblock wifi



    WiFi を unblock $ rfkill unblock wifi RF-kill デバイスの block/unblock 状態を見る $ rfkill list 0: phy0: Wireless LAN Soft blocked: no Hard blocked: no 1: hci0: Bluetooth Soft blocked: no Hard blocked: no $ rfkill help Usage: rfkill [options] command [identifier ...] Tool for enabling and disabling wireless devices. Options: -J, --json use JSON output format -n, --noheadings don't print headings -o, --output <list> define which output columns to use --output-all output all columns -r, --raw use the raw output format -h, --help display this help -V, --version display version Available output columns: DEVICE kernel device name ID device identifier value TYPE device type name that can be used as identifier TYPE-DESC device type description SOFT status of software block HARD status of hardware block Commands: help event list [identifier] block identifier unblock identifier For more details see rfkill(8). $ ls -la /dev/rfkill crw-rw-r-- 1 root netdev 10, 242 Feb 11 20:35 /dev/rfkill