
Linux
一起讨论
记录工作中的干货
展开
-
Debian11系统Redis源码安装
#!/bin/bash# Debian11 Redis6.2.6安装# 安装依赖包apt install gcc make pkg-config -y# 解压tar xf redis-6.2.6.tar.gz # 开始安装cd redis-6.2.6# 编译makemake install# 安装目录 usr/local/bin/root@debian112:~# ll /usr/local/bin/总用量 25048-rwxr-xr-x 1 root root原创 2022-03-12 10:02:52 · 1147 阅读 · 0 评论 -
利用Shell脚本校验数据一致性
#!/bin/bash######################################检测两台服务器指定目录下的文件一致性######################################通过对比两台服务器上文件的md5值,达到检测一致性的目的# 服务器需要校验的目录current_dir=/data/tomcat# 远端服务器ip地址des_ip=192.168.2.1# 当前服务器的数据校验md5值find $current_dir -type f|xarg原创 2022-03-01 08:58:15 · 1312 阅读 · 0 评论 -
Debian11更新阿里镜像源
# 进入源配置文件存放路径cd /etc/apt# 备份系统源mv sources.list{,.bak}# 查看系统版本,然后阿里云镜像站更换相应版本源more /etc/debian_version # 拷贝阿里云镜像源vim sources.list # 直接删除旧源,复制阿里云源# 更新源列表apt update...原创 2022-02-22 12:23:40 · 4285 阅读 · 0 评论 -
iptables配置实例
查看当前所有规则iptables -L -n 查看所有规则iptables -nL --line-number 显示行iptables -nvL --line-number 显示行清空所有配置iptables -Fiptables -Xiptables -Z允许ssh端口及lookback规则iptables -A INPUT -i lo -j ACCEPTiptables -A OUTPUT -o lo -j ACCEPTiptables -A INPUT -p tcp --dp原创 2022-02-14 15:45:57 · 809 阅读 · 1 评论 -
MySQL查看库的大小
#查所有据库的表大小(全部)select table_schema as '表名', table_name as '表名',table_rows as '记录数',truncate(data_length/1024/1024, 2) as '数据容量(MB)',truncate(index_length/1024/1024, 2) as '索引容量(MB)'from information_schema.tablesorder by data_length desc, index_length de.原创 2022-02-14 15:31:00 · 467 阅读 · 0 评论 -
获取Linux系统的网卡ip地址
ip -4 addr | sed -ne 's|^.* inet \([^/]*\)/.* scope global.*$|\1|p' | awk '{print $1}' | head -1原创 2022-02-02 12:49:57 · 2017 阅读 · 0 评论 -
Debian 11.2安装ssh服务
Debian 11.2安装ssh服务#!/bin/bashdebian 11.2 安装ssh切换到root用户#更新软件源apt-get update安装sshapt-get install ssh备份ssh的配置文件cp /etc/ssh/sshd_config{,.bak}修改配置文件如下root@localhost:~# more /etc/ssh/sshd_config| grep -v "^#" |grep -v "^$"Include /etc/ssh/sshd原创 2022-02-01 11:26:45 · 3487 阅读 · 0 评论 -
Tomcat安装指南
卸载系统自带openjdk[root@tomcat ~]# rm -rf $(which java)安装下载的jdk[root@tomcat ~]# tar xf jdk-xxx-linux-x64.tar.gz[root@tomcat ~]# mv jdkxxx/ /opt/app/jdk解压安装Tomcat[root@tomcat ~]# tar xf apache-tomcat-xxx.tar.gz[root@tomcat ~]# mv apache-tomcat-xxx /opt/原创 2021-01-26 14:58:49 · 126 阅读 · 0 评论 -
Nginx规则配置实例
配置某个ip或者页面禁止访问及跳转方法server{ listen 80; server_name www.xxx.com.cn; location / { proxy_redirect off; proxy_set_header host $host:$server_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forward原创 2021-01-25 11:03:36 · 341 阅读 · 1 评论 -
ubuntu20修改ip地址方法
ubuntu新系统都是yaml方式修改了,注意yaml格式缩进,网卡目录root@super:~# ll /etc/netplan/实例如下,修改完保存即可root@super:~# more /etc/netplan/00-installer-config.yaml# This is the network config written by 'subiquity'network: ethernets: ens32: addresses: - 172.12原创 2021-01-20 10:46:17 · 2945 阅读 · 0 评论 -
centos7启用iptable
安装iptablesyum install iptables-services停用firewalldsystemctl stop firewalldsystemctl disable firewalld启用iptablessystemctl enable iptablessystemctl start iptables保存iptables规则service iptables save重启service iptables restart...原创 2021-01-18 09:34:39 · 297 阅读 · 0 评论 -
Linux记录用户执行命令
#!/bin/bash# By lumia98@vip.qq.com# 记录用户执行命令及IP地址# 文件存放在 /etc/profile.d 或者/etc/profile# source /etc/profile 生效;# 登录提示权限不足可以忽略,因为这是禁止用户删除权限提示;# Linux系统记录每个用户执行的命令# 创建目录hislog_dir="/tmp/hislog"[ -d ${hislog_dir} ] || mkdir -p ${hislog_dir}# 第一次请先原创 2020-12-30 16:13:55 · 695 阅读 · 2 评论 -
ubuntu定时任务
ubuntu跟Redhat配置定时任务一样设置test.sh脚本权限super@super:~$ sudo chmod +x test.sh设置一个每分钟执行一次脚本super@super:~$ sudo vim /etc/crontab #新增到最后*/1 * * * * root /opt/sh/test.sh# 定时任务是从左到右代表: 分、时、日、月、周# 每个*代表一个时间...原创 2020-12-18 09:44:08 · 331 阅读 · 1 评论 -
ubuntu常用操作指令(安卸查升)
dpkg安装deb包sudo dpkg -i *.deb # 安装所有deb包sudo dpkg -i xxx.deb # 安装单个xxx包apt安装sudo apt install lsof -y卸载软件# apt remove --purge 卸载软件及软件配置清空(小心使用)sudo apt remove --purge linux-modules-5.4.0-58-generic linux-headers-5.4.0-58-generic linux-h原创 2020-12-17 14:59:06 · 446 阅读 · 0 评论 -
Ubuntu20升级内核修复漏洞
升级ubuntu内核先查看本机内核super@super:~$ sudo uname -r5.4.0-58-generic打开ubuntu官网# 下载地址https://kernel.ubuntu.com/~kernel-ppa/mainline# 找到对应需要的版本# 可以用查看比较合适的内核sudo apt-cache search linux-image下载内核(四个)super@super:/opt/kerner$ lltotal 75792linux-headers原创 2020-12-17 10:25:43 · 1574 阅读 · 0 评论 -
Ubuntu配置iptables规则
Ubuntu配置防火墙,并且开机iptables自启动规则;适用于CentOS1、登录root账号# 切换到root账号super@super:~$ sudo passwd root # 设置root密码super@super:~$ su - root # 切换到root账号以下操作可以在root下也可以在普通账号,但是ubuntu保存配置必须在root下.每次添加或者删除规则,务必保存配置,以免丢失.1、清空iptables所有配置(新系统操作)sudo iptab原创 2020-12-16 15:35:16 · 7519 阅读 · 0 评论 -
Ubuntu开机自启动方法
现在CentOS要开始停止维护了,所以开始慢慢转向debian或者ubuntu;虽然大同小异,但是还是有些细节不一样,这里写一下Ubuntu脚本开机跟Redhat一样的启动方式。1、添加rc.local服务super@super:~$ sudo more /etc/systemd/system/rc-local.service[Unit]Description=rc.localConditionPathExists=/etc/rc.local [Service]Type=forkingEx原创 2020-12-16 10:30:12 · 1121 阅读 · 0 评论 -
单台Nginx反向代理多个80端口服务
主要解决端口不够,公网ip紧张配置Nginx主配置文件more /opt/app/nginx/nginx.confuser cents cents; # nginx启动账号worker_processes auto;error_log logs/error.log;pid logs/nginx.pid;worker_rlimit_nofile 65535; #需要打开文件限制limitevents {use epoll;worker_connections 65535;}ht原创 2020-12-11 16:00:25 · 1179 阅读 · 1 评论 -
Nginx日志切割(压缩日志)
#!/bin/bash#By lumia98@vip.qq.com# Nginx日志切割脚本,压缩日志打包脚本export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin#日志路径log_path='/var/log/nginx'#nginx的pid路径pid_path="/tmp/nginx.pid"#截取日志名称logs_names=$(ls -f $log_path |grep原创 2020-12-10 10:30:31 · 882 阅读 · 0 评论 -
Apache日志切割(方便备份)
#安装cronologyum install epel-releaseyum install cronolog#配置虚拟主机# vim /opt/app/apache/conf/extra/httpd-vhosts.conf (虚拟主机配置文件)<VirtualHost *:80> ServerAdmin sadoc.blog.51cto.com DocumentRoot "/var/www" ServerName bbs.52cto.com Serv原创 2020-12-08 11:15:49 · 173 阅读 · 0 评论 -
MySQL全备增量备份(xtrabackup)
MySQL通过xtrabackup备份及恢复数据安装xbk( XtraBackup8.0开始不支持MySQL8.0之前的版本)# 下载地址,可以下载rpm等包https://www.percona.com/downloads/Percona-XtraBackup-LATEST/# dnf或yum安装dnf install percona-xtrabackup-80-8.0.14-1.el8.x86_64.rpm -yxbk备份的核心功能1、针对非innodb引擎表进行锁表备份,copy所有原创 2020-11-20 21:51:56 · 512 阅读 · 0 评论 -
Linux判断进程id是否运行
#!/bin/bash#By lumia98@vip.qq.com#MySQL进程获取#MySQL_PID=$(ps -ef| grep mysql|grep -v root|awk '{print $2}')#JAVA进程获取#JAVA_PID=$(ps -ef| grep java|grep -v grep|awk '{print $2}')# MongoDB进程获取MongoDB_PID=$(ps -ef| grep mongodb | grep -v grep | awk '{p原创 2020-12-01 17:10:59 · 492 阅读 · 0 评论 -
MongoDB恢复备份数据
#!/bin/bash#By lumia98@vip.qq.com#导入MongoDB备份数据export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin:/opt/app/mongodb-4021/bin'#MongoDB的地址Host='127.0.0.1'#MongoDB端口Port=27017#管理员用户UserName='root'#管理员密码Password='1234原创 2020-12-01 15:19:54 · 145 阅读 · 0 评论 -
MongoDB报错(too many open file)
错误信息2020-11-30T18:18:22.000+0800 I - [ftdc] Assertion: 13538:couldn't open [/proc/11915/stat] errno:24 Too many open files2020-11-30T18:18:22.065+0800 W FTDC [ftdc] Uncaught exception in 'Location13538: couldn't open [/proc/11915/stat] errno:2原创 2020-12-01 10:16:33 · 933 阅读 · 0 评论 -
Linux脚本shell检测端口(可用于zabbix)
#!/bin/bash# By lumia98@vip.qq.com# 检测系统端口脚本# Redis、Mongodb、kafka# 探测服务器地址127.0.0.1# zabbix触发器规则是0for p in {6379,27017,46457,2181,43335}; do # 如果3秒内端口不通,则不输出ok timeout 3 bash -c "</dev/tcp/127.0.0.1/$p &>/dev/null" if [ $? != 0 ];then原创 2020-11-30 15:54:37 · 525 阅读 · 0 评论 -
MongoDB备份脚本(正式环境)
[root@mongodb ~]# more /opt/script/mongodb-data.sh #!/bin/bash#Author:lumia98@vip.qq.com#备份MongoDB-4.0.2export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/app/jdk/bin:/opt/app/tomcat/bin:/opt/app/mongodb/bin:/root/bin#mongo原创 2020-11-30 09:50:14 · 1064 阅读 · 0 评论 -
MongoDB安装
学习笔记By lumia98@vip.qq.com1、安装MongoDB# 下载MongoDB软件[root@test ~]$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-4.0.21-rc1.tgz# 解压MongoDB[root@test ~]$ tar xf mongodb-linux-x86_64-rhel80-4.0.21-rc1.tgz# 创建MongoDB软件日志等目录,拷贝bin目录下原创 2020-11-27 17:25:04 · 118 阅读 · 0 评论 -
Python压缩程序日志方便备份
#!/usr/bin/env python3# Version = 3.8.1"""压缩共享文件访问日志date: 2020-01-08Author:lumia98@vip.qq.com"""from zipfile import ZipFileimport zipfile,osdef zipfiles(localzip, dirpath): for path, dirnames, filenames in os.walk(dirpath): # 去掉目标跟路径,原创 2020-11-26 17:10:42 · 268 阅读 · 0 评论 -
Python备份数据(适用于远程备份)
#!/usr/bin/env python3# -*- coding: utf-8 -*-"""通过paramiko从远处服务器下载文件资源到本地author: lumia98@vip.qq.comtime: 2020-01-02"""import paramikoimport osfrom stat import S_ISDIR as isdirfrom datetime import datetimedef down_from_remote(sftp_obj, remote_原创 2020-11-20 21:47:22 · 743 阅读 · 0 评论 -
MySQL启动脚本(改编官方启动脚本)
MySQL二进制及编译安装启动脚本[root@localhost ~]# more /etc/init.d/mysqld #!/bin/bash# MySQL启动脚本# by lumia98@vip.qq.com#安装目录basedir='/opt/app/mysql-3306'#MySQL的bin目录bindir='/opt/app/mysql-3306/bin'#MySQL数据存放目录datadir='/databases/mysql-3306/data'#MySQL的配置原创 2020-11-20 21:55:45 · 701 阅读 · 0 评论 -
MySQL主从复制(开启GTID)
MySQL二进制安装脚本(开启gtid)0、创建mysql目录脚本#!/bin/bash# mysql二进制安装脚本,也适用多实例# 创建安装目录basedir='/opt/app/mysql-3306' #mysql安装目录datadir='/databases/mysql-3306/data' #mysql数据存放目录etcdir=${basedir}/etc #my.cnf存放目录logdir=${basedir}/logs原创 2020-11-20 21:53:47 · 629 阅读 · 0 评论 -
Shell备份MySQL脚本
#!/bin/bash# backup database# 备份MySQL# by liushexport PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/app/mysql/dir/bin:/root/bin#备份开始时间#echo "start:" $(date +"%Y-%m-%d %H:%M:%S")# 数据库账号密码dbuser='root'dbpasswd='hao3q3'#原创 2020-11-20 21:57:47 · 238 阅读 · 0 评论 -
Docker入门手册
1、安装docker# By lumia98@vip.qq.com [root@test ~]$ yum-config-manager --add-repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo [root@test ~]$ yum -y install docker-ce2、把docker的镜像地址改成国内阿里地址# By lumia98@vip.qq.com# 查看镜像地址原创 2020-11-23 14:48:26 · 218 阅读 · 0 评论 -
LNMP+zabbix5.0编译安装
# zabbix5.0编译安装### 一、安装LNMP环境(CentOS7)### 0、前期安装```shell[root@zabbix ~]# yum -y install wget vim lsof lrzsz pcre-devel zlib-devel make gd-devel libjpeg-devel libpng-devel libxml2-devel bzip2-devel libcurl-devel libmcrypt libmcrypt-devel mcrypt mhash原创 2020-11-23 14:33:28 · 1357 阅读 · 0 评论