Linuxで「デバイスファイルへの書き込み権限を取得する方法」とは何ですか?

Linuxで「デバイスファイルへの書き込み権限を取得する方法」とは何ですか?

画面の明るさを調整するためにBrightnessctlをインストールしましたが、rootとしてのみ機能します。それ以外の場合は、「デバイスファイルへの書き込み権限を取得しました」というアドバイスが印刷されます。これを行う正しい方法は何ですか?また、root権限なしでamixerを使用してボリュームを設定できるようにしたいです。これは同じ問題だと思います。

ベストアンサー1

多くのデバイスアクセスの問題は、グループメンバーシップの変更で解決できます。

sudo journalctl --followデバイスが接続されている間に視聴してデバイス名を見つけることができます。または、ls -1 /dev >dev.beforeデバイスを接続して10秒間待ちますls -1 /dev >dev.after;diff dev.{before,after}

特に、ls -l グループ表示権限(2番目のrwx三重項)が「」rw(例: " -rw-rw----")の場合、デバイスを所有するグループに自分自身を追加すると、rwアクセス権が付与されます。

それだけです:

# change to your device name 
device="/dev/dvdrw"
sudo adduser $USER $(stat -c "%G" $device)

これにより、デバイスを使用できるグループのメンバーになることができますrwしかし、もう一つのステップがあります。

すべてのプロセスを新しいグループのメンバーにするには、ログアウトしてログインします。グループメンバーシップは時間ベースで設定されますlogin

新しいグループから単一のプロセスを作成するには(テスト用、ログアウト/ログイン前):

newgrp $(stat -c "%G" $device)  

またはグループ名を入力してください。望むよりman newgrp

おすすめ記事