需求:做一个 web 端的 linux 用户管理,实现 linux 中用户的创建、修改权限等、hdfs 中用户的创建、权限修改等。 目前的想法是在 web 端做一个内嵌的 linux shell,然后用户的点击操作转化为 linux 命令,对 shell 返回的数据展示等。 有没有其他的解决方案?
![]() | 1 cyrnicolase 2017-07-18 10:26:37 +08:00 或者你直接就是通过 web 发出一条消息通知到系统,系统后端监控通知过来的命令,只需要不断的去执行这些命令就可以了。不用一定要在 web 端构内嵌 linux shell。 |
![]() | 2 ningcool 2017-07-18 10:42:14 +08:00 通过脚本(比如 PHP)执行 shell 命令,需要在 php.ini 中关闭安全模式,开启相应函数。 |
![]() | 3 diveIntoWork OP @ningcool 如果不用 php 呢?个人比较倾向用 java,因为后续功能还要与 hdfs、hadoop、spark 交互。。 |
![]() | 4 diveIntoWork OP @cyrnicolase 用后端去调用 linux 的系统命令?没试过这样搞,也算是一种方案。 |
5 sampeng 2017-07-18 11:27:01 +08:00 @diveIntoWork 这样搞是最简单的。。。也是最有效的。只是有系统兼容问题。跨平台就没戏了。执行目录可能会变,环境变量会有点问题。linux 的系统命令处理了绝大多数的异常,只要捕获 stderr 和返回值就可以了。。你要自己做? 光创建用户的轮子都得造半天。。。 |
![]() | 6 leafin 2017-07-18 11:38:34 +08:00 做成普通的 web 界面,摆上按钮和输入框,后台组装成 linux 命令,用 Runtime.exec()执行,捕获输出,处理后展示到前端 |
7 ToughGuy 2017-07-18 11:49:27 +08:00 python+tornado |
![]() | 8 ywgx 2017-07-18 12:12:30 +08:00 via iPhone 楼主 我们做好了 xabcloud .com |
![]() | 9 diveIntoWork OP @leafin 对,这个流程比较合理。 |
![]() | 10 diveIntoWork OP @ywgx 能指教一下解决方案吗?。。 |
![]() | 11 ywgx 2017-07-18 16:01:58 +08:00 @diveIntoWork 其实我们官网把公开的基本都公开了,你们可以参考我们的设计,你们也可以基于 saltstack.com 开发自己的, 需要留意的是,我们是在企业深入实践的场景中做出目前的平台设计, 比如将 login 和 master 分开部署 总控 只调度 管理 各个节点的 login 和 master ; 各个 master 节点只管理自己的 minion 机器,海量的实时监控数据收集走内网 |
![]() | 12 southwolf 2017-07-18 16:09:38 +08:00 webmin 之类的不是现成的么 |
![]() | 13 momocraft 2017-07-18 16:18:22 +08:00 如果只要 linux 的用户管理 可能接个目录服务比 shell 要方便。但是不知道你要的其他服务是否也兼容目录服务。 |
![]() | 15 diveIntoWork OP @southwolf 我们需要针对自己的需求做一些订制。 |
![]() | 16 diveIntoWork OP @momocraft 许多需求只用 linux 的 LADP 解决不了 |