0

我有一个谷歌珊瑚开发板。我希望 gstreamer 插件可以与默认用户mendel以外的用户一起使用。我执行了以下步骤并遇到了问题。

  1. 使用以下命令安装了 gstreamer。
    sudo apt-get install -y gstreamer1.0-plugins-bad gstreamer1.0-plugins-good python3-gst-1.0 python3-gi

  2. 然后在以下脚本中克隆了 mendel 用户。

SRC=$1
DEST=$2

SRC_GROUPS=$(id -Gn ${SRC} | sed "s/${SRC} //g" | sed "s/ ${SRC}//g" | sed "s/ /,/g")
SRC_SHELL=$(awk -F : -v name=${SRC} '(name == $1) { print $7 }' /etc/passwd)

useradd --groups ${SRC_GROUPS} --shell ${SRC_SHELL} --create-home ${DEST}
passwd ${DEST}


3. 如果我们将上述文件保存在名称clone-user.sh下。然后使用以下命令
./clone-user.sh mendel user2

  1. sudo su - user2如果我们使用并运行命令切换到上面创建的用户gst-launch-1.0 videotestsrc ! waylandsink。然后 gstreamer 将无法工作。

  2. gst-launch-1.0 videotestsrc ! waylandsink如果我们使用默认用户,该命令在哪里起作用。就我而言,它是mendel

我试过 链接。但它也不起作用。

4

1 回答 1

0

您可以通过以下方式获取新用户的 ID:

$ echo $UID

将文件从 /run/user/1000 复制到新用户的 ID:

$ cp -r /run/user/1000 /run/user/$UID

拥有它:

$ sudo chown username:username -R /run/user/$UID/*

设置 XDG_RUNTIME_DIR:

$ export XDG_RUNTIME_DIR=/run/user/1000

我能够做到这一点,并使用 mendel 和 root 运行edgetpu_classifyand gst-launch-1.0

于 2020-02-19T18:02:50.263 回答