[jj@oldboy ~]$ hostnamectl set-hostname zj
主机名只有root用户才有权限修改,普通用户想要修改要知道root密码,sudo提权,重启虚拟机或者打开新的窗口新的主机名才会生效(bash)(重启终端) mkdir $(date +%F-%R)_$(hostname).etc.tar.gz
mkdir `date +%F-%R`_`hostname`.etc.tar.gz
$() 和`` 都代表先执行里面的内容,最好用$() 因为反引号``不支持嵌套 [root@oldboy /]# tar zcf /backup/$(date +%F)_$(hostname)_etc.tar.gz opt
[root@oldboy /]# cd backup/
[root@oldboy backup]# ll
total 4
-rw-r--r-- 1 root root 167 Apr 27 14:02 2020-04-27_oldboy_etc.tar.gz sh -x 脚本 vim a.sh
#!/bin/bash
D=$(date +%F-%R)
H=$(hostname)
touch $D_$H # 少调用变量了
touch ${D}_${H} >/dev/null 多次调用变量的时候 用 {} 分割变量,不分割的话可能会造成 有的变量 没用调用(# $连体婴儿),
可以用脚本里的颜色来判断,命令是不是一个整体,能不能执行
#脚本里调用变量的好处:
一次解决多个指向关系,减少命令出错的机率 [root@oldboy backup]# touch $D_$H.tgz2
[root@oldboy backup]# ll -a
-rw-r--r-- 1 root root 0 Apr 27 14:12 oldboy.tgz2 #
[root@oldboy backup]# touch ${D}_$H.tgz3
[root@oldboy backup]# ll
-rw-r--r-- 1 root root 0 Apr 27 14:13 2020-04-27-14:08_oldboy.tgz3
--------------------------------------------------------- vim a.sh
#!/bin/bash
D=$(date +%F-%R)
H=$(hostname)
mkdir -p /backup #不报错,或者/dev/null
cd / && tar zcf /backup/${D}_$H.tgz etc >/dev/null cd / && \
tar zcf /backup/${D}_$H.tgz etc \ 表示折行的意思,(&&)两行算一行 (\ 后面必须是空,否则就是转义的意思了) cd /
tar zcf /backup/${D}_$H.tgz etc
不能是这样,脚本里的一条cd 命令没用任何意义(# 有的可以执行,有的不可以 ,忘记他) 要打包某个目录,一般先cd到这个目录的上一级目录,这样打包没有 删根 的提示(也相对安全),当然也可以 tar -zcPf 打包,只是这样有覆盖的隐患 # 打包文件的话随意 tar zcf 123.tgz efegr 用tar打包目录或文件,如果目录或文件不存在,那么只会打包一个空目录,空文件
tar cf 456.tgz gthgt ------------------------------------------------ && :前面执行成功才会执行后面的,(省略判断),同时也是一个命令行执行多个命令
|| :前面 的 和后面的执行一个, (同样省略了判断)
| :
'|' 在单引号里面的管道符,表示或者的意思
, :awk sed , cut cronatb
;
- make && make install
cd / && tar zcf etc.tgz etc && mv etc.tgz /tmp/
------------------------------------------------------- # 判断--单条件
# if [ -d /etc ]; then echo 存在 || echo 不存在;fi
# if [ ! -f etc ]; then echo 不存在 || echo 存在;fi
# 这样写只能echo前面的,后面的永远不会执行 [root@oldboy opt]# [ -d /op ]; echo 存在||echo 不存在 ||分割为前后,;在这...(错)
存在 [root@oldboy opt]# [ -d /op ]&& echo 存在||echo 不存在 && 和 ||一起分割 (正确)
不存在
[root@oldboy opt]# [ ! -d /op ]&& echo 不存在||echo 存在 && 和 ||一起分割 (正确)
不存在 [ -d /op ] || xx 前面不成功,后面执行xx,,,成功了就啥也不干
[ -d /op ] && xx 前面成功了,后面执行xx,,,不成功就啥也不干 [ -d $DIR ] || mkdir $DIR
[ ! -d $DIR ] && mkdir $DIR [root@oldboy opt]# vim a.txt # -d 判断目录是否存在, -f 判断一个文件是否存在
#!/bin/bash
if [ -d /root ];then
echo 存在
else
echo 不存在
fi #!/bin/bash
if [ -f /syy ];then
echo 存在
else
echo 不存在
fi # 多条件
#!/bin/bash
if [ -f /syy ];then
echo 存在
elif
echo 不存在
elif
echo
fi echo $a
mkdir $a [root@oldboy tmp]# which [
/usr/bin/[
[ -d /root ] && 注意空格
elif 再或者。。else 否则
------------------------------------------- [root@oldboy opt]# for n in `seq 30`;do date -s "2020-03-$n";touch file$n;done
`seq 30` 必须是反引号,多条命令用;分割,"2020-03-$n" 不能用单引号强引 ,done结尾
[root@oldboy opt]# ll
total 0
-rw-r--r-- 1 root root 0 Mar 1 00:00 file1 不指定时分,就默认是00:00 [root@oldboy opt]# vim /etc/profile.d/m.sh
#!/bin/bash for n in `seq -w 30`;do
date -s "2020-4-$n"
touch "2020-4-$n" >/dev/null
done # 必须用反引号,最好加上双引号,不然头痛 ,不用再像命令行一样用;分割命令 ----------------------------------------------- for n in `seq 10`;do 文件内容,然后以行多次 定义变量(所以叫for循环)
echo $n
done
[root@oldboy tmp]# for n in `seq 10`;do echo $n;done #命令行里面的for循环跟脚本里面的for循环不一样
1
2
3
[root@oldboy tmp]# for n in seq 10;do echo $n;done #拼凑,排成列
seq
10
[root@oldboy tmp]# for n in "seq 10";do echo $n;done
seq 10
[root@oldboy tmp]# for n in 'seq 10';do echo $n;done
seq 10 ### 3个注释 两个绝对路径 1个小尾巴 (先把命令拿出去试一下)
* * * * * /bin/cd / && /bin/sh /bin/tar zcf /pp etc &>/dev/null 当用户家目录的 .bash_* 文件被删除或者移动时,bash之后 命令符状态就会发生改变,
# cp /etc/skel/.bash_* /home
vim编辑文件非正常退出,就会在家目录下生成一个.xx.swp文件,不能查看,当再次使用vim编辑这个文件的时候,就会出现提示界面 --------------------------------------------------------------- ## 在安装界面 install centos7上 按tab键
# CentOS 7 要修改网卡名
net.ifnanmes=0
## 如果是dell的服务器 em1 em2 em3 em4
net.ifnames=0 biosdevname=0 (首选) 时区--KDUMP(不要勾)---选stand手动分区
# 不用在这里修改网卡,可以装好系统之后再改网卡配置文件 ## 磁盘分区(512G)
/boot: 500M
swap(虚拟内存):物理内存1~2倍,#最大8G
/:剩下的都给/ # win+R cmd ipconfig
以太网适配器 以太网: # 物理机(网卡1) 连接特定的 DNS 后缀 . . . . . . . :
本地链接 IPv6 地址. . . . . . . . : fe80::4072:61e2:bbdb:8b17%17
IPv4 地址 . . . . . . . . . . . . : 192.168.0.100
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . : 192.168.0.1 (#路由器关口,记录路由器的信息) 以太网适配器 以太网 2: # 物理机(网卡2) 媒体状态 . . . . . . . . . . . . : 媒体已断开连接
连接特定的 DNS 后缀 . . . . . . . : 以太网适配器 VMware Network Adapter VMnet1: # 仅主机模式使用的 VMnet1 网卡 连接特定的 DNS 后缀 . . . . . . . :
本地链接 IPv6 地址. . . . . . . . : fe80::e4c2:98c0:4388:d7fa%16
IPv4 地址 . . . . . . . . . . . . : 192.168.137.1
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . :192? 以太网适配器 VMware Network Adapter VMnet8: # NAT模式使用的 VMnet8 网卡 连接特定的 DNS 后缀 . . . . . . . :
本地链接 IPv6 地址. . . . . . . . : fe80::5036:31dd:4877:9dab%13
IPv4 地址 . . . . . . . . . . . . : 10.0.0.1
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . : 10? ----------------------------------------------------------- 公网ip :115.61.250.173
路由器 :网关(),dhcp 子网(192.168.0.x~192.168.0.x)
网卡 192.168.0.1
物理机ip:
虚拟机 : 桥接 :vmnet0 dhcp ip可能冲突( 虚拟机的地位跟物理机 相对与路由器 的地位相同)
IP 192.168.0.x (路由器设置的)
网关 192.168.0.1 (默认) 仅主机 :vmnet1 (#同一个区域网下(路由器)所有的仅主机模式可以通信,但是不能连接外网)(没有网络打的cs)
IP 192.168.0.x (路由器设置的)
网关 192.168.0.1 (默认的) vmnet8 :
# 10.0.0 网络位,x 是主机位。
#子网:路由器或者虚拟网络编辑器下的网络,
#网段:网络位相同,主机位不同的IP 属于同一个网段。
#网关(关口)
连接同一块网卡( 路由器或者虚拟网络编辑器 )的虚拟机或者物理机,属于同一个子网,#他们的网段一样
子网 10.0.0.1~10.0.0.255 网卡10.0.0.1 网关10.0.0.2 广播地址10.0.0.255 ,可用的IP地址范围是 10.0.0.3~254
公网IP------动态网络地址转换------路由器DHCP----物理机-----(VM8)动态网络地址转换--虚拟机
公网IP就是家门口那个IP,是移动联通电信给的 虚拟网络编辑器:子网(网段)
子网 10.0.0.x~10.0.0.255
网卡 10.0.0.1
网关 10.0.0.2 (自己在虚拟网络适配器设置的) 子网掩码 255.255.255.0
DNS 233.5.5.5 223.6.6.6(阿里云给的 www.alidns.com)域名解析(域名解析成ip),/etc/resolv.conf -人家的
可以自己在/etc/hosts里自己一个一个加进去-----自己的 10.0.0.255广播地址 ---------------------------------------------------------- # 关机拍快照占用磁盘空间小,恢复快照是关机状态

Linux运维基础阶段部分复习概要的更多相关文章

  1. 第一阶段·Linux运维基础-第1章·Linux基础及入门介绍

    01-课程介绍-学习流程 02-服务器硬件-详解 03-服务器核心硬件-服务器型号-电源-CPU 01-课程介绍-学习流程 1.1. 光看不练,等于白干: 1.2 不看光练,思想怠慢: 1.3 即看又 ...

  2. linux运维基础知识

    linux运维基础知识大全 一,序言 每一个微不足道的知识,也是未来的铺垫.每一份工作的薪资职位,也是曾经努力的结果. 二,服务器 1,运维人员工作职责: 1)保证数据不丢失:2)保证服务器24小时运 ...

  3. Linux运维基础采集项

    1. Linux运维基础采集项 做运维,不怕出问题,怕的是出了问题,抓不到现场,两眼摸黑.所以,依靠强大的监控系统,收集尽可能多的指标,意义重大.但哪些指标才是有意义的呢,本着从实践中来的思想,各位工 ...

  4. Linux运维基础

    一.服务器硬件 二.Linux的发展史 三.Linux的系统安装和配置 四.Xshell的安装和优化 五.远程连接排错 六.Linux命令初识 七.Linux系统初识与优化 八.Linux目录结构 九 ...

  5. linux运维基础__争取十月前研究的差不多

    转来的一编,考虑在十月前研究的差不多 linux运维人员基础 1.很多地方经常会用到的rsync工具 实施几台服务器的同步效果 我们公司就是使用这个工具完成服务器的游戏的服务端和客户端同步,有几个文章 ...

  6. 网络配置——Linux运维基础

    今天把Linux的网络配置总结了一下,尽管并不难可是是个比較重要的基础.然后我也不知到自己以后是否会做运维,可是我知道自己比較喜欢刨根问底.还有就是我很珍惜我以前掌握过的这些运维的技能.今天突然间问自 ...

  7. [转帖] Linux运维基础知识学习内容

    原作者地址:https://www.cnblogs.com/chenshoubiao/p/4793487.html 最近在学习 linux  对简单的命令有所掌握 但是 复杂的脚本 shell pyt ...

  8. Linux运维基础命令笔试题--看看你会多少?

    老男孩教育linux运维就业班第一周课后学习效果能力上机大考察 (每题10分共130分,过100即可,请给出详细步骤) 1.创建目录/data/oldboy ,并且在该目录下创建文件oldboy.tx ...

  9. linux运维基础之跟我一起学正则表达式(一)

    正则表达式 ### 二, 1) 什么是正则表达式 正则表达式又称为规则表达式 正则表达式是一个计算机的一个概念 正则表达式为了处理大量的文本|字符串而定义的一套规则和方法,通常被用来检索,替换那些符合 ...

随机推荐

  1. EF 太重,MyBatis 太轻,ORM 框架到底怎么选 ?

    以 EF 为代表的基于 Linq 的 ORM 框架总是 很重. 他们的功能早已超出了一个 ORM 的范畴, ORM 是 Object Relational Mapping ,从名字上看,其初衷是将 数 ...

  2. WeixinJSBridge API使用实例

    <span style="color: rgb(51, 51, 51); font-family: tahoma, arial, 宋体; font-size: 14px; line-h ...

  3. MFC之使用blat发送邮件

    blat的下载地址:http://www.blat.net 我用它进行了smtp服务的邮件发送.这里我使用的qq邮箱,qq邮箱使用的密码是授权码,可以再qq邮箱设置里面开启smtp服务.下载下来是文件 ...

  4. jsonpath 字典中取值

    jsonpath 第三方模块 def getsign(): url="http://api.nnzhp.cn/api/user/login" data = {"usern ...

  5. Python爬虫系列(四):Beautiful Soup解析HTML之把HTML转成Python对象

    在前几篇文章,我们学会了如何获取html文档内容,就是从url下载网页.今天开始,我们将讨论如何将html转成python对象,用python代码对文档进行分析. (牛小妹在学校折腾了好几天,也没把h ...

  6. java异常处理:finally中不要return

    java异常处理:finally中不要return 复制代码 public class Ex1 { public static void main(String[] args) { System.ou ...

  7. ffmpeg使用ss与t参数对视频进行剪辑

    ffmpeg能够实现对视频进行剪辑操作,ss为指定视频剪切开头的起始时间,t制定视频的总长度,ss与t的单位均为:秒. ffmpeg -ss 7200 -i 1080p.mp4 -c copy -t ...

  8. AJ学IOS 之微博项目实战(7)程序启动新特性用UICollectionViewController实现

    AJ分享,必须精品 一:效果 这里实现了大多数app都会有的软件新特性的功能,用的是UICollectionViewController实现的 二:思路 这里用了UICollectionViewCon ...

  9. 【转】Centos7启动网卡(获取ip地址)

    这里之所以是查看下IP ,是我们后面要建一个Centos远程工具Xshell 连接Centos的时候,需要IP地址,所以我们这里先 学会查看虚拟机里的Centos7的IP地址 首先我们登录操作系统 用 ...

  10. 记录:如何使用ASP.NET Core和EnityFramework Core实现服务和数据分离

    前情提要: 现有一个网站框架,包括主体项目WebApp一个,包含 IIdentityUser 接口的基架项目 A.用于处理用户身份验证的服务 AuthenticationService 位于命名空间B ...