首页 文章

Raspberry Pi bash脚本无法运行

提问于
浏览
0

我有一个Raspberry Pi,我从adafruit拿起一个tft触摸屏来玩 . 为了使它工作,我必须从rc.local运行几行,包括startx,一旦触摸屏上的操作系统开始工作,由于某种原因,它已经以root @ raspberrypi的身份登录了我 .

一旦操作系统在触摸屏上运行,我需要运行两个程序,火柴盒键盘和钢琴,这两个程序通过键入“matchbox-keyboard”和LXTerminal中的“pianobar”运行得很好 .

但是,如果我尝试在根rc.local或pi rc.local下将“matchbox-keyboard”或“pianobar”添加到rc.local,程序将无法运行 .

我尝试通过添加一个文件keyboard.sh来解决这个问题,我已经将(chmod u rwx keyboard.sh)的权限添加到我的桌面,其中包含以下行:

#!bash
matchbox-keyboard
pianobar

文件就在那里,当点击时要求我执行或在终端执行,这两个都不起作用 .

我很难过 . 有人有主意吗?

1 回答

  • 1

    我不确定Debian是如何组织的,但是如果 rc.local/etc/rc.d 下的文件,系统会在系统初始化结束时自动运行来自该文件的任何命令,所以只需用这个填充 rc.local 文件即可(我是假设 matchbox-keyboard 正在阻塞,'s why I' m在后台用 & 启动它:

    matchbox-keyboard &
    pianobar
    

    只是你在 /etc/rc.d dir上有 keyboard.sh 文件的事实并不意味着它会被执行,即使它有 +x 权限 . 另一方面,具有exec权限的文件 rc.local 被执行,因为它是从 /etc/rc.d/rc.M 运行的(我想在任何使用BSD样式的init脚本的Linux上都是这样的,例如Slackware) .

相关问题