推荐你 Linux 命令线上操作,运维必须掌握

这些动作里面,并不总是存在主观的恶意,而是这些命令太危险了。线上操作时,一定要保持清醒的头脑,切记马虎大意。

你说你误操作的,谁信呢?

切记:

  • 严禁酒后登录线上服务器操作
  • 严禁吵架后情绪激动登录线上服务器操作
  • 严禁长时间加班后操作线上环境
  • 禁止在线上试验不熟悉的命令
  • 重要系统先做备份

1. 准备工作

在执行危险命令时,请深呼吸。首先执行ifconfig,或者ip addr命令,确认是在正确的服务器上。


  1. $ ip addr 
  2.  
  3. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 
  4.  
  5. link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 
  6.  
  7. inet 127.0.0.1/8 scope host lo 
  8.  
  9. valid_lft forever preferred_lft forever 
  10.  
  11. inet6 ::1/128 scope host 
  12.  
  13. valid_lft forever preferred_lft forever 
  14.  
  15. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 
  16.  
  17. link/ether 00:16:3e:34:e9:a9 brd ff:ff:ff:ff:ff:ff 
  18.  
  19. inet 172.19.26.39/20 brd 172.19.31.255 scope global dynamic noprefixroute eth0 
  20.  
  21. valid_lft 313267185sec preferred_lft 313267185sec 
  22.  
  23. inet6 fe80::216:3eff:fe34:e9a9/64 scope link 
  24.  
  25. valid_lft forever preferred_lft forever 
  26.  

这时候,再次深呼吸,然后执行pwd命令,确保自己是在正确的目录下面。


  1. $ pwd  
  2.  
  3. /etc/nginx  

接下来,就可以看一下执行的命令,是不是危险指令。

2. rm -rf命令

-rf参数将递归删除文件,误删文件导致数据丢失,产生严重后果。如果多一个空格,或者 /没有补齐,或者文件有特殊符号,导致误删文件的误操作居多。


  1. rm -rf ./* => rm -rf / 
  2.  
  3. rm -rf abc/ => rm -rf abc / 

执行 rm 命令,手速一定要慢。按补全,一定要等屏幕回显后操作。

另外,在脚本中,rm的坑也不小,比如:


  1. rm -rf ${p}/* 

如果p变量没有设置,就会是灾难性的后果,命令等同于rm -rf /。所以rm还有另外一条谨言:在脚本中执行rm的时候,请先判断相关的变量是否为空。

3. chmod命令

chmod是更改目录和文件权限用的,如果处理不当,会产生和rm一样的后果。

这里介绍一种非常霸道的恢复方法。在执行这个命令之前,先把所有文件的权限备份一下。这里用到getfacl这个命令。


  1. getfacl -R / > chmod.txt 

恢复的时候,执行


  1. setfacl –restore=chmod.txt 

它将回放这个文件的权限,有时候是救命的。

4. cat命令

cat命令也能出错?是的,而且还很严重,因为你掌握了高级技能:重定向符。

如果你想要向文件中追加 内容,会使用 cat >> file的方式,如果你不小心少输入了一个>,那么不好意思,你的文件内容就丢失了。

类似的命令还有echo等,可以看到,问题不在cat,在重定向符,太容易写错。

在此,请你操作之前,确保每次深呼吸,数好箭头的个数再操作。

【声明】:芜湖站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章