`
这些年
  • 浏览: 400417 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

运维的一些知识

 
阅读更多

1:统计出现在次数

cat access_20130819.log |awk '{print $1}'|sort|uniq -c

 2:awk中的if

awk '{if ($9 != "200")print $0 }' access_20130819.log |wc -l

3:得到目录下文件大小

du -sh *

 4:查看第n行以后的内容

cat -n customer_report_config.xml|awk '{if ($1 > n)print $0}'

 5:保持程序关机后自动运行   crontab    必须先cd到目录,在sh

if [ `ps aux|grep ContrastBandwidth-0.0.1|grep -v grep|wc -l` -ge "1" ];then echo ok; else cd /home/snp/www/qq/ContrastBandwidth/ && sh run.sh ;fi          

 如果手动可运行crontab不能运行则为环境变量有关

0 * * * * . /etc/profile;/bin/sh /var/www/java/audit_no_count/bin/restart_audit.sh

 转自:

2. crontab与环境变量
不要假定cron知道所需要的特殊环境,它其实并不知道。所以你要保证在shelll脚本中提供所有必要的路径和环境变量,除了一些自动设置的全局变量。所以注意如下3点:
1)脚本中涉及文件路径时写全局路径;
2)脚本执行要用到java或其他环境变量时,通过source命令引入环境变量,如:
cat start_cbp.sh
#!/bin/sh
source /etc/profile
export RUN_CONF=/home/d139/conf/platform/cbp/cbp_jboss.conf
/usr/local/jboss-4.0.5/bin/run.sh -c mev &
3)当手动执行脚本OK,但是crontab死活不执行时。这时必须大胆怀疑是环境变量惹的祸,并可以尝试在crontab中直接引入环境变量解决问题。如:
0 * * * * . /etc/profile;/bin/sh /var/www/java/audit_no_count/bin/restart_audit.sh

3. 其他应该注意的问题
1)新创建的cron job,不会马上执行,至少要过2分钟才执行。如果重启cron则马上执行。
2)每条 JOB 执行完毕之后,系统会自动将输出发送邮件给当前系统用户。日积月累,非常的多,甚至会撑爆整个系统。所以每条 JOB 命令后面进行重定向处理是非常必要的: >/dev/null 2>&1 。前提是对 Job 中的命令需要正常输出已经作了一定的处理, 比如追加到某个特定日志文件。
3)当crontab突然失效时,可以尝试/etc/init.d/crond restart解决问题。或者查看日志看某个job有没有执行/报错tail -f /var/log/cron。
4)千万别乱运行crontab -r。它从Crontab目录(/var/spool/cron)中删除用户的Crontab文件。删除了该用户的所有crontab都没了。
5)在crontab中%是有特殊含义的,表示换行的意思。如果要用的话必须进行转义\%,如经常用的date ‘+%Y%m%d’在crontab里是不会执行的,应该换成date ‘+\%Y\%m\%d’`。

 

6:shell中的比较

不相等 -ne (not equal)
大于 -gt (greater than)
小于 -lt (less than)
大于或等于 -ge (greater than or equal)
小于或等于 -le (less than or equal)

 7:查看设备的外网ip

curl http://members.3322.org/dyndns/getip

 8:查看操作日志

tail -n 1000 /var/log/secure

 9:windows下写shell,不能进行解决

sh脚本异常:/bin/sh^M:bad interpreter: No such file or directory
在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决:1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可。
2)也可在Linux中转换:
首先要确保文件有可执行权限
#sh>chmod a+x filename
然后修改文件格式
#sh>vi filename
利用如下命令查看文件格式
:set ff 或 :set fileformat
可以看到如下信息
fileformat=dos 或 fileformat=unix
利用如下命令修改文件格式
:set ff=unix 或 :set fileformat=unix
:wq (存盘退出)
最后再执行文件
#sh>./filename

 10:查看日志(过滤)

tail -f runtime.log |grep 'product'  持续更新包含‘product’的行

 11:查看设备到设备的链路情况(出现***为链路不好,内网设备为***)

traceroute 127.0.0.1

 12:run.sh(如果程序在运行就打出Pid ,)

. /etc/profile
cd /Application/billing/normandy
if ps U bill -Ho cmd | grep normandy.jar | grep -v grep > /dev/null
then
pid1=`ps U bill -Ho pid,cmd | grep normandy.jar | grep -v grep | head -1 |awk '{print $1}'`
echo "normandy.jar is running! main process id = $pid1"
else
if $JAVA_HOME/bin/java -jar normandy.jar ; then
echo normandy.jar complete `date +'%Y-%m-%d %H:%M'`
else
echo normandy.jar failed `date +'%Y-%m-%d %H:%M'`
fi
fi

 13:批量更改文件用户

chown -R fromcf.fromcf transfers/

 14:复制文件目录结构(包含子目录)

find . -type d 当前目录结构

mkdir -p ./transfers/aaa;    当前目录创建目录结构包含子目录

 15:判断文件是否已经更新

find /data/apps/normandy 2>/dev/null -type f -maxdepth 1 -mmin -30 -exec ls -lt {} \; |grep "channelinfo.xml" >/dev/null 2>&1 && echo 0 #判断文件是否30分钟未更新 0已经更新 不输出未更新

 16:后台运行

nohup rm -rf 201310* &

 17:移动文件时因为文件太多出错解决

find . -type f -exec mv "{}" ../back20131122/ \;

 18:关闭iptables

service iptables status 查看iptables状态
service iptables restart iptables服务重启
service iptables stop iptables服务禁用 

 19:同步文件脚本(同步完成后会删除文件)

#!/bin/bash
ls /proclog/transfers/FCBill_1/ >/data/list
for i in `cat /data/list`
do
rsync -av /proclog/transfers/FCBill_1/$i 目录ip::idc
rm -rf /proclog/transfers/FCBill_1/$i
done

 

rsync -av apache-tomcat-6.0.26 172.16.31.212:/data/apps/

scp:

(1)将本地文件拷贝到远程:scp 文件名 用户名@计算机IP或者计算机名称:远程路径
(2)从远程将文件拷回本地:scp 用户名@计算机IP或者计算机名称:文件名 本地路径
(3)将本地目录拷贝到远程:scp -r 目录名 用户名@计算机IP或者计算机名称:远程路径
(4)从远程将目录拷回本地:scp -r 用户名@计算机IP或者计算机名称:目录名 本地路径

 

20:ftp(批量)

1: ftp -i 223.202.44.21
输入用户名密码后
mput *.tgz

2: ftp 223.202.44.21
输入用户名密码后
prompt
mput *

 21:取到目录 下的前n个文件

ls|head -6

 22:查看历史记录

last命令可以用来查看用户的登陆记录。

history命令可以查看命令的执行历史。

 

  23:查看域名所对ip

nslookup
> www.google.com

 24:查看用户下的指定程序的pid

ps U fromcf -Ho pid,cmd | grep CCTransfers.jar | grep -v grep | head -1 |awk '{print $1}'

 查看程序占用的cpu

ps -eo pid,args,psr
参数的含义:
pid - 进程ID
args - 该进程执行时传入的命令行参数
psr - 分配给进程的CPU

 

25:echo输出不换行(下一个输出在一行)

echo –n “My name is:”

 26:修改root密码

请先用该建立的第一个用户登入,使用 sudo passwd root 即可修改 root 密码. ps: 若要输入密码,该密码就是执行 sudo 该用户的密码。

或者是 sudo su - 就可以变成管理者

 27:修改登入级别

/etc/inittab

 28:修改主机名

修改这个文件etc/sysconfig/network这个文件里的主机名.
NETWORKING=yes
HOSTNAME=主机名

 29:批量建目录

mkdir -p /data/aa/bb/cc/

 查看目录结构

tree 目录

 

30:snmpwalk 得到64位数据(与oid有关:1.3.6.1.2.1.2.2.1.16)

snmpwalk -v 2c -r 5 -t 10 -c ChinaCache 114.80.101.209 1.3.6.1.2.1.2.2.1.16

 31:查找 命令 安装  目录

which java

 32:关闭SELinux(是美国国家安全局(NSA)对于强制访问控制的实现)

查看SELinux状态:
1、/usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态
SELinux status: enabled
2、getenforce ##也可以用这个命令检查
关闭SELinux:
1、临时关闭(不用重启机器):
setenforce 0 ##设置SELinux 成为permissive模式
##setenforce 1 设置SELinux 成为enforcing模式
2、修改配置文件需要重启机器:
修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled
重启机器即可

 33:关闭iptable

 

service iptables status    查看状态
chkconfig iptables off      关闭
chkconfig --list iptables    列出所有规则

 34:查看系统信息

 

lsb_release -a
uname -a

 35:负载

top
w
uptime

 36:查看ssh连接

who

 37:T人

w 查看用户
who am i 查看哪个是自己的
pkill -kill -t pts/1 把pts/1提了 -9强制T

 38:多条命令

mkdir /root/aaa && mkdir aaa 第一个失败,第二个不会执行
mkdir /root/aaaa & mkdir aaa 第一个失败,第二个也会执行

 39:批量创建文件及目录

touch 456{1,2,3,4,5} 会在目录中生成(4561,4562,4563,4564,4565)五个目录文件
mkdir 456{1,2,3,4,5} 会在目录中生成(4561,4562,4563,4564,4565)五个文件夹

 脚本

mycomm.sh 写道(运行时输入:mycomm.sh user 1000
(user是文件夹的前缀,10000是要创建文件夹的书目))
#!/bin/bash
var1=1
while test $var1 -1e $2
do
mkdir $1$var1
var1=expr $var1 + 1
done

 40:自启动

# chkconfig --add keepalived
# chkconfig --level 35 keepalived on
# chkconfig --list keepalived 查看

 详解参数

等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动

 41:iptables 加入80访问

vi + /etc/sysconfig/iptables 写道
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

 42:监控脚本,循环命令

watch 写道
watch -d 命令 #高亮显示变动
watch -n 1 命令 #刷新时间,默认2s

 43:连接数

netstat -nat|grep -i "1521"|wc -l                       # 查看端口的连接数
netstat -nat||grep ESTABLISHED                  #查看正在传输的
netstat -na||grep ESTABLISHED                   #所有信息

SYN_RECV表示正在等待处理的请求数;
ESTABLISHED表示正常数据传输状态;
TIME_WAIT表示处理完毕,等待超时结束的请求数

 44:设置系统时间

date -s "20100405 14:31:00"

 

 持续更新中。。。

分享到:
评论

相关推荐

    IT系统运维中的知识转移研究.pdf

    《IT系统运维中的知识转移研究》一文深入探讨了IT系统运维过程中知识转移的重要性与实施策略,对于理解和优化IT运维组织的知识管理具有重要的参考价值。本文将基于该论文的标题、描述、标签及部分内容,详细解析其中...

    终端运维知识库.docx

    终端运维知识库 终端运维知识库是 IT 行业中的一份重要的参考资料,涵盖了计算机硬件和软件的各个方面。下面是对该知识库中的一些重要知识点的详细解释: 一、 硬件知识 硬件知识是计算机运维的基础,了解计算机...

    信息系统运维中知识转移

    企业在推进信息化的过程中,主要有三方面的成员 参与:企业,咨询公司和系统集成商。其中,企业是用 户,咨询公司是解决方案的提供者,系统...同时,在信息系统(即,IT系统)的运维过 程中,培训也将发挥重要的作用。

    尝试一些运维相关的知识或者记录,包括Linux命令,运维基础知识等_devops.zip

    尝试一些运维相关的知识或者记录,包括Linux命令,运维基础知识等_devops

    运维必备知识

    总结一些运维人员及面试的时候常被问到的知识点,包括网络方面的还有操作系统,应用服务等,相当的全面。

    运维知识体系V2.0

    运维架构层级/运维角度

    电子运维知识库管理系统建设方案推荐.pdf

    "电子运维知识库管理系统建设方案推荐" 本文档提供了电子运维知识库管理系统建设方案的推荐方案,涵盖了系统的建设背景、建设原则、建设内容、系统体系结构、系统功能、软硬件平台方案等方面的内容。 建设背景 ...

    运维知识体系(PDF版本).pdf

    运维知识体系 运维知识体系是一个涵盖了IT行业各个方面的知识体系,涵盖了从基础设施到应用层面的各个方面,包括监控体系、自动化、DevOps、云计算、浏览器、DNS缓存、智能DNS、公共DNS、GSLB、反向代理缓存、...

    IT运维管理基础知识学习教案.pptx

    IT运维管理基础知识学习教案.pptx

    运维知识体系.xlsx

    运维需要的知识总结 部署知识总结;没有具体的知识点,有我们需要系统整理的知识点而已

    史上最全的运维知识,操作手册,案例,电力知识————CSDN下载(3)

    标题中的“史上最全的运维知识,操作手册,案例,电力知识”揭示了这个压缩包包含的内容广泛且深入,主要涵盖了运维、操作流程、实例分析以及电力领域的专业知识。这些资源是IT运维人员提升技能、解决问题的重要参考...

    运维知识体系

    运维知识体系

    面向智慧运维的分布式光伏知识库构建方法.pdf

    总的来说,面向智慧运维的分布式光伏知识库构建方法通过改进的实体提取和实体关系提取技术,提升了知识库的质量和应用价值,为分布式光伏系统的高效运维提供了强有力的知识支持。这一研究方向的发展,将进一步推动...

    史上最全的运维知识,操作手册,案例,电力知识————CSDN下载(2)

    标题中的“史上最全的运维知识,操作手册,案例,电力知识”揭示了这个压缩包包含的内容广泛且深入,涵盖了IT运维、操作实践、具体案例以及电力行业的特定知识。描述中的MD5、SHA1和CRC32是文件校验码,用于确保文件...

    甲方项目运维管理知识体系和规范制定

    甲方项目运维管理知识体系和规范制定,从网上得来的资料,欢迎一起学习。

    风电机组运维的知识图谱构建及应用

    内容概要:该文章研究了风电机组运维的知识图谱构建方法及其应用,针对风电机组运维信息高维、互联和规模攀升的特点,提出了一种一体化的知识图谱构建方法。方法包括基于TextRank算法和Word2vec模型的实体识别与关系...

    cisaw安全运维教程.pdf

    本教程旨在帮助安全运维人员掌握信息系统安全运维的知识和技能,从而提高信息系统的稳定运行和安全性。以下是教程的详细知识点: 1. 信息系统概述: 信息系统是一个承载和传输信息的系统,具有承载性、传输性、...

    运维知识体系.docx

    运维知识体系.docx运维知识体系.docx运维知识体系.docx运维知识体系.docx运维知识体系.docx运维知识体系.docx运维知识体系.docx运维知识体系.docx运维知识体系.docx

    IT运维的五大基础知识 (2).pdf

    本文将详细解析IT运维的五大基础知识,帮助读者深入理解运维的核心技能。 首先,对于微软系统,尤其是Windows平台,运维人员需要精通Active Directory及其相关的服务配置,如ISA(Internet Security and ...

    运维知识体系-V0.6.xlsx

    详细的总结了运维知识体系,让运维人员对整个运维工作有了更加深刻的认识。

Global site tag (gtag.js) - Google Analytics