web-dev-qa-db-ja.com

キーボードのバックライトをオフにするにはどうすればよいですか? (2011 Sony Vaio PCG-41217Nノートパソコン)

この質問は、他のいくつかのソニーVAIOラップトップモデルに存在します(回答なし)。 Sony vaio PCG-41217Nラップトップの答えはまだ見ていません。

提案xset led offを実行しても、バックライトは無効になりません。このラップトップは仕事用であるため、 サードパーティソフトウェア をインストールするリスクを冒したくありません。

以前のaskerのソニーvaioの仕事 を見ると、私のSudo dmidecode -s system-product-nameVPCSB1AHJを与えます。 Idoには/sys/devices/platform/sony-laptop/kbd_backlightおよびkbd_backlight_timeoutファイルがあります。どちらも4.1 kBで、geditで開くとテキスト「-1」のみが表示されます。

1
DBinJP

すべてが感謝します!

必要に応じて、他のスクリプト answer を採用しました。今、私のタッチパッドは動作します。少し変更するだけで、そのスクリプトはキーボードのバックライトとタッチパッドで機能します。 KBDBACKLIGHTTOUCHPADに置き換えるだけです-上記の元のスクリプトを見てください。

GnomeでUbuntu 17.10を使用しています。

#!/bin/sh
TOUCHPAD="/sys/devices/platform/sony-laptop/touchpad"
read VALUE < "$TOUCHPAD"  
if   [ "${VALUE}" -eq '0' ]; then echo '1' > "$TOUCHPAD"; notify-send "Touchpad ON" 
Elif [ "${VALUE}" -eq '1' ]; then echo '0' > "$TOUCHPAD"; notify-send "Touchpad OFF"
else echo "Something went wrong."; notify-send "Something went wrong."
fi

ソニーのVaioのカスタムショートカット ctrl+win+* キーボードのバックライトのon/offスイッチとして機能し、 ctrl+win+F1 タッチパッドを無効および有効にします。 VALUEsに注意してください-私のラップトップのオン/オフ値は10で、元のスクリプト0-1とは異なります。 (ラップトップで機能しない場合は、これらの番号を編集してください)。

乾杯:)

1
Zuzia

読み取り専用のテキストファイル「kbd_backlight」の値を( 元々-1 )ターミナルでSudo gedit /sys/devices/platform/sony-laptop/kbd_backlightを介してrootアクセスでgeditで開いた後。

Sudoを使用してgeditを開くと問題が発生します。このサイトでは、ユーザーとルート間のファイル所有権を適切に管理する代わりにgksudoを使用することをお勧めします。 Sudo geditを実行したとき、ターミナルで複数の警告を受け取りました

1
DBinJP

@DBinJPの investigation (および here )に基づいて、完全なソリューションへの道をここに示します。


1。次の行をsingleコマンドとして実行します(それらをすべてコピーして、ターミナルに貼り付けます) 。これにより、kbdbacklightというスクリプトが作成され、/usr/local/binに配置されて、シェルコマンドシステム全体としてアクセス可能になります。

cat << EOF | Sudo tee /usr/local/bin/kbdbacklight && Sudo chmod +x /usr/local/bin/kbdbacklight
#!/bin/sh
KBD_BACKLIGHT="/sys/devices/platform/sony-laptop/kbd_backlight"
read VALUE < "\$KBD_BACKLIGHT"
if   [ "\${VALUE}" -eq '0' ]; then echo '-1' > "\$KBD_BACKLIGHT"
Elif [ "\${VALUE}" -eq '-1' ]; then echo '0' > "\$KBD_BACKLIGHT"
else echo "Something went wrong."; notify-send "Something went wrong."
fi
EOF

説明:

  • コマンドcat << EOFは、次の文字列EOFまで次の行を出力します。これらの行は、_|にパイプされ、コマンドteeにパイプされて、ファイル/usr/local/bin/kbdbacklightに書き込まれます。この操作が成功した場合&&、ファイルに実行許可を与えますchmod +x。バックスラッシュ\は、catコマンド内の$記号の特別な意味をエスケープします。

  • 最初の2行で、スクリプトはファイル/sys/devices/platform/sony-laptop/kbd_backlightの値を読み取ります。次に、値が0の場合、-1に変更され、その逆も同様です。

これで、スクリプトはシェルコマンドとしてアクセスできる必要があります。タイプSudo kbdbacklightエンドヒット EnterSudoによってrootとしてコマンドを実行するためのパスワードが求められます。


2。すべてのユーザーに、Sudoを介してパスワードなしでコマンド(スクリプト)を実行する権限を付与します。ユーザーがsudoersグループに属しているかどうかに関係なく。

注:常にコマンド visudo を使用してsudoersファイルを編集し、システムからロックアウトされないようにします–誤って何か間違ったものをsudoersファイルに書き込んだ場合に備えて。 visudoは、変更されたファイルを一時的な場所に保存し、変更されたファイルをエラーなしで解析できる場合、onlyだけを実際のsudoersファイルに上書きします... source .

この目的のために、ファイル/etc/sudoers.d/kbdbacklightを作成します。コマンドを実行します。

Sudo visudo -f /etc/sudoers.d/kbdbacklight

そして、ファイルの内容として次の行を配置します。次に、ファイルを保存して閉じます。

ALL ALL=NOPASSWD: /usr/local/bin/kbdbacklight

これで、すべてのユーザーがパスワードなしでコマンドSudo kbdbacklightを実行できるようになりました。


3。Create カスタムキーボードショートカット およびスクリプトを目的のキー(またはキーの組み合わせ)にバインドします。

  • システム設定キーボードショートカット(タブ)→カスタムショートカット(セクション)→新規追加 +

  • カスタムショートカットウィンドウタイプ:[Namekbdbacklight]、[CommandSudo kbdbacklight]。 をクリックしますApply

  • Disabledラベルをクリックして、キーボードショートカットキーまたは組み合わせを設定します。


コマンドのデータと機能に基づいて、lsusbxinputevtestacpi_listenapcid)など、利用可能な他の解決策があるはずです。有用なアイデアを提供できるリファレンスを次に示します。

1
pa4080