运维课程第一周小结

运维课程第一周小结

第一天:计算机基础与Linux安装

第一天的内容大部分为了解性的内容,在课程的最后进行了Rocky主机的安装

1.1 计算机系统
  • 硬件+软件
1.2 计算机理论
  • 1.2.1 冯诺依曼体系:
    • 硬件:运算器、存储器、控制器、输入设备、输出设备
    • 计算机按照程序员给的程序来决定先干什么后干什么
    • 二进制 字节和比特的关系 1B (Byte) = 8 bit
  • 1.2.2 二进制 八进制 十进制 十六进制之间的转换:
    • 十进制转化为二进制方法:拆数字,凑数字

    • 二进制转化为十进制方法:从后向前全部加起来

​ 2n 2n-1 … … 25 24 23 22 21 20

1.3 Linux安装逻辑
  1. 利用VMware Workstation为主机搭建虚拟环境

  2. 在Workstation中安装多个OS 如Rocky Ubuntu等

  3. Windows主机上远程连接OS, 远程连接工具就是MobaXterm

  4. Rocky: 10.0.0.12 、10.0.0.15 、10.0.0.18

    Ubuntu: 10.0.0.13 、 10.0.0.16 、 10.0.0.19

    openeuler: 10.0.0.14 、 10.0.0.17 、 10.0.0.20

1.4 VMware安装好之后的步骤
  • 定制网络环境:
    • 更改NAT的网关为10.0.0.2
1.5 Rocky主机的安装
  • 选择rocky9的光盘

  • 磁盘大小改为200G(实际上不会真的占用你200G的内存),并且将虚拟机种类存储为单个文件

  • 软件选择最小安装,网络更改地址子网掩码网关DNS服务器,更改主机名为rocky9-xx,更改root密码

    • 允许用户使用密码进行SSH登录
  • 创建用户

    • 将此用户设为管理员

第二天:Linux安装与Linux基础

2.1 虚拟机安装逻辑

在这里插入图片描述

  • VM虚拟机在nat网络里,nat网络在和主机对接时形成虚拟网卡ens160 (用ip -a命令可以查看)

  • 为了方便windows管理虚拟机,nat网络生成vmnet8的虚拟网卡,并提供默认ip地址 10.0.0.1

  • mobaxterm中借用vmnet8来管理虚拟机,前提是部署好openssh服务

    查看服务的命令:systemctl status sshd
    
  • 在mobaxterm里建立永久登录

    • SSH中输入主机ip, Specify username为(没有就创建)name:rocky-root
    • 在Terminal中更改font大小为16
    • 在设置中开启右键复制
  • 拍摄快照

    安装图形软件组: dnf group install "Server with GUI"
    
2.2 Ubuntu主机安装
  • 选择Ubuntu光盘

  • 改磁盘大小等操作与rocky一致

  • 手动安装Ubuntu,删除自动安装的ISO

  • 安装过程中一定要禁用互联网!!!(右上角Wired点成灰色的)

  • 设置您的账户:直接用自己的名字就可以

  • 进入图形界面后,在设置中更改ipv4网络

    最高级别执行的命令:sudo
    获取基本软件信息的命令(安装完新的Ubuntu后一定要执行):apt update
    
  • 部署openssh服务以开启22端口

    sudo apt install openssh-server -y
    
  • 在mobaxterm中建立ssh连接,步骤同rocky

    更改root密码:sudo passwd root
    
  • 默认状态下,Ubuntu会拦截root用户,因此必须采取措施

  • /etc/ssh/目录下的sshd_config文件中添加PermitRootLogin yes, 并保存

    重启ssh服务:sudo systemctl restart ssh
    安装虚拟机与windows桌面交互工具:sudo apt install open-vm-tools open-vm-tools-desktop -y
    重启以开启服务:reboot
    
  • 拍摄快照

  • 推荐下载的包:

    apt install bash-completion -- 命令补全
    apt install net-tools -- 方便后期ifconfig
    
2.3 OS空间

在这里插入图片描述

  • 程序代码 -> 应用环境 -> bash(把应用环境的命令解释给操作系统听) -> 操作系统 -> 硬件
  • API–应用 ABI–OS POSIX 我们主要关心的是API

在这里插入图片描述

  • 用户空间发起【系统调用】、 内核空间权限大
2.4 命令集合
linux远程连接: ssh 登录用户名@远端地址ip
用户:
	id -- 当前登录账号的身份
	id rxliang -- 查看指定账号的身份
	su -- 切换用户,但还有前世记忆(还在/root里)
	su - -- 切换用户,但没有前世记忆(在rxliang的家目录里/home/rxliang)
	whoami -- 查看自己的名字
信息查看:
	ls -- 目录查看
	cat -- 文件查看
	cat $SHELL -- 我的操作系统支持的SHELL
	pwd -- 我在哪儿?
	tree -- 以树形列出,前提是要yum/apt install tree
环境变量:
	PS1
	PS1='\[\033[36m\]\n\n当前位置:  \[\033[31m\]\w \[\033[0m\]\n[\[\033[32m\]\u@\[\033[33m\]\h \[\033[36m\]\W \[\033[0m\]]\$ ' -- 建议的值,加入.bashrc
安装:
	对于Rocky所在公司的产品:yum install
	对于Ubuntu所在公司的产品:apt install
位置移动:
	cd -- 回到当前用户家目录
	cd /path -- 进入指定目录
	cd - -- 回到刚才的位置
	cd ~ -- 回到家目录
文件:
	mkdir [-p] -- 创建目录,如果目录本身不存在,则-p
	touch -- 创建文件
	cp 源文件 目标文件 -- 复制文件 同目录不能同名,若在不同目录,则无所谓
	cp -r -- 复制目录
	diff 文件1 文件2 -- 找到两个文件的区别
	mv 源文件或目录 目标文件或目录 -- 如果源文件和目标文件在同一目录, 表明该操作是 改名
                                  如果源文件和目标文件不在同一目录, 表明该操作是 转移
    rm -f -- 删除普通文件
    rm -rf -- 删除目录文件
系统信息:
    uname- r -- 查看内核版本,显示x86_64
	lscpu -- 查看cpu信息
	free -- 查看内存信息
	ps aux 、pstree -p -- 查看进程
	cat /etc/os-release -- 查看系统版本
帮助:
	- h
	--help
	help cmd
日期时间:
	date
	timedatectl
命令补全:
	yum/apt install bash-completion -- 下载完成后exit,重新连接后就可以使用命令补全服务
历史命令:
	history
  • #表示root身份
    $表示普通用户的身份

  • root超级用户的值为0
    普通用户的值默认起始值为1000

  • Linux下一切皆文件

    • 文件地址路径

      • 绝对路径 – 以/(根)开头 e.g. /path/to/word.txt

      • 相对路径 – 第一个位置不是/ e.g. ./word.txt

        ./ : 当前目录
        …/ : 上一级目录

2.5 Linux快捷键
Ctrl + L -- 清屏
Ctrl + R -- 历史命令快捷键
2.6 Windows快捷键
Win + R cmd -- 打开终端

第三天:Linux基础和网络基础

3.1 Ubuntu Server部署
  • 选用minimized版本
  • 手动配置ipv4网络
3.2 Linux基础
  • 代码
信息输出:
	echo "" -- 输出内容到终端
	变量名=值
	echo $变量名 -- 查看变量名
	echo -n -- 普通输出,默认不换行
	echo -e -- 支持特殊符号输出
	echo -e "\033[31m 文字\033[0m" -- 改变输出内容的颜色,并在最后恢复默认颜色 红色31 绿色32 黄色33 紫色35
	printf "" --echo类似,但用的很少
	
文件管理:
	普通查看:
		cat -A -- 显示所有内容 e.g. $ 行尾结束符
		cat -n -- 对所有内容进行编号
		tac -- 逆向输出内容
		grep 目标 /path --/path中找出目标
		grep -v 目标 /path --/path中剔除目标并显示其他内容
	分页查看:
		more /path -- 分屏看,space换屏,enter换行,q退出
		less /path -- 分屏看,别的技巧基本用不到
	部分查看:
		head -nk -- 查看文件的前k行,不加-n默认前十行
		tail -n -- 查看文件的后k行,不加-n默认后十行
		head na /path/to/file | tail -nb -- 查看文件前a行中的后b行,| 相当于水管,把左边的结果传递到右边
	文件编辑:
    nano /path -> Ctrl + X -> Y -> ENTER -- nano编辑器的操作过程
    vim /path -> 按a进入编辑状态 -> ESC退出编辑状态 -> :wq保存并推出;:q!不保存并强制退出
  
	
3.3 网络基础
  • 3.3.1 计算机网络的组成
    • 节点 + 链路

      • 节点分为边缘节点(服务器、客户端)和中间节点(交换机、路由器)
    • 在这里插入图片描述

      • OSI七层模型

      • TCP/IP 四层模型

        • 由内而外:应用层 传输层 网络层 链路层

          数据出:封装
          数据入:解封装

        • 应用层头部:数据能在哪些环境中运行
          表示层头部:数据是什么类型的
          会话:数据要互相传输,至少要建立友好会话 要求知道家庭地址
          传输层:对方的地址
          网络层:通过网络可以找到对方(主机内部的地址)
          数据链路层头部: 进入主机后具体到哪个应用内,其中有mac层
          物理层:网卡、网线

        • 传输层协议:TCP/IP协议
          应用层协议:http、dns

        • 在这里插入图片描述

          • 交换机:一个房间内部机器互相通信
            路由器:不同房间的电脑之间互相同通信
    • ip地址-服务器在互联网上通信时唯一的身份标识

      • ipv4地址

        • 网络位(网段,不可变)+主机位(可变)

        • 在这里插入图片描述

        • ipv4有4个字节,32位

        • 网络位和主机位的边界由掩码来决定

        • 同一网段的主机可以互相通信

        • A-E五个类型的网段

    • socket

      • 应用层暴露端口port,主机暴露ip
      • ip:port = socket
    • 传输层端口的协议

      • TCP:可靠
      • UDP:不可靠
  • 3.3.2 Ubuntu网络配置
    • 去哪里修改网络信息:/etc/netplan 50-cloud-init.yaml
      • 三个文件只要留一个,演示中留的是50
      • 我们需要做的
      • 移除render:NetworkManager接管服务
        match
        render之后的所有行
      • 为ens33添加路由:

    在这里插入图片描述

    • 修改后如何生效: netplan apply
    • 为主机添加新网卡
      • VMware - 虚拟机 - 设置 - 添加 - 网络适配器 - 完成 - 确定

      • vim 50 文件

      • 在这里插入图片描述

      • netplan apply

  • 3.3.3 vim操作技巧
yy -- 复制一行
p -- 在光标的下一行粘贴
dd -- 删除光标所在行
3.4 网站搭建
  • 在这里插入图片描述

    1. 域名解析 网站 -> ip
    2. 和服务器建立连接 对于web站点,默认端口80 先找ip,再找port
    3. 发起请求:请求头 可以通过curl -v www.baidu.com 查看
    4. 响应请求
  • 通过安装web软件。建立服务器中的web程序

  • web程序中有静态资源文件(不管谁请求,返回的内容都一样)和动态资源文件(比如“欢迎你!xxx”)

  • web软件:Apache、Nginx、Tomcat

  • Ubuntu环境部署Nginx:apt install Nginx -y

    • 关于软件安装(rocky上需要手动打开 ubuntu上自动打开)
  • 默认情况下有防火线控制主机的数据传输, 在rocky族的操作系统上安装完Nginx需要关闭防火墙,即systemctl stop firewalld.service

3.5 Linux网络信息获取命令
主机名:
	hostname -- 查看主机名
	hostnamectl set-hostname 新名字 -- 更改主机名
ip地址:
	ip -a
	ifconfig
路由:
	route -n -- 显示网关(类比小区的唯一出口)和路由(一条指向目标ip的出口路线)
	ip route list
服务端口:
	ss -tnulp -- t:tcp n:用数字表示 u:udp l:listen监听服务的socket p:显示进程的id和名字
	netstat -tnulp

untu上自动打开)

  • 默认情况下有防火线控制主机的数据传输, 在rocky族的操作系统上安装完Nginx需要关闭防火墙,即systemctl stop firewalld.service
3.5 Linux网络信息获取命令
主机名:
	hostname -- 查看主机名
	hostnamectl set-hostname 新名字 -- 更改主机名
ip地址:
	ip -a
	ifconfig
路由:
	route -n -- 显示网关(类比小区的唯一出口)和路由(一条指向目标ip的出口路线)
	ip route list
服务端口:
	ss -tnulp -- t:tcp n:用数字表示 u:udp l:listen监听服务的socket p:显示进程的id和名字
	netstat -tnulp
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值