lua - /usr/bin/sudo:通过带有 lua 脚本的 telegra-cli 从 sh 脚本调用 sudo 时权限被拒绝
问题描述
我试图通过电报消息运行我的 .sh scipt status.sh:
带有 lua 脚本的 Ubuntu 20.04.1 LTS 服务器 Telegram-cli 来操作 status.sh 脚本
当我通过电报向我的服务器发送消息“状态”时,它会执行 status.sh 脚本,在这个脚本中,我有一堆东西可以为我收集信息并将其发送回电报,这样我就可以看到我的状态但是,如果脚本有一行以 sudo 开头的代码,则服务器是(我最近重新安装了服务器),我得到:
line 38: /usr/bin/sudo: Permission denied
如果我从命令行运行脚本 ./status.sh 它运行没有任何问题!?所以我认为它是因为它是从电报或lua调用的!?
生成错误的代码示例:sudo ifconfig enp0s25 >> file
另一方面,这条线没有问题:
sudo echo Time: $(date +"%H:%M:%S") > file
/usr/bin 拥有 0755 权限集 sudo 拥有 4755 权限集
解决方案
以下命令
sudo ifconfig enp0s25 >> file
如果file
需要修改 root 权限将无法工作。
sudo
影响ifconfig
但不影响重定向。
要解决这个问题:
sudo sh -c 'ifconfig enp0s25 >> file'
推荐阅读
- delphi - 如何在第二台显示器上居中表格?
- vba - VBA检查IE url是否已更改
- flutter - 如何在 Flutter 中缓存没有 dio 的 POST 请求?
- javascript - 一次加入多个房间 Socket.io
- php - 自定义 Shopify webhook (PHP) 出现问题
- javascript - 如何从 html 表创建 html 文件
- google-cloud-platform - 从远程 Orthanc 服务器获取数据到 Ohif 查看器
- javascript - PHP time() 函数比 JavaScript Date.now() 提前 800 秒
- azure-cognitive-services - 提高表格识别
- nativescript-angular - Nativescript-angular 编译错误无法调用没有 |new| 的类构造函数