加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – “Permission denied”在启动时运行Command

发布时间:2020-12-14 02:20:37 所属栏目:Linux 来源:网络整理
导读:我在我的Ubuntu系统上有一张dvb卡,并写了一个bash文件,在gnome-terminal中显示dvb tuner,并在启动时将bash文件启动,以便在用户登录系统时运行该脚本,如下所示: #!/bin/bash# Bash script to show list of bvb tunergnome-terminal --title="list of bvb tun
我在我的Ubuntu系统上有一张dvb卡,并写了一个bash文件,在gnome-terminal中显示dvb tuner,并在启动时将bash文件启动,以便在用户登录系统时运行该脚本,如下所示:
#!/bin/bash

# Bash script to show list of bvb tuner

gnome-terminal --title="list of bvb tuners" -x bash -c "lsdvb; read line" &

gnome-terminal --title="Tuner 4:" -x bash -c "dvblast -a 4 -f 12596000 -s 27500000 -v 13 -c Tuner4.cfg -i 1 ; read line" &

lsdvb来自dvb-app存储库的命令显示了Linux和dvblast中的dvb调谐器列表,这是一个用于广播直播电视的节目.

当我在服务器上有1个dvb卡时,一切正常…当我向服务器添加第二个dvb卡并重启系统时,bash文件启动但是看到以下运行dvblast的错误:

这对于lsdvb:

如果使用sudo -s登录gnome-terminal并手动运行bash文件,则可以正常工作.

当删除第二张卡时,bash文件在启动时正常工作.

我把strace放在命令行中,看到lsdvb的这个日志:

open("/etc/ld.so.cache",O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libc.so.6",O_RDONLY|O_CLOEXEC) = 3

        lsdvb: Simple utility to list PCI/PCIe DVB devices
        Version: 0.0.4
        Copyright (C) Manu Abraham
+++ exited with 0 +++

这个日志为dvblast:

open("/etc/ld.so.cache",O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libpthread.so.0",O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/librt.so.1",O_RDONLY|O_CLOEXEC) = 3
DVBlast 2.2 (release)
warning: restarting
open("/usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache",O_RDONLY) = 3
open("/usr/lib/x86_64-linux-gnu/gconv/ISO8859-1.so",O_RDONLY|O_CLOEXEC) = 3
debug: using linux-dvb API version 5
open("/dev/dvb/adapter3/frontend0",O_RDWR|O_NONBLOCK) = -1 ENOENT (No such file or directory)
error: opening device /dev/dvb/adapter3/frontend0 failed (No such file or directory)
+++ exited with 1 +++

有谁知道当第二张卡添加到服务器时bash文件需要特殊权限时发生了什么?

解决方法

您可以在命令前添加ie strace并将输出重定向到文件以查看确切发生的情况.
您还可以将auditd设置为监视/ dev / dvb / adapter3 / frontend0,因此将在/ var / log / messages中查看详细信息.
auditctl -w /dev/dvb/adapter3/frontend0

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读