Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Dec 2007 21:07:15 +0100
From:      Miroslav Lachman <000.fbsd@quip.cz>
To:        Anton - Valqk <lists@lozenetz.org>
Cc:        stable@freebsd.org
Subject:   Re: jlogin.sh - a small nice jails helper!
Message-ID:  <47682873.8050601@quip.cz>
In-Reply-To: <4767E08C.2090803@lozenetz.org>
References:  <4767E08C.2090803@lozenetz.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Anton - Valqk wrote:

> Because I'm lazy and love the scripts, I wrote a nice small script that
> matches a jailname and do a jexec JAILPID SHELL
> so I can login fast to my jails.
> According to me, there should be such tool!
> Hopes something like this goes to STABLE!
> 
> here it is....
> 
> #!/bin/sh
> loginSHELL="/bin/tcsh"
> [ -z "$1" ] && echo "No jail specified." && exit 1;
> jName=$1;
> jID=`jls | awk '{print $1,$3}'|grep $jName|awk '{print $1}'`
> jRealName=`jls | awk '{print $1,$3}'|grep $jName|awk '{print $2}'`
> [ -z "$jID" ] && echo "No such jail name $jName!" && exit 1;
> echo "Logging in to $jRealName"
> jexec $jID $loginSHELL

It is nice idea, but I think you should have a better scripting style ;)

#!/bin/sh

login_shell="/bin/tcsh"

if [ -z "$1" ]; then
         echo "No jail specified."
         exit 1
fi

jail_name=$1
jail_id=`jls | awk '$3 ~ /^'${jail_name}'\./ { print $1 }'`
jail_hostname=`jls | awk '$3 ~ /^'${jail_name}'\./ { print $3 }'`

if [ -z "$jail_id" ]; then
         echo "No such jail name ${jail_name}!"
         exit 1
fi

echo "Logging in to ${jail_hostname}"
jexec $jail_id $login_shell



And still there are some imperfections.
1) script assume first part of a hostname as name, but in the rc.conf 
jail name can be different
2) script does not expect multiple occurrence of the same first part of 
a hostname
	example: johndoe.example.org and johndoe.comethingelse.org
3) script does not expect multiple occurrence of exactly matching 
hostname (coused by jail zombies)

Miroslav Lachman



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47682873.8050601>