第1,2周就业班作业

1 一个完整计算系统的简要介绍

一个完整的计算机系统由硬件和软件两部分组成

计算机系统
硬件
主机
软件
外设
存储器
输入设备
输出设备
CPU
内存
ROM
RAM
运算器
控制器
系统软件
OS
服务程序
数据库
程序语言处理系统
应用软件
通用软件
用户软件

2 进制的转换

进制转换工具主要使用bc完成,bc支持交互式和非交互式,控制转换前和转换后的进制模式是通过bc的ibase和obase实现的。

十进制与二进制转换


[root@rocky87 ~]# echo "ibase=10;obase=2;10"|bc
1010
[root@rocky87 ~]# echo "obase=10;ibase=2;10"|bc
2

十六进制与十进制转换

[root@rocky87 ~]# echo "obase=10;ibase=16;FA2"|bc
4002
[root@rocky87 ~]# echo "ibase=10;obase=16;4002"|bc
FA2
[root@rocky87 ~]#

3 VMware软件的安装

3.1 软件下载

下载链接:link

选择相应的软件版本进行下载

3.2 安装软件

运行下载好的exe,按照安装提示逐步向下执行。

主要是最后需要一个许可证,可百度搜索一个序列号校验。

4 GPL和MIT开源协议 区别

GPL:GNU通用许可协议
MIT:麻省理工学院许可协议

两者的目的均是为了开源,但受GPL约束的项目或者产品在使用了遵循GPL的代码或工具后可以自用,也可以分发,如果分发则所有人均可以使用你分发的产品或工具,即必须开源,并且可被修改,或者销售,并且同样受GPL的约束。

而MIT则是不必对代码进行开源,也可以开源,自由度要比GPL大,只是在发布时需要明确说明MIT许可。

5 安装rocky 8.5, ubuntu 22.04,并结合xshell说明如何通过虚拟IP登入系统

5.1 安装rocky

创建虚拟机

选推荐安装方式

稍后安装OS
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
此处的兼容性选择要选esxi6.5 否则后面在启动虚拟机的时候会遇到磁盘和网卡识别的问题
![在这里插入图片描述](https://img-blog.csdnimg.cn/2ac992913fe54646ab13a02e153c7d12.png

选择英文
在这里插入图片描述

带有!图标的选项进行设置,然后开始安装系统
在这里插入图片描述

配置网卡
在这里插入图片描述
获取地址
在这里插入图片描述
登录成功
在这里插入图片描述

5.2 安装Ubuntu 20.04

创建虚拟机,客户机操作系统类型选Ubuntu
在这里插入图片描述
将硬件兼容修改为esxi6.5,否则无法引导系统安装
在这里插入图片描述

此处为快速安装选择最小化安装
在这里插入图片描述
采取DHCP动态分配地址
在这里插入图片描述
创建账号,设置主机名
在这里插入图片描述
安装sshd服务
在这里插入图片描述
配置登录IP及路由


root@ubuntu1804:~# cat /etc/netplan/00-installer-config.yaml
#This is the network config written by 'subiquity'
network:
  ethernets:
    eth0:
      addresses: [10.0.0.5/24]
      gateway4: 10.0.0.2
      nameservers:
        addresses: [114.114.114.114]
    eth1:
      dhcp4: no
      dhcp6: no
      addresses: [10.10.0.6/24]
      routes:
        - to: 10.30.0.0/16
          via: 10.10.0.2
  version: 2
  renderer: networkd
root@ubuntu1804:~#
root@ubuntu1804:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:b0:c3:10 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.5/24 brd 10.0.0.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:feb0:c310/64 scope link
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:b0:c3:1a brd ff:ff:ff:ff:ff:ff
    inet 10.10.0.6/24 brd 10.10.0.255 scope global eth1
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:feb0:c31a/64 scope link
       valid_lft forever preferred_lft forever
root@ubuntu1804:~#

6 tab补全原理

tab可以实现命令,路径补全

6.1 命令补全

命令的子命令补全是由bash-completion工具包实现的

关于bash-completion
自动补全会依赖bash-completion在/etc/bash_competion.d/路径下的自动补全脚本,自动补全脚本主要通过compgen和complete命令以及bash内置的补全变量实现。

compgen -W

compgen -W <word list> <comp_word>

comp_word会在word list中进行匹配,匹配到的内容会存放到内置变量COMPREPLY数组中,其中word list可以预先定义好,comp_word是用户输入的字符串

complete -F

complete -F <func_name> <comp_cmd>
func_name是用户自定义的实现自动补全业务逻辑的函数名
comp_cmd是用户要使用的命令

complete的作用是将命令和func_name关联,从而能在用户使用
命令的时候输入子命令敲tab 可以关联到func_name函数里的业务逻辑中,进而输出匹配的待选项

查看支持子命令自动补全的命令
[root@rocky87 bash_completion.d]# complete
complete -F _minimal
complete -F _filedir_xspec freeamp
complete -F _filedir_xspec bibtex
complete -F _filedir_xspec lualatex
complete -F _filedir_xspec chromium-browser
complete -F _filedir_xspec zathura
complete -F _command time
complete -F _command do
complete -F _longopt chroot
complete -F _longopt tail
complete -F _filedir_xspec lrunzip
complete -F _filedir_xspec amaya
complete -F _longopt df
complete -F _known_hosts traceroute6
complete -F _filedir_xspec lzgrep
complete -u groups
complete -F _filedir_xspec lzless
complete -F _longopt bison
complete -F _filedir_xspec kdvi
complete -F _filedir_xspec lbzcat
complete -F _filedir_xspec lilypond
complete -F _command then
complete -F _filedir_xspec sxemacs
complete -F _filedir_xspec epdfview
complete -F _command aoss
...

6.2 路径补全

bash会根据PATH环境变量定义的路径从左往右搜索路径,第一次匹配到的命令即为选中要执行的命令。
因此也可以将自己写的脚本加执行权限放入PATH定义的路径下方便调用。

[root@rocky87 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@rocky87 ~]#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值