SELinux求助(sealert命令提示解码错误)
1、系统版本:openEuler:24.03 LTS;
2、最小化安装后,再安装UKUI桌面;
3、安装setroubleshoot*相关的软件包;
4、安装httpd
5、修改http服务的配置文件,增加侦听端口:8800;
6、启动http服务,提示失败;
问题如下:
1、使用图形化的sealert工具,可以正常使用;
2、在命令行下,执行【sealert -l 对应的一串ID】,提示错误,解码失败。提示如下:
failed to connect to server: ‘utf-8’ codec can’t decode bytes in position 2046-2047: unexpected end of data
3、在日志中【/var/log/messages】,包含以下内容:
Oct 8 17:48:17 test /usr/bin/sealert[7552]: exception UnicodeDecodeError: ‘utf-8’ codec can’t decode bytes in position 2046-2047: unexpected end of data
Oct 8 17:48:17 test /usr/bin/sealert[7552]: Traceback (most recent call last):
Oct 8 17:48:17 test /usr/bin/sealert[7552]: File “/usr/lib/python3.11/site-packages/setroubleshoot/rpc.py”, line 936, in handle_client_io
Oct 8 17:48:17 test /usr/bin/sealert[7552]: data = data.decode(“utf-8”)
Oct 8 17:48:17 test /usr/bin/sealert[7552]: ^^^^^^^^^^^^^^^^^^^^
Oct 8 17:48:17 test /usr/bin/sealert[7552]: UnicodeDecodeError: ‘utf-8’ codec can’t decode bytes in position 2046-2047: unexpected end of data
Oct 8 17:48:20 test /usr/bin/sealert[7553]: exception UnicodeDecodeError: ‘utf-8’ codec can’t decode bytes in position 2046-2047: unexpected end of data
Oct 8 17:48:20 test /usr/bin/sealert[7553]: Traceback (most recent call last):
Oct 8 17:48:20 test /usr/bin/sealert[7553]: File “/usr/lib/python3.11/site-packages/setroubleshoot/rpc.py”, line 936, in handle_client_io
Oct 8 17:48:20 test /usr/bin/sealert[7553]: data = data.decode(“utf-8”)
Oct 8 17:48:20 test /usr/bin/sealert[7553]: ^^^^^^^^^^^^^^^^^^^^
Oct 8 17:48:20 test /usr/bin/sealert[7553]: UnicodeDecodeError: ‘utf-8’ codec can’t decode bytes in position 2046-2047: unexpected end of data
尝试安装了所有跟ukui、utf8相关的软件包,都没用
dnf -y install ukui utf8
删除虚拟机,重新解压了一个。
执行dnf clean all
执行dnf makecache
执行 dnf -y install python3 setroubleshoot*
执行dnf -y update
第一次,解决了前述的问题。
但是无法定位bug是哪个包
再次以后,又无解了。
刚刚在xfce环境下,试了一次,还是一样的提示。
##2024年10月9日10:44:01,补充:跟前面的出问题的虚拟机模板是一样的
跟进情况:2024年10月9日10:39:44
1、昨晚重新在另外一台笔记本电脑上安装了新的虚拟机,在语言选项里面增加了【美式英语】,可以正常使用sealert命令。
2、今天早上,在办公室的电脑上,重复测试了一下,勾选美式英语后可以正常用,没有勾选则是错误的【有无图形化界面,都是一样的,所以这里应该排除了图形化界面的原因,2024年10月9日10:46:07补充】。
3、但是使用【rpm -qa】导出两个虚拟机的软件包安装情况,完全一致;
4、使用locale等命令检查发现语言环境设置也是一样的。
5、结论:原因查未查出。