[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. 判断移动端还是PC端JS

    if(/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) {         // alert("手机&qu ...

  2. 1016 Phone Bills (25 分)

    A long-distance telephone company charges its customers by the following rules: Making a long-distan ...

  3. PTA数据结构与算法题目集(中文) 7-4

    PTA数据结构与算法题目集(中文)  7-4 是否同一颗二叉搜索树 给定一个插入序列就可以唯一确定一棵二叉搜索树.然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到.例如分别按照序列{2, 1, ...

  4. Java 判断日期的方法

    //str:传入的日期 eg:"2018-07-23" function IsDate(str) { arr = str.split("-"); if(arr. ...

  5. 【Linux】LAMP环境搭建(简易版)

    一. 辅助软件包安装 准备工作:1.Linux系统准备 恢复快照(初始化安装) 设置IP 关闭SELINUX 配置yum源 2.yum -y install gcc gcc-c++ 3.关闭防火墙 4 ...

  6. Java第一天,带你走进编程的世界,我的第一个程序

    要想彻底了解Java是什么,我就得首先了解编程语言的发展史.编程语言最初的形势是"0101......"数据编程,也就是机器语言.机器语言可以说是一种几乎没有人能够看懂的编程语言, ...

  7. 30.6 HashMap的使用

    /* * * 使用HashMap存储数据并遍历(字符串作为key) * *使用HashMap存储数据并遍历(自定义对象作为key) */ 字符串做key和Map的使用一样,重点介绍自定义对象作为key ...

  8. "四号标题"组件:<h4> —— 快应用组件库H-UI

     <import name="h4" src="../Common/ui/h-ui/text/c_h4"></import> < ...

  9. AJ学IOS 之CoreLocation反地理编码小Demo输入经纬度得到城市

    AJ分享,必须精品 一:效果 输入经纬度,可以得到相应的地名 二:思路 跟地里编码差不多 1.获取用户输入的经纬度 2.根据用户输入的经纬度创建CLLocation对象 3.根据CLLocation对 ...

  10. 安卓menu的介绍与使用

    菜单之前是用户点击系统的菜单键才展示出来的,后来这个键渐渐被移除,菜单变成了点击任意的view都可以展示.菜单非为3种: 1.Options menu and action bar  选项菜单和操作栏 ...