1.Linux常用命令(三)
1.信息显示命令
df 查看文件系统磁盘空间的使用情况
- -h 以人类可读形式显示
- -i 查看系统inode使用信息
- -T 查看文件系统类型
[root@aspen ~]# df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda3 xfs 99G 1.7G 98G 2% /
devtmpfs devtmpfs 476M 0 476M 0% /dev
tmpfs tmpfs 487M 0 487M 0% /dev/shm
tmpfs tmpfs 487M 7.7M 479M 2% /run
tmpfs tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/sda1 xfs 197M 105M 93M 54% /boot
tmpfs tmpfs 98M 0 98M 0% /run/user/0
[root@aspen aspen]# df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda3 9174528 63075 9111453 1% /
devtmpfs 121762 373 121389 1% /dev
tmpfs 124487 1 124486 1% /dev/shm
tmpfs 124487 690 123797 1% /run
tmpfs 124487 16 124471 1% /sys/fs/cgroup
/dev/sda1 524288 326 523962 1% /boot
tmpfs 124487 1 124486 1% /run/user/0
du 目录名 计算指定目录磁盘空间使用情况
- -h 以人类可读形式显示
- -s 只显示目录汇总信息
[root@aspen aspen]# du -sh /* | sort -h | tail -n 10
du: cannot access ‘/proc/8034/task/8034/fd/4’: No such file or directory
du: cannot access ‘/proc/8034/task/8034/fdinfo/4’: No such file or directory
du: cannot access ‘/proc/8034/fd/4’: No such file or directory
du: cannot access ‘/proc/8034/fdinfo/4’: No such file or directory
80K /home
120K /root
232K /tmp
7.6M /run
20M /backup
32M /etc
32M /opt
95M /boot
341M /var
1.4G /usr
[root@aspen aspen]# du -h /* | head -5
20M /backup/10.0.0.201
20M /backup
0 /bin
0 /boot/efi/EFI/centos
0 /boot/efi/EFI
uname 显示操作系统相关信息
- -a 显示系统内核所有信息
- -r 查看系统内核版本
- -m 显示系统硬件架构
[root@aspen aspen]# uname
Linux
[root@aspen aspen]# uname -a
Linux aspen 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@aspen aspen]# uname -r
3.10.0-957.el7.x86_64
[root@aspen aspen]# uname -m
x86_64
hostname 主机名 显示或修改主机名
- -I(大写的i) 显示主机网卡的IP地址
hostname命令后面跟主机名为修改系统主机名(临时生效,重新登陆后生效,系统重启后失效); 直接执行hostname命令为显示当前主机名 |
[root@aspen ~]# hostname
aspen
[root@aspen ~]# hostname Aspen
[root@aspen ~]# hostname
Aspen
[root@aspen aspen]# hostname -I
10.0.0.200
lscpu 查看系统主机CPU信息
文件主要参数CPU(s)-CPU核心数和Socket(s)-CPU颗数
查看系统主机CPU的详细信息,可查阅/proc/cpuinfo文件 |
[root@aspen ~]# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 1 #CPU核心数
On-line CPU(s) list: 0
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 1 #CPU颗数
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 158
Model name: Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
Stepping: 10
CPU MHz: 2208.001
BogoMIPS: 4416.00
Hypervisor vendor: VMware
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 9216K
NUMA node0 CPU(s): 0
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ibrs ibpb stibp fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec arat spec_ctrl intel_stibp arch_capabilities
free 查看系统主机内存信息
- -h 结果以人类可读形式显示
- -m 以MB为单位显示
查看系统主机内存的详细信息,可查阅/proc/meminfo文件 |
[root@aspen ~]# free -h
total used free shared buff/cache available
Mem: 972M 133M 596M 7.6M 243M 658M
Swap: 1.5G 0B 1.5G
uptime 显示系统运行时间及负载
负载指标数值越接近CPU核心数量表示系统越繁忙 查看系统主机运行时间及负载可查阅/proc/loadavg文件 load average三个指标,分别代表近1分钟、5分钟、15分钟的系统平均繁忙指标 系统负载指标,主要考核系统主机CPU和磁盘的繁忙程度 |
[root@aspen ~]# uptime
17:36:24 up 1 day, 6:31, 1 user, load average: 0.00, 0.01, 0.05
top 实时显示系统资源使用情况
[root@aspen aspen]# top
top - 16:53:43 up 2:39, 1 user, load average: 0.00, 0.01, 0.05
Tasks: 91 total, 1 running, 90 sleeping, 0 stopped, 0 zombie
%Cpu0 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 995896 total, 420812 free, 125388 used, 449696 buff/cache
KiB Swap: 1572860 total, 1572860 free, 0 used. 643376 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
8411 root 20 0 161880 2200 1564 R 0.3 0.2 0:00.06 top
1 root 20 0 125552 4068 2564 S 0.0 0.4 0:01.33 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.16 ksoftirqd/0
......
dmesg 显示开机信息,用于诊断系统故障
[root@aspen aspen]# dmesg | head -4
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 3.10.0-957.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Thu Nov 8 23:39:32 UTC 2018
dmidecode 显示系统硬件信息
[root@aspen aspen]# dmidecode |head -5
# dmidecode 3.1
Getting SMBIOS data from sysfs.
SMBIOS 2.7 present.
620 structures occupying 29060 bytes.
Table at 0x000E0010.
stat 文件名 显示文件或文件系统的状态
- -c%a 取文件的基本权限值
[root@aspen aspen]# stat /etc/passwd
File: ‘/etc/passwd’
Size: 1223 Blocks: 8 IO Block: 4096 regular file
Device: 803h/2051d Inode: 17142876 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2019-05-13 09:23:00.174022000 +0800
Modify: 2019-05-08 16:23:56.825705207 +0800
Change: 2019-05-08 16:23:56.825705207 +0800
Birth: -
[root@aspen aspen]# stat /etc/passwd -c%a
644
date 显示系统时间
- +%Y 显示年份
- +%m 显示月份
- +%d 显示日期
- +%w 显示星期几
- +%W 显示本年第几周
- +%H 显示小时
- +%M 显示分钟
- +%S 显示秒
- +%N 显示纳秒
+%N常与md5sum连用,用于创建随机密码 |
- -d "-/+ 时间" 根据描述显示时间
- -s "时间" 设置系统时间
+%F == +%Y-%m-%d +%T == +%H:%M:%S |
[root@aspen aspen]# date
Mon May 13 17:02:10 CST 2019
[root@aspen aspen]# date -d "+1 day"
Tue May 14 17:02:37 CST 2019
[root@aspen aspen]# date +%F
2019-05-13
[root@aspen aspen]# date +%Y-%m-%d
2019-05-13
[root@aspen aspen]# date +%T
17:04:21
[root@aspen aspen]# date +%F-%T
2019-05-13-17:04:31
ntpdate 时间服务器域名 根据时间服务器修改系统时间
Cent OS 7中默认没有安装该命令,需使用 yum install -y ntpdate 指令进行安装 |
[root@aspen aspen]# date -s '20190101'
Tue Jan 1 00:00:00 CST 2019
[root@aspen aspen]# ntpdate ntp1.aliyun.com
13 May 17:08:48 ntpdate[9268]: step time server 120.25.115.20 offset 11466390.339921 sec
[root@aspen aspen]# date
Mon May 13 17:08:55 CST 2019
2.系统管理与性能监视命令
systemctl 管理系统,开启、关闭、重启系统服务
start 服务名 开启某项服务 stop 服务名 停止某项服务 restart 服务名 重启某项服务 enable 服务名 启用某项服务 disable 服务名禁用某项服务 status 服务名 查询某项服务状态 get-default 查询系统默认运行级别 set-default 运行级别 设置系统默认运行级别 |
[root@aspen ~]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
[root@aspen ~]# systemctl get-default
multi-user.target
hostnamectl 查询或设置主机名
set-hostname 主机名 设置主机名 status 查询主机名状态 |
[root@aspen ~]# hostnamectl status
Static hostname: aspen
Icon name: computer-vm
Chassis: vm
Machine ID: 946c77cba62f44cb9eec13c644d0b030
Boot ID: f3622f34a065412aab43bf4d95ed42c3
Virtualization: vmware
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-957.el7.x86_64
Architecture: x86-64
[root@aspen ~]# hostnamectl set-hostname Aspen
[root@aspen ~]# hostnamectl status
Static hostname: aspen
Pretty hostname: Aspen
Icon name: computer-vm
Chassis: vm
Machine ID: 946c77cba62f44cb9eec13c644d0b030
Boot ID: f3622f34a065412aab43bf4d95ed42c3
Virtualization: vmware
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-957.el7.x86_64
Architecture: x86-64
localectl 查询或设置系统字符集
set-locale LANG=语言.字符集 设置系统字符集(重新登录后生效) status 查询系统字符集 |
[root@aspen ~]# localectl status
System Locale: LANG=en_US.UTF-8
VC Keymap: us
X11 Layout: us
systemctl / hostnamectl / localectl 是Cent OS 7特有命令 |
rz 把Windows文件上传到Linux
sz 文件名 把Linux文件下载到Windows
Cent OS 7中默认没有安装该命令,需使用 yum install -y lrzsz 指令进行安装 |
注意:
1. rz不支持上传空文件;
2. rz只支持上传文件,不支持上传文件夹
3. rz不支持4G以上容量的文件上传
4. rz不支持断点续传
5. sz只支持下载文件,不支持下载文件夹
|
3.关机/重启/注销和查看系统信息的命令
shutdown
- -h 时间(单位:分钟) 在几分钟后关闭主机(0或now表示立即执行)
- -r 时间(单位:分钟) 在几分钟后重启主机(0或now表示立即执行)
- -c 取消正在进行的关机或重启
[root@aspen ~]# shutdown -r 10
Shutdown scheduled for Thu 2019-04-11 19:46:47 CST, use 'shutdown -c' to cancel.
Broadcast message from root@aspen (Thu 2019-04-11 19:36:47 CST):
The system is going down for reboot at Thu 2019-04-11 19:46:47 CST!
[root@aspen ~]# shutdown -c
Broadcast message from root@aspen (Thu 2019-04-11 19:36:55 CST):
The system shutdown has been cancelled at Thu 2019-04-11 19:37:55 CST!
halt 立即停止系统需手动关闭设备电源
poweroff 立即停止系统并关闭电源
reboot 重启主机
init 运行级别ID 切换系统至指定运行级别
0 系统运行级别-关机 1 系统运行级别-单用户模式(Cent OS 6)或救援模式(Cent OS 7) 2 系统运行级别-多用户模式(无法访问NFS,Cent OS 6特有) 3 系统运行级别-表示命令行界面运行 4 系统运行级别-系统保留,未分配 5 系统运行级别-表示图形化界面运行 6 系统运行级别-系统重启 |
shutdown -h now == halt == poweroff == init 0 shutdown -r now == reboot == init 6 |
logout 注销退出当前用户窗口
[root@aspen aspen]# logout
Connection closing...Socket close.
Connection closed by foreign host.
Disconnected from remote host(笔记机) at 19:28:36.
Type `help' to learn how to use Xshell prompt.
[D:\~]$
exit 注销退出当前用户窗口
[root@aspen ~]# exit
logout
Connection closing...Socket close.
Connection closed by foreign host.
Disconnected from remote host(培训笔记机) at 19:29:23.
Type `help' to learn how to use Xshell prompt.
[D:\~]$
exit == logout == Ctrl+D |
4.进程管理相关命令
ps 显示当前进程的状态
- a 显示系统所有进程
- -a 显示同一终端下所有进程
- -u 指定用户的所有进程
- -x 显示所有程序(不区分终端机)
aux 显示所有包含其他使用者的进程 |
- e 显示系统环境变量
- -e显示所有进程
- -f显示程序间的关系
-ef 显示所有进程信息,连同命令行 |
[root@aspen ~]# ps aux | head -6
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.4 125552 4112 ? Ss 14:57 0:04 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root 2 0.0 0.0 0 0 ? S 14:57 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 14:57 0:00 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< 14:57 0:00 [kworker/0:0H]
root 7 0.0 0.0 0 0 ? S 14:57 0:00 [migration/0]
[root@aspen ~]# ps -ef | head -6
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 14:57 ? 00:00:04 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root 2 0 0 14:57 ? 00:00:00 [kthreadd]
root 3 2 0 14:57 ? 00:00:00 [ksoftirqd/0]
root 5 2 0 14:57 ? 00:00:00 [kworker/0:0H]
root 7 2 0 14:57 ? 00:00:00 [migration/0]
pkill 进程名 通过进程名终止进程
crontab 定时任务命令
- -l 查看当前用户的定时任务
crontab -l== cat /var/spool/cron/用户名 |
- -e 编辑当前用户的定时任务
定时任务书写规范详见Linux系统启动流程与目录结构
crontab -e == vim /var/spool/cron/用户名 |
[root@aspen ~]# crontab -l
#backup-etc-cron@2019-05-10 00:00 by aspen
00 00 * * * sh /scripts/bak-etc-cron.sh >/dev/null 2>&1
Linux命令要养成操作前备份,操作后检查的好习惯
未完待续...