标签 服务器 下的文章

Linux自动备份网站文件和MySQL数据到远程服务器

本地生成备份

创建备份文件夹

mkdir -p /home/bakup

创建本地备份脚本文件

vi /root/bakup.sh

写入:

#打包网站文件
tar zcvpf /home/backup/blog-`date +%Y%m%d%H%M`.tar.gz /home/wwwroot/2dan.cc/* --exclude={'list','view','news'}

#导出数据库至独立文件
databases=`mysql --user=root -p123456 -e "show databases;" | grep -Ev "(Database|mysql|information_schema|performance_schema)"`
for db in $databases; do
  mysqldump -uroot -p123456 --lock-tables=false --databases $db | gzip > "/home/bakup/$db-`date +%Y%m%d%H%M`.sql.gz"
done
#删除3天前的备份
find /home/backup/  -name "*.gz" -type f -ctime  +3 | xargs rm -rf

- 阅读剩余部分 -

Linux服务器快速屏蔽指定国家访问

安装 ipset

#Debian/Ubuntu 系统
apt-get -y install ipset

#CentOS 系统
yum -y install ipset

创建规则

#创建一个名为 krip 的规则
ipset -N krip hash:net
#下载国家 IP 段,以韩国为例
wget -P /root http://www.ipdeny.com/ipblocks/data/countries/kr.zone
#将 IP 段添加到 krip 规则中
for i in $(cat /root/kr.zone ); do ipset -A krip $i; done

屏蔽韩国IP访问

iptables -I INPUT -p tcp -m set --match-set krip src -j DROP

只允许韩国IP访问

#放行IP段
iptables -A INPUT -p tcp -m set --match-set krip src -j ACCEPT

#关掉所有端口
iptables -P INPUT DROP

解除屏蔽

#-D 为删除规则
iptables -D INPUT -p tcp -m set --match-set krip src -j DROP

保存规则

#Centos
service iptables save

#Debian/Ubuntu
service netfilter-persistent save


Hetzner服务器设置/更改RAID和磁盘分区并安装操作系统

一:自动模式(软 RAID0)
在 Hetzner 的控制面板里开启 rescue(救援模式) 后再在 reset 里重启服务器,之后 SSH 连接服务器,直接输入下面的一行命令就可以了,以Ubuntu20.04为例:

echo x | installimage -p /boot:ext3:1G,/:ext4:all -l 0 -r yes -i images/Ubuntu-2004-focal-64-minimal.tar.gz  -a -n Hz && reboot

其它系统和版本只需要修改上方命令中镜像文件包名字即可。

- 阅读剩余部分 -

Nginx搭建flv mp4流媒体服务器

环境:Centos8 / Debian12

一、安装依赖包

1.安装gcc-c++编译器

Centos

yum -y install gcc-c++

Debian

apt install -y build-essential

2.安装zlib

wget http://zlib.net/zlib-1.3.1.tar.gz
tar xzvf zlib-1.3.1.tar.gz
cd zlib-1.3.1
./configure
make && make install

3.安装pcre

wget https://sourceforge.net/projects/pcre/files/pcre/8.45/pcre-8.45.tar.gz
tar zxvf pcre-8.45.tar.gz
cd pcre-8.45
./configure --prefix=/usr/local/pcre
make && make install

4.安装 perl openssl

Centos

yum install -y perl perl-devel
yum install -y openssl openssl-devel

Debian

apt install -y perl libperl-dev
apt install -y openssl libssl-dev

5.下载mp4支持模块备用

wget https://raw.githubusercontent.com/code-shop-com/h264/refs/heads/main/download/nginx_mod_h264_streaming-2.2.7.tar.gz
tar zxvf nginx_mod_h264_streaming-2.2.7.tar.gz
vi nginx_mod_h264_streaming-2.2.7/src/ngx_http_streaming_module.c

- 阅读剩余部分 -

MySQL数据库多服务器实时同步

严格说来,MySQL的数据库同步不能叫“同步”,因为它是单向的,只能从主服务器(master)到从服务器(slave),官方文档称之为“replication(复制)”。

通过同步,可以自动备份数据库到另一台机器;可以负载均衡,把写操作放在主服务器,读操作分散在从服务器;还可以在主服务器故障时,临时进行切换,故障排除后再切回来……当然,本文涉及到的,只是如何设置同步。

1 系统环境
1.1 主服务器
Centos6,MySQL 5.1.57。 MySQL使用MyISAM存储引擎,关闭InnoDB存储引擎。
若用到InnoDB的数据库,其同步设置会有差异,本文不涉及。

mysql -u root -p

登入数据库,然后执行

SHOW TABLE STATUS FROM database;

查看database数据库使用何种存储引擎。

- 阅读剩余部分 -