需要在启动或登录时以root身份运行.sh
还是新的linux和运行ubuntu 12.10
我有一个无线棒(ae2500)已知已使用ndiswrapper部分解决的问题。 但是,要使用它,我必须每次重新启动时运行相同的脚本,有效地卸载并重新安装驱动程序。 我每次都运行.sh文件以使其变得简单,但我必须每次都进行sudo登录。
我正在寻找三种解决方案,虽然并非所有这些都是解决这一特定问题的必要条件,但我仍然希望将它们全部用于学习目的。
- 在启动时运行脚本或file.sh(以及其他程序)
- 使用root权限自动运行脚本或file.sh
- 使安装永久化,以便每次都不必完成整个过程。
任何可以帮助我解决这个问题的其他信息(包括简化我的命令)或一般知识都将非常感激。 以下是该文件的内容。 我几乎就是按照我原来的方式做到的。
cd ~/ndiswrapper-1.58rc1 sudo modprobe -rf ndiswrapper sudo rm /etc/modprobe.d/ndiswrapper.conf sudo rm -r /etc/ndiswrapper/* sudo depmod -a sudo make uninstall sudo make sudo make install sudo ndiswrapper -i bcmwlhigh5.inf ndiswrapper -l sudo modprobe ndiswrapper
要在启动时获取文件,您基本上想将.desktop放在/etc/xdg/autostart/
以下是如何从命令行为您的文件设置.desktop:
sudo mv file.sh /usr/bin
这会将shell文件路径移动到/usr/bin
。
然后去
/usr/share/applications
Nextyou想要创建一个.desktop文件,以便您输入
sudo -H gedit file.desktop &
&表示您仍然可以使用终端但保持文件打开。 如果你有像我一样的金鱼记忆,那就很方便。
在gedit中写道:
[Desktop Entry] Name=myfileName Exec=/usr/bin/file.sh Type=Application Terminal=false
如果你愿意,你现在可以关闭它。 你可以通过添加线icon=path/to/icon
来添加icon=path/to/icon
如果这看起来很花哨的话。
现在要让这个文件在启动时运行,你需要保存它的副本
/etc/xdg/autostart/
如果脚本(myfile.sh)已经工作,那应该可以工作。
您可以尝试将file.sh放在/etc/init.d/中并使用update-rc.d
update-rc.d file.sh defaults
要在登录时运行它(我在12.04,所以这可能会略有不同),只需单击右上角的菜单(使用关闭选项),然后单击启动应用程序…
然后单击Add
,为其命名和描述,并浏览到bash脚本的位置。 注销,然后重新开启它应该工作。
如果您这样做,我建议您在脚本中将sudo
更改为gksudo
,以便它在一个漂亮的GUI中请求sudo权限,而不是只是坐在终端上要求它。
我对其他答案有另一种建议:使用crontab
以root身份运行crontab并添加这样的工作
@reboot / path / to / your / script
http://en.wikipedia.org/wiki/Cron#Predefined_scheduling_definitions
这就是我要解决这个问题的方法。 我不准备说它比其他答案更好或更差,并欢迎评论。
[这是喜鹊的答案和我自己的经验的结合。]
要使.sh脚本(或任何其他脚本)在启动时运行,您需要;
- 将脚本放在易于访问的位置(例如桌面)。
- 如果右键单击脚本并转到属性,请确保在“权限”选项卡中显示“执行”; ‘任何人’。
-
打开leafpad或任何其他文本编辑器并键入:
[Desktop Entry] Name=yourScriptName Exec=/usr/bin/yourScript.sh Type=Application Terminal=false
- 按Ctrl + S并按名称填写“scriptName.desktop”,并将其保存在桌面上。
- 使用Ctrl + Alt + T打开终端。
-
类型:
cd ~/Desktop
〜意味着回家,现在应该说:
userName@computerName:~/Desktop$
-
然后:
sudo mv yourScript.sh /usr/bin
(通常建议将它放在/usr/local/bin
以便可以直接使用命令yourScript.sh而不是“/ path / to / script”执行它。
sudo cp scriptName.desktop /usr/share/applications sudo mv scritptName.desktop /etc/xdg/autostart
而已!
我在lubuntu 17.04上,它对我很有用,
我希望这是一个有用而明确的解释:)。
韦塞尔
- ubuntu 14.04蓝牙BCM43142没有发现(tx超时)
- 获取Broadcom Wifi卡上class
- 没有wifi与Broadcom 43142 – Ubuntu 16.04
- 升级到17.10,找不到wifi和蓝牙’适配器’
- 我正在运行Ubuntu 14.04而我的vaio duo 13中的Broadcom BCM43241卡甚至没有出现
- 如何让Acer Npilfy 802.11(BCM43225)无线网卡正常工作?
- 如何在Broadcom BCM4360上的Ubuntu 14.04中启用Wifi N-only?
- Broadcom的司机很难受
- 如何使用Broadcom STA驱动程序连接到自己的WiFi?