Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Ubuntu-Forum & Kubuntu-Forum | www.Ubuntu-Forum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

  • »gnatbite« ist männlich
  • »gnatbite« ist der Autor dieses Themas

Beiträge: 14

Registrierungsdatum: 03.06.2006

  • Nachricht senden

1

05.06.2006, 18:13

Skript mit Passwortabfrage beim Starten ausführen?

Hi Leute, hätte da mal ne Frage.

Ich habe mir ein kleines Bash-Script geschrieben, dass meine Truecrypt-Partitionen mountet. Beim Ausführen des Skriptes verlangt Truecrypt die Eingabe eines Passwortes.

Jetzt hätte ich es gerne so, dass beim Starten vom Ubuntu das Skript in der Konsole ausgeführt und die Passwortabfrage angezeigt wird. Ob im XServer oder vor dem Start des XServers ist mir eigentlich egal.

Wie mache ich soetwas?

Beiträge: 827

Registrierungsdatum: 13.12.2005

  • Nachricht senden

2

05.06.2006, 19:41

Nja, welche Skripte du zu startskripten deklarierst, ist dir überlassen. Wenn du eine graphische Abfrage haben möchtest, empfiehlt sich z.b kdialog.

  • »gnatbite« ist männlich
  • »gnatbite« ist der Autor dieses Themas

Beiträge: 14

Registrierungsdatum: 03.06.2006

  • Nachricht senden

3

05.06.2006, 21:07

Zitat

Nja, welche Skripte du zu startskripten deklarierst, ist dir überlassen.


Das ist schon klar aber wie mache ich es, dass das Skript mit der Passwortabfrage in einer Konsole erscheint. Wenn ich das Skript einfach in "Startprogramme" packe, wird es ja im Hintergrund ausgeführt und ich bekomme somit die Passwortabfrage gar nicht zu Gesicht!?

Burks

User

  • »Burks« ist männlich

Beiträge: 186

Registrierungsdatum: 08.07.2005

Derivat: Ubuntu

Architektur: 64-Bit PC

Desktop: GNOME 3.0

Andere Betriebssysteme: Windows 7

  • Nachricht senden

4

25.02.2007, 19:24

RE: Skript mit Passwortabfrage beim Starten ausführen?

Kannst du das script nicht mal hier posten? Sowas brauchte ich auch....

Beiträge: 3

Registrierungsdatum: 27.06.2007

  • Nachricht senden

5

27.06.2007, 10:58

Also ich habe in /etc/init.d/ das script truecrypt liegen erstellt:

Zitat

#! /bin/sh
### BEGIN INIT INFO
# Provides: skeleton
# Required-Start: $local_fs $remote_fs
# Required-Stop: $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: S 0 1 6
# Short-Description: Example initscript
# Description: This file should be used to construct scripts to be
# placed in /etc/init.d.
### END INIT INFO

# Author: Foo Bar <foobar@baz.org>
#
# Please remove the "Author" lines above and replace them
# with your own name if you copy and modify this script.

# Do NOT "set -e"

# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/usr/sbin:/usr/bin:/sbin:/bin
DESC="Description of the service"
NAME=truecrypt
DAEMON=/usr/bin/$NAME
DAEMON_ARGS="-M rw,utf8,uid=thomas,umask=0007 /dev/sda5 /data/"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME

# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0

# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME

# Load the VERBOSE setting and other rcS variables
[ -f /etc/default/rcS ] && . /etc/default/rcS

# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions

#
# Function that starts the daemon/service
#
do_start()
{
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
|| return 1
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \
$DAEMON_ARGS \
|| return 2
# Add code here, if necessary, that waits for the process to be ready
# to handle requests from services started subsequently which depend
# on this one. As a last resort, sleep for some time.
}

#
# Function that stops the daemon/service
#
do_stop()
{
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
# Wait for children to finish too if this is a daemon that forks
# and if the daemon is only ever run from this initscript.
# If the above conditions are not satisfied then add some other code
# that waits for the process to drop all resources that could be
# needed by services started subsequently. A last resort is to
# sleep for some time.
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
[ "$?" = 2 ] && return 2
# Many daemons don't delete their pidfiles when they exit.
rm -f $PIDFILE
return "$RETVAL"
}

#
# Function that sends a SIGHUP to the daemon/service
#
do_reload() {
#
# If the daemon can reload its configuration without
# restarting (for example, when it is sent a SIGHUP),
# then implement that here.
#
start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
return 0
}

case "$1" in
start)
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
stop)
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
#reload|force-reload)
#
# If do_reload() is not implemented then leave this commented out
# and leave 'force-reload' as an alias for 'restart'.
#
#log_daemon_msg "Reloading $DESC" "$NAME"
#do_reload
#log_end_msg $?
#;;
restart|force-reload)
#
# If the "reload" option is implemented then remove the
# 'force-reload' alias
#
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
*)
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3
;;
esac

:


Ihr müßt nur die Zeile 'DAEMON_ARGS="-M rw,utf8,uid=thomas,umask=0007 /dev/sda5 /data/"' anpassen, und dann ein Symlink in /etc/rcS.d/ erstellen, damit das Script beim starten ausgeführt wird.

/etc/rcS.d/S34truecrypt -> /etc/init.d/truecrypt

Viel Erfolg
thomas

ironpancake

unregistriert

6

11.07.2007, 02:46

Ich würde Dir für die Interaktion mit dem Benutzer raten, das Paket ssft.sh zu installieren. Das hätte den Vorteil, dass das sowohl auf der Konsole als auch unter X funktioniert.
Mehr dazu: http://ubuntumoments.blogspot.com/2007/07/ssftsh.html