Skip to content

Linux 常见问题及解决方式

ipconfig: command not found

如果是 CentOS 7 环境,CentOS 7 已经不使用 ifconfig 命令了,已经用 ip 命令代替了:

bash
ip addr

开机时网络自动打开(针对新安装的 CentOS,每次开启虚拟机,网络连接未打开,无法连接到互联网)

在虚拟机中以最小化方式安装 CentOS 7,后无法上网,因为 CentOS 7 默认网卡未激活。

bash
cd /etc/sysconfig/network-scripts/

# 进入编辑模式,将 ONBOOT=no 改为 ONBOOT=yes,就OK
vi ifcfg-enp0s3

# 保存后重启网卡:
service network restart

# 此时就可以上网了
ping www.baidu.com

ll: command not found

root 用户工作目录下默认有 .bashrc 隐藏文件,只需去掉这一行前面的 # 注释符:alias ll='ls $LS_OPTIONS -l'

其他用户的工作目录下默认没有这个文件,则需要新创建该文件,并且内容加上:alias ll='ls $LS_OPTIONS -l'

注:各个用户只管各个用户自己的,比如改了 root 用户下的文件,那就只有 root 用户可以使用 ll 命令,其他用户依然不能使用,想要使用就需要每个用户都更改。

shell
cd ~

vim ~/.bashrc
# 编辑内容后,保存,退出

# 生效
source ~/.bashrc

g++: command not found

shell
yum -y update gcc

yum -y install gcc+ gcc-c++

Another app is currently holding the yum lock; waiting for it to exit

shell
rm -f /var/run/yum.pid

Cannot find a valid baseurl for repo: base/7/x86_64

网络设置好,重启系统。

jar 应用后台运行

txt
Linux 运行jar包命令如下:
方式一:
java -jar shareniu.jar
特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出
那如何让窗口不锁定?

方式二:
java -jar shareniu.jar &
&代表在后台运行。
特定:当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行。
继续改进,如何让窗口关闭时,程序仍然运行?

方式三:
nohup java -jar shareniu.jar &
nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行
当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到nohup.out的文件中,除非另外指定了输出文件。

方式四:
nohup java -jar shareniu.jar >temp.txt &
解释下 >temp.txt
command >out.file
command >out.file是将command的输出重定向到out.file文件,即输出内容不打印到屏幕上,而是输出到out.file文件中。
可通过jobs命令查看后台运行任务
jobs
那么就会列出所有后台执行的作业,并且每个作业前面都有个编号。
如果想将某个作业调回前台控制,只需要 fg + 编号即可。
fg 23
查看某端口占用的线程的pid
netstat -nlp |grep :8080

如果想杀掉运行中的jar程序,查看进程命令为:
ps aux|grep test.jar

将会看到此jar的进程信息
data      5796  0.0  0.0 112656   996 pts/1    S+   09:11   0:00 grep --color=auto test.jar
data     30768  6.3  0.4 35468508 576800 ?     Sl   09:09   0:08 java -jar test.jar

其中30768则为此jar的pid,杀掉命令为
kill -9 30768

查看进程和刷新控制台日志

shell
# 显示出所有的java进程,去除掉当前的grep进程。
ps -ef|grep java|grep -v grep

# 同步刷新,查看日志最后200行
tail -fn 200 console.log

添加开机启动执行脚本

txt
1、将脚本移动到/etc/rc.d/init.d目录下

# mv /opt/script/autostart.sh /etc/rc.d/init.d

2、增加脚本的可执行权限

# chmod +x /etc/rc.d/init.d/autostart.sh

3、添加脚本到开机自动启动项目中

# cd /etc/rc.d/init.d

# chkconfig --add autostart.sh

# chkconfig autostart.sh on