![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
文章平均质量分 90
abothli
拥有五年的开发工作经验,曾从事过开发,分析,算法,人工智能,机器学习,运维的相关开发工作。
展开
-
解决linux上git clone速度慢的问题
在国内,你们肯定发现使用git clone的速度实在太慢,git clone的速度可能会让你难以承受,现再次整理解决方法与大家分享,有图有真相。原因:git clone特别慢是因为github.global.ssl.fastly.net域名被限制了。只要找到这个域名对应的ip地址,然后在hosts文件中加上ip–>域名的映射,刷新DNS缓存便可。1、查找域名对应的ip地址,并修改h...原创 2020-04-08 15:40:56 · 3147 阅读 · 4 评论 -
MySQL的热备份脚本
这是MySQL的备份方式之一,脚本如下:#!/bin/bashPATH=/usr/local/sbin:/usr/bin:/bin# The Directory of BackupBACKDIR=/usr/mysql_backup# The Password of MySQLROOTPASS=password# Remake the Directory of Backuprm -...原创 2018-06-28 22:18:11 · 895 阅读 · 0 评论 -
常用shell脚本
1.批量改名或拷贝文件比如将 start*.sh文件改为stop*.sh拷贝先查看ls -l start*.sh|awk '{m=$9; gsub(/start/,"stop",$9);print "cp "m " "$9}'再运行ls -l start*.sh|awk '{m=$9; gsub(/start/,"stop",$9);print "cp "m " "$9}'|sh改名先查看原创 2018-06-28 22:01:46 · 2738 阅读 · 0 评论 -
shell管理脚本
1.查看当前 linux 系统中能够使用的 shell 程序的列表[root@localhost ~]# cat /etc/shells /bin/sh /bin/bash /sbin/nologin /bin/tcsh /bin/csh /bin/ksh2.确认 shell 程序中存在的部分链接文件[root@localhost ~]# ls -l /bin/*sh -rwxr-xr...原创 2018-06-28 21:49:14 · 1219 阅读 · 0 评论 -
shell经典实例
1 列目录树的shell#!/bin/sh # dtree: Usage: dtree [any directory] dir=${1:-.} (cd $dir; pwd)find $dir -type d -print | sort -f | sed -e "s,^$1,," -e "/^$/d" -e "s,[^/]*/([^/]*)$,`----1," -e "s,[^...原创 2018-06-28 20:45:24 · 6005 阅读 · 0 评论 -
写一个Linux中的授权脚本
#!/bin/shsudo supasswd<<EOF62780505AB62780505ABEOFsed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_configsed -i 's/PermitRootLogin without-password/PermitRo...原创 2018-07-11 01:54:23 · 527 阅读 · 0 评论 -
Hadoop中怎么快速得到包的路径?
在hadoop用户下执行hadoop classpath命令,我们可以得到运行 Hadoop 程序所需的全部 classpath 信息。然后vi .bash_profile文件)添加:export CLASSPATH=.:/home/hadoop/hadoop-2.6.0-cdh5.5.2/etc/hadoop:/home/hadoop/hadoop-2.6.0-cdh5.5.2/share/ha...原创 2018-07-10 00:08:20 · 1047 阅读 · 0 评论 -
Linux中怎么改网卡
1ifconfig eth1 确定新网卡的MAC地址。nmcli con 确定新网卡的UUID2vim /etc/udev/rules.d/70-persistent-net.rules把原eth0的相关信息删除,将eth1的name改为eth03cd /etc/sysconfig/network-scriptsvim ifcfg-eth0 HWADDR=现在的实际MACUUID=现在的实际U...原创 2018-07-11 01:54:34 · 2192 阅读 · 0 评论 -
多线程扫描端口的脚本
#coding:utf-8import socketimport threadimport timesocket.setdefaulttimeout(3) def socket_port(ip,port): try: if port>=65535: print(u"端口扫描结束!") s=socket.socket(socket.AF_INET,sock...原创 2018-07-11 01:54:45 · 478 阅读 · 0 评论 -
Linux中怎么查看有哪些用户?
cat /etc/passwd|grep -v nologin|grep -v halt|grep -v shutdown|awk -F":" '{ print $1"|"$3"|"$4 }'|morecat /etc/passwd原创 2018-07-11 01:54:57 · 11137 阅读 · 0 评论 -
定时任务
基本格式 :* * * * * command分 时 日 月 周 命令第1列表示分钟1~59 每分钟用*或者 */1表示第2列表示小时1~23(0表示0点)第3列表示日期1~31第4列表示月份1~12第5列标识号星期0~6(0表示星期天)第6列要运行的命令crontab -l //列出自己的所有cron任务crontab -r //删除自己的...原创 2018-07-11 01:55:09 · 3320 阅读 · 1 评论 -
列出超过10天的目录的shell脚本
#!/bin/bashnow=$(date +%s)hadoop fs -ls -R | grep "^d" | while read f; do dir_date=`echo $f | awk '{print $6}'` difference=$(( ( $now - $(date -d "$dir_date" +%s) ) / (24 * 60 * 60 ) )) if [ $dif...原创 2018-07-11 01:55:26 · 480 阅读 · 0 评论 -
如何用shell调用hive
#!/bin/sh #参数传递 source /etc/profile; source ~/.bash_profile; BASEDIR=`dirname $0` cd $BASEDIR #classpath优先当前目录 CLASSPATH=$BASEDIR #classpath其次是config目录 #classpath再次是lib目录下面的...原创 2018-07-11 01:55:41 · 5849 阅读 · 0 评论 -
Linux系统性能监控脚本
#!/bin/bash#监控cpu系统负载IP=`ifconfig eth0 | grep "inet addr" | cut -f 2 -d ":" | cut -f 1 -d " "` cpu_num=`grep -c 'model name' /proc/cpuinfo`count_uptime=`uptime |wc -w`load_15=`uptime | awk '{prin...原创 2018-07-10 00:08:32 · 2001 阅读 · 0 评论 -
巡检服务器的shell脚本
#!/bin/bash #admin:spirits #***********CPU检测************* echo "`date '+%Y年%m月%d日 %H:%M:%S'` 数据库服务器硬件情况开始巡检。。。" top -bn 6 >>top grep -n "%i...原创 2018-07-11 01:55:54 · 2602 阅读 · 1 评论 -
Linux文件中每行后面加序号的脚本
awk '{print $0" "FNR}' tanzhen10-51-04 在每行后加序号原创 2018-07-11 01:56:06 · 4396 阅读 · 0 评论 -
CentOS6.5+OpenStack+kvm 云平台部署
一.主机分配:主机名 IP(Static) 系统 配置 角色openstack 192.168.1.2 CentOS-6.5-x86_64-minimal 4CPU,16G RAM,300GDISK,2 网卡 管理节点/计算节点node 192.168.1.3 CentOS-6.5-x86_64-minimal 4CPU,16G RAM,300G DISK,2 网卡 计算节...原创 2018-07-10 00:05:40 · 1274 阅读 · 0 评论 -
用FTP同步服务器
许多系统管理员喜欢用rsync同步二台服务器之间的数据,但我们更喜欢用FTP来实现,其好处是:FTP比rsync更能耗尽带宽,所以它更适合同步数据库(尤其是几百G的数据) 配置起来相当方便,尤其是用pureftpd rsync的优势是可以快速海量同步小文件,比如二级目录或三级目录下的批量图片等 基本上FTP和rsync同步各有优势,看系统管理员的取舍了。以下是本部分要介绍的FTP同步的shell脚...原创 2018-06-28 22:20:51 · 3472 阅读 · 1 评论 -
Keepalived的监控切换脚本
实现功能如下:针对Nginx+Keepalived,编写nginx监控脚本nginx_pid.sh,放置在后台一直监控nginx进程;如进程消失,尝试重启nginx,如是失败则立即停掉本机的keepalived服务,让另一台负载均衡器接手。此脚本详细内容如下:#!/bin/bash while : do nginxpid=`ps -C nginx --no-header | wc -l` ...原创 2018-06-28 22:22:27 · 2998 阅读 · 0 评论 -
swap自动释放内存
#free -mh如上图,一般情况下不会用到swap的,一般物理内存使用在90%以上(默认是这个数,可以自行在/etc/sysctl.conf里设置vm.swappiness参数),但有的时候,内存会被缓存占用,导致系统开始使用swap空间,此时就需要清理下swap了这里先说下vm.swappiness参数,设置成vm.swappiness=10:就是说当内存使用90%以上才会使用swap空间...原创 2018-11-02 17:18:20 · 2510 阅读 · 0 评论 -
centos7中mysql更改数据目录
一、配置mysql首先启动mysqlservice mysqld start设置密码及安全规则mysql_secure_installation这一步骤我只修改了密码,其它安全规则根据需求修改修改配置文件(这里我修改的为/home目录下)datadir=/home/mysqlsocket=/home/mysql/mysql.sock # For advice ...原创 2018-10-03 02:57:41 · 995 阅读 · 0 评论 -
服务器CPU异常原因及如何排查
1.查看服务器CPU飙升卡爆,最后发现是服务器在跑挖矿程序,CPU使用率奇高。在此总结一下排查经过。 首选发现CPU飙升,服务器卡死,查看异常进程PID #top #查看各个进程的cpu使用情况,默认按cpu使用率排序 2.结束掉异常进程 #kill -9/15 pid #...原创 2018-09-10 18:59:01 · 3467 阅读 · 0 评论 -
Linux服务器释放内存脚本
1)在root目录下创建一个freemem.sh的脚本:vi freemem.sh#!/bin/bashused=`free -m | awk 'NR==2' | awk '{print $3}'`free=`free -m | awk 'NR==2' | awk '{print $4}'`echo "===========================" >>...原创 2018-09-17 15:06:47 · 1100 阅读 · 0 评论 -
nohup操作
最近没事看了下生产环境下的一些定时任务,发现nohup.out的文件大小都快3~10G了,吓死人!而且还不不断的增加。然后我查了下,此文件也相当于日志文件,就是运行nohup ./XXX.sh &命令时,将项目的日志打印到nohup.out,而且一直是累加的,从不清空,导致十分巨大。我们项目本身就产生日志文件的,所以nohup.out 相当于是重复的。使用nohup创建了一个后台进程,...原创 2018-09-06 18:38:58 · 652 阅读 · 0 评论 -
怎么在后台执行shell脚本
后台运行脚本执行脚本test.sh:./test.sh 中断脚本test.sh:ctrl+c 在1的基础上将运行中的test.sh,切换到后台并暂停:ctrl+z 执行ctrl+z后,test.sh在后台是暂停状态(stopped),使用命令:bg number让其在后台开始运行(“number”是使用jobs命令查到的 [ ]中的数字,不是pid)直接在后台运行脚本test.sh:....原创 2018-09-11 15:36:46 · 19573 阅读 · 0 评论 -
怎同时杀死某个服务的多个进程
1.查看进程ps aux | grep flume | grep -v grep2.进程数ps aux | grep flume | grep -v grep|wc -l3.查进程号ps aux|grep flume|grep -v grep|awk '{print $2}'|xargs4.杀死这个服务的全部进程ps aux|grep flume|grep -v gre...原创 2018-09-11 15:31:30 · 1885 阅读 · 0 评论 -
用shell写守护进程脚本
一个udhcpd与udhcpc的守护,目前只会用shell模仿编写,还有什么方法可以做守护呢?#! /bin/sh#进程名字可修改PRO_NAME=udhcpcWLAN=ra0 while true ; do # 用ps获取$PRO_NAME进程数量 NUM=`ps aux | grep ${PRO_NAME} | grep -v grep |wc -l`# ...原创 2018-09-11 15:23:00 · 4708 阅读 · 0 评论 -
Linux服务器基础配置
1.系统:CentOS 6.4 64位2.关闭防火墙和SELinux service iptables status service iptables stop chkconfig iptables off vi /etc/sysconfig/selinux 设置 SELEINUX=disabled SELINUXTYPE=disable...原创 2018-08-26 14:19:06 · 835 阅读 · 0 评论 -
Linux服务器配置ssh免秘钥
1.ip与hostname绑定 vi /etc/hosts 192.168.18.111 h1 192.168.18.112 h2 192.168.18.113 h32.免秘钥配置[hadoop@h1 ~]$ ssh-keygen -t rsa[hadoop@h2 ~]$ ssh-keygen -t rsa[hadoop@h3 ~]$ ssh-...原创 2018-08-26 14:18:19 · 188 阅读 · 0 评论 -
centos7上快速安装mysql
Centos7通过yum安装最新MySQL一:去官网查看最新安装包https://dev.mysql.com/downloads/repo/yum/二:下载MySQL源安装包wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm安装MySql源yum -y install mys...原创 2018-08-14 12:05:23 · 28749 阅读 · 9 评论 -
解决yum安装下载慢的问题
有时候yum下载时速度很慢,会不停的换mirrors,可能到了最后还会安装失败 这时候我们可以考虑清楚缓存并更新 yum clean allyum makecacheyum update然后再重复安装命令就可以了 1、备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/C...原创 2018-08-09 10:48:25 · 21506 阅读 · 11 评论 -
centos7用yum安装mysql
一般在linux下安装mysql 的步骤如下:安装前看是否安装过mysql,yum list installed mysql*如果有就用yum remove卸载mysql查看yum库下是否有mysql-serveryum list | grep mysql 或 yum -y list mysql*如果没有(一般在centos7下没有)wget http://repo.m...原创 2018-08-09 10:23:06 · 161 阅读 · 0 评论 -
Linux虚拟机如何配置上网
首先我们需要确定本地电脑可以连接外网,然后打开安装的虚拟机。执行命令ifconfig 查看当前虚拟机的IP,默认系统是自动获取的。因为本地电脑是配置的静态地址上网,所以需要修改网卡的IP地址,可以使用命令: vi /etc/sysconfig/network-scripts/ifcfg-eth0。打开此界面。因为系统默认是自动获取。需要修改地址和本地电脑为同一网段的IP。ONBOOT=yesBOO...原创 2018-07-06 02:13:34 · 976 阅读 · 0 评论 -
测试局域网内主机是否alive的小脚本
此脚本用于检查192.168.1.100到192.168.1.200之间的主机是否alive。脚本如下:#!/bin/bash#Checks to see if hosts 192.168.1.100-192.168.1.200 are alivefor n in {100..200}; do host=192.168.1.$n ping -c2 $host...原创 2018-06-28 22:25:46 · 190 阅读 · 0 评论 -
SVN的版本库的批量备份
实现其功能蛮简单,主要是用了svnadminhotcopy,这东东功能很强大,我经常用于svn的版本库的转移(顺便说一句,上次不小心误操作将库删光了,很轻松的用svnadminhotcopy将其恢复过来了)for PROJECT in test project svntestdocd ${SVNDIR}${SVNADMIN} hotcopy ${PROJECT} ${BACKDIR}/${D...原创 2018-06-28 22:23:41 · 795 阅读 · 0 评论 -
邮件发送工具mailx的安装
第一、安装邮件发送工具mailx 这里我选择的是mailx,所以的关闭其他的邮件发送工具 service sendmailstop #关闭 chkconfig sendmailoff #禁止开机启动 service postfixstop chkconfig postfixoff 执行安装mailx的命令:yum install mailx 第二、配置...原创 2018-07-09 00:09:53 · 1106 阅读 · 0 评论 -
zabbix邮件报警脚本
cd /usr/local/zabbix/share/zabbix/alertscripts #进入脚本存放目录 目录可以自定义设置:在/etc/zabbix/zabbix_server.conf里面设置AlertScriptsPath=/usr/local/zabbix/alertscripts1.vi sendmail.sh #编辑,添加以下代码#!/bin/shecho "$3" ...原创 2018-07-09 00:09:43 · 790 阅读 · 0 评论 -
数据清洗
源数据是日志数据,使用下面的脚本清洗一遍data_process.sh #!/bin/bashsed -i 's/"//g' $1sed -i 's/ //g' $1cat $1|cut -d { -f 2,3,4 > syslog2.txtsed -i 's/.$//' syslog2.txthive中建表create table url_log(a1 map<string,stri...原创 2018-06-30 01:55:16 · 417 阅读 · 0 评论 -
如何不停止服务清空nohup.out文件
在网上发现两个可以不用停止服务就可清空nohup.out的命令。第一种:cp /dev/null nohup.out第二种:cat /dev/null > nohup.out都可行,备注。https://blog.csdn.net/sotower/article/details/49428715...原创 2018-06-30 01:55:31 · 978 阅读 · 0 评论 -
shell脚本 日期转时间戳
yesterday2stamp.sh #!/bin/bashyesterday =`date -d yesterday +%F`p1=`date -d $yesterday +%s`echo $p1today=`date +%F`p2=`date -d $today +%s`echo $p2注释:+%F是转换成2017-10-23的格式+%s是转换成Unix时间戳的格式上面两个分别是昨天凌晨和今天...原创 2018-06-30 01:55:48 · 1451 阅读 · 0 评论