学习.bashrc的基础使用与相关扩展

闲来无事,整理一下学习笔记。

因为上网本安装了 lubuntu,所以最近基础地去学习了一下。活到老,学到老!不求都懂,只要稍微了解一些基本的使用方法就好。

利用.bashrc 设置命令别名

本地电脑 ssh 登陆远程服务器时,我们会用到下面的方法

ssh 用户名@远程服务器IP

不是那么方便,特别是 IP,还是有点难记的。这个时候就可以利用.bashrc 进行个性化设置了。首先我们使用编辑器打开.bashrc 配置文件

sudo vim ~/.bashrc

按 i 进入编辑模式,在文件最后添加以下内容

alias 别名='ssh 用户名@远程服务器IP'

这里举个例子,我设置一个命令别名为 nas 用作登陆家里的群晖。

alias nas='ssh laomai@192.168.1.225

保存退出后,我们要重新加载一下配置文件,输入以下命令

source ~/.bashrc

这样我们在终端里输入刚才设置的别名就能直接登陆远程服务器了。

扩展 免密码登陆

配置完个性化别名后,输入别名,我们还是要用密码登陆一下才行,麻烦不说,在安全性上来说也不好,所以这个时候我们可以利用公钥来解决。 在本地电脑上生成密钥对,输入

ssh-keygen

这个时候窗口会提示你设置密码来保证密钥的安全,这里我们直接按回车键确认,密码留空。这样我们使用密钥认证的时候就可以免去输入密码的麻烦。以时我们进入密钥的保存目录

cd ~/.ssh/

在这里我们可以看到生成的私钥 id_rsa 和公钥 id_rsa.pub 了,要说一下的是,无论什么情况下,都不能暴露自己的私钥文件 id_rsa。接下来需要将公钥文件复制到远程服务器上,输入

ssh-copy-id 用户名@远程服务器IP

设置完成后就可以在本地电脑输入别名来免密码登陆远程服务器了。

思考

通过上面的方法,可以轻松且快速的免密码登陆远程服务器,那么是不是也可以利用设置命令别名来提高工作效率呢?例如一些我们经常切换的目录路径、经常使用且长的命令等等,我们都可以分别设置一个别名,这样不但提高效率,而且能有效防止出现常见的拼写错误与规避容易忘记的命令语法。