linux常用命令
一、centos中添加用户
1.添加用户
useradd liulei #添加用户
passwd liulei #添加密码
#下面的只有zhy在用,一般服务不用
usermod -aG test01 liulei #给用户分组,注意如果不添加这个可能无法登录,将用户 liulei 添加到组test01
2.修改密码
#需要先登录root权限账户
passwd liulei #用户名
3.给用户添加sudo权限
#先切换为root
#一般服务器
vim /etc/sudoers
centos ALL=(ALL) ALL
#zhy个别服务器
vim /etc/sudoers.d/su
centos ALL=(ALL) NOPASSWD:/bin/su -
二、gcc版本升级
yum install centos-release-scl
yum install devtoolset-8
#激活对应的devtoolset,所以你可以一次安装多个版本的devtoolset,需要的时候用下面这条命令切换到对应的版本
scl enable devtoolset-8 bash
gcc -v
这条激活命令只对本次会话有效,重启会话后还是会变回原来的4.8.5版本,要想随意切换可按如下操作。
首先,安装的devtoolset是在 /opt/rh 目录下的,如图
每个版本的目录下面都有个 enable 文件,如果需要启用某个版本,只需要执行
source ./enable
所以要想切换到某个版本,只需要执行
source /opt/rh/devtoolset-8/enable
永久起效:
vim /etc/profile
#末尾添加
source /opt/rh/devtoolset-7/enable\
#自后重启
source /etc/profile
或者:
如需切换使用如下命令:source /opt/rh/devtoolset-7/enable
或者$USER_HOME/.bashrc 中加入默认就切换。
三、杀进程
1.kill
ps -ef|grep python
kill -9 pid //彻底杀死进程
2.killall
Linux killall (kill processes by name)用于杀死进程,与 kill 不同的是killall 会杀死指定名字的所有进程。kill 命令杀死指定进程 PID,需要配合 ps 使用,而 killall 直接对进程对名字进行操作,更加方便
killall -9 mysql //结束所有的 mysql 进程
3.pkill命令
pkill 命令和 killall 命令的用法相同,都是通过进程名杀死一类进程,除此之外,pkill 还有一个更重要的功能,即按照终端号来踢出用户登录。
pkill -f mysql //结束 mysql 进程
pkill -u mark,danny //结束mark,danny用户的所有进程
w //#使用w命令查询本机已经登录的用户
pkill -9 -t pts/1 //#强制杀死从pts/1虚拟终端登陆的进程
四、下安装包
- pip download -d 保存安装的库及其依赖库的文件夹路径 安装库名 -i 临时换源加快下载速度
例如:pip download -d ./websocket websocket-client -i https://pypi.tuna.tsinghua.edu.cn/simple - pip install --no-index --find-links=库及其依赖库的文件夹路径 离线下载的库名称
例如:pip install --no-index --find-links=./websocket websocket-client
ubuntu下载
五、磁盘空间、操作系统信息
1.Linux查看未挂载的磁盘空间
fdisk -l
2.Linux查看未分配磁盘
lsblk -f
3.Linux查看磁盘挂载
df -h
4.查看隐藏目录大小
du -sh .[!.]*
5.系统信息
centos版本信息:cat /etc/redhat-release
centos内核信息:cat /proc/version
centos操作系统:uname -s
centos内核类型: uname -m
六、查看centos硬件
1.top -c 命令:
top -c
# 按照GB显示
# shift 和E
GiB Mem : 251.4 total, 0.6 free, 250.5 used, 0.3 buff/cache
GiB Swap: 128.0 total, 93.4 free, 34.6 used. 0.1 avail Mem
GiB Mem :物理内存总量(251.4G),空闲内存总量(0.6G),使用中的内存总量(250.5G),缓冲内存量
GiB Swap:交换区总量(128.0G),空闲交换区总量(93.4G),使用的交换区总量(34.6 G),可用交换取总量
(1)mem中 物理内存总量:指的是现在系统内核控制的内存数,
(2)空闲内存总量(free)是内核还未纳入其管控范围的数量。纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在linux上free内存会越来越少,但不用为此担心
(3)used:使用的内存量
(4)buffer/cache:用作内核缓存的内存量
Swap分区是由硬盘提供的交换区,当物理内存不够用的时候,操作系统才会把暂时不用的数据放到Swap中。所以当这个数值变高的时候,说明内存是真的不够用了。
当物理内存使用完或者达到一定比例之后,我们可以使用swap做临时的内存使用。当物理内存和swap都被使用完那么就会出错,out of memory。对于使用多大比例内存之后开始使用swap,在系统的配置文件中可以通过调整参数进行修改。
swap交换分区的used,如果这个数值在不断的变化,说明内核在不断进行内存和swap的数据交换,这是真正的内存不够用了。
2、查看内存
free -h
七、查看进程所在位置
1、用ps -ef |grep xxxxx 得到该进程的pid
2、输入ls -l ,结果中 exe链接对应的就是可执行文件的路径
ls -l /proc/18283
八、删除乱码文件
系统下命令行是无法输出汉字的,如果要删除带有汉字的文件或文件夹,只需要查看文件的节点号,删除对应的节点号即可。
通过: ls -i 命令,查看文件的节点号(节点号为每个文件前面显示的数字)
查看节点
ls -i
删除节点
find -inum 7516192896 -delete
九、修改path的方法
修改方法一:
export PATH=/usr/local/mongodb/bin:$PATH
//配置完后可以通过echo $PATH查看配置结果。
生效方法:立即生效
有效期限:临时改变,只能在当前的终端窗口中有效,当前窗口关闭后就会恢复原有的path配置
用户局限:仅对当前用户
修改方法二:
通过修改.bashrc文件:
vim ~/.bashrc
//在最后一行添上:
export PATH=/usr/local/mongodb/bin:$PATH
生效方法:(有以下两种)
1、关闭当前终端窗口,重新打开一个新终端窗口就能生效
2、输入“source ~/.bashrc”命令,立即生效
有效期限:永久有效
用户局限:仅对当前用户
修改方法三:
通过修改profile文件:
vim /etc/profile
/export PATH //找到设置PATH的行,添加
export PATH=/usr/local/mongodb/bin:$PATH
生效方法:系统重启
有效期限:永久有效
用户局限:对所有用户
修改方法四:
通过修改environment文件:
vim /etc/environment
在PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"中加入“:/usr/local/mongodb/bin”
生效方法:系统重启
有效期限:永久有效
防火墙
1.查看当前防火墙状态:
firewall-cmd --state
2.开启防火墙
systemctl start firewalld
service firewalld start
3.关闭防火墙:
systemctl stop firewalld
service firewalld stop