権限のないコンテナ用にLXCとして構成されているLinuxサーバーDebian Busterがあります。また、sssd_beで多くの競合が発生しました。サーバーのdmesgは次のように言います。
dmesg|grep segfault
sssd_be[6739]: segfault at 8 ip 00007f080b190714 sp 00007ffc24a170a8 error 4 in libdbus-1.so.3.19.7[7f080b15d000+52000]
sssd_be[7517]: segfault at 8 ip 00007fec6ca4f714 sp 00007ffc71eec028 error 4 in libdbus-1.so.3.19.7[7fec6ca1c000+52000]
sssd_be[8853]: segfault at 8 ip 00007f9d181be714 sp 00007ffd42f784e8 error 4 in libdbus-1.so.3.19.7[7f9d1818b000+52000]
sssd_be[15961]: segfault at 8 ip 00007f1560855714 sp 00007ffc784710e8 error 4 in libdbus-1.so.3.19.7[7f1560822000+52000]
sssd_be[16728]: segfault at 8 ip 00007fa83b9df714 sp 00007fff1432b228 error 4 in libdbus-1.so.3.19.7[7fa83b9ac000+52000]
sssd_be[30789]: segfault at 8 ip 00007f0c21213714 sp 00007ffd37808908 error 4 in libdbus-1.so.3.19.7[7f0c211e0000+52000]
sssd_be[13515]: segfault at 8 ip 00007f67fd079714 sp 00007ffdae2dac78 error 4 in libdbus-1.so.3.19.7[7f67fd046000+52000]
sssd_be[26637]: segfault at 8 ip 00007fa775531714 sp 00007ffd3bd1b9a8 error 4 in libdbus-1.so.3.19.7[7fa7754fe000+52000]
sssd_be[4466]: segfault at 8 ip 00007f10cc150714 sp 00007ffe8e909a08 error 4 in libdbus-1.so.3.19.7[7f10cc11d000+52000]
sssd_be[11382]: segfault at 8 ip 00007f0bcddee714 sp 00007fffcd021998 error 4 in libdbus-1.so.3.19.7[7f0bcddbb000+52000]
衝突を引き起こしたプロセスがどのコンテナにあるかを知りたいのですが、どうすればよいですか? htopはopenvzコンテナ名を報告しますが、lxcコンテナ名は報告しません。だから私はpsを試しましたが、非常に奇妙な結果が出ました。
ps -efww -O lxc
PID LXC S TTY TIME COMMAND
31825 - S pts/9 00:00:00 bash
1478 - R pts/9 00:00:00 \_ ps
コンテナ名を表示する方法はありますか?
答え1
解決策が見つかりました。 ansible を使用して sssd_be ドメインを実行するスクリプトを作成します。
#!/bin/sh
pgrep -a sssd
cat /etc/hostname
この「スクリプト」を使用してスクリプトを実行すると、stdoutに結果が表示されます。
- name: Transfer and execute a script.
hosts: all
become_user: root
tasks:
- script: script.sh
register: results
- debug:
var: results.stdout
スクリプトを実行した後、sssd_beプロセスがある2つのドメインが見つかったので、そのコンピュータでsssdを無効にし、正常に動作します。