LV240-系统管理命令简介
系统管理
1. 显示或设置时间: date
1.1 使用格式
date 命令可以按照指定格式显示日期,只键入 date 则以默认格式显示当前时间。一般格式如下:
date [OPTION]... [+FORMAT]
date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]这里的选项其实一般都不怎么用的上,这里就不啰嗦了。
1.2 时间显示格式
在 Linux 系统中,时间显示有多种格式,常见的包括:
- CST (China Standard Time):中国标准时间,即 UTC+8 时区时间。这是中国使用的标准时间。
- UTC (Coordinated Universal Time):协调世界时,是世界标准时间,通常用于服务器和网络时间同步。
- GMT (Greenwich Mean Time):格林威治标准时间,与 UTC 时间基本一致,但 GMT 是基于英国格林威治的天文时间。
- 本地时间:根据系统设置的时区显示的时间。
时间格式转换示例:
# 显示 UTC 时间
date -u
# 显示本地时间(默认)
date
# 显示带 UTC 时间戳的时间
date --iso-8601=seconds时间格式转换和显示示例:
# 当前时间(CST)
hk@vm:~$ date
2022年 10月 20日 星期四 14:28:19 CST
# UTC 时间
hk@vm:~$ date -u
Thu Oct 20 06:28:19 UTC 2022
# ISO 8601 格式时间
hk@vm:~$ date --iso-8601=seconds
2022-10-20T14:28:19+08:00从上面的示例可以看出:
- CST 时间比 UTC 时间快 8 小时(+08:00)
- ISO 8601 格式时间显示了时区信息
- 不同时间格式可以相互转换
1.3 [+FORMAT]
我们来了解一下自定义时间,我们先要自定义显示时间格式的话,可以这样:
date "+现在时间是: %Y-%m-%d %H:%M:%S"当我们不希望出现无意义的 0 时(比如说 2020/01/01),则可以在标记中插入-符号,比如说date '+%-H:%-M:%-S'会把时分秒中无意义的 0 给去掉,像是原本的 09:09:09 会变为 9:9:9 。另外,只有取得权限者(比如说 root )才能设定系统时间。当我们以 root 身分更改了系统时间之后,要以 clock -w 来将系统时间写入 CMOS 中,这样下次重新开机时系统时间才会持续保持最新的正确值。
【时间和日期的格式】
%% 输出字符 %
%a 星期几的缩写 (Sun..Sat)
%A 星期的完整名称(Sunday..Saturday)。
%b 缩写的月份名称(例如,Jan)
%B 完整的月份名称(例如,January)
%c 本地日期和时间(例如,Thu Mar 3 23:05:25 2005)
%C 世纪,和%Y类似,但是省略后两位(例如,20)
%d 日 (01..31)
%D 日期,等价于%m/%d/%y
%e 一月中的一天,格式使用空格填充,等价于%_d
%F 完整的日期;等价于 %Y-%m-%d
%g ISO 标准计数周的年份的最后两位数字
%G ISO 标准计数周的年份,通常只对%V有用
%h 等价于 %b
%H 小时 (00..23)
%I 小时 (01..12)
%j 一年中的第几天 (001..366)
%k 小时,使用空格填充 ( 0..23); 等价于 %_H
%l 小时, 使用空格填充 ( 1..12); 等价于 %_I
%m 月份 (01..12)
%M 分钟 (00..59)
%n 新的一行,换行符
%N 纳秒 (000000000..999999999)
%p 用于表示当地的AM或PM,如果未知则为空白
%P 类似 %p, 但是是小写的
%r 本地的 12 小时制时间(例如 11:11:04 PM)
%R 24 小时制 的小时与分钟; 等价于 %H:%M
%s 自 1970-01-01 00:00:00 UTC 到现在的秒数
%S 秒 (00..60)
%t 插入水平制表符 tab
%T 时间; 等价于 %H:%M:%S
%u 一周中的一天 (1..7); 1 表示星期一
%U 一年中的第几周,周日作为一周的起始 (00..53)
%V ISO 标准计数周,该方法将周一作为一周的起始 (01..53)
%w 一周中的一天(0..6),0代表星期天
%W 一年中的第几周,周一作为一周的起始(00..53)
%x 本地的日期格式(例如,12/31/99)
%X 本地的日期格式(例如,23:13:48)
%y 年份后两位数字 (00..99)
%Y 年
%z +hhmm 格式的数值化时区格式(例如,-0400)
%:z +hh:mm 格式的数值化时区格式(例如,-04:00)
%::z +hh:mm:ss格式的数值化时区格式(例如,-04:00:00)
%:::z 数值化时区格式,相比上一个格式增加':'以显示必要的精度(例如,-04,+05:30)
%Z 时区缩写 (如 EDT)1.4 使用实例
1.4.1 格式化时间显示
hk@vm:~$ date "+现在时间是: %Y-%m-%d %H:%M:%S"
现在时间是: 2022-10-20 14:28:14
hk@vm:~$ date
2022年 10月 20日 星期四 14:28:19 CST1.4.2 设置时间
date -s # 设置当前时间,只有root权限才能设置,其他只能查看
date -s 20120523 # 设置成20120523,这样会把具体时间设置成00:00:00
date -s 01:01:01 # 设置具体时间,不会对日期做更改
date -s "01:01:01 2012-05-23" # 这样可以设置全部时间
date -s "01:01:01 20120523" # 这样可以设置全部时间
date -s "2012-05-23 01:01:01" # 这样可以设置全部时间
date -s "20120523 01:01:01" # 这样可以设置全部时间1.4.3 时间格式转换
hk@vm:~$ date -d "2009-12-12" +"%Y/%m/%d %H:%M.%S"
2009/12/12 00:00.00
# apache 格式转换
hk@vm:~$ date -d "Dec 5, 2009 12:00:37 AM" +"%Y-%m-%d %H:%M.%S"
2009-12-05 00:00.372. 关机重启: reboot、shutdown、init
2.1 reboot
reboot 命令用于重启系统,一般就直接 reboot 就可以了,它也有一些参数,但是似乎没用过,这里就不写了。
2.2 shutdown
shutdown 命令可以用来进行定时关机,并且在关机以前传送讯息给所有使用者正在执行的程序,也可以用来重开机。一般格式如下:
shutdown [-t seconds] [-rkhncfF] time [message]参数说明如下:
| 参数 | 说明 |
| -t seconds | 设定在几秒钟之后进行关机程序 |
| -k | 并不会真的关机,只是将警告讯息传送给所有使用者 |
| -r | 关机后重新开机 |
| -h | 关机后停机 |
| -n | 不采用正常程序来关机,用强迫的方式杀掉所有执行中的程序后自行关机 |
| -c | 取消目前已经进行中的关机动作 |
| -f | 关机时,不做 fsck 动作(检查 Linux 档系统) |
| -F | 关机时,强迫进行 fsck 动作 |
| time | 设定关机的时间 |
| message | 传送给所有使用者的警告讯息 |
init 命令是 Linux 下的进程初始化工具, init 进程是所有 Linux 进程的父进程,它的进程号为 1 ,是 Linux 内核引导运行的,是系统中的第一个进程。一般格式如下:
init [option]【参数说明】
- option :选项
| option | 说明 |
| 0 | 停机或者关机(不能将 init default 设置为 0) |
| 1 | 单用户模式,只 root 用户进行维护 |
| 2 | 多用户模式,不能使用 NFS(Net File System) |
| 3 | 完全多用户模式(标准的运行级别) |
| 4 | 安全模式 |
| 5 | 图形化(即图形界面) |
| 6 | 重启(不要把 init default 设置为 6) |
3. 检测磁盘空间: df
3.1 使用格式
df 命令作用是列出文件系统的整体磁盘空间使用情况。一般格式如下:
df [option] [file_name]选项有很多,我们这里就不详细写了,直接看后面的常用示例。
3.2 使用实例
- 显示文件系统类型
hk@vm:~$ df -T # 加上目录路径就可以看到指定目录的文件系统类型
文件系统 类型 1K-块 已用 可用 已用% 挂载点
udev devtmpfs 1977176 0 1977176 0% /dev
tmpfs tmpfs 401592 31500 370092 8% /run
/dev/sda1 ext4 81451752 13001104 64290036 17% /
tmpfs tmpfs 2007952 45200 1962752 3% /dev/shm
tmpfs tmpfs 5120 4 5116 1% /run/lock
tmpfs tmpfs 2007952 0 2007952 0% /sys/fs/cgroup
vmhgfs-fuse fuse.vmhgfs-fuse 278929404 181423696 97505708 66% /mnt/hgfs
tmpfs tmpfs 401592 80 401512 1% /run/user/10004. 检测目录所占磁盘空间: du
4.1 使用格式
du 和 df 类似, du 侧重在文件夹和文件的磁盘占用方面,而 df 则侧重在文件系统级别的磁盘占用方面。一般使用格式:
du [option][dir_or_file_name]【option】
| option | 说明 |
|---|---|
| -s或--summarize | 仅显示指定目录或文件的总大小,而不显示其子目录的大小。 |
| -h或--human-readable | 以K,M,G为单位,提高信息的可读性。 |
| -k或--kilobytes | 以1024 bytes为单位。 |
4.2 使用实例
hk@vm:~$ du -sh 5linux/
2.8G 5linux/5. 查看或配置网卡信息: ifconfig
5.1 使用格式
ifconfig 工具不仅可以被用来简单地获取网络接口配置信息,还可以修改这些配置。但是在运行时可能会提示未安装该工具(如果之前没有安装过的话),根据系统提示执行相应的命令进行工具安装即可。一般格式如下
ifconfig [网络设备] [选项] [参数] # 但是一般就是直接 ifconfig 查看网络配置信息而已【参数说明】参数特别多,但是貌似一般不怎么用。
【常用命令】
ifconfig -a # 显示所有网络设备信息
ifconfig eth0 down # 关闭指定的网络设备
ifconfig eth0 hw ether aa:cc:bb:dd:ee:ff # 设置网络设备的类型与硬件地址
ifconfig eth0 up # 启动指定的网络设备
ifconfig eth0 mtu<字节> # 设置网络设备的最大传输单元(MTU)
ifconfig eth0 netmask<子网掩码> # 设置网络设备的子网掩码
ifconfig eth0 [IP地址] # 指定网络设备的IP地址。5.2 使用实例
hk@vm:~$ ifconfig
ens33 Link encap:以太网 硬件地址 00:0c:29:dc:97:38
inet 地址:192.168.19.140 广播:192.168.19.255 掩码:255.255.255.0
inet6 地址: fe80::ec18:46b3:f09b:2115/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 跃点数:1
接收数据包:69723 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:34505 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:28541354 (28.5 MB) 发送字节:10261211 (10.2 MB)
ens37 Link encap:以太网 硬件地址 00:0c:29:dc:97:42
inet 地址:192.168.10.101 广播:192.168.10.255 掩码:255.255.255.0
inet6 地址: fe80::fc30:db60:f384:6805/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 跃点数:1
接收数据包:119696 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:110068 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:10082240 (10.0 MB) 发送字节:153554413 (153.5 MB)
lo Link encap:本地环回
inet 地址:127.0.0.1 掩码:255.0.0.0
inet6 地址: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 跃点数:1
接收数据包:27817 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:27817 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:2134713 (2.1 MB) 发送字节:2134713 (2.1 MB)6. 测试远程主机连通性: ping
6.1 使用格式
执行 ping 指令会使用 ICMP 传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机是否运作正常。一般格式如下:
ping [option][主机名称或IP地址] # 可以是网址,如 www.baidu.com【参数说明】
| option | 说明 |
|---|---|
| -c | 指定发送的数据包数量,例如 -c 4 表示发送 4 个数据包。 |
| -s | 指定每个数据包的大小(字节),默认是 56 字节。 |
| -q | 安静模式,只显示开始和结束的统计数据,不显示每个数据包的详细信息。 |
6.2 使用实例
hk@vm:~$ ping www.baidu.com
PING www.a.shifen.com (36.152.44.95) 56(84) bytes of data.
64 bytes from 36.152.44.95: icmp_seq=1 ttl=128 time=14.1 ms
64 bytes from 36.152.44.95: icmp_seq=2 ttl=128 time=14.0 ms
64 bytes from 36.152.44.95: icmp_seq=3 ttl=128 time=13.9 ms
64 bytes from 36.152.44.95: icmp_seq=4 ttl=128 time=13.7 ms
^C
--- www.a.shifen.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 13.738/13.973/14.148/0.182 ms