记录一些平时遇到的Linux问题及解决方法!
骚操作1:查杀僵尸进程
通过top命令发现了僵尸进程

这里的aragorn和prodigal为僵尸进程。
寻找僵尸进程的父进程
1
   | ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]'
   | 
 

aragorn和prodigal的父进程的ppid为133619。
杀死父进程

之所以选择杀死父进程是因为僵尸进程本身很难被杀掉!
骚操作2:使用sudo或nohup运行bash报错
错误
在终端里使用sudo或nohup运行bash的时候经常报错:-bash: syntax error near unexpected token ‘do’。
解决方案
将要运行的命令加到如下语句中:
1 2 3 4 5
   |  sudo bash -c 'your commands'
 
  nohup bash -c 'your commands' &
 
  | 
 
骚操作3:CentOS升级GCC
安装SCL(第三方软件选集)
使用下面命令安装SCL
SCL可以在不覆盖原有软件包的情况下与其共存,缺点就是仅支持64位
SCL仅支持安装devtoolset-4(gcc 5.2)(不含)之后的gcc版本
1
   | yum install -y centos-release-scl
   | 
 
安装gcc
使用以下命令安装gcc,其中的9表示大版本号,默认安装大版本下的最新稳定版本
1
   | yum install -y devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
   | 
 
将gcc加入环境变量
1 2
   | echo "source /opt/rh/devtoolset-9/enable" >> /etc/profile source /etc/profile
   | 
 
骚操作4:CentOS 7防火墙
启动防火墙
1
   | 启动: systemctl start firewalld
   | 
 
开启端口
1
   | firewall-cmd --zone=public --add-port=80/tcp --permanent 
   | 
 
重新载入
查看防火墙状态
1 2 3
   | systemctl status firewalld.service
  firewall-cmd --state
   | 
 
查看当前开了哪些端口
1
   | firewall-cmd --list-services
   | 
 
查看所有打开的端口
1
   | firewall-cmd --zone=public --list-ports
   | 
 
骚操作5:Linux基本指令丢失修复办法
如输入ls、cd、cat等基本指令提示找不到命令,可以通过以下命令修复:
1
   | export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
   |