systemctl命令显示radiusd.service无法启动.
/ var / log / messages输出:
Aug 21 15:52:29 nexus-test systemd: Starting The Apache HTTP Server... Aug 21 15:52:29 nexus-test systemd: Starting MariaDB database server... Aug 21 15:52:29 nexus-test systemd: Starting FreeRADIUS high performance RADIUS server.... Aug 21 15:52:29 nexus-test systemd: Started OpenSSH server daemon. Aug 21 15:52:29 nexus-test MysqLd_safe: 140821 15:52:29 MysqLd_safe Logging to '/var/log/mariadb/mariadb.log'. Aug 21 15:52:29 nexus-test MysqLd_safe: 140821 15:52:29 MysqLd_safe Starting MysqLd daemon with databases from /var/lib/MysqL Aug 21 15:52:30 nexus-test systemd: Started Postfix Mail Transport Agent. Aug 21 15:52:30 nexus-test avahi-daemon[604]: Registering new address record for fe80::250:56ff:fe85:e4af on eth0.*. Aug 21 15:52:30 nexus-test systemd: radiusd.service: control process exited,code=exited status=1 Aug 21 15:52:30 nexus-test systemd: Failed to start FreeRADIUS high performance RADIUS server.. Aug 21 15:52:30 nexus-test systemd: Unit radiusd.service entered Failed state. Aug 21 15:52:31 nexus-test kdumpctl: kexec: loaded kdump kernel Aug 21 15:52:31 nexus-test kdumpctl: Starting kdump: [OK] Aug 21 15:52:31 nexus-test systemd: Started Crash recovery kernel arming. Aug 21 15:52:31 nexus-test systemd: Started The Apache HTTP Server. Aug 21 15:52:31 nexus-test systemd: Started MariaDB database server.
/var/log/radius/radius.log输出:
Thu Aug 21 15:24:16 2014 : Info: rlm_sql (sql): Driver rlm_sql_MysqL (module rlm_sql_MysqL) loaded and linked Thu Aug 21 15:24:16 2014 : Info: rlm_sql (sql): Attempting to connect to database "radius" Thu Aug 21 15:24:16 2014 : Info: rlm_sql (sql): opening additional connection (0) Thu Aug 21 15:24:16 2014 : Error: rlm_sql_MysqL: Couldn't connect socket to MysqL server radius@localhost:radius Thu Aug 21 15:24:16 2014 : Error: rlm_sql_MysqL: MysqL error 'Can't connect to local MysqL server through socket '/var/lib/MysqL/MysqL.sock' (2)' Thu Aug 21 15:24:16 2014 : Error: rlm_sql (sql): opening connection Failed (0) Thu Aug 21 15:24:16 2014 : Error: /etc/raddb/mods-enabled/sql[47]: Instantiation Failed for module "sql"
看到这个之后我试图复制问题,杀了mariadb.service并开始再次运行调试模式.它会吐出与radius.log相同的问题.
我试过禁用iptables和firewalld并重新启动,但没有运气:
systemctl disable iptables systemctl disable firewalld
所以问题可能在于流程启动顺序或某种延迟.也许FreeRADIUS的sql模块无法连接到尚未启动的MariaDB?如果它,我该如何解决这个问题?
在早期版本的RHEL / CENTOS中,我知道你很容易看到服务启动顺序,如rc.d或stuff,现在IDK.我是这个花哨的“systemd”,“systemctl”,“firewalld”的新手Centos 7介绍所以对不起我有点困惑.这个新的FreeRADIUS 3结构……
PS. MariaDB在启动时启用,FR DB配置中的凭据是正确的
一点点更新:
cat /etc/systemd/system/multi-user.target.wants/radiusd.service输出:
[Unit] Description=FreeRADIUS high performance RADIUS server. After=syslog.target network.target [Service] Type=forking PIDFile=/var/run/radiusd/radiusd.pid ExecStartPre=-/bin/chown -R radiusd.radiusd /var/run/radiusd ExecStartPre=/usr/sbin/radiusd -C ExecStart=/usr/sbin/radiusd -d /etc/raddb ExecReload=/usr/sbin/radiusd -C ExecReload=/bin/kill -HUP $MAINPID [Install] WantedBy=multi-user.target
我在/etc/systemd/system/multi-user.target.wants/radiusd.service上启动了vim并在[Unit]部分添加了一行:
After=mariadb.service
所以它看起来像这样:
[Unit] Description=FreeRADIUS high performance RADIUS server. After=syslog.target network.target After=mariadb.service
重启后,FreeRADIUS启动就好了.
this resource也帮助了我一点点.
原文地址:https://www.jb51.cc/centos/373669.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。