身为 JAVA 程序员,平时少不了一些 linux 运维工作,本文将整理本人近期用到的几个的 Linux 操作,作为网络笔记,以备后用。
新安装的MySQL数据库,使用程序或者客户端无法连接,主要有两方面的原因。
1 数据库本身配置的原因,解决办法:
第一步,登录mysql
第二步,UPDATE mysql.user SET HOST=’%’ WHERE USER=‘root’;
第三步,flush privileges;
2 目标服务器防火墙问题:防火墙没有关闭的情况下,是无法访问目标机器的。
尤其是centos7版本的防火墙关闭命令为:
systemctl stop firewalld.service
重装的系统,无法上网,ping www.baidu.com -c 2时,报错unkonwn host,说明该服务器的DNS配置有问题,修正 操作如下:
1 编辑网卡配置文件,添加DNS信息,文件名称为/etc/sysconfig/network-scripts/ifcfg-eth0(注意:具体根据ifconfig显示的通讯网卡名称来修改)
DNS1=114.114.114.114
修改完成后重启网卡服务:/etc/init.d/network restart
2 编辑/etc/resolv.conf文件,添加两个DNS
nameserver 114.114.114.114
这两个跟DNS配置有关的文件都修改之后,再执行ping百度操作,就能成功了。
需要在Linux目标机器上,可以通过crontab完成。具体操作步骤为:
1)执行crontab -e
2)编辑文件,在尾部添加一行,日期表达式+命令
20 00 * * * /usr/sbin/ntpdate 192.168.103.107
Linux的Crontab表达式为“分 时 周 月 年”,"20 00 * * *"表示每天0:20分进行时钟同步操作。
定时任务的执行情况,通过以下命令来监控。
tail -f /var/log/cron
如果有某些操作需要开机启动,那么使用systemd如何添加开机启动呢?其实就是需要编写systemd进程需要的服务配置文件,此处实现一个简单的java -version的脚本开机启动服务添加。
操作流程:
1 在/home目录下touch jdkp.sh
2 编辑该文件添加一行java -version
3 在systemd的系统配置文件目录下创建服务文件
cd /etc/systemd/system
vi jdkp.service
简单的服务文件,只添加以下基本信息:
[Unit]
Description=print jdk version
After=network.target
[Service]
Type=forking
ExecStart=/bin/sh /home/jkdp.sh
[Install]
WantedBy=multi-user.target
4 启用服务
systemctl enable jdkp.service
5 启动服务
systemctl start jdkp.service
CenOS7下添加开机启动的操作,编写开机启动脚本的后,无法成功启用服务报错提示missing"=",然后手动去掉空格输入脚本服务内容后,重启成功。
猜想可能是在本地EditPlus编辑时有特殊字符,然后在服务器上重新手动编辑竟然成功了。破费了一番周折,但是终于搞明白了systemd的开机启动服务是怎么回事了。