Centos 修改主机名
一、临时修改
$ sudo hostname weedhost # 查看主机名 $ hostname weedhost
临时修改在重启后会恢复原样
二、永久修改
# 查看当前主机名 $ cat /etc/sysconfig/network NETWORKING=yes HOSTNAME=localhost.localdomain GATEWAY=192.168.10.1 # HOSTNAME就是主机名了,vi /etc/sysconfig/network 修改保存即可
一、临时修改
$ sudo hostname weedhost # 查看主机名 $ hostname weedhost
临时修改在重启后会恢复原样
二、永久修改
# 查看当前主机名 $ cat /etc/sysconfig/network NETWORKING=yes HOSTNAME=localhost.localdomain GATEWAY=192.168.10.1 # HOSTNAME就是主机名了,vi /etc/sysconfig/network 修改保存即可
应用环境可以是安全要求比较高的VPS或者独立服务器,一般允许内网IP登入,或者VPN进去。
vi /etc/hosts.allow sshd:192.168.0.100:allow //允许IP 192.168.0.100 登录 sshd:192.168.0.:allow //允许IP 192.168.0. 网段登录 sshd:all:deny //禁止其他的所有IP登录 或者 sshd:223.227.223.*:allow //允许IP 223.227.223.* 网段登录 sshd:192.168.0.*:allow //允许IP 192.168.0.* 网段登录 sshd:all:deny //禁止其他的所有IP
Vi checkload.sh 创建脚本
#!/bin/sh
TOP_SYS_LOAD_NUM=20
SYS_LOAD_NUM=`uptime | awk '{print $(NF-2)}' | sed 's/,//'`
echo $(date +"%y-%m-%d") `uptime`
if [ `echo "$TOP_SYS_LOAD_NUM < $SYS_LOAD_NUM"|bc` -eq 1 ]
then
echo "##" $(date +"%y-%m-%d %H:%M:%S") "pkill httpd" `ps -ef | grep httpd | wc -l`
pkill httpd
sleep 10
for i in 1 2 3
do
if [ `pgrep httpd | wc -l` -le 0 ]
then
/usr/local/apache2/bin/apachectl start
sleep 30
echo "##" $(date +"%y-%m-%d %H:%M:%S") "start httpd" `ps -ef | grep httpd | wc -l`
fi
done
else
if [ `pgrep httpd | wc -l` -le 0 ]
then
/usr/local/apache2/bin/apachectl start
sleep 30
echo "##" $(date +"%y-%m-%d %H:%M:%S") "start httpd" `ps -ef | grep httpd | wc -l`
fi
fi 然后在/etc/crontab里增加定时执行的命令:
*/2 * * * * root /root/checkload.sh >>/root/checkload.log
注意 chmod 755 /root/checkload.sh 设置脚本权限
安装依赖和Git
yum -y install zlib-devel openssl-devel perl cpio expat-devel gettext-devel openssl zlib curl autoconf tk wget http://git-core.googlecode.com/files/git-1.7.10.tar.gz tar xzvf git-latest.tar.gz cd git-2011-11-30 #你的目录可能不是这个 autoconf ./configure make sudo make install
检查版本
git --version
加上 | more -c 即可
比如:
.configure --help | more -c
在mac终端下输入
ssh -l root *.*.*.* 就可以远程连接Centos服务器了,端口没变还是:22
如果改变端口用下面方法输入:
ssh -p 448(你改变的端口) -l root(连接用户名) *.*.*.* 这个是端口改变后的连接
记录一下:Sftp用Transmit软件进行Ftp操作
ssh
ssh 连接的时候 Host key verification failed.
解决方法:
vi ~/.ssh/known_hosts
进入此目录,删除192.168.1.90的相关rsa的信息即可.
或者删除这个文件
cd ~/.ssh/
rm known_hosts
来源
作者:瑞克互动
网站:http://www.reake.com/
要備份 MySQL 資料庫主要分為兩個方法,
一是將資料庫目錄完整備份
二是使用 MySQL 內建的 mysqldump 程式。
備份資料庫目錄
MySQL 預設的儲存目錄在 /var/lib/mysql 內容,底下會有以資料庫名稱的目錄,例如 mydb 目錄便應該是 mydb 資料庫的資料。
如果 MySQL 正在運行,請先停止 MySQL,原因是可能會有資料未完全寫入,而 MySQL 會 lock 在使用中的 DB 檔案。
/etc/rc.d/init.d/mysqld stop cd /var/lib/mysql/ tar zxcf mydb_backup.tgz mydb /etc/rc.d/init.d/mysqld start
以上指令會先停止 MySQL,然後把 mydb 資料庫製作一個 taz 檔的備份,並儲存到 mydb_backup.tgz。
在使用以上指令時,請根據個別系統的設定作出修改。
好了,以上就麼 3 句指令就完成備份了,如果不幸的事情發生了,資料庫發生錯誤而要復原資料,可使用以下指令:
/etc/rc.d/init.d/mysqld stop cd /var/lib/mysql/ mv mydb mydb_error tar zxvf mydb_backup.tgz /etc/rc.d/init.d/mysqld start #以上指令是先把 /var/lib/mysql/mydb 移到 /var/lib/mysql/mydb_error,然後將原先製作的備份檔解壓到 /var/lib/mysql/mydb。
mysqldump
雖然以上方法十分簡單,但有一個問題存在,那就是在備份及復原時均需停止 MySQL 的運作,這樣對於實際應用十分不便。再者,這樣備份出來的檔案,如果在相同版本的 MySQL Server 應該沒有問題,但移到版本不同的 Server 則不一定可以成功復原。
因為有以上的問題,MySQL 已經內建了備份工具,它就是 mysqldump。
mysqldump 的備份方法是將資料庫內的每個資料表結構及每筆資料產生 SQL 語句,然後存到文字檔。而且它可以自訂每一個資料表一個檔案,以及將資料表結構及資料分開儲存,以下是使用例子:
mysqldump --user=root -p mydb > /backup/mydb.sql
以上指令會使用 mysqldump 將 mydb 備份到 /backup/mydb.sql,在輸入指令後,需要輸入 MySQL 的 root 密碼。
至於復原資料同樣簡單,只要一句指令便完成:
mysqldump --user=root -p mydb < /backup/mydb.sql
以上指令會將 /backup/mydb.sql 備份檔復原到 mydb 裡面。如果你的 MySQL Server 不止一個資料庫,希望可以一次過將所有資料庫備份起來,可以寫一個簡單的 shell script 完成,又或者使用以下指令:
mysqldump --user=root -p --all-databases > /backup/mysql.sql
這個 –all-databases 代表所有資料庫,這樣 mysqldump 便會將所有資料庫備份到 /backup/mysql.sql。
2015年8月16日更新
如果还原单个数据库出现问题,可以进入mysql进行还原
mysql -hlocalhost -u用户名 -p密码 进入mysql create database test; use test; source /root/test.sql
====================================================
歡迎轉載,但轉載時請保留此宣告,不得作為商業用途
作者: Sam Tang
來源網站: http://www.phpdc.com/
#!/bin/bash runck=`ps -fe |grep "httpd" |grep -v "grep" |wc -l` if [ $runck -eq 0 or 1 ]; then sudo service httpd restart else echo “run status starting” >>/var/log/run.log fi
本文参考学习:
http://www.linuxqq.net/archives/160.html
http://wangyan.org/blog/pid-auto-reboot-shell-html.html
http://www.fushanlang.com/blog/linux-shell-jin-cheng-jian-kong-yu-zi-dong-zhong-qi-2236/
有个用户的MySQL数据库表在phpMyAdmin中显示使用中,提示已经损坏
MySQL的错误日记提示:Table ‘xxx’ is marked as crashed and should be repaired
如果和野草主机一样服务器安装了phpMyAdmin,登入进去,选中有问题的表,滑倒网页底部,有“选中项”的,打开选项,点击“修复表”,即可修复。
1.显示最后20行
tail -n 20 文件名
如tail -n 20 log.txt
2.显示中间20,从1000开始
cat log.txt|tail -n +1000|head -n 20
注:tail -n +行号 意思为 从第多少行开始 ,如果是 tail -n -行 == tail -n 行 意思为文件末尾多少行的数据
head -n 20 前20行的数据
3.也可以用sed命令
如 sed -n '100,120p' log.txt 100 到120行的数据。
参考学习:http://www.cnblogs.com/tuozi001/archive/2013/01/10/2855617.html
[root@localhost ~]# service mysqld start
Another MySQL daemon already running with the same unix socket.
正在启动 mysqld: [失败]
尝试重启,出现如下错误
[root@localhost ~]# /etc/init.d/mysqld status
mysqld 已停
可以执行该命令修复
mv /var/lib/mysql/mysql.sock /var/lib/mysql/mysql.sock.bak
参考:http://bbs.csdn.net/topics/390662731?page=1#post-396281623
vim /etc/csf/csf.conf PORTFLOOD = "22;tcp;5;300,80;tcp;20;5" /etc/init.d/csf start
解释:
1),如果300秒内有5个以上连接到tcp端口22的连接,则至少在发现最后一个数据包300秒后阻止该IP地址访问端口22,即在该阻止被取消前有300秒的"安静" 期。
2), 如果5秒内有20个以上连接到tcp端口80的连接,则至少在发现最后一个数据包5秒后阻止该IP地址访问端口80,即在该阻止被取消前有5秒的"安静" 期。
给我感觉是,csf不光有一面墙,墙后面,还有一张网,动态防御。感觉这一点做的比较好。
参考: http://blog.51yip.com/server/1503.html