一、一个完整计算系统的简要介绍
硬件系统和软件系统共同构成了一个完整的计算机系统,硬件是指具有形的物理设备,包含主机和外设设备,是计算机系统中实际物理装置的总称。软件包含系统软件和应用软件。
二、学会进制的转换,并简单举例完成转换
把(17)10转换为二进制数。

即(17)10=(10001)2
三、制作一个教程,说明vmware软件如何下载安装
1.获取vmware包
http://alist.19870612.xyz/caimz/softwares/opsTools/vmware/windows
vmware16pro许可证密钥最新
ZF3R0-FHED2-M80TY-8QYGC-NPKYF
YF390-0HF8P-M81RQ-2DXQE-M2UT6
ZF71R-DMX85-08DQY-8YMNC-PPHV8
vmware16pro安装激活步骤
1.打开安装好的vmware16 pro软件,点击上方的“帮助”按钮;

2.在下拉菜单页面点击“输入许可证密钥”;

3.在出现的对话框中输入上方的密钥之一,比如:ZF3R0-FHED2-M80TY-8QYGC-NPKYF,最后点击“确定”就可以了。如果中间有失效的,可以尝试另外的密钥。

需要开启电脑虚拟化

windows电脑配置



四、说明GPL和MIT开源协议的区别。
GPL:GNU通用公共许可协议。
代码的开源/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后和衍生的代码做为闭源的商业软件发布和销售
MIT
这个协议唯一的条件就是在修改后的代码或者发行包包含原作者的许可信息
五、制作2个安装教程,安装rocky 8.5, ubuntu 22.04,并结合xshell说明如何通过虚拟IP登入系统。
rocky8.5
https://www.jianshu.com/p/efffccda1ee1
ubuntu 22.04
https://www.jianshu.com/p/7774af43fe7b
六、说明tab键补全命令以及补全路径的原理
在Linux命令行下,输入字符后,按两次Tab键,shell就会列出以这些字符打头的所有可用命令。如果只有一个命令匹配到,按一次Tab键就自动将这个命令补全。 比如,想更改密码,但只记得这个命令前几个字母是pass。这时候,按Tab键,shell就自动输出 passwd 命令,非常方便。
文件实质都存放在根目录下,树状目录,所以tab可以在当前指定目录下寻找i节点信息补齐路径或者文件名; 另一方面tab可以去查询环境变量设置里面/etc/bin的命令文件,补齐命令。
七、说明内部命令和外部命令的区别,以及他们如何获取帮助的?
内部命令:由shell自带的,而且通过某命令形式提供, ,用户登录后自动加载并常驻内存中
外部命令:在文件系统路径下有对应的可执行程序文件,当执行命令时才从磁盘加载至内存中,执行完毕后从内存中删除
内部命令查看帮助的格式是
help COMMAND
man bash # man 后面直接跟命令就行
外部命令查看帮助的格式是
COMMAND --help 或者 COMMAND --h
man COMMAND #man 后面直接跟命令就行
八、说明命令行快捷键如何完成,1)快速跳转到行首?2)快速跳转到行尾?3)快速删除当前光标到行尾,4)快速删除光标到行首,5)如何快速取消执行命令。
ctrl+a:跳到命令行首。
ctrl+e:end,跳到命令行尾。
ctrl+k:删除光标至命令行尾内容。
ctrl+u:删除光标至命令行首内容。
ctrl+c:快速取消执行命令。
九、总结Linux目录结构说明每个目录主要的用途。
/bin 目录为命令文件目录,也称为二进制目录,包含了供系统管理员及普通用户使用的重要的 Linux 命令的二进制(可执行)文件,包括 Shell 解释器等。
/boot 目录中存放系统的内核文件和引导装载程序文件。例如 CentOS7 的内核文件为 vmlinuz-3.10.0-693.e17.x86_64。
/dev 目录也称设备(device)文件目录,存放连接到计算机上的设备(终端、磁盘驱动器、光驱及网卡等)的对应文件,包括字符设备和块设备等。
/etc 目录存放系统的大部分配置文件和子目录。与网络有关的配置文件保存在 /etc/sysconfig 子目录中。该目录下的文件由系统管理员来使用,普通用户对大部分文件有读取权限。
/home 目录中包含系统上各个用户的主目录,子目录名称即为各用户名。
/lib 目录下存放了各种编程语言库。典型的 Linux 系统包含了 C、C++ 和 FORTRAN 语言的库文件。用这些语言开发的应用程序可以使用这些库文件。这就使软件开发者能够利用那些预先写好并测试过的函数。/lib 目录下的库映像文件可以用来启动系统并执行一些命令。目录 /lib/modules 包含了可加载的内核模块。/lib 目录存放了所有重要的库文件,其他的库文件则大部分存放在 /usr/lib 目录下。
/lib64 目录用来存放与 /lib 不同格式的二进制函式库,支持64位的函式库。
/media 目录是指系统设置的自动挂接点,如 CDROM 光盘或 U 盘的自动挂接点,而 /mnt 一般是指手动挂接点目录。
/opt 目录表示的是可选择的意思,某些第三方应用程序通常安装在这个目录,有些软件包也会被安装在这里。
/root 目录为系统管理员的主目录。
/usr 目录是 Linux 系统中最大的目录之一,很多系统中,该目录是作为独立分区挂载的。该目录中主要存放不经常变化的数据,以及系统下安装的应用程序目录。
/mnt,如果想要暂时挂载某些额外的装置,一般可以放置在 /mnt 目录中。早期,这个目录的作用与 /media 相同,后来有了 /media,这个目录就用来暂时挂载用了。
/proc 目录是一个虚拟的文件系统,该目录中的文件是内存中的映像。可以通过查看该目录中的文件获取有关系统硬件运行的详细信息,例如,使用 more 或 less 命令查看 /proc/interrupts 文件以获取硬件中断(IRQ)信息,查看 /proc/cpuinfo 文件以获取 CPU 的型号、主频等信息。
/sbin 目录下保存系统管理员或者 root 用户的命令文件。/usr/sbin 存放了应用软件,/usr/local/sbin 存放了通用的根用户权限的命令。
/var 目录以及该目录下的子目录中通常保存经常变化的内容,如系统日志、邮件文件等。
早期的 FHS 规定系统开机后所产生的各项信息应该放在 /var/run 目录下,新版的 FHS 则规范到 /run 下。由于 /run 可以使用内存来仿真,因此效能上会好很多。例如,CentOS7 系统的自动识别 CDROM 光盘映像文件则加载到 /run/media/ 目录下。
十、总结文件通配 *, ?, [a-z], [0-9], ~,{a..z}, [:alnum:] [:alpha:] [:blank:][:digit:][:graph:] [:lower:][:punct:] [:space:] [:upper:]等常用通配符。
* 代表任意长度的任意字符
? 代表匹配任意单个字符
[a-z]: 所有的小写字母
[0-9]: 所有的数字
~ 当前登录用户的家目录
{a..z} 序列a到z
[:alnum:] 字母和数字
[:alpha:] 任何大小写字母
[:blank:] 空白字符
[:digit:] 十进制数字
[:graph:] 可打印的非空白字符
[:lower:] 小写字母
[:punct:] 标点符号
[:space:] 空格
[:upper:] 大写字母
十一、总结硬链接和软件链接原理,并举例说明如何使用。
原理上,硬链接和源文件的inode节点号相同,两者互为硬链接。软连接和源文件的inode节点号不同,进而指向的block也不同,软连接block中存放了源文件的路径名。
实际上,硬链接和源文件是同一份文件,而软连接是独立的文件,类似于快捷方式,存储着源文件的位置信息便于指向。
使用限制上,不能对目录创建硬链接,不能对不同文件系统创建硬链接,不能对不存在的文件创建硬链接;可以对目录创建软连接,可以跨文件系统创建软连接,可以对不存在的文件创建软连接。
硬链接 ln 1.txt 2.txt
软连接 ln -s 1.txt 2.txt
十二、说明linux命令管理工作流程,结合管道功能,自行设计几个题目。
ls 查看
cd 进入
cat 查看
touch 创建文件
mkdir 创建目录
vim 进入文件
rm 删除
pwd 查看当前目录
取出网站访问量最大的前3个IP
awk '{print $1}' nginx.access.log-20200428|sort | uniq -c |sort -nr|head -3
查看文件有多少行
cat 1.txt |wc -l
2+2
echo "2+2" | bc
查看文件22的内容
cat 1.txt |grep 22
十三、说明标准输入,标准输出,标准错误输出的区别,及举例说明其功能。
标准输入 0
标准输出 1
标准错误输出 2
标准输入
cat 1.txt 读取文件内容
标准输出
echo 33 > 1.txt 把33重定向到1.txt文件里
标准错误输出 2
make xxx 2> build_output.txt 把make输出中的错误(及警告)信息输出到文件中去
十四、总结学过的用户,组,权限相关的命令及选项,示例"
用户管理命令
useradd
usermod
userdel
组帐号维护命令
groupadd
groupmod
groupdel
-u UID
-o 配合-u 选项,不检查UID的唯一性
-g GID 指明用户所属基本组,可为组名,也可以GID
-c "COMMENT“ 用户的注释信息
-d HOME_DIR 以指定的路径(不存在)为家目录
-s SHELL 指明用户的默认shell程序,可用列表在/etc/shells文件中
-G GROUP1[,GROUP2,...] 为用户指明附加组,组须事先存在
-N 不创建私用组做主组,使用users组做主组
-r 创建系统用户 CentOS 6之前: ID<500,CentOS7 以后 : ID<1000
-m 创建家目录,用于系统用户
-M 不创建家目录,用于非系统用户
-p 指定加密的密码
权限
owner
group
other 属主 , u 属组 , g 其他 , o
groupadd -g 123 -r mysql
创建一个组123 组名mysql
root@zhaohuakang:/opt# getent group|grep mysql
mysql:x:123:
创建账号
useradd -u 123 -g mysql -s /sbin/nologin -d /data/mysql -M mysql
指定id123 属组mysql 类型nologin(不允许登录)家目录 用户名mysql
root@zhaohuakang:/opt# cat /etc/passwd |grep mysql
mysql:x:123:123::/data/mysql:/sbin/nologin
root@zhaohuakang:/opt# id mysql
uid=123(mysql) gid=123(mysql) groups=123(mysql)
usermod 命令可以修改用户属性
root@zhaohuakang:/opt# usermod -u 132 -s /bin/false mysql
root@zhaohuakang:/opt# cat /etc/passwd |grep mysql
mysql:x:132:123::/data/mysql:/bin/false
userdel 可删除Linux 用户
userdel mysql
创建组
groupadd sales
查看
root@zhaohuakang:/opt# getent group|grep sales
sales:x:1001:
删除组
groupdel sales
查看用户相关信息
id mysql
用户切换
su - hehe
修改密码
echo hehe:123456 | chpasswd