day15学习笔记(3月21日)
知识补充
理解压缩文件(tar、tar.gz、tgz)
关键操作:使用file命令查看文件的属性,准确判断文件类型
.tar tar -cvf all_nginx.tar 需要打包的文件 tar -xvf all_nginx.tar 拆包 .tar.gz tar -zxvf all_nginx.tar #万能解压缩命令 .gx #需要先解压缩gz后缀,再拆tar包 gzip -d all_nginx.tgz tar -xvf all_nginx.tar
sort命令和uniq命令
- sort命令
命令解释:将文件内容俺早规则进行排序,然后输出打印 语法:sort 参数 文件 参数: -n 根据字符串数值比较排序 -r 逆向输出排序结果 生成20个随机数字 for i in {1..30};do echo $(expr $RANDOM / 1000 ) ;done> t1.txt 读取文件内容
- uniq命令
命令解释:输出忽略文件中的重复行,常与sort结合使用 语法: uniq 参数 文件 参数: -c 在每一行前统计出现的次数 -d 只输出重复行 -u 只出现过一次的行,针对-c 统计之后的结果
alias和unalias命令
- alias
作用:用于给长命令做的一个简单的别名 案例:给启动django的命令做一个简单的别名(alias) alias stdj='python3 manage.py runserver 0.0.0.0:8000' #永久生效的办法,写入到自己的用户环境变量文件中 ~/.bash_profile
- unalias
作用:取消别名 unalias stdj
nslookup和dig命令(实现更专业的查找域名)
- nslookup
命令解释:nslookup (name server look up 名称服务器查找,简称,域名查找 ),分为两种模式,交互式和非交互式 交互式: [root@yuanlai0024 opt]# nslookup > baidu.com Server: 114.114.114.114 Address: 114.114.114.114#53 Non-authoritative answer: Name: baidu.com Address: 220.181.38.251 Name: baidu.com Address: 220.181.38.148 非交互式: [root@yuanlai0024 opt]# nslookup baidu.com Server: 114.114.114.114 Address: 114.114.114.114#53 Non-authoritative answer: Name: baidu.com Address: 220.181.38.148 Name: baidu.com Address: 220.181.38.251
- dig
命令解释:指定一个公共DNS服务器,解析自己的域名 语法:dig @223.5.5.5 你的域名 dig @223.5.5.5 apecome.com #补充常用的公共DNS服务器地址 114.114.114.114 #移动、电信、联通通用的DNS 223.5.5.5 #阿里巴巴DNS 119.29.29.29 #腾讯 8.8.8.8 #谷歌
scp远程传输
命令解释:基于ssh协议认证的传输,可以实现不在同一个网段的远程传输,需要进行账户密码认证 语法: scp 源数据的机器 远程机器 参数: -r 递归传输,用于整个目录传输 示例: # 把当前登录的机器的 /etc/passwd文件发给192.168.0.158 scp /etc/passwd root@192.168.0.158:/opt #把192.168.0.158上的/etc/passwd 拿到自己的 /opt目录下 scp root@192.168.0.158:/etc/passwd /opt/
shred命令(危险的粉碎命令)
命令解释:粉碎文件命令,原理是随机写入一堆二进制数据,导致原文件无法使用
与rm命令区别:rm删除数据后,磁盘其实还未立即彻底删除,根据磁盘恢复数据手段,还是可以把数据恢复。
新内容
关于systemctl命令管理脚本的流程
- 启动一个程序,就是执行了该软件提供的命令,比如
/usr//sbin/nginx
,usr/local/cmatrix12/bin/cmatrix
- 由于手动管理(启动、停用、重启)比较麻烦,从而引入一个命令systemctl管理服务
- 凡是在
/usr/lib/systemd/system/
目录下以*.service
结尾的文件都可以使用systemctl命令单元对服务进行管理- 在centos7系统凡是通过yum安装的程序,会自动生成一个脚本
*.service
放于/usr/lib/systemd/system/
目录下- 特例network也可以通过systemctl命令进行管理,该命令会去读取
/etc/init.d/
目录下读取network
脚本
ntp时间服务部署和timedatectl命令
-
ntp
解释:NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议。
-
ntp强制性更新整个系统的时间,ntpdate,不友好的强制同步时间
yum install ntp -y ntpdate -u ntp.aliyun.com
-
搭建ntp服务,自动的,友好的更新,校准系统时间
1、安装ntp软件 yum install ntp -y 2、查看ntp软件信息 ls /usr/lib/systemd/system/ |grep ntp 3、找到ntp软件的配置文件 rpm -ql ntp |grep conf /etc/ntp.conf /etc/sysconfig/ntpd /usr/share/man/man5/ntp.conf.5.gz 4、修改ntp配置文件, vim /etc/ntp.conf, 做如下修改 driftfile /var/lib/ntp/drift # 添加ntp的运行日志 logfile /var/log/my_ntp.log # 记录程序的运行进程号的,可以用于写脚本,读取这个文件,就找到了程序的进程id pidfile /var/run/ntpd.pid # Permit time synchronization with our time source, but do not # permit the source to query or modify the service on this system. restrict default nomodify notrap nopeer noquery # Permit all access over the loopback interface. This could # be tightened as well, but to do so would effect some of # the administrative functions. restrict 127.0.0.1 restrict ::1 # Hosts on local network are less restricted. #restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap # Use public servers from the pool.ntp.org project. # Please consider joining the pool (http://www.pool.ntp.org/join.html). server ntp.aliyun.com iburst prefer server cn.pool.ntp.org iburst 5、修改机器的时间为错误时间 timedatectl set-time '2018-11-8 10:00' timedatectl Local time: 四 2018-11-08 10:00:04 CST Universal time: 四 2018-11-08 02:00:04 UTC RTC time: 四 2018-11-08 02:00:04 Time zone: Asia/Shanghai (CST, +0800) NTP enabled: no NTP synchronized: no RTC in local TZ: no DST active: n/a 6、启动ntpd服务,等待时间是否同步 关于ntpd的服务脚本文件/usr/lib/systemd/system/ntpd.service systemctl start ntpd 7.查看ntp是否和上游服务器同步 ntpstat 8、查看时间同步的状态 ntpq -p
-
-
timedatectl
centos7: timedatectl cetnso6: date date 改时间日期(软件时间,你的系统运行了,程序计算的时间) hwclock 改硬件时间(计算的主板上,有一个BISO系统,以及纽扣电池,提供电量) centos6时代,修改系统的时区、时间,需要用到修改时间、日期、date命令 centos6的修改时区的操作,时区就以亚洲上海为准了 修改时区,cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 查看系统中有哪些时区文件 ls /usr/share/zoneinfo/ ll /usr/share/zoneinfo/Asia/Shanghai
命令解释timedatectl(英文全拼:timedate control)命令用于在 Linux 中设置或查询系统时间、日期和时区等配置。 作用:修改时间、修改市区 语法: timedatectl 参数 指令 参数 -h --help Show this help message --version Show package version --no-pager Do not pipe output into a pager --no-ask-password Do not prompt for password -H --host=[USER@]HOST Operate on remote host 在远程主机上运行 -M --machine=CONTAINER Operate on local container 在本地容器上运行 --adjust-system-clock Adjust system clock when changing local RTC mode 调整系统时钟 更改本地RTC模式时调整系统时钟 指令 Commands: status Show current time settings 查看当前状态 set-time TIME Set system time 设置当前的时间 set-timezone ZONE Set system time zone 设置当前的时区 list-timezones Show known time zones 查看系统支持哪些时区 set-local-rtc BOOL Control whether RTC is in local time set-ntp BOOL Control whether NTP is enabled