每次我启动或重新启动 Ubuntu 16 时,Xampp 都不会启动,我必须通过 手动启动sudo /opt/lampp/lampp start
。制作类似sudo nano /etc/init.d/lampp
不起作用的脚本命令update-rc.d lampp defaults
会给我错误:
insserv: warning: script 'K01lampp' missing LSB tags and overrides
insserv: warning: script 'lampp' missing LSB tags and overrides
insserv: fopen(.depend.stop): Permission denied
脚本文件包含以下几行:
[#!/bin/bash
/opt/lampp/lampp start]
有什么解决办法吗?
答案1
我的解决方案相当简单。
只需打开终端并写入
sudo gedit /etc/rc.local
然后在最后一行之前添加这两行
cd /opt/lampp/
sudo ./lampp start
就这样。只需保存并重新启动计算机即可。请注意,这些行应该位于最后一行上方exit 0
我希望它能帮助别人。
答案2
- 首先将该特定脚本移动到 /etc/init.d/ 目录
例如
/bin/sh #!/bin/sh #/etc/init.d/lampp # # 有些东西总是运行 触摸/var/lock/lampp # 根据系统要求执行特定功能 案例“$1” 开始) echo“启动脚本 lampp” echo“这里可以做更多” ;; 停止) echo“停止脚本lampp” echo“这里可以做更多” ;; *) echo "用法:/etc/init.d/lampp {start|stop}" 出口 1 ;; 埃萨克 出口 0
将文件保存到正确的位置后,通过运行“chmod 755 /etc/init.d/lampp”确保它可以执行。
然后,您需要添加适当的符号链接,以便在系统关闭或启动时执行该脚本。
*就是这样
root@root:~# 更新 rc.d lampp 默认值
2.使用 GUI 进行操作
答案3
谢谢你的回答,这对我很有帮助,Akhil Varma。
根据 Akhil Varma 先前的介绍,我想分享一个修改后的 /etc/init.d/lampp 版本,以完全支持service
或systemctl
命令。请确保使用的命令和创建的文件是在 root 中完成的。
#! /bin/sh
# /etc/init.d/lampp
#
# Some things that run always touch /var/lock/lampp
# Carry out specific functions when asked to by the system case "$1" in start)
echo "Starting script lampp "
/opt/lampp/lampp start
/opt/lampp/lampp startftp
;; status)
echo "Status of script lampp"
/opt/lampp/lampp status
if test -f /opt/lampp/logs/httpd.pid
then
exit 0
else
exit 3
fi
;; stop)
echo "Stopping script lampp"
/opt/lampp/lampp stop
;; *)
echo "Usage: /etc/init.d/lampp {start|stop|status}"
exit 1
;; esac
exit 0
假设 LAMPP/XAMPP 的安装目录为/opt/lampp
。如果您的 LAMPP/XAMPP 安装目录不同,请进行相应更改。
确保/etc/init.d/lampp
可以通过以下方式执行:
chmod 755 /etc/init.d/lampp
要启用 LAMPP/XAMPP 服务的自动启动:
update-rc.d lampp defaults
现在您可以按如下方式使用以下service
命令,它将正确报告:
service lampp status
service --status-all
或者
systemctl status lampp
要手动启动/停止灯:
service lampp start
service lampp stop
或者
systemctl start lampp
systemctl stop lampp
希望能帮助到你。