Root以外のユーザーを使用して、次のようなsocatを使用して疑似端末を作成しています。
socat -d -d PTY,link=$HOME/.wine/dosdevices/com1,raw,echo=0 PTY,link=/tmp/com1-pty,raw,echo=0
これを開くにはルートアプリケーションが必要です/tmp/com1-pty
。これを実行しようとすると、アクセス許可が拒否され、次のSyslogメッセージが表示されます。
Feb 10 17:21:06 ti0085 kernel: [ 590.692819] type=1702 audit(1392060065.998:1004788): op=follow_link action=denied pid=6091 comm="menu" path="/tmp/com1-pty" dev="sda1" ino=48758820
両方の権限の設定など、さまざまなことを試しました/tmp/com1-pty
とそれをウィッチするデバイスは777にリンクします。また、ルートをダイヤルアウトグループに追加しました。違いはないと思いますが、ルートは何でも開くことができると期待しています。
私が間違っているのは何ですか?
/ dev/pts/Xでデバイスを直接開くようにルートアプリを設定しましたが、symで失敗し続けましたが、機能しました。リンク。また、root以外のアプリケーションが、socatによって作成されたシンボリックリンクを開き、rootアプリと問題なく適切に通信できるようになりました。
Socatをrootとして実行する場合、シンボリックリンクのアクセス許可が適切に設定されている限り、すべてが問題なく機能することにも注意してください。
SELinux、Apparmor、またはルートへのアクセスをさらに制限する他のLinuxセキュリティモジュールの1つを実行しています。