宝塔618特惠活动,企业版999元/年,宝塔SSL证书买1送1!限时抢购!查看活动
当前位置:论坛首页 > Linux面板 > 求助

【待反馈】如何给www用户安装“用户限定运行程序”?

发表在 Linux面板2024-8-13 18:43 [复制链接] 16 1711

为了能快速了解并处理您的问题,请提供以下基础信息:
面板、插件版本:9.1.0

系统版本:Linux version 5.14.0-80.el9.x86_64 (mockbuild@x86-05.stream.rdu2.redhat.com) (gcc (GCC) 11.2.1 20220401 (Red Hat 11.2.1-10), GNU ld version 2.35.2-19.el9) #1 SMP PREEMPT Thu Apr 21 09:50:22 UTC 2022

问题描述:一般运行网站所用的权限就是www, 但是SSH进去却是 root,  而  su www 却提示暂不可用,因此,安装bun(新的js执行程序,类似nodejs),安装到了/root/.bun/bin/bun,     如何安装到  www  ?

相关截图(日志、错误):

使用道具 举报 只看该作者 回复
发表于 2024-8-14 11:38:05 | 显示全部楼层
您好,有些未能看懂您的问题,您这边无法使用su www,那就直接在ssh登录工具用www用户登录。其次可以做个链接将bun的可执行文件链接到www目录。
使用道具 举报 回复 支持 反对
发表于 2024-8-14 14:40:41 | 显示全部楼层
在 /etc/passwd  文件中,  www 用户  为    /sbin/nologin    ,即不可登录状态,请问怎么ssh登录?而且,就算是root用户,因为此可执行程序安装在非常规全局PATH位置  $HOME/.bun/bin/bun,并且他会修改.bashrc文件,让此路径加入PATH常量,但是貌似网站执行程序 (nodejs)没有读取该文件,导致就算root用户也无法找到该运行文件。
使用道具 举报 回复 支持 反对
发表于 2024-8-14 15:51:35 | 显示全部楼层
您好,www为不可登录,这边理解错意思,目前无法使用www身份登录ssh,
使用道具 举报 回复 支持 反对
发表于 2024-8-14 16:32:08 | 显示全部楼层
上述的其他问题呢? 没有读取.bashrc的问题呢?
使用道具 举报 回复 支持 反对
发表于 2024-8-14 17:05:53 | 显示全部楼层
宝塔用户_pgzpas 发表于 2024-8-14 16:32
上述的其他问题呢? 没有读取.bashrc的问题呢?

您好,您这个用户限定运行程序,这边查看了一下,应该是这个链接中吧
https://cloud.tencent.com/developer/article/2296608

您说的,这个.bashrc问题没有很好的理解您的问题

使用道具 举报 回复 支持 反对
发表于 2024-8-14 20:24:41 | 显示全部楼层
bun 安装在

$HOME/.bun/bin/bun

也就是说,如果是root用户,就会存在于 /root/.bun/bin/bun
                      如果是www用户,就会存在于/home/www/.bun/bin/bun   (当然,前提是能进入www用户进行安装操作)

到这里能理解吧?

而 这些目录都不存在于 PATH 中,也就是说,当在命令行敲击   bun  代码的是后,是会提示找不到该程序的,这里应该理解吧? (并且Windows也是 PATH 全局变量这种方案)

而 bun 安装程序会在安装完成后   在该用户的  .bashrc  文件中添加两行代码  ,     

export BUN_INSTALL="$HOME/.bun"
export PATH=$BUN_INSTALL/binPATH


这样之后,当该用户登录后,因为系统机制的原因,会读取  .bashrc   文件,  所以    /root/.bun/bin/bun   或者    /home/www/.bun/bin/bun    就会进入到  全局  PATH   当中  ,   bun    就能被查找,到这里能理解吧?

但是,在宝塔中,即使  顺利在   .bashrc   中   添加    上述代码,   依然提示找不到该应用程序,那么,只有一个可能,基于某个用户运行网站的时候(nodejs),并没有加载   .bashrc


这样理解吗?
使用道具 举报 回复 支持 反对
发表于 2024-8-15 09:46:08 | 显示全部楼层
宝塔用户_pgzpas 发表于 2024-8-14 20:24
bun 安装在

$HOME/.bun/bin/bun

理解了,也就是在运行项目的时候,没有调取到您说的环境变量
  1. export BUN_INSTALL="$HOME/.bun"  
  2. export PATH="$BUN_INSTALL/bin:$PATH"
复制代码

您好一下是否因为环境变量写错了
其次查看一下启动程序的脚本,
使用道具 举报 回复 支持 反对
发表于 2024-8-15 15:17:16 | 显示全部楼层
怎么你好像什么都听不懂的呢?你是技术员吗?
使用道具 举报 回复 支持 反对
发表于 2024-8-15 16:33:00 | 显示全部楼层
宝塔用户_pgzpas 发表于 2024-8-15 15:17
怎么你好像什么都听不懂的呢?你是技术员吗?

您好,非常抱歉,这个我理解错了,您这边是什么身份启动的呢,是这样的,如果是root用户,是会默认添加到环境变量中的,www的话是需要手动添加环境变量,
例如:root的话就是 export PATH="$PATH:/root/.bun/bin"
如果是www的话,export PATH=$PATH:/home/www/.bun/bin
使用道具 举报 回复 支持 反对
发表于 2024-8-15 21:55:45 | 显示全部楼层
$HOME    变量已经指代您上述两个账户的对应位置,你觉得呢?
使用道具 举报 回复 支持 反对
发表于 2024-8-15 21:58:08 | 显示全部楼层
我的问题是,在“网站”一栏功能当中,“nodejs”网站,为什么会提示  找不到  bun 应用程序,只有一个可能,你们内核并没有加载.bashrc的变量,我说这些能不能懂
使用道具 举报 回复 支持 反对
发表于 2024-8-16 11:29:36 | 显示全部楼层
宝塔用户_pgzpas 发表于 2024-8-15 21:58
我的问题是,在“网站”一栏功能当中,“nodejs”网站,为什么会提示  找不到  bun 应用程序,只有一个可能 ...

您好,您这边是什么身份运行的,添加好变量后,您这边重启一下面板后再启动一下看是否可以
使用道具 举报 回复 支持 反对
发表于 2024-8-16 18:31:21 | 显示全部楼层
不如你试试安装一个   bun,
https://nuxt.com/docs/getting-started/installation
这里有bun的用法和用nuxt生成的样例,你自己试试
使用道具 举报 回复 支持 反对
发表于 2024-8-17 09:35:43 | 显示全部楼层
宝塔用户_pgzpas 发表于 2024-8-16 18:31
不如你试试安装一个   bun,
https://nuxt.com/docs/getting-started/installation
这里有bun的用法和用nuxt ...

您好,您是部署的项目还是说是用bun软件了,链接这边是访问不了,方便后台私信我,这边远程查看吗
使用道具 举报 回复 支持 反对
12下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

点击联系技术免费分析

工作时间:09:00至18:30

快速回复 返回顶部 返回列表