This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
linux:arch_guest_account [2014/09/23 18:48] walter [Guest Account Setup] |
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 ====== | ||
- | FIXME **The guest account now works using a custom package in a custom repo hosted on mozart, page needs updating** | ||
<WRAP center round info 60%> | <WRAP center round info 60%> | ||
- | Setup the [[acm_custom_repo|ACM custom repo]] on the workstation first | + | Setup the [[linux:acm_custom_repo|ACM custom repo]] on the workstation first |
</WRAP> | </WRAP> | ||
- | The guest account functionality relies on a package from the [[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/PostLogout. | + | <code> |
- | + | pacman -Sy acmguestd | |
- | This is the guestd rc script, a restart operation deletes the current live directory and replaces it with the skel one. | + | </code> |
- | <file|/etc/rc.d/guestd> | + | Follow post-install instructions |
- | #!/bin/bash | + | |
- | + | ||
- | . /etc/rc.conf | + | |
- | . /etc/rc.d/functions | + | |
- | OLD_IFS="$IFS" | + | 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. |
- | 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 | + | |
- | ;; | + | |
- | $GUEST_USER) | + | |
- | $0 restart | + | |
- | ;; | + | |
- | *) | + | |
- | echo "usage: $0 {start|stop|restart}" | + | |
- | esac | + | |
- | </file> | + | |
- | <file| /etc/lxdm/PostLogout> | ||
- | #!/bin/sh | ||
- | # | ||
- | sudo /etc/rc.d/guestd $USER | ||
- | #^^^FIRST | ||
- | </file> |