背景
身為 JAVA 程序員,平時少不了一些 linux 運維工作,本文將整理本人近期用到的幾個的 Linux 操作,作為網絡筆記,以備后用。
MySQL客戶端無法連接問題
新安裝的MySQL數據庫,使用程序或者客戶端無法連接,主要有兩方面的原因。
1 數據庫本身配置的原因,解決辦法:
第一步,登錄mysql
第二步,UPDATE mysql.user SET HOST=’%’ WHERE USER=‘root’;
第三步,flush privileges;
2 目標服務器防火墻問題:防火墻沒有關閉的情況下,是無法訪問目標機器的。
尤其是centos7版本的防火墻關閉命令為:
systemctl stop firewalld.service
修改DNS
重裝的系統,無法上網,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百度操作,就能成功了。
添加crontab定時任務
需要在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的開機啟動服務是怎么回事了。