我试图找到/etc/inittab
自动登录的位置。但在 Ubuntu 11.04 中,该文件似乎丢失了。这是您在 Ubuntu 中执行的正确方法吗?
# Auto Login for Ubuntu how?
# 1. apt-get install mingetty
# 2. vim /etc/init/tty1.conf
# tty1 - getty
#
# This service maintains a getty on tty1 from the point the system is
# started until it is shut down again.
start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]
respawn
#exec /sbin/getty -8 38400 tty1
exec /sbin/mingetty --autologin <PUTYOUR_USERNAME_HERE> tty1
^
|____ edited only this line, seems to be working
答案1
在 Ubuntu 中没有/etc/inittab
,因为 Ubuntu 使用 upstart 来定义启动服务和运行级别。而且这并不是从 Ubuntu 的上一个版本开始的,而是很久以前的事情了。
无论如何,你仍然可以使用inittab
,只需创建一个。我报告一段来自/usr/share/doc/upstart/README.Debian.gz
:
How do I change the default runlevel? ------------------------------------- If you have an /etc/inittab file, edit it. Locate the following line: id:N:initdefault: Where N is the default runlevel, change this to match. Most people won't have that file, you can edit /etc/init/rc-sysinit.conf and change the following line: env DEFAULT_RUNLEVEL=2
但请记住,Ubuntu 不像其他 Linux 发行版/Unix 操作系统那样使用标准运行级别含义。旧标准是:
- 0-关闭
- 1-单用户模式
- 3-多用户文本模式
- 5-多用户图形模式
- 6 - 重启
但 Ubuntu 使用:
- 0-关闭
- 1-单用户模式
- 2-多用户图形模式
- 6 - 重启
最后,如果您想要一个具有自动登录功能的虚拟终端,那么修改行exec
似乎tty1.conf
是正确的方法,尽管我不知道 mingetty,所以不能说您是否正确使用了它。
答案2
在我的 xubuntu 11.10 系统上,默认运行级别是在 /etc/init/rc-sysinit.conf 中设置的 - 有问题的行显示为env DEFAULT_RUNLEVEL=2
。因此,我创建了一个 /etc/init/rc-sysinit.override,并将其放入其中一条线内容是env DEFAULT_RUNLEVEL=5
,所以现在我的默认运行级别是 5。
然后我创建了一个 /etc/init/lightdm.override(或者 gdm.override,或者 kdm.override,无论你使用的是什么显示管理器),并复制了所有的开始和停止来自 lightdm.conf 的项目 - 并且只是改变了运行级别位,所以我的显示管理器在运行级别 5 启动,并在其他运行级别停止。
答案3
我不清楚您发布的“this”是什么以及在哪里。但无论如何,Upstart 仍会解析 /etc/inittab(如果存在),我建议将与运行级别无关的内容放入其中,就像您之前所做的那样。