找不到/etc/syslog.conf解决办法

1、首先我们需要先确认我们的开发板上是否安装了syslog服务,在开发板的文件系统下输入syslogd help命令查看如果不支持就是busybox的版本太低了,如图出现this version of syslogd ignores /etc/syslog.conf就是这个版本的syslogd不支持/etc/syslog.conf,需要我们重新构建一个支持/etc/syslog.conf的linux系统。

在这里插入图片描述

2、配置busybox使其支持syslog.conf

在buildroot目录下运行make busybox-mencuconfig命令进行配置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
选择保存后,在buildroot目录下运行make busybox-update-config进行配置更新。

3、syslog.conf写入格式

/etc/syslog.conf文件中的一项配置记录由“选项”(selector)和“动作”(action)两个部分组成,两者间用tab制表符进 行分隔(使用空格间隔是无效的)。而“选项”又由一个或多个形如“类型.级别”格式的保留字段组合而成,各保留字段间用分号分隔。如下行所示:
类型.级别 TAB 动作

4、配置syslog.conf

1)在package/busybox目录下创建syslog.conf文件
在这里插入图片描述
2)然后在busybox.mk添加如下代码,将syslog.conf增加到根文件系统
在这里插入图片描述
3)然后在syslog.conf中写入消息处理配置文档,示例如下:
在这里插入图片描述
4)在buildroot目录下进行重新编译:
make busybox-dirclean && make -j4
在这里插入图片描述
5)烧写到arm板卡,进行测试
可以看到此时的syslogd已经支持/etc/syslog.conf
在这里插入图片描述
而且根文件目录已经有Syslog.conf文件
在这里插入图片描述
运行测试代码后发现已经生成kernel.log和local.log文件

5、 Syslog测试代码


#include <stdio.h>
#include <syslog.h>
int main(int argc, char **argv)
{
    openlog("MyMsgMARK", LOG_CONS | LOG_PID, LOG_LOCAL0);
    syslog(LOG_EMERG,  "This is a syslog test message generated by program '%s'/n",  argv[0]);
    openlog("logtest", LOG_CONS | LOG_PID, LOG_USER);
    syslog(LOG_INFO,  "PID information, pid=%d\n",  getpid());
    closelog();
    return 0;
}






























  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
逐条注释 ``` if grep -q "chroot_list_file=/etc/vsftpd/chroot_list" /etc/vsftpd/vsftpd.conf then sed -i '/chroot_list_file=/etc/vsftpd/chroot_list/s/^/#/' /etc/vsftpd/vsftpd.conf echo 'chroot_list_file=/etc/vsftpd/chroot_list' >> /etc/vsftpd/vsftpd.conf else echo 'chroot_list_file=/etc/vsftpd/chroot_list' >> /etc/vsftpd/vsftpd.conf fi if grep -q "anonymous_enable" /etc/vsftpd/vsftpd.conf then sed -i '/anonymous_enable=YES/s/^/#/' /etc/vsftpd/vsftpd.conf sed -i '/anonymous_enable=NO/s/^/#/' /etc/vsftpd/vsftpd.conf echo 'anonymous_enable=NO' >> /etc/vsftpd/vsftpd.conf else echo 'anonymous_enable=NO' >> /etc/vsftpd/vsftpd.conf fi fi touch /etc/vsftpd/chroot_list chmod 750 /etc/vsftpd/chroot_list service vsftpd restart systemctl restart vsftpd.service mv /etc/issue /etc/issue.bak mv /etc/issue.net /etc/issue.net.bak touch /etc/motd chmod 644 /etc/motd rpm -e telnet-server systemctl stop telnet.socket if grep -q "Authorized only. All activity will be monitored and reported" /etc/motd then echo 'have' else echo "Authorized only. All activity will be monitored and reported" >> /etc/motd fi if [ -f "/etc/syslog.conf" ];then echo 'authpriv.* /var/log/secure' >> /etc/syslog.conf echo 'cron.*' >> /etc/syslog.conf echo '*.* @133.64.93.31' >> /etc/syslog.conf service syslog restart fi if [ -f "/etc/rsyslog.conf" ];then echo 'authpriv.* /var/log/secure' >> /etc/rsyslog.conf echo 'cron.*' >> /etc/rsyslog.conf echo '*.* @133.64.97.31' >> /etc/rsyslog.conf service rsyslog restart systemctl restart rsyslog.service fi echo 'ok' ```
07-20
这段脚本的作用是修改一些vsftpd和系统的配置,并重新启动相应的服务。具体解释如下: ```shell if grep -q "chroot_list_file=/etc/vsftpd/chroot_list" /etc/vsftpd/vsftpd.conf then sed -i '/chroot_list_file=/etc/vsftpd/chroot_list/s/^/#/' /etc/vsftpd/vsftpd.conf echo 'chroot_list_file=/etc/vsftpd/chroot_list' >> /etc/vsftpd/vsftpd.conf else echo 'chroot_list_file=/etc/vsftpd/chroot_list' >> /etc/vsftpd/vsftpd.conf fi ``` - 检查/etc/vsftpd/vsftpd.conf文件中是否存在"chroot_list_file=/etc/vsftpd/chroot_list"这一行。 - 如果存在,则使用sed命令在该行的行首添加注释符号#,即禁用chroot_list_file功能。 - 然后在文件末尾添加一行"chroot_list_file=/etc/vsftpd/chroot_list"。 - 如果不存在,则在文件末尾添加一行"chroot_list_file=/etc/vsftpd/chroot_list"。 ```shell if grep -q "anonymous_enable" /etc/vsftpd/vsftpd.conf then sed -i '/anonymous_enable=YES/s/^/#/' /etc/vsftpd/vsftpd.conf sed -i '/anonymous_enable=NO/s/^/#/' /etc/vsftpd/vsftpd.conf echo 'anonymous_enable=NO' >> /etc/vsftpd/vsftpd.conf else echo 'anonymous_enable=NO' >> /etc/vsftpd/vsftpd.conf fi ``` - 检查/etc/vsftpd/vsftpd.conf文件中是否存在"anonymous_enable"这一行。 - 如果存在,则使用sed命令将"anonymous_enable=YES"和"anonymous_enable=NO"这两行的行首添加注释符号#,以禁用匿名用户登录。 - 然后在文件末尾添加一行"anonymous_enable=NO",即禁用匿名用户登录。 ```shell touch /etc/vsftpd/chroot_list chmod 750 /etc/vsftpd/chroot_list service vsftpd restart systemctl restart vsftpd.service ``` - 创建一个空的/etc/vsftpd/chroot_list文件。 - 修改/etc/vsftpd/chroot_list文件的权限为750,即只有所有者具有读、写和执行权限。 - 重新启动vsftpd服务,使配置生效。 ```shell mv /etc/issue /etc/issue.bak mv /etc/issue.net /etc/issue.net.bak touch /etc/motd chmod 644 /etc/motd ``` - 备份/etc/issue和/etc/issue.net文件,将其重命名为/etc/issue.bak和/etc/issue.net.bak。 - 创建一个空的/etc/motd文件。 - 修改/etc/motd文件的权限为644,即所有用户具有读权限,其他权限为空。 ```shell rpm -e telnet-server systemctl stop telnet.socket ``` - 卸载telnet-server软件包。 - 停止telnet服务。 ```shell if grep -q "Authorized only. All activity will be monitored and reported" /etc/motd then echo 'have' else echo "Authorized only. All activity will be monitored and reported" >> /etc/motd fi ``` - 检查/etc/motd文件中是否存在"Authorized only. All activity will be monitored and reported"这一行。 - 如果存在,则输出"have"。 - 如果不存在,则在文件末尾添加一行"Authorized only. All activity will be monitored and reported"。 ```shell if [ -f "/etc/syslog.conf" ];then echo 'authpriv.* /var/log/secure' >> /etc/syslog.conf echo 'cron.*' >> /etc/syslog.conf echo '*.* @133.64.93.31' >> /etc/syslog.conf service syslog restart fi ``` - 检查/etc/syslog.conf文件是否存在。 - 如果存在,则在文件末尾添加以下几行配置: - "authpriv.* /var/log/secure":将authpriv类别的日志记录到/var/log/secure文件。 - "cron.*":将cron类别的日志记录到默认位置。 - "*.* @133.64.93.31":将所有日志发送到IP地址为133.64.93.31的远程主机。 - 重新启动syslog服务,使配置生效。 ```shell if [ -f "/etc/rsyslog.conf" ];then echo 'authpriv.* /var/log/secure' >> /etc/rsyslog.conf echo 'cron.*' >> /etc/rsyslog.conf echo '*.* @133.64.97.31' >> /etc/rsyslog.conf service rsyslog restart systemctl restart rsyslog.service fi ``` - 检查/etc/rsyslog.conf文件是否存在。 - 如果存在,则在文件末尾添加以下几行配置: - "authpriv.* /var/log/secure":将authpriv类别的日志记录到/var/log/secure文件。 - "cron.*":将cron类别的日志记录到默认位置。 - "*.* @133.64.97.31":将所有日志发送到IP地址为133.64.97.31的远程主机。 - 重新启动rsyslog服务,使配置生效。 ```shell echo 'ok' ``` - 输出"ok",表示脚本执行完毕。 这段脚本的目的是修改一些vsftpd和系统的配置,并重新启动相应的服务,以增强系统的安全性和稳定性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星空语

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值