Chinaunix首页 | 论坛 | 博客
  • 博客访问: 330970
  • 博文数量: 77
  • 博客积分: 1925
  • 博客等级: 上尉
  • 技术积分: 1065
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-13 17:26
文章分类
文章存档

2012年(77)

我的朋友

分类: LINUX

2012-03-23 16:53:05

  整理收集一些linux运维管理、系统管理的常用命令,太多了记不住,只能记录下来方便日后查看。也可以和大家分享。如果你有好的一句话命令也贴出来吧。本文持续更新中。
  1、linux启动过程
   开启电源 --> BIOS开机自检 --> 引导程序lilo或grub --> 内核的引导(kernel boot)--> 执行init(rc.sysinit、rc)--> mingetty(建立终端) --> shell
  2、网卡绑定多IP
  # ifconfig eth0:1 192.168.1.99 netmask 255.255.255.0
  3、设置DNS、网关
  # echo "nameserver 202.16.53.68" 》 /etc/resolv.conf
  # route add default gw 192.168.1.1
  4、弹出、收回光驱
  # eject
  # eject -t
  5、用date查询昨天的日期
  # date --date=yesterday
  6、查询file1里面空行的所在行号
  # grep ^$ file
  7、查询file1以abc结尾的行
  # grep abc$ file1
  8、打印出file1文件第1到第三行
  # sed -n '1,3p' file1
  # head -3 file1
  9、清空文件
  # true > 1.txt
  # echo "" > 1.txt
  # > 1.txt
  # cat /dev/null > 1.txt
  10、删除所有空目录
  # find /data -type d -empty -exec rm -rf {} \;
  11、linux下批量删除空文件(大小等于0的文件)的方法
  # find /data -type f -size 0c -exec rm -rf {} \;
  # find /data -type f -size 0c|xargs rm –f
  12、删除五天前的文件
  # find /data -mtime +5 -type f -exec rm -rf {} \;
  13、删除两个文件重复的部份,打印其它
  # cat 1.txt 3.txt |sort |uniq
  14、攻取远程服务器主机名
  # echo `ssh $IP cat /etc/sysconfig/network|awk -F = '/HOSTNAME/ {print $2}'`
  15、实时监控网卡流量(安装iftop)
  # /usr/local/iftop/sbin/iftop -i eth1 -n
  16、查看系统版本
  # lsb_release -a
  17、强制踢出登陆用户
  # pkill -KILL -t pts/1
  18、tar增理备份、还原
  # tar -g king -zcvf kerry_full.tar.gz kerry
  # tar -g king -zcvf kerry_diff_1.tar.gz kerry
  # tar -g king -zcvf kerry_diff_2.tar.gz kerry
  # tar -zxvf kerry_full.tar.gz
  # tar -zxvf kerry_diff_1.tar.gz
  # tar -zxvf kerry_diff_2.tar.gz
  19、将本地80端口的请求转发到8080端口,当前主机外网IP为202.96.85.46
  -A PREROUTING -d 202.96.85.46 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.9.10:8080
  20、在11月份内,每天的早上6点到12点中,每隔2小时执行一次/usr/bin/httpd.sh
  # crontab -e
  0 6-12/2 * 11 * /usr/bin/httpd.sh
  21、查看占用端口8080的进程
  # netstat -tnlp | grep 8080
  lsof -i:8080
  22、在Shell环境下,如何查看远程Linux系统运行了多少时间?
  # ssh user@被监控主机ip "uptime"
  23、查看CPU使用情况的命令
  ""每5秒刷新一次,最右侧有CPU的占用率的数据
  # vmstat 5
  ""top 然后按Shift+P,按照进程处理器占用率排序
  # top
  24、查看内存使用情况的命令
  ""用free命令查看内存使用情况
  # free -m
  ""top 然后按Shift+M, 按照进程内存占用率排序
  # top
  25、查看磁盘i/o
  ""用iostat查看磁盘/dev/sdc3的磁盘i/o情况,每两秒刷新一次
  # iostat -d -x /dev/sdc3 2
  26、修复文件系统
  # fsck –yt ext3 /
  -t 指定文件系统
  -y 对发现的问题自动回答yes
  27、read 命令5秒后自动退出
  # read -t 5
  28、grep -E -P 是什么意思
  -E, --extended-regexp 采用扩展正规表达式。
  -P,--perl-regexp 采用perl正规表达式
  29、vi编辑器(涉及到修改,添加,查找)
  插入(insert)模式
  i    光标前插入
  I    光标行首插入
  a    光标后插入
  A    光标行尾插入
  o    光标所在行下插入一行,行首插入
  O    光标所在行上插入一行,行首插入
  G    移至最后一行行首
  nG    移至第n行行首
  n+    下移n行,行首
  n-    上移n行,行首
  :/str/          从当前往右移动到有str的地方
  str?          从当前往左移动到有str的地方
  :s/str1/str2/      将找到的第一个str1替换为str2
  :s/str2/str2/g      将当前行找到的所有str1替换为str2
  :n1,n2s/str1/str2/g    将从n1行至n2行找到的所有的str1替换为str2
  :1,.s/str1/str2/g      将从第1行至当前行的所有str1替换为str2
  :.,$s/str1/str2/g      将从当前行至最后一行的所有str1替换为str2
  30、linux服务器之间相互复制文件
  copy 本地文件1.sh到远程192.168.9.10服务器的/data/目录下
  # scp /etc/1.sh
  copy远程192.168.9.10服务器/data/2.sh文件到本地/data/目录
  # scp /data/
  31、使用sed命令把test.txt文件的第23行的TEST换成TSET.
  # sed -i '23s/TEST/TSET/' test.txt
  # sed -i '23 s/TEST/TSET/' test.txt
  32、使history命令能显示时间
  # export HISTTIMEFORMAT="%F %T "
  33、如何查看目标主机192.168.0.1开放那些端口
  # nmap -PS 192.168.0.1
  34、如何查看网络连接
  # netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
  35、如何查看当前系统使用了那些库文件
  # ldconfig -v
  36、如何查看网卡的驱动版本
  # ethtool -i eth0
  37、使用tcpdump来监视主机192.168.0.1的tcp的80端口
  # tcpdump tcp port 80 host 192.168.0.1
  38、 如何看其它用户的邮件列表
  # mial -u king
  39、对大文件进行切割
  按每个文件1000行来分割
  # split -l 1000 httperr8007.log httperr
  按照每个文件5m来分割
  # split -b 5m httperr8007.log httperr
  40、合并文件
  取出两个文件的并集(重复的行只保留一份)
  # cat file1 file2 | sort | uniq
  取出两个文件的交集(只留下同时存在于两个文件中的文件)
  # cat file1 file2 | sort | uniq -d
  删除交集,留下其他的行
  # cat file1 file2 | sort | uniq –u
  41、打印文本模式下运行的服务
  # chkconfig --list|awk '$5~/on/{print $1,$5}'
  42、删除0字节文件
  # find -type f -size 0 -exec rm -rf {} \;
  43、查看进程,按内存从大到小排列
  # ps -e  -o "%C  : %p : %z : %a"|sort -k5 -nr
  44、查看http的并发请求数及其TCP连接状态
  # netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
  45、获取IP地址
  # ifconfig eth0|sed -n '2p'|awk '{print $2}'|cut -c 6-30
  perl实现获取IP地址:
  # ifconfig -a | perl -ne 'if ( m/^\s*inet (?:addr:)?([\d.]+).*?cast/ ) { print qq($1 ); exit 0; }'
  46、获取内存大小
  # free -m |grep "Mem" | awk '{print $2}'
  47、查看CPU核心数
  # cat /proc/cpuinfo |grep -c processor
  48、查看磁盘使用情况
  # df -h
  49、查看有多少个活动的php-cgi进程
  # netstat -anp | grep php-cgi | grep ^tcp | wc -l
  50、查看硬件制造商
  # dmidecode -s system-product-name
阅读(1092) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~