From 5bc6d620adc417941fe07882097dbce2ae1867dc Mon Sep 17 00:00:00 2001 From: FallenYing <1535145283@qq.com> Date: Fri, 17 Nov 2023 23:27:01 +0800 Subject: [PATCH] chore: add 3.Y.1 3.Y.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修改了文本bug --- .../3.Y.1Linux概念普及.md | 36 +++++++++---------- .../3.Y.2双系统安装和发行版推荐.md | 32 ++++++++--------- 2 files changed, 34 insertions(+), 34 deletions(-) diff --git a/3.编程思维体系构建/3.Y.1Linux概念普及.md b/3.编程思维体系构建/3.Y.1Linux概念普及.md index fb31972..b0f2a8d 100644 --- a/3.编程思维体系构建/3.Y.1Linux概念普及.md +++ b/3.编程思维体系构建/3.Y.1Linux概念普及.md @@ -20,11 +20,11 @@ Linux 不同于 Windows 和 macOS 这类系统,它没有官方维护的版本 一般来说,一个 Linux 的发行版最核心的部分是包管理模式。这通常通过包管理器和软件源实现。 -包(package)类似 Windows 的安装包,它包含了要安装的软件以及一些额外的信息,但是同 Windows 安装包不同,它只是一个压缩包,不能自己运行安装,必须经过包管理器。用户很少需要直接下载安装它,而是通过包管理器。我们也不鼓励安装不在仓库里面的包,如果系统软件源里面没有可以去 flatpak。至于某些专有软件,我更推荐丢进 Windows 10 LTSC 虚拟机。 +包 (package) 类似 Windows 的安装包,它包含了要安装的软件以及一些额外的信息,但是同 Windows 安装包不同,它只是一个压缩包,不能自己运行安装,必须经过包管理器。用户很少需要直接下载安装它,而是通过包管理器。我们也不鼓励安装不在仓库里面的包,如果系统软件源里面没有可以去 flatpak。至于某些专有软件,我更推荐丢进 Windows 10 LTSC 虚拟机。 -包管理器(package manager)负责安装和管理软件包。它读取软件包,按照软件包的要求去安装它的依赖(通常是一些运行库,就像 Windows 下面的 VC++ 和 .NET),然后自动把包安装到规定的位置。 +包管理器 (package manager) 负责安装和管理软件包。它读取软件包,按照软件包的要求去安装它的依赖 (通常是一些运行库,就像 Windows 下面的 VC++ 和 .NET),然后自动把包安装到规定的位置。 -软件源(repository)是用来存放软件包的网站。包管理器就是从软件源服务器上下载包的。因为软件源通常在国外,软件包下载可能会比较慢。所以我们一般使用国内各个高校的镜像源,修改软件源的地址就是所谓换源。 +软件源 (repository) 是用来存放软件包的网站。包管理器就是从软件源服务器上下载包的。因为软件源通常在国外,软件包下载可能会比较慢。所以我们一般使用国内各个高校的镜像源,修改软件源的地址就是所谓换源。 有些人可能会纠结软件装到哪里去了,是装在什么盘上面了。这个不需要管。因为 Linux 的目录的定义和 Windows 有很大不同,这使得一些 Windows 上面的繁琐操作在 Linux 上面很多余。 @@ -45,23 +45,23 @@ Linux 不同于 Windows 和 macOS 这类系统,它没有官方维护的版本 #### Gnome -Gnome 曾一度成为 Linux 桌面的代名词,因为很多发行版默认会安装这个桌面。Gnome 的风格比较独特,有点类似 macOS ,但是有不少自己的东西。对触控板手势的适配不错。 +Gnome 曾一度成为 Linux 桌面的代名词,因为很多发行版默认会安装这个桌面。Gnome 的风格比较独特,有点类似 macOS,但是有不少自己的东西。对触控板手势的适配不错。 -开箱状态连任务栏和桌面图标都没有,好在可以手动安装。一般各个发行版默认安装了 dash-to-dock(任务栏), desktop-icons(桌面图标) 这些插件。 +开箱状态连任务栏和桌面图标都没有,好在可以手动安装。一般各个发行版默认安装了 dash-to-dock(任务栏),desktop-icons(桌面图标) 这些插件。 设置比较少,不过可以通过 gnome-tweaks 补上。这样基本的设置都能覆盖。 #### KDE -KDE 也是非常热门的桌面。类似 Windows 的操作逻辑和极强的可定制性让他更适合 Linux “玩家”。 +KDE 也是非常热门的桌面。类似 Windows 的操作逻辑和极强的可定制性让他更适合 Linux“玩家”。 -比较旧的版本里面可能会默认单击打开文件夹,可以在工作区(workspace)设置中改成双击。 +比较旧的版本里面可能会默认单击打开文件夹,可以在工作区 (workspace) 设置中改成双击。 KDE 的 GUI 功能做的还是不错的。而且提供了不少有用的套件。 Discover 应用商店可以直接使用发行版包管理器和 flatpak 进行安装,收录了很多软件,并且可以自动进行系统更新检查。 -设置里面的选项很多,可以随便改。喜欢折腾的可以去看看 Theme,只是系统自带的主题安装器需要哈利波特才能使用。 +设置里面的选项很多,可以随便改。喜欢折腾的可以去看看 Theme,只是系统自带的主题安装器需要哈利波特才能使用。 自带的代理设置有些软件不会读,比如 Firefox, 给这些软件单独设置一下就行。 @@ -77,41 +77,41 @@ Cinnamon 目前大众的发行版只有 Linux Mint 在支持,但是这也是 在开机登陆用户的时候,那个让你输密码的界面并不是桌面,而是 DM(Display Manager),如果你有多个桌面,可以在这里切换。 -我建议不要管这个,发行版用什么就跟着用。如果要自己安装都建议 SDDM 。 +我建议不要管这个,发行版用什么就跟着用。如果要自己安装都建议 SDDM。 #### Wayland and X11 显示服务器是比桌面更底层的东西,处在系统内核和桌面之间,用来管理窗口。这个一般碰不到,只要了解你使用的是 X11 还是 Wayland 就行。X11 是老的,Wayland 是新的。 -现在(2023年)的时间点非常尴尬,处于 X11 和 Wayland 换代的节点上面。一方面 X11 太老旧了(十几年没有大更新了)对有些新事物支持不好,比如 2k 屏幕 1.5 倍缩放的屏幕撕裂问题。另一方面 Wayland 支持虽然已经大致完善,但是有些死硬派没跟上,说的就是你,Nvidia! +现在 (2023 年) 的时间点非常尴尬,处于 X11 和 Wayland 换代的节点上面。一方面 X11 太老旧了 (十几年没有大更新了) 对有些新事物支持不好,比如 2k 屏幕 1.5 倍缩放的屏幕撕裂问题。另一方面 Wayland 支持虽然已经大致完善,但是有些死硬派没跟上,说的就是你,Nvidia! 好在大多数发行版并不需要纠结这些。非 N 卡的 Gnome 和 KDE 桌面基本都是 Wayland 了,其他的桌面环境或者使用 N 卡都会用 X11。 但是有些发行版可能忘了给 N 卡换 X11, **如果你桌面登不进去**,请检查自己的环境是否是 Wayland,如果是,**换成 X11**。 -如果你 N 卡要强开 Wayland,请参照自己使用的发行版的 wiki 以及 Arch Linux wiki, 看看有什么需要注意的点。 +如果你 N 卡要强开 Wayland,请参照自己使用的发行版的 wiki 以及 Arch Linux wiki, 看看有什么需要注意的点。 ## Distro -大多数发行版是基于某几个特定的发行版魔改的。所以会有“系”的说法。常见的有 Debian 系, Arch 系 Red Hat 系和 SUSE 系。其中 Red Hat 系主要面向企业,桌面版除了 Fedora 并不多见。 +大多数发行版是基于某几个特定的发行版魔改的。所以会有“系”的说法。常见的有 Debian 系,Arch 系 Red Hat 系和 SUSE 系。其中 Red Hat 系主要面向企业,桌面版除了 Fedora 并不多见。 -服务器发行版建议 Debian ,用 Ubuntu 也是可以的。如果在中文互联网找资料可能会见到 CentOS,但是 CentOS 如今已经停止维护了,所以看到之后绕着走就行。 +服务器发行版建议 Debian,用 Ubuntu 也是可以的。如果在中文互联网找资料可能会见到 CentOS,但是 CentOS 如今已经停止维护了,所以看到之后绕着走就行。 -在[3.Y.2双系统安装和发行版推荐](./3.Y.2双系统安装和发行版推荐.md) 推荐的发行版都是针对**双系统/单系统方案**的,因为在实机安装日常使用的时候,发行版对体验的影响才会体现出来,这样我写下的文字就会帮你剩下不少时间。 +在[3.Y.2 双系统安装和发行版推荐](./3.Y.2双系统安装和发行版推荐.md) 推荐的发行版都是针对**双系统/单系统方案**的,因为在实机安装日常使用的时候,发行版对体验的影响才会体现出来,这样我写下的文字就会帮你剩下不少时间。 **对于虚拟机**,你不会在乎用户体验的,安装完新鲜感一过肯定就不打开了,偶尔遇到什么必须要用 Linux 的需求才会突然想起来有这个虚拟机。所以发行版**选择 Ubuntu 即可**,毕竟人气最高。要是对着百度上面刚刚找到的教程一顿猛敲之后,发现发行版不一样,那 Linux 就又风评被害了。 在安装系统的时候,建议安装时统一使用 English,装好之后再换成中文或者干脆不换。 -对某些很新的硬件,比如 13 代酷睿和 40 系 N 卡(2023 年),在其他发行版出现兼容性问题的情况下,可以使用 Debian 或者 Arch Linux 等等靠近上游的发行版,他们通常支持得比较好。 +对某些很新的硬件,比如 13 代酷睿和 40 系 N 卡 (2023 年),在其他发行版出现兼容性问题的情况下,可以使用 Debian 或者 Arch Linux 等等靠近上游的发行版,他们通常支持得比较好。 -## Linux How to? +## Linux How to? ### Directory 在 Linux 中,文件目录结构与 Windows 完全不同。Windows 存在 C 盘、D 盘等盘符,而在 Linux 中不存在这些划分,最上层的目录是根目录,路径为 `/` ,并以一个树形结构从此向下一级一级区分。没有盘符,只有路径。虽然可以多分区,但是分区是挂载到某个路径的,而不是分配盘符。用 Windows 的思维去理解就是盘符没了,全部挂进文件夹里面了,从 / 开始是根分区,就像 C 盘,`/` 底下有 `usr` `home` `var` 等等文件夹,这些文件夹可以是普通文件夹,也可以让其他磁盘分区当这个文件夹。分区还可以挂载到 `/media/root/abcd` 。这样的好处很明显,就是在路径上面模糊了分区,分区的地位和普通文件夹差不多了,非常简单,对写程序很友好。 -因为舍弃了盘符的概念,一般我们在 Linux 系统上仅仅使用一个挂载到 `/` 的分区(简称 `/` 分区)或者一个 `/` 分区和一个 `/home` 分区。这样分区可以得到充足的空间,所以不会出现 C 盘装满了或者 C 盘文件多导致开机慢的情况,也就没有必要支持自定义的安装目录。 +因为舍弃了盘符的概念,一般我们在 Linux 系统上仅仅使用一个挂载到 `/` 的分区 (简称 `/` 分区) 或者一个 `/` 分区和一个 `/home` 分区。这样分区可以得到充足的空间,所以不会出现 C 盘装满了或者 C 盘文件多导致开机慢的情况,也就没有必要支持自定义的安装目录。 对于 Linux 的树形文件结构,存在相对路径与绝对路径之分。绝对路径是代表从根路径 `/` 开始的完整路径,如 `/home/testuser/Download`。相对路径代表从当前目录,到目标目录的一个部分路径。比如当前你所在的目录为 `/home/testuser`,那么切换到绝对路径 `/home/testuser/Download` 的相对路径即为 `./Download`。其中 `./` 代表从当前目录,再向下寻找。另外,`..` 这种两个句点代表的是向上层寻找,比如你当前所在的路径为 `/home/testuser/Download`,向上寻找到 `/home/testuser/Desktop` 的相对路径即为 `../Desktop`。 @@ -161,7 +161,7 @@ $ sudo apt install vim 首先阅读[提问的智慧](https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way/blob/main/README-zh_CN.md),这对提升个人素养很有帮助。也有助于和能够提供帮助的人有效交流。 -一般来说,各个发行版都有自己的 Wiki,里面介绍了发行版本身的特点,常用的软件和各种问题的解法。但是有些发行版的 wiki 年久失修,可能会过时或者缺失内容导致无法解决问题。这时候可以其他发行版的 wiki ,只要了解发行版之间的差异,自己适度发挥,也能解决问题。推荐的有 [Arch Linux wiki](https://wiki.archlinux.org) (神中神,非常推荐) 和 [Debian wiki](https://wiki.debian.org) (Debian 系可以看),他们的社区比较活跃,维护比较积极。 +一般来说,各个发行版都有自己的 Wiki,里面介绍了发行版本身的特点,常用的软件和各种问题的解法。但是有些发行版的 wiki 年久失修,可能会过时或者缺失内容导致无法解决问题。这时候可以其他发行版的 wiki,只要了解发行版之间的差异,自己适度发挥,也能解决问题。推荐的有 [Arch Linux wiki](https://wiki.archlinux.org) (神中神,非常推荐) 和 [Debian wiki](https://wiki.debian.org) (Debian 系可以看),他们的社区比较活跃,维护比较积极。 社区是 Linux 当中重要的组成部分。发行版通常有自己的论坛,邮件组和 IRC 频道。如果你确信你面对的是一个全新的问题,网上找不到已有的解决方案。或者你的能力不足以找到解决方案。可以尝试在这些地方求助。保持良好的态度,尽可能详细地描述问题,相信会有志愿者来解答的。 diff --git a/3.编程思维体系构建/3.Y.2双系统安装和发行版推荐.md b/3.编程思维体系构建/3.Y.2双系统安装和发行版推荐.md index d7e0652..ef16033 100644 --- a/3.编程思维体系构建/3.Y.2双系统安装和发行版推荐.md +++ b/3.编程思维体系构建/3.Y.2双系统安装和发行版推荐.md @@ -32,7 +32,7 @@ Bitlocker 可能会自杀最好关掉。如果你很确信自己有加密需求 建议使用 [Ventoy](https://www.ventoy.net/cn/index.html) 这款工具制作可启动 U 盘,这样可以直接把 ISO 文件拖进 U 盘,在先后安装不同发行版的时候不需要反复烧录 U 盘。 -但是这个方案无法使用某些 iso ,比如 Debian 的 DVD 镜像就会因为找不到挂载点而失败。这时候你可能需要使用 [rufus](https://rufus.ie/zh/) 对 U 盘进行烧录。 +但是这个方案无法使用某些 iso,比如 Debian 的 DVD 镜像就会因为找不到挂载点而失败。这时候你可能需要使用 [rufus](https://rufus.ie/zh/) 对 U 盘进行烧录。 ## Beginner @@ -46,9 +46,9 @@ Bitlocker 可能会自杀最好关掉。如果你很确信自己有加密需求 #### Linux Mint -就我个人认为,对新手来说 Linux Mint 是个不错的入门发行版。它基于 Ubuntu ,软件生态好。Cinnamon 桌面可能不是很惊艳,但是简洁直观。 +就我个人认为,对新手来说 Linux Mint 是个不错的入门发行版。它基于 Ubuntu,软件生态好。Cinnamon 桌面可能不是很惊艳,但是简洁直观。 -Mint 对很多需要打命令的操作都做了 GUI,这样新手更容易使用。这是我见过为数不多的把开箱即用和可定制结合的比较好的主流发行版。 +Mint 对很多需要打命令的操作都做了 GUI,这样新手更容易使用。这是我见过为数不多的把开箱即用和可定制结合的比较好的主流发行版。 首先去 Mint 官网 下载 Cinnamon 版本。如果你使用新硬件可以下载 Cinnamon Edge。 @@ -148,7 +148,7 @@ Base 的源。 ![install fcitx5](https://cdn.xyxsw.site/mint-install-20.png) -勾选 fcitx5, 在弹出的窗口点击确定。然后勾选 fcitx5-chinese-addons。因为 fcitx5 只是一个框架,输入法在 fcitx5-chinese-addons 里面,所以两个都要安装。 +勾选 fcitx5,在弹出的窗口点击确定。然后勾选 fcitx5-chinese-addons。因为 fcitx5 只是一个框架,输入法在 fcitx5-chinese-addons 里面,所以两个都要安装。 点击左上方的 Apply 就可以安装了。 @@ -174,11 +174,11 @@ Base 的源。 ![langauge settings](https://cdn.xyxsw.site/mint-install-26.png) -如果你是 Nvidia 显卡,现在可以打开 Driver Manager 安装 Nvidia 的驱动。我因为是虚拟机截不到图。建议 40 系显卡使用 525 版本的驱动,而不是他的推荐的 535,亲测崩溃。 +如果你是 Nvidia 显卡,现在可以打开 Driver Manager 安装 Nvidia 的驱动。我因为是虚拟机截不到图。建议 40 系显卡使用 525 版本的驱动,而不是他的推荐的 535,亲测崩溃。 ![setting up driver](https://cdn.xyxsw.site/mint-install-27.png) -这些都完成了就可以重启了。重启之后会问你要不要更新路径,选择保留就的名称(Keep Old Names).这很重要,如果你不想在 bash 中 cd 来 cd 去的时候切换输入法的话。 +这些都完成了就可以重启了。重启之后会问你要不要更新路径,选择保留就的名称 (Keep Old Names).这很重要,如果你不想在 bash 中 cd 来 cd 去的时候切换输入法的话。 ![next boot](https://cdn.xyxsw.site/mint-install-28.png) @@ -200,7 +200,7 @@ wiki 已有安装教程,我就不自己写了。 ##### 卸载 snap -首先卸载 Snap 。注意这样会直接干掉 Firefox,所以确保你已经阅读下面所有内容再开始操作。可以先复制到文本编辑器当中。 +首先卸载 Snap。注意这样会直接干掉 Firefox,所以确保你已经阅读下面所有内容再开始操作。可以先复制到文本编辑器当中。 打开终端,输入 @@ -249,7 +249,7 @@ sudo apt install firefox ##### 安装输入法 -参考[Ubuntu22.04安装Fcitx5中文输入法(知乎)](https://zhuanlan.zhihu.com/p/508797663)。基本都可以照做,但是不要跟着他往 `~/.bash_profile` 和 `/etc/profile` 里面丢垃圾。环境变量要写到 `~/.pam_environment` 里面,内容如下,不要和他一样带 `export`: +参考[Ubuntu22.04 安装 Fcitx5 中文输入法(知乎)](https://zhuanlan.zhihu.com/p/508797663)。基本都可以照做,但是不要跟着他往 `~/.bash_profile` 和 `/etc/profile` 里面丢垃圾。环境变量要写到 `~/.pam_environment` 里面,内容如下,不要和他一样带 `export`: ```text XMODIFIERS=@im=fcitx @@ -277,7 +277,7 @@ distrowatch 上面排名挺高,但是结合发行版实际情况感觉很有 ### Arch based -因为 Arch Linux 太强势,这里系列主要用的比较多的就是 Manjaro,所以先只写 Manjaro 。后面可能会继续添加。 +因为 Arch Linux 太强势,这里系列主要用的比较多的就是 Manjaro,所以先只写 Manjaro。后面可能会继续添加。 #### Manjaro @@ -320,7 +320,7 @@ sudo pacman -S fcitx5 fcitx5-configtool fcitx5-qt fcitx5-gtk fcitx5-chinese-add kate ~/.pam_environment ``` -kate 会打开 `~/.pam_environment`,接着把下面的环境变量写进去: +kate 会打开 `~/.pam_environment`,接着把下面的环境变量写进去: ```text GTK_IM_MODULE=fcitx @@ -336,7 +336,7 @@ XMODIFIERS=@im=fcitx Deepin 的本土化做的很不错,支持一些国内常用的软件。 -但是总是让我感觉不够 Linux,手感比较奇怪。定位类似产品而不是工具。如果想要在国内替代 Windows 可以试试看。我之前使用的时候太不稳定,小 bug 一堆。现在不知道好点没有。我建议写程序还是少用,设计哲学不一样,容易把自己带偏。 +但是总是让我感觉不够 Linux,手感比较奇怪。定位类似产品而不是工具。如果想要在国内替代 Windows 可以试试看。我之前使用的时候太不稳定,小 bug 一堆。现在不知道好点没有。我建议写程序还是少用,设计哲学不一样,容易把自己带偏。 #### UOS @@ -346,7 +346,7 @@ Deepin 的本土化做的很不错,支持一些国内常用的软件。 ![](https://cdn.xyxsw.site/uos-4.png) -顺便说下我至今没找到 UOS 的源码,只看到[一篇干巴巴的新闻](https://www.zgswcn.com/article/202212/202212211344581036.html)声称“开源了开源了真的在开源了”。也就欺负 Linux Foundation 不打跨国官司。本来不想挂人的,但是[如果 UOS 用户就这素质](https://bbs.chinauos.com/post/7543)我真忍不了: +顺便说下我至今没找到 UOS 的源码,只看到[一篇干巴巴的新闻](https://www.zgswcn.com/article/202212/202212211344581036.html)声称“开源了开源了真的在开源了”。也就欺负 Linux Foundation 不打跨国官司。本来不想挂人的,但是[如果 UOS 用户就这素质](https://bbs.chinauos.com/post/7543)我真忍不了: ![troll](https://cdn.xyxsw.site/uos-troll.png) @@ -435,7 +435,7 @@ sudo sed -i 's/security.debian.org/mirrors.ustc.edu.cn/g' /etc/apt/sources.list sudo apt update && sudo apt upgrade ``` -如果出现类似 `E: 仓库 "http://mirrors.ustc.edu.cn/debian/ bookworm-security Release" 没有 Release 文件` 的报错,请用 `sudo nano /ect/apt/sources.list` 打开,手动将 `http://mirrors.ustc.edu.cn/debian/ bookworm-security` 改成 `http://mirrors.ustc.edu.cn/debian-security/ bookworm-security`,并再次 `sudo apt update`。 +如果出现类似 `E: 仓库 "http://mirrors.ustc.edu.cn/debian/ bookworm-security Release" 没有 Release 文件` 的报错,请用 `sudo nano /etc/apt/sources.list` 打开,手动将 `http://mirrors.ustc.edu.cn/debian/ bookworm-security` 改成 `http://mirrors.ustc.edu.cn/debian-security/ bookworm-security`,并再次 `sudo apt update`。 ```bash # 时间同步 @@ -458,7 +458,7 @@ flatpak remote-modify flathub --url=https://mirror.sjtu.edu.cn/flathub 对于 Nvidia 显卡,还要[安装驱动](https://wiki.debian.org/NvidiaGraphicsDrivers#Debian_12_.22Bookworm.22)。 -我们需要把 `non-free contrib` 这两个仓库加上。可以在文件管理器中打开 `/etc/apt/` 这个目录, 双击 `sources.list` 文件。(Gnome 的文件管理器按 Win+L 可以输入路径) +我们需要把 `non-free contrib` 这两个仓库加上。可以在文件管理器中打开 `/etc/apt/` 这个目录,双击 `sources.list` 文件。(Gnome 的文件管理器按 Win+L 可以输入路径) Gnome 会弹出一个窗口,全勾起来保存就行。 @@ -483,7 +483,7 @@ sudo apt install nvidia-driver firmware-misc-nonfree ![](https://cdn.xyxsw.site/debian-live-12.png) -打开 input method,修改输入法。注意不要开错了。 +打开 input method,修改输入法。注意不要开错了。 ![](https://cdn.xyxsw.site/debian-live-13.png) @@ -600,7 +600,7 @@ sudo usermod -a -G sudo <你的用户名> ### Arch Linux -邪教教主。好用是真的好用,邪教也是真的邪教。建议有事没事看那边的 wiki,写的是真的很好。 +邪教教主。好用是真的好用,邪教也是真的邪教。建议有事没事看那边的 wiki,写的是真的很好。 安装教程我就不再班门弄斧了,可以自己看。