浅析Linux系统下安装wetty和使用说明

所属分类: 脚本专栏 / linux shell 阅读数: 912
收藏 0 赞 0 分享

以下内容从wetty简介、环境准备、wetty安装、以及验证方面给大家分析,具体详情请看下文吧。

1. Wetty简介

Wetty是使用Node.js和websockets开发的一个开源Web-based SSH。关于Web-based SSH的更多资料请参考https://en.wikipedia.org/wiki/Web-based_SSH

而wetty的资料请参考https://github.com/krishnasrinivas/wetty

2. 环境准备

因为wetty是使用Node.js编写的,所以我们要事先安装好相关的Node.js环境。请看考这篇博文。

3. Wetty安装

运行下面命令进行安装,

 $ git clone https://github.com/krishnasrinivas/wetty
 $ cd wetty
 $ sudo npm install

安装过程可能会出错,请参考下面的可能问题处理。

4. 验证

安装完成之后,然后运行下面命令启动wetty服务,监听3000端口号,

$ node app.js -p 3000

然后打开浏览器,输入http://127.0.0.1:3000,然后输入密码登陆成功后便可以进行命令行操作了,效果如下图所示,

5. 可能问题处理

5.1安装时报error: 'Use' is not a member of 'node::Buffer'

因为我安装的Node是4.1.1版本的,太新了。而wetty原本依赖的pty.js太老,导致编译出现的问题。修改以下wetty源代码目录下的package.json,将依赖的pty.js修改成最新版本0.3.0(原本是^0.2.7-1)。保存文件,然后重新运行sudo npm install命令即可。

 

5.2 ssh访问失败

启动wetty服务后,在浏览器中输入http://127.0.0.1:3000时报一个类似于下面截图的”ssh: connect to host localhost port 22: Connection refused”的错误。

运行以下下面的命令重新安装openssl-client和openssl-server即可,

$ sudo apt-get remove openssh-client openssh-server
$ sudo apt-get installopenssh-client openssh-server

PS:学习linux tty命令

tty命令用来打印与标准输入连接的终端名称,如果显示的是/dev/console,那么此终端为控制台终端;

如果显示的是/dev/pts/n,那么此终端为虚拟终端(远程连接到linux server的终端)。通过查看tty命令执行的返回码为0,确认标准输入是一个终端。

sh-# tty
/dev/console
sh-# echo $?
0
sh-# tty
/dev/pts/6

通过如下命令,我们知道/dev/console是一个字符设备(linux系统几乎把所有的设备都看作是文件),

sh-# ls -l /dev/console
crw-r--r-- 1 root root 5, 1 Jan  1 00:11 /dev/console

以上是小编给大家分享的Linux系统下安装wetty和使用说明,希望大家喜欢。

更多精彩内容其他人还在看

Shell脚本中计算字符串长度的5种方法

这篇文章主要介绍了Shell脚本中计算字符串长度的5种方法,来自于个人Shell脚本长期的开发经验,需要的朋友可以参考下
收藏 0 赞 0 分享

Shell脚本实现把进程负载均衡到多核CPU中

这篇文章主要介绍了Shell脚本实现把进程负载均衡到多核CPU中,可以把进程指定运行在某个CPU中,需要的朋友可以参考下
收藏 0 赞 0 分享

5个Shell脚本编程入门练习例子

这篇文章主要介绍了5个Shell脚本编程入门例子,涵盖了各种操作,又有一些游戏的性质,作为入门练习例子是不很不错的,需要的朋友可以参考下
收藏 0 赞 0 分享

Shell脚本编程中常用的数学运算实例

这篇文章主要介绍了Shell脚本编程中常用的数学运算实例,包含最基本的加减乘除,还有质数、偶数的判断等,需要的朋友可以参考下
收藏 0 赞 0 分享

5个实用的shell脚本面试题和答案

这篇文章主要介绍了5个实用的shell脚本面试题和答案,给出的脚本堪称编码规范,麻雀虽小,异常处理,友好提示,一应俱全,值得学习,需要的朋友可以参考下
收藏 0 赞 0 分享

使用bash shell删除目录中的特定文件的3种方法

这篇文章主要介绍了使用bash shell删除目录中的特定文件的3种方法,分别为扩展模式匹配符、GLOBIGNORE 变量和find 命令,需要的朋友可以参考下
收藏 0 赞 0 分享

Shell获取文件的文件名和扩展名的例子

这篇文章主要介绍了Shell获取文件的文件名和扩展名的例子,简明版的代码实例,看了就懂,需要的朋友可以参考下
收藏 0 赞 0 分享

Shell多线程操作及线程数控制实例

这篇文章主要介绍了Shell多线程操作及线程数控制实例,文中从单线程实现一个需求开始,不断加入代码实现多线程以及线程数的控制功能,需要的朋友可以参考下
收藏 0 赞 0 分享

阿里云主机一键安装lamp、lnmp环境的shell脚本分享

这篇文章主要介绍了阿里云主机一键安装lamp、lnmp环境的shell脚本分享,需要的朋友可以参考下
收藏 0 赞 0 分享

shell脚本转发80端口数据包给Node.js服务器

开发基于Node.js的WEB应用很方便,但是服务端口问题很蛋疼,由于Linux内核规定普通用户只能使用大于1024的端口号,所以使用普通用户运行Node.js服务就不能监听80端口
收藏 0 赞 0 分享
查看更多