问题描述
我不能在Ubuntu 12.10中使用chkconfig工具
这是将服务配置为自动启动的非常有用的工具。为什么它不再可用?
最佳解决方案
sysv-rc-conf是Ubuntu的替代选项。
用法几乎相同。
安装:
sudo apt-get install sysv-rc-conf
配置apache2以在启动时启动
sysv-rc-conf apache2 on
等效的chkconfig命令
chkconfig apache2 enable
要检查运行级别,apache2配置为启动
sysv-rc-conf --list apache2
等效的chkconfig命令
chkconfig --list apache2
次佳解决方案
相当于chkconfig的Upstart是update-rc.d。有关如何在L. D. James的答案中链接的UbuntuBootupHowto中使用它的一些信息。
不可否认,这个工具不是很友好;它倾向于揭露SysV init的丑陋腹部,其中包括血腥的运行级别和优先级的blackmagic。我几乎从未设法让它在第一时间做我想做的事。 chkconfig做了很棒的工作,抽象了所有这些数字,提供了一个简单,可用的界面,被所有人所喜爱。尽管如此,猪总是口红。
这是一个勇敢的新世界,我建议你花一些时间来学习Upstart如何工作,这样你就可以使用它来连接新的工作。对于仍然为您提供SysV init脚本的现有包/应用程序,update-rc.d应该允许您执行chkconfig所做的所有操作,但一个用例除外。 update-rc.d没有提供干净的方法来查看给定服务的当前状态,即没有等效的chkconfig --list
。对于这个特例,我建议使用ls -l /etc/rc*.d/*${service_name}
。
HTH
更新:2013年6月12日https://askubuntu.com/a/161893/111294的答案指向一个更可口的替代品 – sysv-rc-conf。
更新:2013年7月28日嗯…看来OP已经在这里回答(https://askubuntu.com/a/277732/111294)建议sysv-rc-conf。看不出我错过了什么,现在已经回答了那个答案。
第三种解决方案
chkconfig是redhat-ism。在Ubuntu中,我们使用upstart而不是redhat使用的sysvinit。