auto login and startx without a display manager - lenny

Share your own howto's etc. Not for support questions!
Message
Author
User avatar
MeanDean
Posts: 3953
Joined: 2007-09-01 01:14

auto login and startx without a display manager - lenny

#1 Post by MeanDean »

for auto login

edit /etc/inittab and change

Code: Select all

1:2345:respawn:/sbin/getty 38400 tty1
to make it look like

Code: Select all

#1:2345:respawn:/sbin/getty 38400 tty1
below it add the following new line

Code: Select all

1:2345:respawn:/bin/login -f YOUR_USER_NAME tty1 </dev/tty1 >/dev/tty1 2>&1
be sure to replace YOUR_USER_NAME with the user you want to be automatically logged in




for automatic startx
edit .bash_profile (or other file that gets run when you login) and add

Code: Select all

if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then
    startx
fi


.
Last edited by MeanDean on 2010-10-28 18:44, edited 7 times in total.

User avatar
MeanDean
Posts: 3953
Joined: 2007-09-01 01:14

#2 Post by MeanDean »

I have another untested method in my notes...here goes

install rungetty

edit /etc/inittab
comment out
#1:2345:respawn:/sbin/getty 38400 tty1
and add
1:2345:respawn:/sbin/rungetty tty1 --autologin YOUR_USER_NAME


edit .bash_profile and at the bottom add
if [ -z "$DISPLAY" ] && [ $(tty) = /dev/tty1 ]; then
while true
do
startx --
sleep 10
done
fi

User avatar
klhrevolutionist
Posts: 39
Joined: 2007-06-24 03:36

#3 Post by klhrevolutionist »

I posted the second one long ago. Thanks for the newer one that does not require rungetty.

Post-Install Debian Etch Tips + Tricks
http://forums.debian.net/viewtopic.php?t=16348

lego
Posts: 56
Joined: 2008-01-09 09:43

#4 Post by lego »

I use the procedure explained in the first post, but every time that I ssh to my computer, it autologins and tries to startx, but X is already running, so it gives an error. When I am back to my computer, I have to restart X every time that I have connected to it via ssh.

Does anybody know how to solve it?

frenchn00b
Posts: 47
Joined: 2007-09-01 22:02

#5 Post by frenchn00b »

I heard an user can use : crontab -e
with
@reboot.

Could we think to use it and change the .bash_profile, with a startx inside ?

acemi
Posts: 47
Joined: 2007-11-03 21:39

#6 Post by acemi »

I use the procedure explained in the first post, but every time that I ssh to my computer, it autologins and tries to startx, but X is already running, so it gives an error. When I am back to my computer, I have to restart X every time that I have connected to it via ssh.

Does anybody know how to solve it?
I add the following code in ~/.bashrc, so X starts only for tty1

Code: Select all

if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then
    startx
fi

acemi
Posts: 47
Joined: 2007-11-03 21:39

#7 Post by acemi »

My way is:

In /etc/inittab:

Code: Select all

1:2345:respawn:/sbin/getty -n -l /usr/local/sbin/autologin 38400 tty1
Then create a Python script:

Code: Select all

su -
mkdir -p /usr/local/sbin/
touch /usr/local/sbin/autologin
chmod u+x /usr/local/sbin/autologin
/usr/local/sbin/autologin code:

Code: Select all

#!/usr/bin/python
import os
os.execlp('login', 'login', '-f', 'my_user_name', '0')

and add the following lines in ~/.bashrc

Code: Select all

if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then
   startx
fi

contredire
Posts: 188
Joined: 2009-01-10 23:12
Location: Linköping, sweden

#8 Post by contredire »

display manager = the login window??
I can't get this working. first I tried MeanDean's method. what do you mean with
"comment out "? I added the two lines at the bottom of the file (there were other lines
including "getty" at the bottom) then I edited the .bashrc as you wrote.
I still get the login window when I boot though.
so I decided to try out acemi's method. this did not work either. any ideas? (dont know how to program in python, so perhaps I did something wrong?)


#NOTE! this is not my first message. I have ~200 posts, but decided to change user name. my old one is called HenrikVSE
Debian Lenny

User avatar
Bro.Tiag
Posts: 1937
Joined: 2007-06-02 19:14

#9 Post by Bro.Tiag »

contredire wrote:display manager = the login window??
I can't get this working. first I tried MeanDean's method. what do you mean with
"comment out "? I added the two lines at the bottom of the file (there were other lines
including "getty" at the bottom) then I edited the .bashrc as you wrote.
I still get the login window when I boot though.
so I decided to try out acemi's method. this did not work either. any ideas? (dont know how to program in python, so perhaps I did something wrong?)


#NOTE! this is not my first message. I have ~200 posts, but decided to change user name. my old one is called HenrikVSE
Aye, the x display manager is the login screen. To "comment out " something means to add a "#" or "!" in front of what is not to be read by bash, Just to be sure, if you can not get it to work, post both your /etc/inittab & ~/.bash_profile

Cheers
ps - are still other ways to accomplish what you want, but let's try & sort out Dean's way.

contredire
Posts: 188
Joined: 2009-01-10 23:12
Location: Linköping, sweden

#10 Post by contredire »

Bro.Tiag wrote:post both your /etc/inittab & ~/.bash_profile

Cheers
ps - are still other ways to accomplish what you want, but let's try & sort out Dean's way.

Code: Select all

Henke:~# more /etc/inittab
# /etc/inittab: init(8) configuration.
# $Id: inittab,v 1.91 2002/01/25 13:35:21 miquels Exp $

# The default runlevel.
id:2:initdefault:

# Boot-time system configuration/initialization script.
# This is run first except when booting in emergency (-b) mode.
si::sysinit:/etc/init.d/rcS

# What to do in single-user mode.
~~:S:wait:/sbin/sulogin

# /etc/init.d executes the S and K scripts upon change
# of runlevel.
#
# Runlevel 0 is halt.
# Runlevel 1 is single-user.
# Runlevels 2-5 are multi-user.
# Runlevel 6 is reboot.

l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
# Normally not reached, but fallthrough in case of emergency.
z6:6:respawn:/sbin/sulogin

# What to do when CTRL-ALT-DEL is pressed.
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

# Action on special keypress (ALT-UpArrow).
#kb::kbrequest:/bin/echo "Keyboard Request--edit /etc/inittab to let this work."

# What to do when the power fails/returns.
pf::powerwait:/etc/init.d/powerfail start
pn::powerfailnow:/etc/init.d/powerfail now
po::powerokwait:/etc/init.d/powerfail stop

# /sbin/getty invocations for the runlevels.
#
# The "id" field MUST be the same as the last
# characters of the device (after "tty").
#
# Format:
#  <id>:<runlevels>:<action>:<process>
#
# Note that on most Debian systems tty7 is used by the X Window System,
# so if you want to add more getty's go ahead but skip tty7 if you run X.
#
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6

# Example how to put a getty on a serial line (for a terminal)
#
#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
#T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100


###
#1:2345:respawn:/sbin/getty -n -l /usr/local/sbin/autologin 38400 tty1

#1:2345:respawn:/sbin/getty 38400 tty1 
1:2345:respawn:/bin/login -f henke tty1 </dev/tty1 >/dev/tty1 2>&1
###

# Example how to put a getty on a modem line.
#
#T3:23:respawn:/sbin/mgetty -x0 -s 57600 ttyS3


Henke:~# more /home/henke/.bash_profile 
# ~/.bash_profile: executed by bash(1) for login shells.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/login.defs
#umask 022

# include .bashrc if it exists
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# set PATH so it includes user's private bin if it exists
if [ -d ~/bin ] ; then
    PATH=~/bin:"${PATH}"
fi

startx
Debian Lenny

User avatar
izar
Posts: 1715
Joined: 2007-01-01 18:34
Location: Euskal Herria

#11 Post by izar »

The first line in this chunk of code from inittab is the one that you have to comment out:
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6
Now everything should work as you have already entered later on in the file a new line with the code MeanDean advises using
1:2345:respawn:/bin/login -f henke tty1 </dev/tty1 >/dev/tty1 2>&1
For the sake of making the file more readable you could try moving this last line so that it is in the same group as the other ttyx entries.
I've tried this on at least three computers running Lenny and it works fine. :D

contredire
Posts: 188
Joined: 2009-01-10 23:12
Location: Linköping, sweden

#12 Post by contredire »

yeah, that was a stupid error. thanks :)
but it still get the log in window when I reboot.
Debian Lenny

User avatar
Bro.Tiag
Posts: 1937
Joined: 2007-06-02 19:14

#13 Post by Bro.Tiag »

contredire wrote:yeah, that was a stupid error. thanks :)
but it still get the log in window when I reboot.
You may have to remove your x display manager (not sure since I never install one).

Cheers
Last edited by Bro.Tiag on 2009-01-14 14:48, edited 1 time in total.

contredire
Posts: 188
Joined: 2009-01-10 23:12
Location: Linköping, sweden

#14 Post by contredire »

what is the x window manager? not the same thing as the X windows system/Xserver/X???
Debian Lenny

User avatar
Bro.Tiag
Posts: 1937
Joined: 2007-06-02 19:14

#15 Post by Bro.Tiag »

contredire wrote:what is the x window manager? not the same thing as the X windows system/Xserver/X???
My bad, I ment to type "You may have to remove your x display manager (not sure since I never install one)'. Your x display manager is what you login via, for example, GDM, KDM, XDM and such.

Cheers

contredire
Posts: 188
Joined: 2009-01-10 23:12
Location: Linköping, sweden

#16 Post by contredire »

okay, but I cant do that right now, since I cant even start gnome any more! see my post here:
http://forums.debian.net/viewtopic.php?p=201460#201460
Debian Lenny

User avatar
Bro.Tiag
Posts: 1937
Joined: 2007-06-02 19:14

#17 Post by Bro.Tiag »

contredire wrote:okay, but I cant do that right now, since I cant even start gnome any more! see my post here:
http://forums.debian.net/viewtopic.php?p=201460#201460
OK. I did read your other thread, I'm no expert, but that looks like a hardware issue to me. May be a ram issue, since the LiveCD craped out as well.

Cheers

contredire
Posts: 188
Joined: 2009-01-10 23:12
Location: Linköping, sweden

#18 Post by contredire »

I made a backup of my files, so now I dare starting to fix the problem.

First I tried
sudo aptitude purge gnome-desktop-environment
now, I get to the gnome desktop after boot instead of the log in windows, but the design is rather changed but my settings are still there.. and when entering a ctrl-alt-F1 prompt, the X server is terminated, and started again when I log in on the ctrl-alt-F1-prompt

what about that? how to get rid of all gnome, KDE and fluxbox files, configs etc?
Debian Lenny

User avatar
Bro.Tiag
Posts: 1937
Joined: 2007-06-02 19:14

#19 Post by Bro.Tiag »

contredire wrote:I made a backup of my files, so now I dare starting to fix the problem.

First I tried
sudo aptitude purge gnome-desktop-environment
now, I get to the gnome desktop after boot instead of the log in windows, but the design is rather changed but my settings are still there.. and when entering a ctrl-alt-F1 prompt, the X server is terminated, and started again when I log in on the ctrl-alt-F1-prompt

what about that? how to get rid of all gnome, KDE and fluxbox files, configs etc?
You should have only removed GDM, gnome desktop manager not the whole gnome desktop.

Cheers

contredire
Posts: 188
Joined: 2009-01-10 23:12
Location: Linköping, sweden

#20 Post by contredire »

I know that. but I want to purge all desktop environment and reinstall it to see if it stops freezing..

What is the name of the packages I need to remove?
Debian Lenny

Post Reply