Linux常用命令整理
用户和组管理
新建用户
1 |
adduser newuser |
查看用户列表
1 2 |
cat /etc/passwd cut -d : -f 1 /etc/passwd |
查看用户组列表
1 |
cat /etc/group |
将newuser用户加入wheel组
1 |
usermod -G wheel newuser |
查看某个用户的gid,uid和用户组
1 |
id newuser |
注销其他登录的tty或pts
1 2 |
pkill -kill -t tty pkill -kill -t pts/0 |
查找文件
查找1天以前修改过的文件,以.exe结尾,然后删除这些文件
1 |
find . -mtime +1 -name "*.exe" -exec rm -f {} \; |
软件包管理
删除软件包和所有依赖项, 注意:CentOS7 可用
1 |
yum autoremove screen |
安装基础开发包
1 |
yum groupinstall development |
压缩解压
压缩目录
1 |
tar -zcvf filename.tar.gz /home/newuser/dirname |
解压
1 |
tar -xvf filename.tar.gz |
组合命令
按照pid对/etc/passwd的用户排序
1 |
cat /etc/passwd | sort -n -t ':' -k 3 |
shell脚本常用命令
判断文件是否存在,如果存在则删除
1 |
test -f file_name && rm -f file_name |
判断目录是否存在,如果不存在则创建该目录
1 |
test -d dir_name || mkdir -p dir_name |
权限管理
更改当前目录下下所有文件/目录的owner
1 |
chown www:www -R * |
更改当前目录下所有文件/目录的权限
1 |
chmod 755 -R * |
禁止/解除系统关键文件被删除
1 2 |
chattr +i /etc/passwd chattr -i /etc/passwd |
查看SELinux属性
1 |
lsattr /etc/passwd |
生成随机字符串作为密码
1 |
head -c 512 /dev/urandom | md5sum | base64 | cut -c3-18 |
管理启动项
列出开机启动启动项
1 |
chkconfig --list | grep :on |
关闭开机启动项
1 |
chkconfig mysql off |
系统状态监控
vmstat命令使用
vmstat用来显示服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。基本用法为
1 2 3 4 5 6 7 8 9 10 11 12 13 |
vmstat 2 10 # 每2秒显示一次,连续显示10次采样结果,第二个参数10可以省略 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 3 0 0 460476 61592 1199500 0 0 19 232 143 233 5 1 94 0 0 0 0 0 460460 61592 1199500 0 0 0 0 98 222 0 0 100 0 0 0 0 0 460460 61592 1199500 0 0 0 0 90 206 1 0 100 0 0 0 0 0 460460 61592 1199500 0 0 0 0 97 219 0 0 100 0 0 0 0 0 460460 61592 1199500 0 0 0 0 93 215 0 0 100 0 0 0 0 0 460460 61592 1199500 0 0 0 0 101 223 1 0 100 0 0 0 0 0 460460 61592 1199500 0 0 0 0 116 249 0 1 100 0 0 0 0 0 460460 61592 1199500 0 0 0 0 93 215 0 0 100 0 0 0 0 0 460460 61592 1199500 0 0 0 0 90 210 1 0 100 0 0 0 0 0 460460 61592 1199500 0 0 0 0 101 226 0 0 100 0 0 |
其中各列的含义解释如下:
- r: 运行或等待运行的进程数
- b: 阻塞进程数,通常在等待IO
- swpd: 虚拟内存使用量
- free: 空闲内存(kB)
- buff: 块设备的缓冲(kB),存储目录的内容,权限等
- cache: 文件的缓冲(kB),存储文件的内容
- si: 从硬盘换进内存的页面(kB/s)
- so: 从内存换出硬盘的页面(kB/s)
- bi: 从块设备读入的块数量(blocks/s)
- bo: 写入块设备的块数量(blocks/s)
- in: 每秒中断数,包含时钟中断
- cs: 每秒上下文切换数
- us: 用户任务占用时间百分比
- sy: 内核任务占用时间百分比
- id: 空闲时间百分比
- wa: 等待IO占用时间百分比
- st: Time stolen from a virtual machine. (不是很明白这一条的含义)
top命令使用
1 2 3 4 5 6 7 8 9 10 11 12 13 |
top top -p 17272, 26106 # 指定监控进程 top -u 502 # 指定用户uid # 按大写P,按cpu使用率降序排列 # 按大写M,按内存使用率降序排列 # 按大写T,根据时间/累计时间进行排序。 # 按小写k,终止一个进程 # 按数字1,显示所有cpu负载 # 按小写c,切换显示命令名称和完整命令行 # 按大写S,切换显示时间和累计时间 # 按小写s,设定刷新时间,以秒为单位 # 按小写i,忽略闲置和僵尸进程 # 按小写u,指定用户名过滤 |
netstat命令使用
1 2 |
netstat -nutlp # 查看哪些进程监听哪些端口 netstat -nap # 查看当前建立的连接和端口占用 |
本文出自扉启博客,转载时请注明出处及相应链接。
本文永久链接: https://www.feiqy.com/linux-command/
近期评论