auto login and startx without a display manager - lenny

Share your own howto's etc. Not for support questions!

auto login and startx without a display manager - lenny

Postby MeanDean » 2008-07-31 14:33

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

Postby MeanDean » 2008-07-31 14:39

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
MeanDean
 
Posts: 3953
Joined: 2007-09-01 01:14

Postby klhrevolutionist » 2008-08-08 01:11

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

Post-Install Debian Etch Tips + Tricks
viewtopic.php?t=16348
User avatar
klhrevolutionist
 
Posts: 39
Joined: 2007-06-24 03:36

Postby lego » 2008-12-12 16:50

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?
lego
 
Posts: 56
Joined: 2008-01-09 09:43

Postby frenchn00b » 2008-12-29 19:44

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 ?
frenchn00b
 
Posts: 47
Joined: 2007-09-01 22:02

Postby acemi » 2008-12-29 21:48

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

Postby acemi » 2008-12-29 21:58

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
acemi
 
Posts: 47
Joined: 2007-11-03 21:39

Postby contredire » 2009-01-11 00:21

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
contredire
 
Posts: 188
Joined: 2009-01-10 23:12
Location: Linköping, sweden

Postby Bro.Tiag » 2009-01-11 01:41

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.
User avatar
Bro.Tiag
 
Posts: 1937
Joined: 2007-06-02 19:14

Postby contredire » 2009-01-11 09:48

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
contredire
 
Posts: 188
Joined: 2009-01-10 23:12
Location: Linköping, sweden

Postby izar » 2009-01-11 23:03

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
User avatar
izar
 
Posts: 1715
Joined: 2007-01-01 18:34
Location: Euskal Herria

Postby contredire » 2009-01-12 03:13

yeah, that was a stupid error. thanks :)
but it still get the log in window when I reboot.
Debian Lenny
contredire
 
Posts: 188
Joined: 2009-01-10 23:12
Location: Linköping, sweden

Postby Bro.Tiag » 2009-01-12 14:24

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.
User avatar
Bro.Tiag
 
Posts: 1937
Joined: 2007-06-02 19:14

Postby contredire » 2009-01-14 11:47

what is the x window manager? not the same thing as the X windows system/Xserver/X???
Debian Lenny
contredire
 
Posts: 188
Joined: 2009-01-10 23:12
Location: Linköping, sweden

Postby Bro.Tiag » 2009-01-14 14:52

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
User avatar
Bro.Tiag
 
Posts: 1937
Joined: 2007-06-02 19:14

Next

Return to Docs, Howtos, Tips & Tricks

Who is online

Users browsing this forum: No registered users and 2 guests

fashionable