Mac电脑iTerm2链接Linux服务器断线解决方案

sinlff 2018-10-16

问题

用Windows链接Linux服务器,方式很多,我最经常用的是xshell。但是xshell没有mac版,那用mac电脑,比较好的命令行软件是什么呢?我用的是iTerm2 ,这个功能确实蛮强大,很多人都在用。但是,你用iTerm2 链接远程Linux服务器,假如你去干别的,一会再回到iTerm2 ,你会发现iTerm2 断线了,苦逼的还要再次进行链接,好麻烦!针对这个有没有什么好的解决方案呢?

链接服务器方式

通过如下命令:
ssh -t root@公网ip地址  -p 22

输入用户名和密码,就可以登录到你的linux服务器了。 但是如果一段时间不操作,再次进入 Terminal 时会有一段时间没有响应,然后就出现错误提示:
Write failed: Broken pipe

这是因为mac下的securecrt存在丢包现象。

解决方案

情景一:如果您有多台服务器,不想在每台服务器上设置,如下操作:

1、运行命令:
cd ~/.ssh/

2、假如运行命令ls,没有config,新建config
vim config

3、在config在里面输入:
ServerAliveInterval 60

4、保存文件(:x)

在链接linux服务器,就不会有断线的问题了。

情景二:如果您有多个人管理服务器,不想在每个客户端进行设置,只需在服务器的 /etc/ssh/sshd_config 中添加如下的配置:
ClientAliveInterval 60

情景三:如果您只想让当前的 ssh 保持连接,可以使用以下的命令:
ssh -o ServerAliveInterval=60 user@sshserver

小结

上面只是总结了一个避免断线的一个小技巧,关于linux的命令操作,

关于mac电脑的一些常用命令,请看如下Mac电脑的一些常用命令

在我的mac电脑上操作grunt,突然发现我用命令行进不了移动硬盘了,因为我的nodejs文件是放在移动硬盘里面,mac命令行如何进入移动硬盘?

怪自己是mac的菜鸟,网上查了查,才知道桌面上看到的硬盘都挂在 /Volumes 下

为了让我这个mac菜鸟在今后mac命令行操作的时候,更快地找到相应地命令,现在总结一下MAC电脑的一些常用命令。

mac电脑常用文件位置

移动硬盘的位置 :
cd /Volumes/硬盘名字

根目录位置是:
cd  /
ls
 
驱动所在位置 :
/Systme/Library/Extensions

用户文件夹位置:
 /Users/用户名

桌面的位置
/Users/用户名/Desktop

在mac中查看以上位置文件夹的快捷键
Commond+shift+g

获得权限

为了防止误操作破坏系统,再用户状态下时没有权限操作系统重要文件的,所以先要取得root权限
sudo -s

然后输入密码,输入密码时没有任何回显,连星号都没有,只管输完回车就行了。

常用命令

谷歌浏览器调试F12快捷键
Commond +shift +C

列出文件
ls 参数 目录名
例: 想看看跟目录下有什么,
ls /
想看看驱动目录下有什么,
ls /System/Library/Extensions
参数 -w 显示中文,-l 详细信息, -a 包括隐藏文件

转换目录
cd
例:想到驱动目录下溜达一圈
cd /System/Library/Extensions

建立新目录
mkdir 目录名
例:在驱动目录下建一个备份目录 backup
mkdir /System/Library/Extensions/backup
在桌面上建一个备份目录 backup
mkdir /User/用户名/Desktop/backup

拷贝文件
cp 参数 源文件 目标文件
例:想把桌面的Natit.kext 拷贝到驱动目录中
cp -R /Users/用户名/Desktop/Natit.kext /System/Library/Extensions
参数R表示对目录进行递归操作,kext在图形界面下看起来是个文件,实际上是个文件夹。
把驱动目录下的所有文件备份到桌面backup
cp -R /System/Library/Extensions/* /Users/用户名/Desktop/backup

删除文件
rm 参数 文件
例:想删除驱动的缓存
rm -rf /System/Library/Extensions.kextcache
rm -rf /System/Library/Extensions.mkext
参数-rf 表示递归和强制,千万要小心使用,如果执行了 rm -rf / 你的系统就全没了

移动文件
mv 文件
例:想把AppleHDA.Kext 移到桌面
mv /System/Library/Extensions/AppleHDA.kext /User/用户名/Desktop
想把AppleHDA.Kext 移到备份目录中
mv /System/Library/Extensions/AppleHDA.kext /System/Library/Extensions/backup

更改文件权限
chmod 参数 权限 文件
例:把驱动目录下所有文件设定到root读写,其他用户只读
chmod -R 755 /System/Library/Extensions
参数R 表示递归,755表示各用户的权限

更改文件属主
chown 参数 用户:组 文件
例:把驱动目录下的所有文件属主改成根用户
chown -R root:wheel /System/Library/Extensions
参数R 表示递归操作

修复整个系统中文件的权限
diskutil repairpermissions /
严格的说这不是一个unix 命令,而是osx一个软件,记得修改或添加的驱动就执行一次。

文本编辑
nano 文件名
例:编辑natit Info.plist
nano /System/Library/Extensions/Natit.kext/Info.plist
编辑完成后 用 Ctrl +O 存盘,Ctrl+X 退出
另一个文本编辑软件是 vi,操作有些古怪,熟了是非常好用的,而且在所有类Unix系统中都它,走遍天下都不怕了。

运行脚本命令
sh 脚本文件名
例 修改驱动后所有需要的操作存成一个脚本,以后修改了驱动后只要运行一次这个脚本就可以了,方便吧 ,步骤如下:
1. 终端中运行nano /clean
2. 把下列代码粘贴到 nano 中
rm -rf /System/Library/Extensions.kextcache
rm -rf /System/Library/Extensions.mkext
chown -R root:wheel /System/Library/Extensions
chmod -R 755 /System/Library/Extensions
diskutil repairpermissions /
kextcache -k /System/Library/Extensions/
3. Ctrl +O 存盘,Ctrl+X 退出
4. 以后只要动了驱动,就在终端中运行一次 sh /clean

苹果系统式Unix系统,和Linux系统操作差不多,假如您对Linux系统操作很熟练,详细操作苹果系统肯定也是如鱼得水!

相关推荐