2-shell基础命令
常用命令
主机名设置
hostname:查看主机名 /etc/hostname: hostname命令查的就是此文件,改了此文件重启相当于永久改了主机名。 hostnamectl set-hostname rouji001用命令的方式修改主机名,可以替换修改文件的方式。
/etc/hosts:配置ip与主机名映射关系,在集群环境下使用较多
默认启动级别
[root@iZm5e59rizbgmmp4net6zbZ ~]# systemctl set-default graphical.target // 图形界面 [root@iZm5e59rizbgmmp4net6zbZ ~]# systemctl set-default multi-user.target // 字符终端
查看ip
# 查看
ifconfig # 也可以执行ip address或者简写ip a
ifconfig eth0 # 也可以执行ip a show eth0
查看时间
[root@aliyun ~]# date --help
查看时间
# date "+%Y_%m_%d %H-%M-%S"
设置时间
#date -s "2018-05-17 09:51:50"
或者
# timedatectl set-time '16:10:40 2022-11-12 13:14:15'
// =============》date设置的是系统时间,实际上时间分为硬件时钟与系统时钟两种
#1、硬件时钟:硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟,硬件时间存放于CMOS中。
#2、系统时钟:系统时钟则是指kernel中的时钟,当Linux启动时
ps:硬件时间默认比系统时间慢8个小时
// =============》硬件时钟与系统时钟的关系是:
Linux操作系统将时间从CMOS中读到系统时间变量中,之后系统时钟即独立运作。所有Linux相关指令与函数都是读取系统时钟的设定。
linux系统设置硬件时钟时,提供两种时区选择,一种为本地时区,此时硬件时间与系统时间相同;另一种为UTC时区,此时硬件时间存的是UTC时间,系统初始化时会转换为本地时间后再设置为系统时钟的时间。
以后修改时间通过修改系统时间实现。为了保持系统时间与CMOS时间的一致性,Linux每隔一段时间会将系统时间写入CMOS。由于该同步是每隔一段时间(大约是11分钟)进行的,在我们执行date -s后,如果马上重起机器,修改时间就有可能没有被写入CMOS,这就是问题的原因。
如果要确保修改生效可以执行如下命令。
#hwclock –w
这个命令强制把系统时间写入CMOS。
// =============》hwclock命令
hwclock命令,与clock命令是同一个命令,主要用来查询和设置硬件时钟(query and set the hardware clock (RTC))。RTC=Real Time Clock,也就是硬件时钟。在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中
的时钟。所有Linux相关指令与函数都是读取系统时钟的设定。因为存在两种不同的时钟,那么它们之间就会存在差异。根据不同参数设置,hwclock命令既可以将硬件时钟同步到系统时钟,也可以将系统时钟同步到硬件时钟。
// hwclock命令的参数
-r, --show 读取并打印硬件时钟
-s, --hctosys 将硬件时钟同步到系统时钟
-w, --systohc 将系统时钟同步到硬件时钟
// =============》时间服务器
注意:要使系统时间准确,最好还是使用ntp方式,即将Linux系统时钟同步到远程NTP服务器,ps:centos7用chrony替换ntp,此处暂作了解:https://www.cnblogs.com/linhaifeng/articles/13471989.html
NTP即Network Time Protocol(网络时间协议),是一个互联网协议,用于同步计算机之间的系统时钟。timedatectl实用程序可以自动同步你的Linux系统时钟到使用NTP的远程服务器。
注意,你必须在系统上安装NTP以实现与NTP服务器的自动时间同步。
使用ntpdate命令从网络同步时间,再同步到硬件时钟
ntpdate命令是使用NTP协议来从网络同步时间的命令。NTP=Network Time Protocol 网络时间协议。
#系统中默认没有ntpdate命令,需要自行下载安装
[root@localhostt ~]# yum install ntpdate -y
# 与网络时间服务器同步时间
[root@localhost ~]# ntpdate 0.cn.pool.ntp.org
12 Aug 21:04:14 ntpdate[10099]: step time server 203.107.6.88 offset -7826995.450514 sec
[root@localhost ~]# date
[root@localhost ~]# hwclock -w
# 注意:
1、必须有 root 权限才能在主机上运行这个命令。
2、如果NTP服务器守护程序在当前主机上运行,命令将拒绝ntpdate设置日期
3、让系统自动同步时间,只需添加一条定时任务即可,后期会介绍到
# ps: 阿里云提供了7个NTP时间服务器也就是Internet时间同步服务器地址
ntp1.aliyun.com
ntp2.aliyun.com
ntp3.aliyun.com
ntp4.aliyun.com
ntp5.aliyun.com
ntp6.aliyun.com
ntp7.aliyun.com
要开始自动时间同步到远程NTP服务器,在终端键入以下命令。
# timedatectl set-ntp true
要禁用NTP时间同步,在终端键入以下命令。
# timedatectl set-ntp false
重启时间失效
关闭默认的时间同步,然后再进行设置 # timedatectl set-ntp no
设置时区
查看 timedatectl status 列出可用时区 timedatectl list-timezones 设置 # timedatectl set-timezone "Asia/Shanghai" # timedatectl set-timezone UTC
重启、关机
shutdown -r 10 // 10分钟后重启 shutdown -r 0 // 立即重启 shutdown -r now // 立即重启 shutdown -r 11:30 // 定点重启 init 6 // 立即重启 reboot // 立即重启 shutdown -h 10 // 10分钟后关机 shutdown -h 0 // 立刻关机 shutdown -h now // 立刻关机 shutdown -h 11:30 // 定点关机 halt // 立即停止系统,需要人工关闭电源 poweroff // 立即停止系统,并且关闭电源 取消正在进行的关机或重启 showdown -c 注销登录的账号 exit logout ctrl+d
which 命令:查看命令的位置
/etc/hosts 本地域名与ip映射文件,集群中要配置好
systemctl set-default multi-user.target 设置默认启动级别
cat /etc/redhat-release查看os版本信息
uname -r:查看内核版本
uname -a:查看内核版本,系统版本,主机名,时区等
时间设置(了解,尽量不要手动设置时间)
date:查看时间--》 Tue Jun 15 20:55:49 CST
date "+%Y %m %d %H:%M:%S" 指定显示格式
UTC:世界标准时间,本初子午线,比东八区早8小时
CST:东八区
实际使用时,与线上时间服务器为准,例如阿里云,ntp服务,yum install ntp
ntpdate ntp1.aliyun.com 与阿里云时间服务器同步,设置开机启动。
看十遍不如自己写一遍!巩固基础,纵横开拓!

浙公网安备 33010602011771号