题目:
1. 简单总结计算机发展相关历史,详细总结服务器硬件和计算机分类相关知识。
2. 制作一个教程,说明vmware软件如何下载安装。安装rocky 系统, ubuntu 系统,并结合xshell演示如何通过虚拟IP登入系统。
3. 结合man命令总结linux常用基本命令用法,以及查看帮助文档的方法。
4. 总结linux文件系统相关知识,并结合操作演示文件操作常见的命令
5. 总结操作系统概念相关视频的知识点
6. 总结常用命令部分的命令使用和演示,最好带有注释信息
7. 总结通配符,管道,重定向,inode知识点,并且结合示例,添加注释信息
电子管计算机
世界上第一台计算机于1946年2月在美国诞生,其主要目的是美国用来进行弹道计算。
它是一台以电子管作为元器件的电子管计算机,是初代计算机
冯诺依曼架构
由冯诺依曼所提出的架构,奠定了现代计算机的组成。这种架构的主要特点是:程序存储,数据共享,顺序执行。需要CPU从存储中取出数据进行相应计算,冯诺依曼架构下的计算机主要由几种部分组成,分别是:输入设备、输出设备、主存储器、辅助存储器、控制器、运算器组成。
服务器硬件
主机
- CPU
采用复杂指令集的X86架构CPU,通常为家用电脑等
采用精简指令集的处理器,通常为UNIX等操作系统的服务器 - 硬盘
存储设备,可分为机械硬盘和固态硬盘,固态硬盘的读写速率更快 - 内存
内部存储,CPU对硬盘等外部存储设备寻址的直接设备,影响计算机的运行效率,通常软件都是在内存中运行,特点是速度快,但断电后会丢失数据 - 显卡
图形处理器,一般主板会有集成显卡,独立插在主板上的称为独立显卡,独立显卡用来处理集成显卡无法处理的高画质高帧率应用等 - 电源
为主板供电,带动其他设备 - 主板
承载CPU,硬盘,内存等设备的电路板 - 网卡
一般主板上会集成网卡,通常为RJ45接口,独立网卡支持的接口更丰富,比如光纤网卡等 - 风扇
用于给CPU散热,以保证CPU工作时不掉频
外设
- 键盘
- 鼠标
- 耳机
计算机分类
1.按规模大小
-
超级计算机
-
大型计算机
-
小型计算机
-
微型计算机
2.按角色划分
-
服务器
-
客户端
3.按外形划分
-
塔式服务器
-
刀片服务器
-
机架式服务器
4.按部署功能
-
日志服务器
-
审计服务器
-
Web服务器等
VMware下载
进入VMware Workstation Pro - 下载 (softonic.com)下载,根据提示安装
Rocky/Ubuntu系统安装
打开VMware,右键新建虚拟机进入安装向导,
下一步
下一步
下一步
版本(v)这里Rocky选择Centos8 64 位
Ubuntu选择Ubuntu64位
下一步
更改虚拟机名称和文件保存位置,下一步
处理器数量:2 下一步
内存分配两个G(2048MB)
下一步
下一步
按图所示下一步
按图所示下一步
分配个200G存储,存储为单个文件,按图所示下一步
默认文件名,下一步
完成
MobaXterm连接
打开mobaxterm
输入用户名及密码
man命令帮助
man命令可以更详细的列出外部命令的信息,man命令分为9个章节,主要需关注的为1,5,8章节
例如:man ls (显示第一章节)man 5 passwd (显示第五章节)
判断内部/外部命令:type cmd
内部命令帮助:cmd --help
外部命令帮助:cmd --help /-h man cmd
linux文件系统相关知识
linux哲学思想:一切皆文件
linux只有一个根目录
常用命令
查看内核版本 uname -r
查看CPU架构 arch
查看发行版本 cat /etc-osrelease
查看时间:date +'%F %T'
重启:reboot int6
关机:power off int0
通配符:
- *:匹配零个或多个字符。例如,ls *.txt命令会列出当前目录下所有扩展名为.txt的文件。
- ?:匹配任意单个字符。例如,ls ?.txt命令会列出当前目录下所有扩展名为.txt且文件名只有一个字符的文件。
- []:匹配指定范围内的任意单个字符。例如,ls [a-z].txt命令会列出当前目录下所有扩展名为.txt且文件名以小写字母开头的文件。
- {}:用于生成字符串列表,配合其他命令使用。例如,echo -e {1..5}命令会打印数字1到5。
- \:转义字符,用于使特殊字符成为普通字符。例如,ls *.txt中的*是通配符,但如果需要匹配文件名中实际包含*字符的文件,可以使用ls \*.txt。
- !:在某些上下文中,如使用find命令时,!表示逻辑非操作,用于反转匹配条件。
- ~:代表当前用户的主目录。例如,cd ~命令会将当前工作目录更改为用户的主目录。
- ^:在使用某些命令(如grep)时,^表示行的开始。例如,grep '^hello'命令会匹配所有以hello开头的行。
- $:在使用某些命令(如grep)时,$表示行的结束。例如,grep 'world$'命令会匹配所有以world结尾的行。
重定向:
标准输出重定向
标准错误:stderr
标准输入:stdin
标准输出:stdout
文件描述符:一个程序打开文件时,会给每个打开的文件分配唯一的数字,0、1、2固定分配
- 0:标准输入:stdin
- 1:标准输出:stdout
- 2:标准错误:stderr
'>'重定向字符案例:将标准输出和标准错误写入同一个文件
例子:(ls /渐入佳境;hostname;slfjgakgf) &> err-and-stdin
#将ls显示内容、hostname显示内容、slfjgakgf显示内容全部写入err-and-stdin文件中
多行批量重定向
cat > PLCDX <<EOF
> lin1
> lin2
> lin3
> EOF
#EOF为成对出现,可为任意字符
高级重定向写法
cmd <<< `string`
cmd < <(cmd2)
tr 命令
tr 123 abc #将123转换成abc
123
abc
tr -d 123 #将123删除
123456789
456789
tr -dc 123 #将除了123其他的字符都删掉(CTRL+d结束输入)
123456789
123[
tr -s abc
aaaaaaaaaaabbbbbbbbbbbccccccccdd #将连续的abc字符压缩为一个字符
abcdddddddd
tee命令:可以将重定向输入内容既输入到文本中也打印在终端中
例子:tee a.txe
haha
haha
niubi
niubi
cat a.txe
haha
niubi
tee命令组合用法
例子:覆盖用法
echo hello | tee a.txt
hello
例子:追加用法
echo hello | tee -a new.txt
hello
管道符 将前面命令的标准输入给到后面命令的标准输入
例子:echo 1+2|bc
inode表结构
每个文件的属性信息,比如:文件大小,时间,类型等,称为文件的元数据(meta,data)此元数据是存放在inode(index node)表中,inode表中有许多条记录组成,第一条记录对应的存放了一个文件的元数据信息
每个inode表记录对应的保存了一下信息:
- inode number 节点号(查看方法ll -i),和分区大小有关(查看分区节点号最大值:df -i)(查看磁盘占用df -h)
- 文件类型
- 权限
- UID
- GID
- 链接数(指向这个文件路径名称个数)
- 该文件的大小和不同的时间戳
- 指向磁盘上文件的数据块指针
- 有关文件的其他数据
生产案例:查看磁盘空间占用率过高,但已经删除了大文件,磁盘占用率还是一样高
案例分析:因后台有进程正在使用这个文件
解决方案:使用命令 cat /dev/null > /文件路径 #危险命令:清空文件
rm -f /文件路径 #危险命令:删除文件
如果已经删了文件,但进程还在占用无法释放情况:
解决思路:通过lsof展示所有正在使用的文件,利用管道符+正则表达式找到被删除的文件,查看该文件进程编号,通过ps aux查看该进程 kill 进程号 通过df命令查看是否释放
相关命令:lsof | grep delet ps aux kill 进程号