他のユーザーRHEL8でwallコマンドを実行する

他のユーザーRHEL8でwallコマンドを実行する

ルート(または他のユーザー)にフェンスメッセージを送信し、元のユーザーを認識しないようにするにはどうすればよいですか。

以下をご覧ください。壁にルートのメッセージを表示したいが、まだadmin1が表示されます。何を見逃していますか?

-c、tmux、runuserにコマンドを送信して、さまざまなsudo -i、-sを試しましたが、結果は常に同じです。 sudoersまたは他のもののグローバル設定ですか?

文脈上、これは私が理解できず、答えもないテスト問題です!

 [admin1@RHELPOC ~]$ sudo su - [root@RHELPOC ~]# id uid=0(root)
 gid=0(root) groups=0(root)
 context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
 [root@RHELPOC ~]# wall "whoisthis"
 
 Broadcast message from admin1@RHELPOC (pts/0) (Fri Jan  8 13:58:40
 2021): whoisthis

ベストアンサー1

wallgetloginメッセージのユーザー名を取得し、呼び出しが失敗したgetpwuid場合にのみgetlogin置き換えるために使用されます。ここ)。

getlogin返品プロセス制御端末にログインするためのユーザー名(からgetlogin マンページ)「ログインシェル」suでなくても、ユーザーとグループIDが0のシェルのみを実行するため、次のsu -結果は変わりませんgetloginシェルをログインシェルで起動します。環境は実際のログインに似ています。(からソビエト機械のヘルプページ)。

getpwuid(getuid())getlogin実際には「正しい」ユーザーを返しますが、呼び出しが失敗した場合にのみ呼び出されます。

したがって、wall「ルートから開始」するには、実際にはTTYにrootとしてログインする必要があります。そのコマンドを使ってログインすることもできますが、loginFedoraの端末では動作しないようです。

編集:Fedoraに何が問題なのかわかりません。loginUbuntu VMで期待どおりに動作しますか?

vtrefny@ubuntu:~$ sudo login
ubuntu login: root
Password: 
Welcome to Ubuntu 20.04.1 LTS (GNU/Linux 5.4.0-58-generic x86_64)

...

root@ubuntu:~# wall "aaaa"
                                                                               
Broadcast message from root@ubuntu (pts/0) (Fri Jan  8 21:57:39 2021):         
                                                                               
aaaa

したがって、答えはlogin動作するシステムで使用することです:-)

おすすめ記事