正确地进行SSH的相关配置文件的权限设置

如果当导入外部的SSH公私密钥之时,可能需要在家目录下新建.ssh文件夹并将公私密钥移动到该文件夹下。但如果没有将权限问题配置正确的话,会导致密钥无法使用的问题。 这里给出一组命令对分别配置文件夹、公私密钥的权限进行设置: % chmod 700 ~/.ssh % chmod 600 ~/.ssh/id\_rsa % chmod 600 ~/.ssh/id\_rsa.pub % chmod 600 ~/.ssh/authroized\_keys

五月 26, 2021

为MacOS的终端加上代理设置

MacOS现在默认采用Zsh,所以在用户家目录下寻找.zshrc配置文件,如果没有则自行创建。 编辑.zshrc文件,在最后加入下列代码 \# set proxy alias proxy='export all\_proxy=socks5://127.0.0.1:1234' alias unproxy='unset all\_proxy' 添加完毕后,保存,在终端输入以下命令 % source ~/.zshrc 完毕。 如果需要使用代理,则预先输入proxy命令。如果需要取消代理,则输入unproxy命令。 或者如果需要默认启用代理的话,在.zshrc配置文件末尾添加 % export https\_proxy=http://127.0.0.1:7890 http\_proxy=http://127.0.0.1:7890 all\_proxy=socks5://127.0.0.1:7890 保存。 % source ~/.zshrc 完毕。

五月 25, 2021

HyperV Ubuntu虚拟机开启增强会话 调整分辨率 启用剪切板

在HyperV下Windows系虚拟机默认就能够开启增强会话。在增强会话下可以方便地和宿主机共享剪切板与文件,并且在增强会话开启时也能够比较方便地调整分辨率。而Ubuntu等Linux系统下则默认为基本会话,分辨率的调整需要修改引导文件,而剪切板和宿主机是独立的非常不方便。 进过查找,找到了一种可以在Ubuntu 20.04下开启增强会话的方法,使用后有效,遂在此记录。 首先需要开启增强会话的话必须先在创建虚拟机的时候开启第二代虚拟机选项,在首次启动的时候关闭Secure Boot。记得在安装Ubuntu的时候不要开启自动登录选项。 在终端下输入 % wget https://raw.githubusercontent.com/Hinara/linux-vm-tools/ubuntu20-04/ubuntu/20.04/install.sh % sudo chmod +x install.sh % sudo ./install.sh 在Windows Power Shell运行以下命令,然后重启。 \> Set-VM -VMName <your\_vm\_name> -EnhancedSessionTransportType HvSocket 重启后,就能看到链接虚拟机后会话已经为增强会话模式而后Ubuntu进入的XRDP登录页面,此时正常输入用户名密码即可。

五月 25, 2021

解决oh-my-zsh plugin 'zsh-autosuggestions' not found 与 plugin 'zsh-syntax-highlighting' not found问题

安装zsh插件 zsh-autosuggestions或者zsh-syntax-highlighting的时候,我们一般会遇到oh-my-zsh plugin ‘xxx’ not found的问题。现在,我们分析并解决oh-my-zsh plugin ‘zsh-autosuggestions’ not found 与 plugin ‘zsh-syntax-highlighting’ not found问题。 问题产生的原因是,没有把插件的代码仓库克隆到本地位置上,所以你想要的插件其实并没有被安装。 解决问题非常简单,只需要简单输入以下命令: $ git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions $ git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting $ source ~/.zshrc 然后,你可以重新打开shell,可以发现问题已解决。你也可以用该方法解决其他插件的此类问题。

五月 25, 2021

Synology Drive版本控制功能使用心得

经过一段时间对于Synology Drive的版本控制功能的使用,总结出以下不建议使用版本控制的常见使用场景: Synology Drive版本控制不适用于对音乐库与视频库的版本控制。这两种场景适合使用回收站机制来管理。因为音乐和视频库的容量变动幅度较大,在一段时间内进行大量的删除或者格式转换操作后,磁盘可用空间将迅速下降。不建议将音乐库与视频库加入到版本控制。 版本控制不适用于对于应用程序相关数据文件(例如Docker容器的映射目录下的相关文件)的备份,经过长期观察,版本控制对文件修改并不敏感。我往往发现经常变动的应用程序数据文件一直维持在较老的版本,并没有在应用程序对该文件作出修改后立即备份上一版本。建议使用Cloud Sync或者Hyper Backup对应用程序数据文件进行备份。 上述问题经过长期使用总结出,如果发现其他问题则会更新此文章。

五月 19, 2021

通过Gparted Live ISO可引导镜像调整硬盘分区大小

介绍 手上有一张安装了Openwrt的8G的TF卡,根分区的容量已经不太能够满足我的使用需求了。所以开始着手扩大根分区的大小。根分区的所使用的的文件系统格式是Ext4。首先,尝试使用DiskGenius等Windows下的工具进行扩容,很遗憾都不可以。于是准备使用Gparted进行扩容。由于该工具需要在Linux环境下运行,我不太想安装为此安装一个Linux发行版虚拟机所以使用Gparted的轻量ISO镜像配合Virtual Box虚拟机进行使用。 准备工作 首先下载安装VritualBox虚拟机和 VM VirtualBox Extension Pack。VirtualBox并默认不支持USB外设操作,所以要安装而外后者来为VirtualBox添加USB2.0、USB3.0等外设支持。 VirtualBox下载地址 VM VirtualBox Extension Pack 以上两者下载完后,先安装VirtualBox。 然后安装VM VirtualBox Extension Pack,具体在首选项界面扩展栏目中安装。 下载 GParted Live CD/USB/HD/PXE Bootable Image,下载链接。 步骤 创建虚拟机,分配单核、内存512MB即可,可以不创建虚拟硬盘。 在虚拟机设置界面中,在USB设备栏目中启用USB控制器,根据需要选择USB2.0或者USB3.0。 在储存栏目光驱下,选择下载好的ISO镜像,启动虚拟机。 在第一个引导菜单中选择第一项。 而后,按步骤一次选择或者输入Dont touch keymap, 26(简体中文),0(启动X Window系统)。 然后就能够进入图形界面了,点击桌面上的Gparted工具镜像分区操作。 分区后,记得点击应用。

二月 9, 2021

YouCompleteMe C/C++ VIM CMake 工程 代码提示不可用问题

YouCompleteMe介绍 如果安装完YouCompleteMe并配置好后(本站有过程记录,点击这里查看),就可以使用单文件来检测代码提示效果了。但是,当S&E打开他的C/C++工程时,却发现代码提示、跳转等功能不能正常使用。在查阅文档后,S&E发现原来是YouCompleteMe相关的索引数据库没有建立,相关的编译选项并不正确,所以YouCompleteMe所使用的的clangd就不能将多个源文件联系起来。 建立 C/C++ VIM 代码提示索引的方法 如果是使用CMake建立工程,则可以在CMakeList.txt中加入 set( CMAKE\_EXPORT\_COMPILE\_COMMANDS ON ) 或者在命令行cmake后加上-DCMAKE_EXPORT_COMPILE_COMMANDS=ON也行 建立索引的原理 YouCompleteMe读取由构建系统CMake生成的编译数据库(通常名字叫做compile_commands.json),这样就可以完成对于工程文件的索引。而编译数据库包含项目中每个编译单元的编译器调用。YouCompleteMe会寻找打开文件所在目录中的compile_commands.json,如果没找到会递归地向上查找这个文件。如果在它找到.ycm_extra_conf.py之前,找到了compile_commands.json,那么它就会停止搜索,然后,让clangd处理接管并处理该文件中含有的标志。 在完成上述这些操作后,YouCompleteMe的相关功能就可以正常使用了。

二月 6, 2021

Vim 代码提示插件 YouCompleteMe 安装与配置

介绍 对于在Vim下的C/C++程序编写,如果有代码提示插件会大大提高编写效率。大型IDE用的多了,刚回归Vim的S&E比较依赖这个。正好YouCompleteMe能够满足他的相关需求。索性把安装与配置的过程记录在这里,以供下次回忆使用。 除了C/C++,YouCompleteMe支持Java、Go、C#、Objective-C、CUDA等,可以说是比较强大了。但是话说,写Java为什么要用Vim呢?IDEA貌似更好。 使用后发现这插件还支持代码跳转、引用查找、修改函数名和格式调整等操作,挺方便。 Giuhub仓库地址:https://github.com/ycm-core/YouCompleteMe 前置条件 安装最新的YouCompleteMe插件需要满足一些条件 Vim 8.1 以上 并且启用了Python3扩展支持(本站有过程记录,点击这里查看) GCC 8 以上 或者 Clang 7 以上 Python3.6以上编译的时候有–enable-shared选项(一般包管理器安装都带有) 对于Debian 10, 通过包管理器安装的Gcc版本为8.3.0。 然后可以通过以下命令查看编译器版本 % cc -v 对于python3的版本,使用以下命令查看 % python3 --version 对于Vim版本,使用执行以下命令查看 % vim --version 检查完以上依赖后,也执行一下以下命令确认安装相关依赖 % sudo apt install build-essential cmake vim-nox python3-dev 安装 先确认用过了Vim插件管理器安装了YouCompleteMe,推荐使用Vundle。 确认安装了YouCompleteMe后,进行下面的步骤 如果你想要安装所有的功能,包括Java(JDK 8),Go、C#等代码提示功能,可以直接执行以下命令安装 % cd ~/.vim/bundle/YouCompleteMe % python3 install.py --clangd-completer 如果你只想使用C/C++代码提示功能,则执行以下命令 % cd ~/.vim/bundle/YouCompleteMe % python3 install.py --clangd-completer

二月 6, 2021

Vim主题 spf13-vim.sh 的安装与使用

Vim主题介绍 我经常使用vim为在Linux下的主要的代码编辑器。每当SSH进入一个新的开发系统环境,为了编写方便,他总是需要手动安装Vim并配置各类常用插件。spf13-vim.sh是一个使用于Vim的插件和相关资源的发行版。一条命令,即可以自动安装常用的配套的插件环境。 Github仓库地址:https://github.com/spf13/spf13-vim 心得 S&E感觉这个就好像快速安装了一个以Vim为核心的IDE(可以类比Vscode)。然后,spf13-vim.sh产生一个比较规范的vim配置文件层次结构,方便后来再添加其他插件,也避免无规划地手动添加插件产生的杂乱的配置文件。而且,把相关插件的优化和配置工作丢给它后,省心了不少。 安装 前置条件: git curl vim 7.3以上 本站有安装Vim 8.2的相关过程记录:点击这里查看 对于Debian 10可以简单地执行以下命令安装git和curl % sudo apt install git curl 然后对于Unix/Linux、Mac OS等,执行以下命令一键安装spf13-vim.sh % curl https://j.mp/spf13-vim3 -L > spf13-vim.sh && sh spf13-vim.sh (对于Windows系统,请参考Github仓库中的ReadME.md) 更新方法 可以通过执行以下命令一键更新 % curl https://j.mp/spf13-vim3 -L -o - | sh 个性化定制 spf13-vim.sh是一个配套的常用插件发行版,并没有安装YouCompleteMe这类的插件,这就需要我后期加上去。可以在当前用户主目录下,执行以下命令添加一个个性化配置文件: % touch ~/.vimrc.local 然后,可以编辑这个文件加入自己的配置。 对于需要预先执行的一些配置,则可以执行以下命令下入对应的配置文件 % ~/.vimrc.before.local 添加插件 比如说要添加spf13/vim-colors这款插件,按照ReadME.md中的实例是这样的 % echo Bundle \\'spf13/vim-colors\\' >> ~/.vimrc.bundles.local 移除插件 移除插件只要在上面的命令中的Bundle前面加一个Un即可 % echo UnBundle \\'AutoClose\\' >> ~/.vimrc.bundles.local 常用插件的使用 以下介绍一些常用插件的使用操作方法,这里就不写全了,根据我的使用慢慢加上。 NERDTree 通过Crtl-E调出菜单

二月 6, 2021

Vim 8.2 源码编译安装 添加Python3扩展

介绍 为了安装YouCompleteMe这类插件,需要将Vim升级至比较高的版本并且启用Python3扩展。所以,这里提供的是通过源码安装Vim最新版本的过程记录。 这里使用到的Vim源代码仓库地址:https://github.com/vim/vim/ 编译安装默认版本 在编译安装之前先要安装相关的工具以及依赖 % sudo apt install git make clang libpython3-dev 选择适当的目录执行克隆命令 % git clone https://github.com/vim/vim.git 克隆成功后会出现vim目录,进入该目录下的src目录 % cd vim/src 执行编译(为了加快速度可以替换执行% make -j4来并行编译) % make 执行测试 % make test 默认安装到/usr/local目录下 % sudo make install ``` 开启Python3扩展支持 ------------- 在上述操作完成后,打开该目录下的Makefile文件,找到`"CONF_OPT_PYTHON3 = --enable-python3interp"`并取消注释该行,保存。 执行命令更新编译参数`make reconfig`

二月 6, 2021