This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
linux:arch_guest_account [2012/01/25 16:10] walter created |
linux:arch_guest_account [2021/05/02 21:36] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Guest Account Details ====== | + | |
+ | ====== Guest Account ====== | ||
The ACM workstations have guest accounts whose home directories are wiped at logoff. | The ACM workstations have guest accounts whose home directories are wiped at logoff. | ||
- | Username: acmguest | + | //Username:// acmguest |
- | Password: acmguest | + | |
+ | |||
+ | //Password:// acmguest | ||
====== Guest Account Setup ====== | ====== Guest Account Setup ====== | ||
- | The guest account functionality relies on a package from the AUR (Archlinux Users Repository) called guestd. The actual rc script has been monified to obtain the desired functionality. The clean guest directory is located in /opt/acmguest-skel and the live home directory is /opt/acmguest. The guest directory is **NOT** on NFS. The guest account has to have access to run the reset script as part of the loggout process. | ||
- | This is the guestd rc script, a restart operation deletes the current live directory and replaces it with the skel one. | + | <WRAP center round info 60%> |
- | <file|/etc/rc.d/guestd> | + | Setup the [[linux:acm_custom_repo|ACM custom repo]] on the workstation first |
- | #!/bin/bash | + | </WRAP> |
+ | |||
+ | <code> | ||
+ | pacman -Sy acmguestd | ||
+ | </code> | ||
+ | Follow post-install instructions | ||
- | . /etc/rc.conf | + | The guest account functionality relies on a package from the [[linux:acm_custom_repo|ACM custom package repo]] called acmguestd. The clean guest directory is located in /opt/acmguest-skel and the live home directory is /opt/acmguest. The guest directory is **NOT** on NFS. The guest account has to have access to run the guestd rc script as part of the loggout process. The loggout functionality is currently obtained with LXDM using the file /etc/lxdm/LoginReady. |
- | . /etc/rc.d/functions | + | |
- | OLD_IFS="$IFS" | ||
- | IFS=$'\n' | ||
- | GUEST_USER="acmguest" | ||
- | GUEST_GROUP="users" | ||
- | GUEST_HOME="/opt/acmguest" | ||
- | GUEST_SKEL="/opt/acmguest-skel" | ||
- | case "$1" in | ||
- | start) | ||
- | stat_busy "Fixing Guest Directory" | ||
- | cp -R $GUEST_SKEL -T $GUEST_HOME | ||
- | chown -R $GUEST_USER:$GUEST_GROUP $GUEST_HOME $GUEST_SKEL | ||
- | chmod -R 770 $GUEST_HOME | ||
- | chmod -R 550 $GUEST_SKEL | ||
- | stat_done | ||
- | add_daemon guestd | ||
- | ;; | ||
- | stop) | ||
- | stat_busy "Removing Guest Directory" | ||
- | if [ -d "$GUEST_HOME" ]; then | ||
- | rm -rf $GUEST_HOME | ||
- | stat_done | ||
- | rm_daemon guestd | ||
- | else | ||
- | echo "Failed to remove directory; directory does not exist." | ||
- | stat_fail | ||
- | rm_daemon guestd | ||
- | fi | ||
- | ;; | ||
- | restart) | ||
- | $0 stop | ||
- | sleep 1 | ||
- | $0 start | ||
- | ;; | ||
- | *) | ||
- | echo "usage: $0 {start|stop|restart}" | ||
- | esac | ||
- | </file> |