我有一个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 回答
我不确定Debian是如何组织的,但是如果
rc.local
是/etc/rc.d
下的文件,系统会在系统初始化结束时自动运行来自该文件的任何命令,所以只需用这个填充rc.local
文件即可(我是假设matchbox-keyboard
正在阻塞,'s why I' m在后台用&
启动它:只是你在
/etc/rc.d
dir上有keyboard.sh
文件的事实并不意味着它会被执行,即使它有+x
权限 . 另一方面,具有exec权限的文件rc.local
被执行,因为它是从/etc/rc.d/rc.M
运行的(我想在任何使用BSD样式的init脚本的Linux上都是这样的,例如Slackware) .