Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
29c6549689 | |||
|
6077fb8047 | ||
|
65f3b59c4a |
1
.gitignore
vendored
1
.gitignore
vendored
@ -2,3 +2,4 @@ book
|
||||
node
|
||||
study-area-home-action-deps
|
||||
study-area-action-deps
|
||||
.vscode/settings.json
|
||||
|
@ -4,8 +4,6 @@
|
||||
|
||||
备份是计算机使用中非常重要的操作。原则上来说,进行任何重大修改(比如更新系统、更新生产环境中的软件。)之前都需要备份。
|
||||
|
||||
这个章节主要是让你对备份这个概念有所了解,等到讲解服务器配置及使用的时候我们再仔细学习。
|
||||
|
||||
按照备份的范围来分,常用的备份方式有以下几种:
|
||||
|
||||
- 全量备份:指把硬盘等存储介质中的所有文件**一次性完整复制**到其他介质上。
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 65 KiB |
Binary file not shown.
After Width: | Height: | Size: 20 KiB |
Binary file not shown.
After Width: | Height: | Size: 27 KiB |
@ -1 +1,19 @@
|
||||
# 在 VMWare Workstation 上创建虚拟磁盘
|
||||
|
||||
> 上级目录:[磁盘分区以及文件系统](../diskpart_and_filesystem.md)
|
||||
|
||||
按照上篇文件,我们接下来需要创建一个虚拟磁盘。
|
||||
|
||||
## 打开虚拟机
|
||||
|
||||
首先,打开你的 VMWare Workstation Pro 并选择你的虚拟机
|
||||
![Open VM](./assets/2.2.2.vmware.1.png)
|
||||
|
||||
## 配置磁盘
|
||||
|
||||
我们打开设置
|
||||
![Open Settings](./assets/2.2.2.vmware.2.png)
|
||||
|
||||
在左边找到 `硬盘`
|
||||
![Open Disks](./assets/2.2.2.vmware.3.png)
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
## Linux 的文件结构
|
||||
|
||||
按照前文,我们所说的 C 盘就是 `/` 了。那么,我们的 D 盘和 E 盘等等呢?它们则被系统放到了别的地方,你甚至可以自定义这些地方,不过一般被放在了 `/mnt`,`/run/mount` 或者 `/media/你的用户名` 下。(根据发行版和桌面环境的不同有所区别。如果你是安装上文安装的,那么应该在 `/media/你的用户名` 里面)
|
||||
按照前文,我们所说的 C 盘就是 `/` 了。那么,我们的 D 盘和 E 盘等等呢?它们则被系统放到了别的地方,你甚至可以自定义这些地方(其实 Windows 也可以,不过放得很深),不过一般被放在了 `/mnt`,`/run/mount` 或者 `/media/你的用户名` 下。(根据发行版和桌面环境的不同有所区别。如果你是安装上文安装的,那么应该在 `/media/你的用户名` 里面)
|
||||
|
||||
我们可以使用自带的文件管理器管理文件,就像 Windows 一样。
|
||||
|
||||
@ -36,9 +36,11 @@
|
||||
- `/var/mail` (本地邮件信箱)
|
||||
- `/var/spool/news` (新闻组)
|
||||
- `/var/run` (程序相关文件)
|
||||
- `/var/lock` (程序锁相关)
|
||||
- `/var/lock` (程序锁相關)
|
||||
- `/sys` 也是一个重要的设备目录
|
||||
- `/home` 用户目录,相当于 `C:\Users`
|
||||
- `/home` 用户目录,相当于 `C:\Users`(MacOS:`/Users`)
|
||||
|
||||
到这里,相信你已经掌握了 Linux 文件系统的简单结构。
|
||||
|
||||
---
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
### 多用户操作系统的概念
|
||||
|
||||
不同于Windows这种基本上是单用户的操作系统,而 Linux 这种 Unix-like 操作系统系统由于直接或间接继承了Unix的原因,所以是实打实的多用户多任务分时操作系统。
|
||||
不同于Windows这种基本上是单用户的操作系统,而Linux这种Unix-like系统因为是集成了Unix概念的原因,所以是实打实的多用户多任务分时操作系统。
|
||||
|
||||
Unix刚发明的时候,电脑十分笨重且昂贵,一台电脑不可能让一个用户独占,必须同时分给多个用户使用。即便是最基本的电脑也能分出32个终端同时使用。这时候,完善的用户与权限的管理就是十分必要的了。
|
||||
|
||||
@ -26,12 +26,7 @@ All Users
|
||||
|
||||
Unix-like使用UID而不是用户名区分用户,如果你试着把两个账户的UID互相调换,你会神奇的发现,这两个用户的权限和所拥有的文件也被互换了。
|
||||
|
||||
UID的各个号段都已经被预先分配好了,分配如下
|
||||
- 0 root,权限最高的用户
|
||||
- 1-999 系统服务保留UID,下分两种
|
||||
- 1-200 发行版自带软件所需帐号的UID
|
||||
- 201-999 用户自行创建的(或用户所安装软件创建的)账户的UID
|
||||
- 1000-60000 普通账户
|
||||
UID的各个号段都已经被预先分配好了,分配如下:- 0 root,权限最高的用户 - 1-999 系统服务保留UID,下分两种 - 1-200 发行版自带软件所需帐号的UID - 201-999 用户自行创建的(或用户所安装软件创建的)账户的UID - 1000-60000 普通账户
|
||||
|
||||
除了root意外,其他账户的权限基本没有区别。
|
||||
|
||||
@ -59,10 +54,7 @@ vboxadd:x:979:1::/var/run/vboxadd:/bin/false
|
||||
用户名:密码:UID:GID:其他信息:家目录位置:登录Shell
|
||||
```
|
||||
|
||||
密码字段有三种可能性:
|
||||
- `x`表示密码在`/etc/shadow`中
|
||||
- 留空表示密码为空,无需密码即可登录
|
||||
- `!`表示该账户已经被禁用,无法登录
|
||||
密码字段现在有三种可能性:- `x`表示密码在`/etc/shadow`中 - 留空表示密码为空,无需密码即可登录 - `!`表示该账户已经被禁用,无法登录
|
||||
|
||||
其他信息默认存储用户名,这个也可以存储其他信息,但是现在很少用到。
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
> 在linux上也有些常见的图形化压缩包管理器,比如 `Ark`,但是它们远不及命令行工具的快速和稳定性。
|
||||
|
||||
tar压缩包都有一个显著的特征,大多数该类型文件的文件名中都带有一个 `.tar`,但是后面的 `.gz` 等等又是什么呢?其实,tar 本身并不是一个压缩格式,它只是简单的把所有文件和文件夹打包到一起,而后面的 `.gz`、`.bz2`、`.xz` 等等才是压缩的格式。
|
||||
tar压缩包都有一个显著的特征,文件名中都带有一个 `.tar`(tgz 等部分格式除外),但是后面的 `.gz` 等等又是什么呢?其实,tar 本身并不是一个压缩格式,它只是简单的把所有文件和文件夹打包到一起,而后面的 `.gz`、`.bz2`、`.xz` 等等才是压缩的格式。
|
||||
|
||||
> 关于其它格式的压缩包,比如`zip`、`rar`等,可以使用其它命令,比如`unzip`、`unrar`等。
|
||||
|
||||
|
@ -16,39 +16,39 @@
|
||||
|
||||
原本你应该去注册一个博通的账号并且去到 Broadcom Support Portal 搞一大堆麻烦事情,但是我相信各位的精力是有限的,所以说这里直接贴出提取到的下载链接`https://softwareupdate.vmware.com/cds/vmw-desktop/ws/17.5.2/23775571/windows/core/VMware-workstation-17.5.2-23775571.exe.tar`
|
||||
|
||||
在你下载下来之后是一个 tar 文件,如果说你的电脑没有可以解压这种格式的软件,那请你去下载一个名为 7-Zip 的软件 `https://7-zip.org/a/7z2407.exe` 然后安装,记得关联格式。
|
||||
在你下载下来之后是一个 tar 文件,如果说你的电脑没有可以解压这种格式的软件,那请你去下载一个名为 7-Zip 的软件`https://7-zip.org/a/7z2407.exe`然后安装,记得关联格式。
|
||||
|
||||
在解压出来之后,我们就可以运行安装程序,先 Next,同意完协议并 Next 后记得勾选一下 `安装键盘驱动`(如下图)
|
||||
在解压出来之后,我们就可以运行安装程序,先 Next,同意完协议并 Next 后记得勾选一下`安装键盘驱动`(如下图)
|
||||
|
||||
![Keybord Driver](./assets/2.4.vmware.1.png)
|
||||
|
||||
然后就可以一路 Next 下去了,安装完成后会有一次重启,在重启完毕后,我们该启动 VMWare WorkStation Pro,进行下一步安装了。
|
||||
|
||||
> 假如说这里有朋友发现 VMWare WorkStation Pro 的页面是英文的,打开 VMWare WorkStation Pro 的`快捷方式`,在目标后面添加一个 ` --locale zh_CN`之后重启 VMWare WorkStation Pro 就好了。
|
||||
> 假如说这里有朋友发现 VMWare WorkStation Pro 的页面是英文的,打开 VMWare WorkStation Pro 的`快捷方式`,在目标后面添加一个" --locale zh_CN"之后重启 VMWare WorkStation Pro 就好了。
|
||||
|
||||
## 新建虚拟机
|
||||
|
||||
软件我们有了,接下来我们要给虚拟机注入灵魂——操作系统了。
|
||||
软件我们有了,接下来我们要给虚拟机注入灵魂——操作系统了
|
||||
|
||||
不过在开始安装系统前,我们需要新建一个 `虚拟机`。
|
||||
不过在开始安装系统前,我们需要新建一个`虚拟机`。
|
||||
|
||||
启动软件后,我们会看到像这样的页面:
|
||||
|
||||
![Home Page](./assets/2.4.vmware.2.png)
|
||||
|
||||
然后点击 `创建新的虚拟机`,你会看到这样的界面:
|
||||
然后点击 `创建新的虚拟机` ,你会看到这样的界面:
|
||||
|
||||
![New VM Page](./assets/2.4.vmware.3.png)
|
||||
|
||||
保持典型不变,点击下一步,点击 `安装程序光盘映像文件(iso)(M)`,然后点击浏览,找到你镜像下载到的位置,选中镜像,然后打开:
|
||||
保持典型不变,点击下一步,点击`安装程序光盘映像文件(iso)(M)`,然后点击浏览,找到你镜像下载到的位置,选中镜像,然后打开:
|
||||
|
||||
![Choose ISO Img](./assets/2.4.vmware.3.png)
|
||||
|
||||
接着点击下一步,填写 `虚拟机的名字` 还有 `虚拟机的安装位置`(这一步记得选一个剩余空间比较大的分区)
|
||||
接着点击下一步,填写`虚拟机的名字`还有`虚拟机的安装位置`(这一步记得选一个剩余空间比较大的分区)
|
||||
|
||||
![Set VM](./assets/2.4.vmware.5.png)
|
||||
|
||||
现在开始设置 `虚拟磁盘`,这相当于你电脑的储存空间,这里直接引用隔壁 VBox 安装的话:
|
||||
现在开始设置`虚拟磁盘`,这相当于你电脑的储存空间,这里直接引用隔壁 VBox 安装的话:
|
||||
|
||||
如果你的磁盘空间足够,那么你开多少都行,一般开 40GB 就够了。
|
||||
|
||||
@ -72,20 +72,20 @@
|
||||
这时你填写 `4096MB`(6GB) 即可。
|
||||
一般来说,分配实体机内存的一半即可。
|
||||
|
||||
CPU数通常只需要填你的CPU核心数的一半就可以了。现在的电脑至少 2 核起步。
|
||||
如果你在使用 13 代或以上的 Intel 酷睿,那么你填写你的大核心(P核)的数量就行。
|
||||
(截至本篇编写时 Intel 最新的酷睿还是 13 代,2024.6)
|
||||
CPU数通常只需要填你的CPU核心数的一半就可以了。现在的电脑至少2核起步。
|
||||
如果你在使用13代或以上的Intel酷睿,那么你填写你的大核心(P核)的数量就行。
|
||||
(截至本篇编写时Intel最新的酷睿还是13代,2024。6)
|
||||
```
|
||||
|
||||
对于写者来说,设置完之后的页面如下:
|
||||
|
||||
![VM Settings](./assets/2.4.vmware.7.png)
|
||||
|
||||
最后关闭设置页面,点击`完成`,虚拟机就大功告成了!(如果你勾选了 `创建后启动此虚拟机` 那么则会自动启动)
|
||||
最后关闭设置页面,点击`完成`,虚拟机就大功告成了!(如果你勾选了`创建后启动此虚拟机`那么则会自动启动)
|
||||
|
||||
## 启动虚拟机
|
||||
|
||||
假如说你在上一部勾选了 `创建后启动此虚拟机` 的话,你的虚拟机应该现在已经启动了,但是以防万一,这里还是讲解一下如何在 VMWare WorkStation Pro 里启动虚拟机:
|
||||
假如说你在上一部勾选了`创建后启动此虚拟机`的话,你的虚拟机应该现在已经启动了,但是以防万一,这里还是讲解一下如何在VMWare WorkStation Pro 里启动虚拟机:
|
||||
|
||||
第一步,选中`虚拟机`:
|
||||
|
||||
|
@ -156,33 +156,6 @@ Shell 中有一些系统变量,它们在 Shell 启动时自动设置,例如
|
||||
- `$0`:启动当前终端程序或者 ShellScript 的命令,如 `/bin/bash`
|
||||
- `$#`:启动当前终端程序或者 ShellScript 的参数个数。
|
||||
|
||||
## 进程
|
||||
|
||||
在学习上一章节的时候,你是否会疑惑:为什么执行一个新的 Shell 就可以在一个不影响原本 Shell 的环境中工作呢?
|
||||
|
||||
实际上,我们在执行一个命令的时候,Shell 会为这个程序开启一个新进程。那什么叫做进程呢?你可以把它理解为你给计算机派发的一个任务。你只需要派发任务就好了,而计算机要考虑的事情就多了。(划掉)计算机负责执行这个进程,操作系统给它分配系统资源。
|
||||
|
||||
我们每个人都有自己的父母,进程也是一样。例如,进程 A 启动了进程 B,那么进程 A 就是进程 B 的父进程(也可以称之为母进程)。
|
||||
|
||||
一般情况下,进程的环境变量只能向下传递。也就是当父进程启动了一个子进程的时候,子进程会继承父进程的环境变量。但是这时集成的只是父进程在创建子进程时环境变量的一个快照,以后父进程中环境变量更新的时候不会影响子进程。
|
||||
|
||||
我们可以通过实例来了解一下这个问题。
|
||||
|
||||
```sh
|
||||
$ export TEST=114514
|
||||
$ echo $TEST
|
||||
114514
|
||||
$ bash # 启动一个新的 Shell 进程
|
||||
$ echo $TEST
|
||||
114514 # 从父进程那里继承了环境变量
|
||||
$ export TEST=1919810 # 尝试修改变量
|
||||
$ echo $TEST
|
||||
1919810
|
||||
$ exit # 回到父进程
|
||||
$ echo $TEST
|
||||
114514 # 父进程的环境变量没有被改变
|
||||
```
|
||||
|
||||
## 管道
|
||||
|
||||
Shell 中的管道是链接两个命令的方式,管道遵守下面的格式。
|
||||
|
@ -10,8 +10,7 @@
|
||||
>
|
||||
> Shell 也指代一种命令语言,由这种语言编写的脚本称为 Shell Script。
|
||||
|
||||
如果你听不太懂的话,你可以简单的把 Shell 理解为内核的秘书。秘书主要干什么?就是帮助老板安排会议、与他人沟通的嘛。
|
||||
|
||||
上面的内容有些难懂,你不妨可以理解为 Shell 就是用户的命令与 Kernel 之间的“桥梁”。
|
||||
|
||||
## Shell 有哪些
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user