13:磁盘情况查询
实时掌握分区使用情况,当使用率到达80%需要清理空间。
命令 | 功能 |
---|---|
df -h | 查看磁盘使用情况 |
du -h | 查询指定目录的磁盘使用情况 |
-s | 指定目录占用大小汇总 |
-h | 带计量单位 |
-a | 含文件 |
–max-depth=1 | 子目录深度 |
-c | 列出明细同时,增加汇总量 |
[root@centos01 opt]# du -hac --max-depth=1 /opt | 查看目录opt的磁盘使用情况 |
14:磁盘情况 - 工作实用指令
1:统计/opt文件夹下文件的个数
[root@centos01 opt]# ls -l /opt | grep "^-" | wc -l #wc -l统计个数 grep "^-"过滤只保存文件
2:统计/opt文件夹下目录的个数
[root@centos01 opt]# ls -l /opt | grep "^d" | wc -l
3:统计/opt文件夹下文件的个数,包括子文件夹里
[root@centos01 opt]# ls -lR /opt | grep "^-" | wc -l #R递归
4:统计/opt文件夹下目录的个数,包括子文件夹里
[root@centos01 opt]# ls -lR /opt | grep "^d" | wc -l
5:以树状显示目录结构,默认没有安装tree指令
[root@centos01 opt]# yum install tree #安装tree指令
[root@centos01 opt]# tree /opt/
15:进程管理
- Linux中,每个执行的程序称为一个进程,每一个进程都分配一个ID号(pid,进程号)。
- 每个进程都可以以两种方式存在。前台和后台,前台进程就是用户目前屏幕上可以进行操作的。后台进程则是实际操作。由于屏幕上无法看到进程,通常使用后台方式执行。
- 一般系统的服务都是以后台进程的方式存在,而且都会常驻系统中,关机才会结束。
PS命令是用来查看目前系统中,有哪些这种执行,以及执行状态。
命令 | 功能 |
---|---|
ps | 显示部分进程信息 |
ps -a | 显示所有进程信息 |
ps -u | 以用户格式显示进程信息 |
ps -x | 显示后台进程运行参数 |
[root@lkLinux01 hdlazy]# ps -aux | grep sshd | 查看是否有sshd进程 |
字段 | 含义 |
PID | 进程识别号 |
TTY | 终端名 |
TIME | 此进程消耗CPU的时间 |
CMD | 正在执行的命令或者进程名 |
%CPU | 占用CPU百分比 |
%MEN | 占用物理内存百分比 |
VSZ | 占用虚拟内存大小KB |
RSS | 占用物理内存大小KB |
STAT | 当前进程运行状态 S-休眠 R-运行 s表示该进程是会话的先导进程 N-表示进程拥有比普通优先级更低的优先级 D-短期等待 Z-僵死进程 T-被跟踪或者被停止等待 |
START | 进程启动时间 |
COMMAND | 启动进程的指令和参数 过长被截断 |
USER | 用户名称 |
查看进程树
命令 | 功能 |
---|---|
pstree -p | 显示进程PID |
pstree -u | 显示进程所属用户 |
pstree -up | 显示进程ID和所属用户 |
16:服务管理
Service管理指令:
命令 | 功能 |
---|---|
service 服务名 [start 启动 | stop 关闭 | restart 重启| reload 重新加载 | status 状态] | |
Centos7之后不使用service 而 使用systemctl | |
Centos7之后service管理的指令在/etc/init.d查看 | |
setup 空格取消/开启自启动 | 查看全部系统服务,带*表示自启动 |
/etc/init.d | 查看系统服务名 |
[hdlazy@lkLinux01 ~]$ service network status #network状态
已配置设备:
lo ens33
当前活跃设备:
lo ens33 virbr0
[hdlazy@lkLinux01 ~]$ service network stop ##network停止
Stopping network (via systemctl): [ 确定 ]
[hdlazy@lkLinux01 ~]$ service network start #network启动
Starting network (via systemctl): [ 确定 ]
[hdlazy@lkLinux01 ~]$ service network restart #network重启
Restarting network (via systemctl): [ 确定 ]
17:服务运行级别
Linux系统有七种运行级别:常用3,5
级别 | 意义 |
---|---|
0 | 系统停机状态,系统默认运行级别不能设置为0,否则不能正常启动 |
1 | 单用户工作状态,root权限,用于系统维护,禁止远程登录 |
2 | 多用户状态(没有NFS),不支持网络 |
3 | 完全的多用户状态(有NFS),登陆后进入控制台命令模式 |
4 | 系统未使用,保留 |
5 | X11控制台,登录后进入图形GUI模式 |
6 | 系统正常关闭并重启,默认运行级别不能设置为6,否则不能正常启动 |
开机流程:
开机-》BIOS-》/boot-》systemd进程1-》确定运行级别-》启动运行级对应的服务
命令 | 功能 |
---|---|
cat /etc/initab | 运行级别说明 |
# multi-user.target: analogous to runlevel 3 # graphical.target: analogous to runlevel 5 | |
[root@lkLinux01 hdlazy]# systemctl get-default graphical.target | 查看当前运行级别 |
[root@lkLinux01 hdlazy]# systemctl set-default multi-user.target Removed symlink /etc/systemd/system/default.target. Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target. | 设置当前运行级别 |
chkconfig指令:reboot生效
- 通过chkconfig可以为服务的各个运行级别设置 自 启动/关闭
- chkconfig 指令管理的服务在/etc/init.d查看
- Centos7之后很多服务使用systemctl管理
指令 | 功能 |
---|---|
[root@lkLinux01 etc]# chkconfig --list | 查看服务 |
[root@lkLinux01 etc]# chkconfig --list | grep network | 只查看network服务 |
[root@lkLinux01 etc]# chkconfig --level 3(运行级别) network(服务名) off [root@lkLinux01 etc]# chkconfig --level 3 network on | 将服务在指定的运行级别开启/关闭 自启动 |
systemctl指令:
指令 | 功能 |
---|---|
systemctl [start | stop | restart | status] 服务名 | stop 等都属于临时生效,重启后无效 |
[root@lkLinux01 system]# ls -l /lib/systemd/system | systemctl管理的服务 在 /usr/lib/systemd/system查看 |
[root@lkLinux01 system]# systemctl list-unit-files [|grep 服务名] | 查看各服务的开机启动状态 |
[root@lkLinux01 system]# systemctl list-unit-files | grep firewalld | 查看防火墙服务开启是否启动 |
[root@lkLinux01 system]# systemctl enable 服务名 | 设置服务开机启动 |
[root@lkLinux01 system]# systemctl disable 服务名 | 设置服务开机不启动 |
[root@lkLinux01 system]# systemctl is-enabled 服务名 | 查看服务自启动状态 |
如何在防火墙打开的情况下自定义端口:
命令 | 功能 |
---|---|
firewall-cmd --permanent --add-port=端口号/协议 | 永久打开端口号 |
[root@lkLinux01 hdlazy]# firewall-cmd --permanent --add-port=111/tcp | |
firewall-cmd --permanent --remove-port=端口号/协议 | 永久关闭端口号 |
firewall-cmd --reload | 重新加载才可以生效 |
[root@lkLinux01 hdlazy]# firewall-cmd --permanent --add-port=111/tcp | |
firewall-cmd --query-port=端口/协议 | 查看端口是否生效 |
[root@lkLinux01 hdlazy]# firewall-cmd --query-port=111/tcp | |
[root@lkLinux01 hdlazy]# netstat -anp | more | 查看端口所对应的协议 |
18:RPM包管理,YUM
命令 | 功能 |
---|---|
rpm -qa | grep XXX | 查询已安装的rpm列表 |
查询结果firefox-60.2.2-1.el7.centos.x86_64 | |
rpm -q 软件包名 | 查询是否安装该软件 |
rpm -qi 软件包名 | 查询软件包信息 |
rpm -qf 文件全路径名 | 查询文件所需的软件包 |
rpm -e 软件包名 | 卸载rpm包 |
如果有相关软件和删除的rpm包关联 则会报错 | |
rpm -e --nodeps 软件包名 | 强制删除 |
rpm -ivh rpm包全路径名称 | 安装rpm包 |
-i | install安装 |
-v | verbose提示 |
-h | hash进度条 |
rpm包在光盘的packges包里。
yum为Shell前端软件包管理器,基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,自动处理依赖性关系,并且一次安装所有的依赖包。
命令 | 功能 |
---|---|
yum list | grep 软件列表 | 查询yum服务器是否有相应的安装包 |
yum install XXX | 安装指定yum包 |