Linux目录结构
1. 简介
由于 Linux 系统是开源的,存在众多不同的发行版,为了防止不同的 Linux 发行版的系统目录结构大相径庭,以至于用户从一个发行版迁移到别的发行版后不会使用,FHS(Filesystem Hierarchy Standard)标准诞生了。FHS 标准旨在让用户可以了解到系统上的库文件、已安装的软件文件通常的存放位置,即规范每个特定的目录下应该要放置什么数据。目前主流的 Linux 发行版基本都遵循 FHS 标准,因此它们的系统目录结构也大致相同。
了解 Linux 文件目录结构的标准和每个目录的详细功能,对于用户用好 Linux 系统至关重要。
2. FHS 标准
以 Centos 7.x 为例,其文件系统架构如下图所示:
2.1 目录的形态
FHS 依据文件系统使用的频繁与否和是否允许使用者随意更改,将目录定义为四种交互作用的形态,具体举例如下表格所示:
可分享的(Shareable)
不可分享的(Unshareable)
不变的(Static)
/usr(软件放置处)/opt(第三方协力软件)
/etc(配置文件)/boot(开机与核心档)
...
Git信息跟踪
1. SSH 连接相关问题
Git 从版本 2.3.0 开始,可以使用 GIT_SSH_COMMAND 环境变量给 Git 传入临时设置的 SSH 连接参数。因此,可以传入 -v 参数来打印 SSH 连接的详细信息。ssh 命令可以接受 1~3 个 v 参数,数量越多,表示输出的信息越详细。
12# For exampleGIT_SSH_COMMAND="ssh -vvv" git clone git@xxx:path
2. HTTPS 连接相关问题
Git 使用 curl 库来处理 HTTPS 的连接,如果想要得到 HTTPS 连接的详细信息,可以临时设置环境变量 GIT_CURL_VERBOSE=1,这样设置近似等价于在进行 HTTPS 连接时 curl -v 的输出。
12# For exampleGIT_CURL_VERBOSE=1 git clone git@xxx:path
【注】GIT_CURL_VERBOSE 变量的可取值和下节「Git 相关问题」的环境变量相同,具体参见下文。
3. Git 相关问题
Git 设置了一系列的环境变量用于错误排查:
...
ArchLinux下设置交换空间
1. 简介
Linux 将物理内存分为内存段,叫做页面。交换是指内存页面被复制到预先设定好的硬盘空间(叫做交换空间)的过程,目的是释放这份内存页面。物理内存和交换空间的总大小是可用的虚拟内存的总量。
1.1 交换空间
交换空间通常是一个磁盘分区(交换分区),但是也可以是一个文件(交换文件)。用户可以在安装 Arch Linux 的时候创建交换空间,或者在安装后的任何时间建立交换空间。交换空间可用于两个目的:
将虚拟内存扩大到超过已安装的物理内存的容量。
用于支持系统休眠。
电脑系统目前主要有三种挂起方式:
睡眠(Suspend to RAM):将机器中大多数和RAM不相关的部件断电,电脑状态仅仅保存在RAM中。关闭多数外围设备,保留鼠标键盘等少数外围设备,以对用户操作进行快速响应。
休眠(Suspend to Disk):将机器内容保存至交换空间并完全断电。再次开机时从硬盘读取交换空间进内存,恢复运行状态。和睡眠不同,休眠时不会耗电。
混合休眠(Suspend to Both):将电脑状态保存进交换空间,但并不对电脑断电,而是引用睡眠机制,从而使未掉电的电脑能从内存中恢复。如果 ...
Zsh相关资料汇总
1. Zsh
官方源码
官网链接
2. Zsh 插件
Zsh 插件列表及介绍:Awesome-Zsh-Plugins
为了更便于管理插件,Zsh 有好几款插件管理器,诸如 Oh-My-Zsh、Antigen、Zplug、Prezto 等。
2.1 Oh-My-Zsh
官方源码
官网链接
插件列表
2.2 Antigen
官方源码
官网链接
2.3 Zplug
官方源码
2.4 Prezto
官方源码
Tmux相关资料汇总
1. Tmux
官方源码
Tmux 使用教程
2. Tmux 插件
Tmux 插件管理器——tpm
Tmux 插件列表
Tmux 插件配置方案 ~/.tmux.conf 推荐:
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950# -----------------------------------------------------------------------------# Tmux 基本配置 - 要求 Tmux >= 2.3# 如果不想使用插件,只需要将此节的内容写入 ~/.tmux.conf 即可# -----------------------------------------------------------------------------# C-b 和 VIM 冲突,修改 Prefix 组合键为 Control-Z,按键距离近set -g prefix C-zset -g base-index 1 ...
浏览器实用插件集合
1. Surfingkeys
Surfingkeys 插件实在是 Vim 爱好者的福音,它能够让我们以 Vim 的方式用键盘来操作浏览器,而不再依赖鼠标。它目前支持 Chrome、Firefox 以及 Edge 浏览器。
Vimium 插件功能和 Surfingkeys 类似,而且似乎还更强大。
2. FeHelper
FeHelper 是一款 Web 开发者助手插件,其内部集成了许多实用的 Web 开发工具。
Aria2相关资料汇总
1. Aria2
1.1 官方系列
源码仓库
官方主页
官方文档
1.2 第三方系列
P3TERX 的配置方案
Aria2 配置文件仓库
Aria2 配置文件说明
2. Aria2 GUI 前端
2.1 AriaNg
源码仓库
使用手册
2.2 Aria2Ng
源码仓库
使用手册
2.3 Yaaw
源码仓库
2.4 WebUI-Aria2
源码仓库
2.5 Persepolis
源码仓库
使用手册
3. Aria2 浏览器插件
3.1 Aria2 for Chrome
内嵌 Aria2Ng 前端的 Chrome 插件。
源码仓库
3.2 Yaaw for Chrome
内嵌 Yaaw 前端的 Chrome 插件。
源码仓库
3.3 Aria2 Download Manager Integration
内嵌 Aria2Ng 前端的 Firefox 插件。
源码仓库
XDM常见问题
1. An older version of XDM is already running.
问题:XDM 下载软件无法正常打开,一打开就报错:An older version of XDM is already running 。
原因:XDM 所在目录下的 download.txt 文件损坏。
解决:
关闭 XDM 进程。
12ps aux | grep java_pid # 找到 XDM 的进程号(XDM 是 java 软件)kill -9 xxx # 杀死对应进程
删除 download.txt 文件。
1rm ~/.xdman/downloads.txt
重新启动 XDM。
VSCode设置中英混合等宽字体
1. 缘由
VSCode 中的 alt+shift 快捷键能够同时操作多列,但其前提是被操作的部分要完全对齐,这就要求 VSCode 编缉器使用的字体得是等宽的。
2. 配置
2.1 字体
如果只是单纯使用英文或中文,则使用常见的等宽字体即可,比如 Monospace。
如果有中英文混合使用,则常见的等宽字体就无法保证中英文之间也能很好地对齐。因为中文汉字是全角字符,而英文字符是半角字符。系统上一般没有中英文对齐的字体,因此需要下载额外的字体:
Sarasa-Mono-SC-Nerd:一款开源的字体,它有一个中英文对齐字体族,中英文字体宽度比例完美符合 2:1 。
Sarasa-Gothic:另一款开源的字体,它里面包含的中英文对齐字体,中英文字体宽度比例同样完美符合 2:1。
2.2 安装
以 Sarasa-Gothic 字体和 Windows、Arch Linux 系统为例:
Windows:下载 Sarasa-Gothic 字体,根据 Sarasa-Gothic 仓库给出的使用文档,生成 ttf 或 ttc 字体文件,然后将字体文件拷贝到 C:\Windows\Fo ...
ArchLinux下配置aria2
1. 简介
aria2 是一个轻量级、支持多种协议的命令行下载工具。它支持的协议包括 HTTP(S)、FTP、BitTorrent、Metalink 等。aria2 工具可以并发地进行下载,同时还支持分片与续传,自动替换慢的线程等。
2. 安装
1sudo pacman -S aria2 # 安装好后可使用 aria2c 命令
3. 配置
aria2 安装完后需要进行复杂的配置,详情可参见 aria2 官方手册。所幸有大佬整理出较为通用的配置方案模板,我们只需在其基础上稍加修改即可。
123cd ~git clone https://github.com/P3TERX/aria2.conf # 大佬的配置方案模板mv aria2.conf .aria2
然后打开 aria2.conf,根据注释提示进行修改(一般只需修改所有的「路径变量」和「rpc-secret」即可)。「路径变量」根据自己需要自定义即可,「rpc-secret」用于 rpc 服务的认证,可选,但建议最好还是设置一下。
【注】aria2 默认的模式是每次下载都需要手动运行一次 aria2c ...
双拼输入法
1. 简介
「全拼输入法」即我们平常系统上默认的拼音输入法,它将字的拼音拆分成一个个的字母,然后用键盘一个个输入。当字母的拼音字母很多时,全拼输入法就比较耗时间。为此,「双拼输入法」被提出。它和 「全拼输入法」的不同之处在于,它将一个字的拼音拆分成「声母」和「韵母」两个部分,而非一个个的字母。然后再将所有声母和韵母映射到键盘上,从而保证每个字只需敲击两次键盘即可完成拼音输入,提高了拼音打字的速度。
2. 自然码双拼
3. 小鹤双拼
附录
官方学习资料:
自然码汉字输入系统
小鹤双拼
五笔输入法
1. 简介
新世纪五笔是最新版的五笔输入法,它相较于前两版的五笔输入法(即 86 版和 98 版)拆字更加规范。
2. 键盘图
3. 字根助记表格
4. 编码流程
4.1 䃼码码元
新世纪五笔中有四个䃼码码元:礻、衤、犭、飠。它们作为字根时需要两个编码,即「主码」+「副码」;它们作为成字时至少需要四个编码,即「主码」+「副码」+「首笔」+ 「末笔」。
䃼码码元
字根编码
成字编码
礻
py
pyyy
衤
pu
puyy
犭
qt
qttt,三级简码 qtt
飠
wy
wyty,由于全码和「伪」字重码了,故另外给它分配了三级简码 wyu
4.2 打出字根
横竖撇捺折:所在键位打两下 + ll。
其它:当作成字字根来打,即所在键位打一下 + 第一笔画 + 第二笔画 + 末笔画。
【注】不是所有字根都能打出。
4.3 汉字位置关系
根据构成汉字的各个字根之间的位置关系,五笔输入法将成千上万的方块汉字分为 3 种字型,即左右型、上下型和杂合型。
4.3.1 左右型
左右型汉字的字根与字根之间有一定的距离,从整体上来看,字根呈左右排列,如「划、形、担、班 ...