<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.sternwarte.uni-erlangen.de/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Lorenz</id>
	<title>Remeis-Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.sternwarte.uni-erlangen.de/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Lorenz"/>
	<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php/Special:Contributions/Lorenz"/>
	<updated>2026-04-11T22:54:33Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.7</generator>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Admin&amp;diff=4005</id>
		<title>Admin</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Admin&amp;diff=4005"/>
		<updated>2026-02-03T20:55:59Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===== Remeis Admin-Page =====&lt;br /&gt;
&lt;br /&gt;
This page is only internally visible to the Admins.&lt;br /&gt;
&lt;br /&gt;
Things which need to be documented:&lt;br /&gt;
* Ansible&lt;br /&gt;
* Updates (using unattended-upgrades)&lt;br /&gt;
* Puppet&lt;br /&gt;
* Storage volumes (raids, filesystems, oddities, etc.)&lt;br /&gt;
&lt;br /&gt;
==== Lab Course ====&lt;br /&gt;
&lt;br /&gt;
* Before the lab course: &lt;br /&gt;
** check the PCs in the Meridian building:&lt;br /&gt;
*** they should all be functional, broken ones should be replaced&lt;br /&gt;
*** in total we should have about 10 computers available for the students&lt;br /&gt;
** [[setup prakti|Setup the prakti accounts]]&lt;br /&gt;
* [[Computer_Introduction|Introduction to Computers/Linux for Lab Students ]]&lt;br /&gt;
&lt;br /&gt;
==== Serendipitous Issues ====&lt;br /&gt;
&lt;br /&gt;
* [[Login Problems|Typical login problems]]&lt;br /&gt;
* [[Unmet Dependencies|''unmet dependencies'' issue in apt-get]]&lt;br /&gt;
* [[Overflow Filesystem|overflow file system]]&lt;br /&gt;
&lt;br /&gt;
==== Add new Users ====&lt;br /&gt;
* Go to the remeis internal homepage -&amp;gt; admin -&amp;gt; LDAP&lt;br /&gt;
* Fill out the necessary fields, including a valid email address. If possible, also fill out the fields for room and telephone number.&lt;br /&gt;
* Log into LDAP ( https://www.sternwarte.uni-erlangen.de/phpldapadmin/), go to import and copy the text of the previous step. '''Important''': if the user is external, &amp;quot;current&amp;quot; in the first line has to be changed to &amp;quot;external&amp;quot;&lt;br /&gt;
* set the password of the user: Use the LDAP query &amp;lt;code&amp;gt;ldappasswd -H ldap://cygnus.internal -x -D &amp;quot;cn=admin,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot; -W -S &amp;quot;uid={USERNAME},ou=current,ou=People,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot;&amp;lt;/code&amp;gt; while obviously adjusting the LDAP dn.&lt;br /&gt;
* log in as ubuntuadmin on libra and create the home directory like that: &amp;lt;code&amp;gt;sudo mkdir /exports/disk1/{USERNAME} &amp;amp;&amp;amp; sudo chown {USERNAME}:remeis /exports/disk1/{USERNAME}&amp;lt;/code&amp;gt;&lt;br /&gt;
* Set the quota (on libra), using a prototype which has normal quota &amp;lt;code&amp;gt;sudo edquota -p [prototype] [username]&amp;lt;/code&amp;gt;  (normal Quota is 8GB softlimit and 12GB hardlimit; it can be manually edited/shown with edquota -u user)&lt;br /&gt;
* Add the default cshrc to /home/username/.cshrc &lt;br /&gt;
* If desired (in most cases), create a folder for the user at ''/userdata/data/username'' and adjust the permissions with &amp;lt;code&amp;gt;sudo chown username:remeis /userdata/data/username&amp;lt;/code&amp;gt;&lt;br /&gt;
* Send Email to admin about the new user&lt;br /&gt;
&lt;br /&gt;
==== Running Software / Updates / Setups ====&lt;br /&gt;
&lt;br /&gt;
In this section a selection of services and their current configuration is described. &lt;br /&gt;
&lt;br /&gt;
* [[CUPS| CUPS]] (Printing Service)&lt;br /&gt;
* [[Virtual Boxes| Virtual Boxes]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=LDAP&amp;diff=3875</id>
		<title>LDAP</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=LDAP&amp;diff=3875"/>
		<updated>2025-09-11T18:17:51Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;br /&gt;
= LDAP =&lt;br /&gt;
The LDAP server at Remeis is running on vela. The service itself is called ''slapd''. A backup LDAP server is running on libra.&lt;br /&gt;
&lt;br /&gt;
Every interaction with the ''slapd'' requires root access.&lt;br /&gt;
&lt;br /&gt;
== Where LDAP is used ==&lt;br /&gt;
LDAP is not only used for the authentication to login into the variety of machines at Remeis. Also a lot of other services/scripts use ldap:&lt;br /&gt;
&lt;br /&gt;
* This wiki&lt;br /&gt;
* The internal webpage&lt;br /&gt;
* [[GitLab]]&lt;br /&gt;
* [[#phpLDAPadmin|phpLDAPadmin]]&lt;br /&gt;
* The &amp;lt;code&amp;gt;who_takes_the_minutes.pl&amp;lt;/code&amp;gt; script of the X-ray group&lt;br /&gt;
* The ''cgnotifier'' for the [[cgroups]]&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Config files ===&lt;br /&gt;
The main LDAP configuration file is &amp;lt;code&amp;gt;/etc/ldap.conf&amp;lt;/code&amp;gt;. Note that this is not the default location for the configuration file. Therefore the defaults for the slapd are changed in &amp;lt;code&amp;gt;/etc/default/slapd&amp;lt;/code&amp;gt;, see the entry &amp;lt;code&amp;gt;SLAPD_CONF&amp;lt;/code&amp;gt;. The &amp;lt;code&amp;gt;/etc/ldap.conf&amp;lt;/code&amp;gt; is also present on all the clients and specifies via IP-Address which LDAP server to contact for authentication. The LDAP requests are then handled on taurus by the ''slapd'' which is configured via &amp;lt;code&amp;gt;/etc/ldap/slapd.conf&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== phpLDAPadmin ===&lt;br /&gt;
phpLDAPadmin is a web interface based on [https://de.wikipedia.org/wiki/PHP PHP] which allows simple modifications to the directory for example to [[:Category:Admin#Add new Users|add new users]] or change group memberships. It is accessible via the [https://www.sternwarte.uni-erlangen.de/intern/phpldapadmin/ internal webpages] and only out of the network at the Remeis observatory.&lt;br /&gt;
&lt;br /&gt;
==== Configuration of phpLADPadmin ====&lt;br /&gt;
The configuration files for phpLDAPadmin are located in &amp;lt;code&amp;gt;/etc/phpldapadmin/&amp;lt;/code&amp;gt; on the webserver, in this case [[cetus]]. The important file is &amp;lt;code&amp;gt;config.php&amp;lt;/code&amp;gt; which holds information about which LDAP servers can be queried, in this case [[taurus]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Starting/Stopping the service ==&lt;br /&gt;
The slapd can be stopped via [https://de.wikipedia.org/wiki/Systemd systemd]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl stop slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
'''Important:''' If you do so no authentication on the whole cluster is possible anymore. You can not open a new shell on any host until you start the service again!&lt;br /&gt;
&lt;br /&gt;
Starting the ''slapd'':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl start slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
You also can have a look at the output produced by the running service via&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl status slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Database ==&lt;br /&gt;
The [https://en.wikipedia.org/wiki/Berkeley_DB Berkeley DB] containing all the active directory information is located at &amp;lt;code&amp;gt;/var/lib/ldap&amp;lt;/code&amp;gt;. Files in this directory must not be touched manually in any way. The only secure way to see the content of the database is by using ''slapcat''. For example&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
slapcat -f /etc/ldap/slapd.conf&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
will show all entries of the database.&lt;br /&gt;
&lt;br /&gt;
== Backup ==&lt;br /&gt;
Each night the database is dumped to &amp;lt;code&amp;gt;/data/system/backup/ldap/&amp;lt;/code&amp;gt; via a cronjob in &amp;lt;code&amp;gt;/etc/cron.d/ldap_backup&amp;lt;/code&amp;gt;. Also a tarball of the ''slapd'' and &amp;lt;code&amp;gt;ldap.conf&amp;lt;/code&amp;gt; is created there. All backups older than 14 days are deleted.&lt;br /&gt;
&lt;br /&gt;
== Migration ==&lt;br /&gt;
&lt;br /&gt;
See also https://serverfault.com/questions/730088/how-to-migrate-ldap-database-schema-configuration-to-other-machine&lt;br /&gt;
&lt;br /&gt;
=== Step 1: Export configuration trees and database ===&lt;br /&gt;
&lt;br /&gt;
'''From old provider (`vela`)'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapcat -n 0 -l ldap_config_vela.ldif&lt;br /&gt;
sudo slapcat -n 1 -l ldap_data_vela.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''From old consumer (`libra`)'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapcat -n 0 -l ldap_config_libra.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 2: Save certificates ===&lt;br /&gt;
&lt;br /&gt;
'''vela:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/ssl/certs/openldap.pem&lt;br /&gt;
/etc/ldap/grus_slapd_cert.pem&lt;br /&gt;
/etc/ldap/grus_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''libra:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/ssl/certs/openldap.pem&lt;br /&gt;
/etc/ldap/phoenix_slapd_cert.pem&lt;br /&gt;
/etc/ldap/phoenix_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 3: Set up new provider ===&lt;br /&gt;
&lt;br /&gt;
'''Install packages'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt install slapd ldap-utils&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Stop slapd and remove existing configuration and data'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl stop slapd&lt;br /&gt;
sudo rm -rf /etc/ldap/slapd.d/*&lt;br /&gt;
sudo rm -rf /var/lib/ldap/*&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Import configuration and data'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapadd -n 0 -F /etc/ldap/slapd.d -l /path/to/ldap_config_vela.ldif&lt;br /&gt;
sudo slapadd -n 1 -l /path/to/ldap_data_vela.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Set ownership of /etc/ldap/slapd.d and /var/lib/ldap to openldap'''&lt;br /&gt;
&lt;br /&gt;
'''Restore certificates'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
lrwxrwxrwx 1 root root     45 Jul 10  2023 /etc/ssl/certs/openldap.pem -&amp;gt; /usr/local/share/ca-certificates/openldap.pem&lt;br /&gt;
-rw-r--r-- 1 root root   1614 Jul 10  2023 /etc/ldap/grus_slapd_cert.pem&lt;br /&gt;
-rw-r----- 1 root openldap 8170 Jul 10  2023 /etc/ldap/grus_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Start slapd'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl start slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Verify'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldapsearch -H ldap://localhost -x -b dc=sternwarte,dc=uni-erlangen,dc=de&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 4: Set up new consumer for replication ===&lt;br /&gt;
&lt;br /&gt;
'''Install packages'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt install slapd ldap-utils&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Stop slapd and remove existing configuration and data'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl stop slapd&lt;br /&gt;
sudo rm -rf /etc/ldap/slapd.d/*&lt;br /&gt;
sudo rm -rf /var/lib/ldap/*&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Import configuration'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapadd -n 0 -F /etc/ldap/slapd.d -l /path/to/ldap_config_libra.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Set ownership of /etc/ldap/slapd.d and /var/lib/ldap to openldap'''&lt;br /&gt;
&lt;br /&gt;
'''Restore certificates''' (guess other r permission on key is wrong currently)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
lrwxrwxrwx 1 root root     45 May 13  2023 /etc/ssl/certs/openldap.pem -&amp;gt; /usr/local/share/ca-certificates/openldap.crt&lt;br /&gt;
-rw-r--r-- 1 root root   1619 Jul 11  2023 /etc/ldap/phoenix_slapd_cert.pem&lt;br /&gt;
-rw-r--r-- 1 root root   8180 Jul 11  2023 /etc/ldap/phoenix_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Start slapd'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl start slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Check replication'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
journalctl -fu slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Verify'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldapsearch -H ldap://localhost -x -b dc=sternwarte,dc=uni-erlangen,dc=de&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 5: Check dependent services ===&lt;br /&gt;
&lt;br /&gt;
* ldap backup&lt;br /&gt;
* Wiki&lt;br /&gt;
* Internal webpage&lt;br /&gt;
* Gitlab&lt;br /&gt;
* phpLDAPadmin (web interface)&lt;br /&gt;
* `who_takes_the_minutes`&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=LDAP&amp;diff=3874</id>
		<title>LDAP</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=LDAP&amp;diff=3874"/>
		<updated>2025-09-11T18:17:25Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;br /&gt;
= LDAP =&lt;br /&gt;
The LDAP server at Remeis is running on vela. The service itself is called ''slapd''. A backup LDAP server is running on libra.&lt;br /&gt;
&lt;br /&gt;
Every interaction with the ''slapd'' requires root access.&lt;br /&gt;
&lt;br /&gt;
== Where LDAP is used ==&lt;br /&gt;
LDAP is not only used for the authentication to login into the variety of machines at Remeis. Also a lot of other services/scripts use ldap:&lt;br /&gt;
&lt;br /&gt;
* This wiki&lt;br /&gt;
* The internal webpage&lt;br /&gt;
* [[GitLab]]&lt;br /&gt;
* [[#phpLDAPadmin|phpLDAPadmin]]&lt;br /&gt;
* The &amp;lt;code&amp;gt;who_takes_the_minutes.pl&amp;lt;/code&amp;gt; script of the X-ray group&lt;br /&gt;
* The ''cgnotifier'' for the [[cgroups]]&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Config files ===&lt;br /&gt;
The main LDAP configuration file is &amp;lt;code&amp;gt;/etc/ldap.conf&amp;lt;/code&amp;gt;. Note that this is not the default location for the configuration file. Therefore the defaults for the slapd are changed in &amp;lt;code&amp;gt;/etc/default/slapd&amp;lt;/code&amp;gt;, see the entry &amp;lt;code&amp;gt;SLAPD_CONF&amp;lt;/code&amp;gt;. The &amp;lt;code&amp;gt;/etc/ldap.conf&amp;lt;/code&amp;gt; is also present on all the clients and specifies via IP-Address which LDAP server to contact for authentication. The LDAP requests are then handled on taurus by the ''slapd'' which is configured via &amp;lt;code&amp;gt;/etc/ldap/slapd.conf&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== phpLDAPadmin ===&lt;br /&gt;
phpLDAPadmin is a web interface based on [https://de.wikipedia.org/wiki/PHP PHP] which allows simple modifications to the directory for example to [[:Category:Admin#Add new Users|add new users]] or change group memberships. It is accessible via the [https://www.sternwarte.uni-erlangen.de/intern/phpldapadmin/ internal webpages] and only out of the network at the Remeis observatory.&lt;br /&gt;
&lt;br /&gt;
==== Configuration of phpLADPadmin ====&lt;br /&gt;
The configuration files for phpLDAPadmin are located in &amp;lt;code&amp;gt;/etc/phpldapadmin/&amp;lt;/code&amp;gt; on the webserver, in this case [[cetus]]. The important file is &amp;lt;code&amp;gt;config.php&amp;lt;/code&amp;gt; which holds information about which LDAP servers can be queried, in this case [[taurus]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Starting/Stopping the service ==&lt;br /&gt;
The slapd can be stopped via [https://de.wikipedia.org/wiki/Systemd systemd]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl stop slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
'''Important:''' If you do so no authentication on the whole cluster is possible anymore. You can not open a new shell on any host until you start the service again!&lt;br /&gt;
&lt;br /&gt;
Starting the ''slapd'':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl start slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
You also can have a look at the output produced by the running service via&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl status slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Database ==&lt;br /&gt;
The [https://en.wikipedia.org/wiki/Berkeley_DB Berkeley DB] containing all the active directory information is located at &amp;lt;code&amp;gt;/var/lib/ldap&amp;lt;/code&amp;gt;. Files in this directory must not be touched manually in any way. The only secure way to see the content of the database is by using ''slapcat''. For example&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
slapcat -f /etc/ldap/slapd.conf&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
will show all entries of the database.&lt;br /&gt;
&lt;br /&gt;
== Backup ==&lt;br /&gt;
Each night the database is dumped to &amp;lt;code&amp;gt;/data/system/backup/ldap/&amp;lt;/code&amp;gt; via a cronjob in &amp;lt;code&amp;gt;/etc/cron.d/ldap_backup&amp;lt;/code&amp;gt;. Also a tarball of the ''slapd'' and &amp;lt;code&amp;gt;ldap.conf&amp;lt;/code&amp;gt; is created there. All backups older than 14 days are deleted.&lt;br /&gt;
&lt;br /&gt;
== Migration ==&lt;br /&gt;
&lt;br /&gt;
See also https://serverfault.com/questions/730088/how-to-migrate-ldap-database-schema-configuration-to-other-machine&lt;br /&gt;
&lt;br /&gt;
=== Step 1: Export configuration trees and database ===&lt;br /&gt;
&lt;br /&gt;
'''From old provider (`vela`)'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapcat -n 0 -l ldap_config_vela.ldif&lt;br /&gt;
sudo slapcat -n 1 -l ldap_data_vela.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''From old consumer (`libra`)'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapcat -n 0 -l ldap_config_libra.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 2: Save certificates ===&lt;br /&gt;
&lt;br /&gt;
'''vela:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/ssl/certs/openldap.pem&lt;br /&gt;
/etc/ldap/grus_slapd_cert.pem&lt;br /&gt;
/etc/ldap/grus_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''libra:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/ssl/certs/openldap.pem&lt;br /&gt;
/etc/ldap/phoenix_slapd_cert.pem&lt;br /&gt;
/etc/ldap/phoenix_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 3: Set up new provider ===&lt;br /&gt;
&lt;br /&gt;
'''Install packages'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt install slapd ldap-utils&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Stop slapd and remove existing configuration and data'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl stop slapd&lt;br /&gt;
sudo rm -rf /etc/ldap/slapd.d/*&lt;br /&gt;
sudo rm -rf /var/lib/ldap/*&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Import configuration and data'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapadd -n 0 -F /etc/ldap/slapd.d -l /path/to/ldap_config_vela.ldif&lt;br /&gt;
sudo slapadd -n 1 -l /path/to/ldap_data_vela.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Set ownership of /etc/ldap/slapd.d and /var/lib/ldap to openldap'''&lt;br /&gt;
&lt;br /&gt;
'''Restore certificates'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
lrwxrwxrwx 1 root root     45 Jul 10  2023 /etc/ssl/certs/openldap.pem -&amp;gt; /usr/local/share/ca-certificates/openldap.pem&lt;br /&gt;
-rw-r--r-- 1 root root   1614 Jul 10  2023 /etc/ldap/grus_slapd_cert.pem&lt;br /&gt;
-rw-r----- 1 root openldap 8170 Jul 10  2023 /etc/ldap/grus_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Start slapd'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl start slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Verify'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldapsearch -H ldap://localhost -x -b dc=sternwarte,dc=uni-erlangen,dc=de&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 4: Set up new consumer for replication ===&lt;br /&gt;
&lt;br /&gt;
'''Install packages'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt install slapd ldap-utils&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Stop slapd and remove existing configuration and data'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl stop slapd&lt;br /&gt;
sudo rm -rf /etc/ldap/slapd.d/*&lt;br /&gt;
sudo rm -rf /var/lib/ldap/*&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Import configuration'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapadd -n 0 -F /etc/ldap/slapd.d -l /path/to/ldap_config_libra.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Set ownership of /etc/ldap/slapd.d and /var/lib/ldap to openldap'''&lt;br /&gt;
&lt;br /&gt;
'''Restore certificates''' (guess other r permission on key is a wrong currently)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
lrwxrwxrwx 1 root root     45 May 13  2023 /etc/ssl/certs/openldap.pem -&amp;gt; /usr/local/share/ca-certificates/openldap.crt&lt;br /&gt;
-rw-r--r-- 1 root root   1619 Jul 11  2023 /etc/ldap/phoenix_slapd_cert.pem&lt;br /&gt;
-rw-r--r-- 1 root root   8180 Jul 11  2023 /etc/ldap/phoenix_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Start slapd'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl start slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Check replication'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
journalctl -fu slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Verify'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldapsearch -H ldap://localhost -x -b dc=sternwarte,dc=uni-erlangen,dc=de&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 5: Check dependent services ===&lt;br /&gt;
&lt;br /&gt;
* ldap backup&lt;br /&gt;
* Wiki&lt;br /&gt;
* Internal webpage&lt;br /&gt;
* Gitlab&lt;br /&gt;
* phpLDAPadmin (web interface)&lt;br /&gt;
* `who_takes_the_minutes`&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=LDAP&amp;diff=3873</id>
		<title>LDAP</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=LDAP&amp;diff=3873"/>
		<updated>2025-09-11T15:41:43Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;br /&gt;
= LDAP =&lt;br /&gt;
The LDAP server at Remeis is running on vela. The service itself is called ''slapd''. A backup LDAP server is running on libra.&lt;br /&gt;
&lt;br /&gt;
Every interaction with the ''slapd'' requires root access.&lt;br /&gt;
&lt;br /&gt;
== Where LDAP is used ==&lt;br /&gt;
LDAP is not only used for the authentication to login into the variety of machines at Remeis. Also a lot of other services/scripts use ldap:&lt;br /&gt;
&lt;br /&gt;
* This wiki&lt;br /&gt;
* The internal webpage&lt;br /&gt;
* [[GitLab]]&lt;br /&gt;
* [[#phpLDAPadmin|phpLDAPadmin]]&lt;br /&gt;
* The &amp;lt;code&amp;gt;who_takes_the_minutes.pl&amp;lt;/code&amp;gt; script of the X-ray group&lt;br /&gt;
* The ''cgnotifier'' for the [[cgroups]]&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Config files ===&lt;br /&gt;
The main LDAP configuration file is &amp;lt;code&amp;gt;/etc/ldap.conf&amp;lt;/code&amp;gt;. Note that this is not the default location for the configuration file. Therefore the defaults for the slapd are changed in &amp;lt;code&amp;gt;/etc/default/slapd&amp;lt;/code&amp;gt;, see the entry &amp;lt;code&amp;gt;SLAPD_CONF&amp;lt;/code&amp;gt;. The &amp;lt;code&amp;gt;/etc/ldap.conf&amp;lt;/code&amp;gt; is also present on all the clients and specifies via IP-Address which LDAP server to contact for authentication. The LDAP requests are then handled on taurus by the ''slapd'' which is configured via &amp;lt;code&amp;gt;/etc/ldap/slapd.conf&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== phpLDAPadmin ===&lt;br /&gt;
phpLDAPadmin is a web interface based on [https://de.wikipedia.org/wiki/PHP PHP] which allows simple modifications to the directory for example to [[:Category:Admin#Add new Users|add new users]] or change group memberships. It is accessible via the [https://www.sternwarte.uni-erlangen.de/intern/phpldapadmin/ internal webpages] and only out of the network at the Remeis observatory.&lt;br /&gt;
&lt;br /&gt;
==== Configuration of phpLADPadmin ====&lt;br /&gt;
The configuration files for phpLDAPadmin are located in &amp;lt;code&amp;gt;/etc/phpldapadmin/&amp;lt;/code&amp;gt; on the webserver, in this case [[cetus]]. The important file is &amp;lt;code&amp;gt;config.php&amp;lt;/code&amp;gt; which holds information about which LDAP servers can be queried, in this case [[taurus]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Starting/Stopping the service ==&lt;br /&gt;
The slapd can be stopped via [https://de.wikipedia.org/wiki/Systemd systemd]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl stop slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
'''Important:''' If you do so no authentication on the whole cluster is possible anymore. You can not open a new shell on any host until you start the service again!&lt;br /&gt;
&lt;br /&gt;
Starting the ''slapd'':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl start slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
You also can have a look at the output produced by the running service via&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl status slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Database ==&lt;br /&gt;
The [https://en.wikipedia.org/wiki/Berkeley_DB Berkeley DB] containing all the active directory information is located at &amp;lt;code&amp;gt;/var/lib/ldap&amp;lt;/code&amp;gt;. Files in this directory must not be touched manually in any way. The only secure way to see the content of the database is by using ''slapcat''. For example&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
slapcat -f /etc/ldap/slapd.conf&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
will show all entries of the database.&lt;br /&gt;
&lt;br /&gt;
== Backup ==&lt;br /&gt;
Each night the database is dumped to &amp;lt;code&amp;gt;/data/system/backup/ldap/&amp;lt;/code&amp;gt; via a cronjob in &amp;lt;code&amp;gt;/etc/cron.d/ldap_backup&amp;lt;/code&amp;gt;. Also a tarball of the ''slapd'' and &amp;lt;code&amp;gt;ldap.conf&amp;lt;/code&amp;gt; is created there. All backups older than 14 days are deleted.&lt;br /&gt;
&lt;br /&gt;
== Migration ==&lt;br /&gt;
&lt;br /&gt;
See also https://serverfault.com/questions/730088/how-to-migrate-ldap-database-schema-configuration-to-other-machine&lt;br /&gt;
&lt;br /&gt;
=== Step 1: Export configuration trees and database ===&lt;br /&gt;
&lt;br /&gt;
'''From old provider (`vela`)'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapcat -n 0 -l ldap_config_vela.ldif&lt;br /&gt;
sudo slapcat -n 1 -l ldap_data_vela.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''From old consumer (`libra`)'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapcat -n 0 -l ldap_config_libra.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 2: Save certificates ===&lt;br /&gt;
&lt;br /&gt;
'''vela:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/ssl/certs/openldap.pem&lt;br /&gt;
/etc/ldap/grus_slapd_cert.pem&lt;br /&gt;
/etc/ldap/grus_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''libra:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/ssl/certs/openldap.pem&lt;br /&gt;
/etc/ldap/phoenix_slapd_cert.pem&lt;br /&gt;
/etc/ldap/phoenix_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 3: Set up new provider ===&lt;br /&gt;
&lt;br /&gt;
'''Install packages'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt install slapd ldap-utils&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Stop slapd and remove existing configuration and data'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl stop slapd&lt;br /&gt;
sudo rm -rf /etc/ldap/slapd.d/*&lt;br /&gt;
sudo rm -rf /var/lib/ldap/*&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Import configuration and data'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapadd -n 0 -F /etc/ldap/slapd.d -l /path/to/ldap_config_vela.ldif&lt;br /&gt;
sudo slapadd -n 1 -l /path/to/ldap_data_vela.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Set ownership of /etc/ldap/slapd.d and /var/lib/ldap to openldap'''&lt;br /&gt;
&lt;br /&gt;
'''Restore certificates'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
lrwxrwxrwx 1 root root     45 Jul 10  2023 /etc/ssl/certs/openldap.pem -&amp;gt; /usr/local/share/ca-certificates/openldap.pem&lt;br /&gt;
-rw-r--r-- 1 root root   1614 Jul 10  2023 /etc/ldap/grus_slapd_cert.pem&lt;br /&gt;
-rw-r----- 1 root openldap 8170 Jul 10  2023 /etc/ldap/grus_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Start slapd'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl start slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Verify'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldapsearch -H ldap://localhost -x -b dc=sternwarte,dc=uni-erlangen,dc=de&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 4: Set up new consumer for replication ===&lt;br /&gt;
&lt;br /&gt;
'''Install packages'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt install slapd ldap-utils&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Stop slapd and remove existing configuration and data'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl stop slapd&lt;br /&gt;
sudo rm -rf /etc/ldap/slapd.d/*&lt;br /&gt;
sudo rm -rf /var/lib/ldap/*&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Import configuration'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapadd -n 0 -F /etc/ldap/slapd.d -l /path/to/ldap_config_libra.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Set ownership of /etc/ldap/slapd.d and /var/lib/ldap to openldap'''&lt;br /&gt;
&lt;br /&gt;
'''Restore certificates'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
lrwxrwxrwx 1 root root     45 May 13  2023 /etc/ssl/certs/openldap.pem -&amp;gt; /usr/local/share/ca-certificates/openldap.crt&lt;br /&gt;
-rw-r--r-- 1 root root   1619 Jul 11  2023 /etc/ldap/phoenix_slapd_cert.pem&lt;br /&gt;
-rw-r--r-- 1 root root   8180 Jul 11  2023 /etc/ldap/phoenix_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Start slapd'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl start slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Check replication'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
journalctl -fu slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Verify'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldapsearch -H ldap://localhost -x -b dc=sternwarte,dc=uni-erlangen,dc=de&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 5: Check dependent services ===&lt;br /&gt;
&lt;br /&gt;
* ldap backup&lt;br /&gt;
* Wiki&lt;br /&gt;
* Internal webpage&lt;br /&gt;
* Gitlab&lt;br /&gt;
* phpLDAPadmin (web interface)&lt;br /&gt;
* `who_takes_the_minutes`&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=LDAP&amp;diff=3766</id>
		<title>LDAP</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=LDAP&amp;diff=3766"/>
		<updated>2025-06-28T13:20:47Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;br /&gt;
= LDAP =&lt;br /&gt;
The LDAP server at Remeis is running on vela. The service itself is called ''slapd''. A backup LDAP server is running on libra.&lt;br /&gt;
&lt;br /&gt;
Every interaction with the ''slapd'' requires root access.&lt;br /&gt;
&lt;br /&gt;
== Where LDAP is used ==&lt;br /&gt;
LDAP is not only used for the authentication to login into the variety of machines at Remeis. Also a lot of other services/scripts use ldap:&lt;br /&gt;
&lt;br /&gt;
* This wiki&lt;br /&gt;
* The internal webpage&lt;br /&gt;
* [[GitLab]]&lt;br /&gt;
* [[#phpLDAPadmin|phpLDAPadmin]]&lt;br /&gt;
* The &amp;lt;code&amp;gt;who_takes_the_minutes.pl&amp;lt;/code&amp;gt; script of the X-ray group&lt;br /&gt;
* The ''cgnotifier'' for the [[cgroups]]&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Config files ===&lt;br /&gt;
The main LDAP configuration file is &amp;lt;code&amp;gt;/etc/ldap.conf&amp;lt;/code&amp;gt;. Note that this is not the default location for the configuration file. Therefore the defaults for the slapd are changed in &amp;lt;code&amp;gt;/etc/default/slapd&amp;lt;/code&amp;gt;, see the entry &amp;lt;code&amp;gt;SLAPD_CONF&amp;lt;/code&amp;gt;. The &amp;lt;code&amp;gt;/etc/ldap.conf&amp;lt;/code&amp;gt; is also present on all the clients and specifies via IP-Address which LDAP server to contact for authentication. The LDAP requests are then handled on taurus by the ''slapd'' which is configured via &amp;lt;code&amp;gt;/etc/ldap/slapd.conf&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== phpLDAPadmin ===&lt;br /&gt;
phpLDAPadmin is a web interface based on [https://de.wikipedia.org/wiki/PHP PHP] which allows simple modifications to the directory for example to [[:Category:Admin#Add new Users|add new users]] or change group memberships. It is accessible via the [https://www.sternwarte.uni-erlangen.de/intern/phpldapadmin/ internal webpages] and only out of the network at the Remeis observatory.&lt;br /&gt;
&lt;br /&gt;
==== Configuration of phpLADPadmin ====&lt;br /&gt;
The configuration files for phpLDAPadmin are located in &amp;lt;code&amp;gt;/etc/phpldapadmin/&amp;lt;/code&amp;gt; on the webserver, in this case [[cetus]]. The important file is &amp;lt;code&amp;gt;config.php&amp;lt;/code&amp;gt; which holds information about which LDAP servers can be queried, in this case [[taurus]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Starting/Stopping the service ==&lt;br /&gt;
The slapd can be stopped via [https://de.wikipedia.org/wiki/Systemd systemd]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl stop slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
'''Important:''' If you do so no authentication on the whole cluster is possible anymore. You can not open a new shell on any host until you start the service again!&lt;br /&gt;
&lt;br /&gt;
Starting the ''slapd'':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl start slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
You also can have a look at the output produced by the running service via&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
systemctl status slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Database ==&lt;br /&gt;
The [https://en.wikipedia.org/wiki/Berkeley_DB Berkeley DB] containing all the active directory information is located at &amp;lt;code&amp;gt;/var/lib/ldap&amp;lt;/code&amp;gt;. Files in this directory must not be touched manually in any way. The only secure way to see the content of the database is by using ''slapcat''. For example&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
slapcat -f /etc/ldap/slapd.conf&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
will show all entries of the database.&lt;br /&gt;
&lt;br /&gt;
== Backup ==&lt;br /&gt;
Each night the database is dumped to &amp;lt;code&amp;gt;/data/system/backup/ldap/&amp;lt;/code&amp;gt; via a cronjob in &amp;lt;code&amp;gt;/etc/cron.d/ldap_backup&amp;lt;/code&amp;gt;. Also a tarball of the ''slapd'' and &amp;lt;code&amp;gt;ldap.conf&amp;lt;/code&amp;gt; is created there. All backups older than 14 days are deleted.&lt;br /&gt;
&lt;br /&gt;
== Migration ==&lt;br /&gt;
&lt;br /&gt;
See also https://serverfault.com/questions/730088/how-to-migrate-ldap-database-schema-configuration-to-other-machine&lt;br /&gt;
&lt;br /&gt;
=== Step 1: Export configuration trees and database ===&lt;br /&gt;
&lt;br /&gt;
'''From old provider (`vela`)'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapcat -n 0 -l ldap_config_vela.ldif&lt;br /&gt;
sudo slapcat -n 1 -l ldap_data_vela.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''From old consumer (`libra`)'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapcat -n 0 -l ldap_config_libra.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 2: Save certificates ===&lt;br /&gt;
&lt;br /&gt;
'''vela:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/ssl/certs/openldap.pem&lt;br /&gt;
/etc/ldap/grus_slapd_cert.pem&lt;br /&gt;
/etc/ldap/grus_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''libra:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/ssl/certs/openldap.pem&lt;br /&gt;
/etc/ldap/grus_slapd_cert.pem&lt;br /&gt;
/etc/ldap/grus_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 3: Set up new provider ===&lt;br /&gt;
&lt;br /&gt;
'''Install packages'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt install slapd ldap-utils&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Stop slapd and remove existing configuration and data'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl stop slapd&lt;br /&gt;
sudo rm -rf /etc/ldap/slapd.d/*&lt;br /&gt;
sudo rm -rf /var/lib/ldap/*&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Import configuration and data'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapadd -n 0 -F /etc/ldap/slapd.d -l /path/to/ldap_config_vela.ldif&lt;br /&gt;
sudo slapadd -n 1 -l /path/to/ldap_data_vela.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Set ownership of /etc/ldap/slapd.d and /var/lib/ldap to openldap'''&lt;br /&gt;
&lt;br /&gt;
'''Restore certificates'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
lrwxrwxrwx 1 root root     45 Jul 10  2023 /etc/ssl/certs/openldap.pem -&amp;gt; /usr/local/share/ca-certificates/openldap.pem&lt;br /&gt;
-rw-r--r-- 1 root root   1614 Jul 10  2023 /etc/ldap/grus_slapd_cert.pem&lt;br /&gt;
-rw-r----- 1 root openldap 8170 Jul 10  2023 /etc/ldap/grus_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Start slapd'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl start slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Verify'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldapsearch -H ldap://localhost -x -b dc=sternwarte,dc=uni-erlangen,dc=de&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 4: Set up new consumer for replication ===&lt;br /&gt;
&lt;br /&gt;
'''Install packages'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt install slapd ldap-utils&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Stop slapd and remove existing configuration and data'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl stop slapd&lt;br /&gt;
sudo rm -rf /etc/ldap/slapd.d/*&lt;br /&gt;
sudo rm -rf /var/lib/ldap/*&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Import configuration'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo slapadd -n 0 -F /etc/ldap/slapd.d -l /path/to/ldap_config_libra.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Set ownership of /etc/ldap/slapd.d and /var/lib/ldap to openldap'''&lt;br /&gt;
&lt;br /&gt;
'''Restore certificates'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
lrwxrwxrwx 1 root root     45 May 13  2023 /etc/ssl/certs/openldap.pem -&amp;gt; /usr/local/share/ca-certificates/openldap.crt&lt;br /&gt;
-rw-r--r-- 1 root root   1619 Jul 11  2023 /etc/ldap/phoenix_slapd_cert.pem&lt;br /&gt;
-rw-r--r-- 1 root root   8180 Jul 11  2023 /etc/ldap/phoenix_slapd_key.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Start slapd'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl start slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Check replication'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
journalctl -fu slapd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Verify'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldapsearch -H ldap://localhost -x -b dc=sternwarte,dc=uni-erlangen,dc=de&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Step 5: Check dependent services ===&lt;br /&gt;
&lt;br /&gt;
* ldap backup&lt;br /&gt;
* Wiki&lt;br /&gt;
* Internal webpage&lt;br /&gt;
* Gitlab&lt;br /&gt;
* phpLDAPadmin (web interface)&lt;br /&gt;
* `who_takes_the_minutes`&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Admin&amp;diff=3325</id>
		<title>Admin</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Admin&amp;diff=3325"/>
		<updated>2024-02-28T15:10:18Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===== Remeis Admin-Page =====&lt;br /&gt;
&lt;br /&gt;
This page is only internally visible to the Admins.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Lab Course ====&lt;br /&gt;
&lt;br /&gt;
* Before the lab course: &lt;br /&gt;
** check the PCs in the Meridian building:&lt;br /&gt;
*** they should all be functional, broken ones should be replaced&lt;br /&gt;
*** in total we should have about 10 computers available for the students&lt;br /&gt;
** [[setup prakti|Setup the prakti accounts]]&lt;br /&gt;
* [[Computer_Introduction|Introduction to Computers/Linux for Lab Students ]]&lt;br /&gt;
&lt;br /&gt;
==== Serendipitous Issues ====&lt;br /&gt;
&lt;br /&gt;
* [[Login Problems|Typical login problems]]&lt;br /&gt;
* [[Unmet Dependencies|''unmet dependencies'' issue in apt-get]]&lt;br /&gt;
* [[Overflow Filesystem|overflow file system]]&lt;br /&gt;
&lt;br /&gt;
==== Add new Users ====&lt;br /&gt;
* Go to the remeis internal homepage -&amp;gt; admin -&amp;gt; LDAP&lt;br /&gt;
* Fill out the necessary fields, including a valid email address. If possible, also fill out the fields for room and telephone number.&lt;br /&gt;
* Log into LDAP ( https://www.sternwarte.uni-erlangen.de/phpldapadmin/), go to import and copy the text of the previous step. '''Important''': if the user is external, &amp;quot;current&amp;quot; in the first line has to be changed to &amp;quot;external&amp;quot;&lt;br /&gt;
* set the password of the user: Use the LDAP query &amp;lt;code&amp;gt;ldappasswd -H ldap://vela -x -D &amp;quot;cn=admin,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot; -W -S &amp;quot;uid={USERNAME},ou=current,ou=People,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot;&amp;lt;/code&amp;gt; while obviously adjusting the LDAP dn.&lt;br /&gt;
* log in as ubuntuadmin on libra and create the home directory like that: &amp;lt;code&amp;gt;sudo mkdir /exports/disk1/{USERNAME} &amp;amp;&amp;amp; sudo chown {USERNAME}:remeis /exports/disk1/{USERNAME}&amp;lt;/code&amp;gt;&lt;br /&gt;
* Set the quota (on libra), using a prototype which has normal quota &amp;lt;code&amp;gt;sudo edquota -p [prototype] [username]&amp;lt;/code&amp;gt;  (normal Quota is 8GB softlimit and 12GB hardlimit; it can be manually edited/shown with edquota -u user)&lt;br /&gt;
* Add the default cshrc to /home/username/.cshrc &lt;br /&gt;
* If desired (in most cases), create a folder for the user at ''/userdata/data/username'' and adjust the permissions with &amp;lt;code&amp;gt;sudo chown username:remeis /userdata/data/username&amp;lt;/code&amp;gt;&lt;br /&gt;
* Send Email to admin about the new user&lt;br /&gt;
&lt;br /&gt;
==== Running Software / Updates / Setups ====&lt;br /&gt;
&lt;br /&gt;
In this section a selection of services and their current configuration is described. &lt;br /&gt;
&lt;br /&gt;
* [[CUPS| CUPS]] (Printing Service)&lt;br /&gt;
* [[Virtual Boxes| Virtual Boxes]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=2928</id>
		<title>Setup prakti accounts</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=2928"/>
		<updated>2023-08-25T11:39:59Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Setup prakti accounts ====&lt;br /&gt;
&lt;br /&gt;
Shortly '''before''' a new lab course begins, initialize the prakti accounts:&lt;br /&gt;
* login as ubuntuadmin on the home server libra: &amp;lt;pre&amp;gt;ssh ubuntuadmin@libra&amp;lt;/pre&amp;gt;&lt;br /&gt;
* become root: &amp;lt;pre&amp;gt;sudo su&amp;lt;/pre&amp;gt;&lt;br /&gt;
* go to /exports/disk1/praktikum/intern/setup&lt;br /&gt;
* run the script setup: &amp;lt;pre&amp;gt;./setup&amp;lt;/pre&amp;gt; This script will rsync the template prakti directory to the 21 prakti home directories. It will also remove anything from the prakti home directories not present in the template&lt;br /&gt;
* login as ubuntuadmin on libra and set new passwords for the prakti accounts:&lt;br /&gt;
** create a new random password, e.g. using http://passwordsgenerator.net/&lt;br /&gt;
** set the password: &amp;lt;pre&amp;gt;ldappasswd -H ldap://vela -x -D &amp;quot;cn=admin,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot; -W -S &amp;quot;uid=USERNAME,ou=Praktikum,ou=People,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot;&amp;lt;/pre&amp;gt; while adjusting USERNAME to the corresponding prakti account.&lt;br /&gt;
** note the password in a file&lt;br /&gt;
** do the above for all prakti accounts (as many as needed). Use different passwords for every account.&lt;br /&gt;
** notify all users at remeis that the accounts have been setup and include the new passwords&lt;br /&gt;
&lt;br /&gt;
'''After''' a block of the lab course is finished, you need to backup the accounts:&lt;br /&gt;
* get confirmation from Jörn, Uli, or Manami that all students are finished and the reports have been submitted.&lt;br /&gt;
* get the PDFs of the final protocols of each group and save them in &amp;lt;pre&amp;gt;/home/praktikum/intern/protocols_archive/&amp;lt;/pre&amp;gt;&lt;br /&gt;
* backup the prakti accounts:&lt;br /&gt;
** login as ubuntuadmin on the home server libra&lt;br /&gt;
** become root&lt;br /&gt;
** rsync the prakti accounts to your PC, e.g.,&amp;lt;pre&amp;gt;rsync -av /exports/disk1/praktikum/prakti* kreykenbohm@orion:/scratch1/DVD-Burner&amp;lt;/pre&amp;gt;&lt;br /&gt;
** check how much disk space is used by the accounts.&lt;br /&gt;
** if more than ~4 GB are used, remove unneeded files from the prakti accounts, i.e. firefox/chrome caches, Download folders etc.&lt;br /&gt;
** also add the final protocols of each group to the backup&lt;br /&gt;
** get as many blank DVDs as needed &lt;br /&gt;
** backup the accounts to the DVDs, e.g. using Xfburn&lt;br /&gt;
** label the DVDs appropriately (year, spring/fall, block, and disk number (if applicable))&lt;br /&gt;
** get jewel cases for the DVDs from the closet in the server room&lt;br /&gt;
** store the DVDs in closet to the right in the meeting room&lt;br /&gt;
&lt;br /&gt;
'''Note''': the timing is especially important between the first and second block of a lab course. You have very little time to get confirmation that all groups of the first block are finished, back up all accounts, and initialize the accounts for the second block. Sometimes (if some students are not finished in time) the setup can only be done in the morning of the day when the next block begins...&lt;br /&gt;
&lt;br /&gt;
'''Note''': in some rare cases a group does not finish before the next block begins. In this case do '''not'''  initialize all accounts using the setup script, but keep the account of the delayed group and only initialze the other accounts.&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=2927</id>
		<title>Setup prakti accounts</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=2927"/>
		<updated>2023-08-24T10:41:37Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Setup prakti accounts ====&lt;br /&gt;
&lt;br /&gt;
Shortly '''before''' a new lab course begins, initialize the prakti accounts:&lt;br /&gt;
* login as ubuntuadmin on the home server libra: &amp;lt;pre&amp;gt;ssh ubuntuadmin@libra&amp;lt;/pre&amp;gt;&lt;br /&gt;
* become root: &amp;lt;pre&amp;gt;sudo su&amp;lt;/pre&amp;gt;&lt;br /&gt;
* go to /exports/disk1/praktikum/intern/setup&lt;br /&gt;
* run the script setup: &amp;lt;pre&amp;gt;./setup&amp;lt;/pre&amp;gt; This script will rsync the template prakti directory to the 21 prakti home directories. It will also remove anything from the prakti home directories not present in the template&lt;br /&gt;
* login as ubuntuadmin on libra and set new passwords for the prakti accounts:&lt;br /&gt;
** create a new random password, e.g. using http://passwordsgenerator.net/&lt;br /&gt;
** set the password: &amp;lt;pre&amp;gt;ldappasswd -H ldap://grus -x -D &amp;quot;cn=admin,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot; -W -S &amp;quot;uid=USERNAME,ou=Praktikum,ou=People,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot;&amp;lt;/pre&amp;gt; while adjusting USERNAME to the corresponding prakti account.&lt;br /&gt;
** note the password in a file&lt;br /&gt;
** do the above for all prakti accounts (as many as needed). Use different passwords for every account.&lt;br /&gt;
** notify all users at remeis that the accounts have been setup and include the new passwords&lt;br /&gt;
&lt;br /&gt;
'''After''' a block of the lab course is finished, you need to backup the accounts:&lt;br /&gt;
* get confirmation from Jörn, Uli, or Manami that all students are finished and the reports have been submitted.&lt;br /&gt;
* get the PDFs of the final protocols of each group and save them in &amp;lt;pre&amp;gt;/home/praktikum/intern/protocols_archive/&amp;lt;/pre&amp;gt;&lt;br /&gt;
* backup the prakti accounts:&lt;br /&gt;
** login as ubuntuadmin on the home server libra&lt;br /&gt;
** become root&lt;br /&gt;
** rsync the prakti accounts to your PC, e.g.,&amp;lt;pre&amp;gt;rsync -av /exports/disk1/praktikum/prakti* kreykenbohm@orion:/scratch1/DVD-Burner&amp;lt;/pre&amp;gt;&lt;br /&gt;
** check how much disk space is used by the accounts.&lt;br /&gt;
** if more than ~4 GB are used, remove unneeded files from the prakti accounts, i.e. firefox/chrome caches, Download folders etc.&lt;br /&gt;
** also add the final protocols of each group to the backup&lt;br /&gt;
** get as many blank DVDs as needed &lt;br /&gt;
** backup the accounts to the DVDs, e.g. using Xfburn&lt;br /&gt;
** label the DVDs appropriately (year, spring/fall, block, and disk number (if applicable))&lt;br /&gt;
** get jewel cases for the DVDs from the closet in the server room&lt;br /&gt;
** store the DVDs in closet to the right in the meeting room&lt;br /&gt;
&lt;br /&gt;
'''Note''': the timing is especially important between the first and second block of a lab course. You have very little time to get confirmation that all groups of the first block are finished, back up all accounts, and initialize the accounts for the second block. Sometimes (if some students are not finished in time) the setup can only be done in the morning of the day when the next block begins...&lt;br /&gt;
&lt;br /&gt;
'''Note''': in some rare cases a group does not finish before the next block begins. In this case do '''not'''  initialize all accounts using the setup script, but keep the account of the delayed group and only initialze the other accounts.&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Admin&amp;diff=2921</id>
		<title>Admin</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Admin&amp;diff=2921"/>
		<updated>2023-08-14T13:36:53Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===== Remeis Admin-Page =====&lt;br /&gt;
&lt;br /&gt;
This page is only internally visible to the Admins.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Lab Course ====&lt;br /&gt;
&lt;br /&gt;
* Before the lab course: &lt;br /&gt;
** check the PCs in the Meridian building:&lt;br /&gt;
*** they should all be functional, broken ones should be replaced&lt;br /&gt;
*** in total we should have about 10 computers available for the students&lt;br /&gt;
** [[setup prakti|Setup the prakti accounts]]&lt;br /&gt;
* [[Computer_Introduction|Introduction to Computers/Linux for Lab Students ]]&lt;br /&gt;
&lt;br /&gt;
==== Serendipitous Issues ====&lt;br /&gt;
&lt;br /&gt;
* [[Login Problems|Typical login problems]]&lt;br /&gt;
* [[Unmet Dependencies|''unmet dependencies'' issue in apt-get]]&lt;br /&gt;
* [[Overflow Filesystem|overflow file system]]&lt;br /&gt;
&lt;br /&gt;
==== Add new Users ====&lt;br /&gt;
* Go to the remeis internal homepage -&amp;gt; admin -&amp;gt; LDAP&lt;br /&gt;
* Fill out the necessary fields, including a valid email address. If possible, also fill out the fields for room and telephone number.&lt;br /&gt;
* Log into LDAP ( https://www.sternwarte.uni-erlangen.de/phpldapadmin/), go to import and copy the text of the previous step. '''Important''': if the user is external, &amp;quot;current&amp;quot; in the first line has to be changed to &amp;quot;external&amp;quot;&lt;br /&gt;
* set the password of the user: Use the LDAP query &amp;lt;code&amp;gt;ldappasswd -H ldap://vela -x -D &amp;quot;cn=admin,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot; -W -S &amp;quot;uid={USERNAME},ou=current,ou=People,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot;&amp;lt;/code&amp;gt; while obviously adjusting the LDAP dn.&lt;br /&gt;
* log in as ubuntuadmin on libra and create the home directory like that: &amp;lt;code&amp;gt;sudo mkdir /exports/disk1/{USERNAME} &amp;amp;&amp;amp; sudo chown {USERNAME}:remeis /exports/disk1/{USERNAME}&amp;lt;/code&amp;gt;&lt;br /&gt;
* Set the quota (on libra), using a prototype which has normal quota &amp;lt;code&amp;gt;sudo edquota -p [prototype] [username]&amp;lt;/code&amp;gt;  (normal Quota is 8GB softlimit and 12GB hardlimit; it can be manually edited/shown with edquota -u user)&lt;br /&gt;
* Add the file for automatic forwarding of system emails: &amp;lt;code&amp;gt;/home/username/.forward&amp;lt;/code&amp;gt; which should just contain the mail address of the new user&lt;br /&gt;
* Add the default cshrc to /home/username/.cshrc &lt;br /&gt;
* If desired (in most cases), create a folder for the user at ''/userdata/data/username'' and adjust the permissions with &amp;lt;code&amp;gt;sudo chown username:remeis /userdata/data/username&amp;lt;/code&amp;gt;&lt;br /&gt;
* Send Email to admin about the new user&lt;br /&gt;
&lt;br /&gt;
==== Running Software / Updates / Setups ====&lt;br /&gt;
&lt;br /&gt;
In this section a selection of services and their current configuration is described. &lt;br /&gt;
&lt;br /&gt;
* [[CUPS| CUPS]] (Printing Service)&lt;br /&gt;
* [[Virtual Boxes| Virtual Boxes]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Skivergnuegen_2023&amp;diff=2749</id>
		<title>Skivergnuegen 2023</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Skivergnuegen_2023&amp;diff=2749"/>
		<updated>2022-12-31T15:11:56Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Remeis Skifahren 2023''' The same procedure as every year ;-) &lt;br /&gt;
Hier werden die wichtigsten organisatorischen Dinge festgehalten. Jeder darf hier gerne editieren; wer keinen Account für das Wiki hat, muss sich bitte an jemanden wenden, der Zugang hat.&lt;br /&gt;
&lt;br /&gt;
[[File:154854 silvretta-montafon-panorama.jpeg|right|700px]]&lt;br /&gt;
&lt;br /&gt;
== Allgemeine Infos ==&lt;br /&gt;
&lt;br /&gt;
*Ferienwohnung(en):&lt;br /&gt;
**Wir kommen wieder unter im [https://www.grandau.at/montafon/zimmer/ferienhaus-enzian Haus Enzian] des [https://www.grandau.at/ Sporthotels Grandau].&lt;br /&gt;
**Adresse des Sporthotel: Montafonerstraße 274a, 6791 St. Gallenkirch, Österreich. Unsere Unterkünfte liegen im Türkeiweg.&lt;br /&gt;
&lt;br /&gt;
*Skigebiet: Montafon (Vorarlberg)&lt;br /&gt;
**Skigebiet Karte: https://winter.intermaps.com/montafon?lang=de&lt;br /&gt;
**Skipass Preise: https://www.montafon.at/de/Service/Bergbahn-Preise-Tickets/Mehrtageskarte-Winter&lt;br /&gt;
**Wer nicht alle 7 Tage Skifahren möchte: Es gibt Angebote wie z.B. 5 aus 7, mit einem solchen Skipass kann man innerhalb von 7 Tagen an 5 beliebigen Tagen skifahren.&lt;br /&gt;
&lt;br /&gt;
*Skiverleih: [http://www.sportharry.at/ Sport Harry], direkt an der Talstation.&lt;br /&gt;
&lt;br /&gt;
== Unterkunft ==&lt;br /&gt;
=== Aufteilung ===&lt;br /&gt;
&lt;br /&gt;
Dieses Jahr gibt es nur die Hütte mit folgenden Zimmern (wir sind insgesamt 14, also bleiben keine Plätze frei).&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Zimmer&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Insassen&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | 2-er&lt;br /&gt;
| Amy, Aafia&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | 3-er&lt;br /&gt;
| Jakob, Max, Katya&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | 4-er&lt;br /&gt;
| Eva, Steffen, Flo, Christian&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | 5-er&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Fahrer ==&lt;br /&gt;
Fahrer können sich hier eintragen und Eckdaten angeben. Diejenige, die mitfahren möchten, sprechen sich mit den Fahrern ab und tragen sich ebenfalls ein. Klärt bitte auch die Gepäcklage, ggf. kann ein anderer Fahrer z.B. Skiausrüstung mitnehmen.&lt;br /&gt;
&lt;br /&gt;
'''Auf der Suche nach einer Mitfahrgelegenheit: '''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Fahrer&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | # Plätze&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Anreise&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Mitfahrer Anreise&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Abreise&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Mitfahrer Abreise&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Skimitnahme&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Kommentar&lt;br /&gt;
|-&lt;br /&gt;
|Eva&lt;br /&gt;
|0(3)&lt;br /&gt;
|Samstag&lt;br /&gt;
|Steffen+Christian&lt;br /&gt;
|Samstag?&lt;br /&gt;
|Steffen+Christian&lt;br /&gt;
|eigene ja&lt;br /&gt;
|Auto ist voll&lt;br /&gt;
|-&lt;br /&gt;
|Max&lt;br /&gt;
|0(3)&lt;br /&gt;
|Samstag&lt;br /&gt;
|Jakob+Katya&lt;br /&gt;
|Samstag&lt;br /&gt;
|Jakob+Katya&lt;br /&gt;
|eigene ja&lt;br /&gt;
|Auto ist voll&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Schwarzes Brett ==&lt;br /&gt;
&lt;br /&gt;
=== Essen ===&lt;br /&gt;
Hier gibt's den Essensplan, soweit übernommen von den letzten Jahren. Da wir sehr viele Leute sind, sollten wir wieder vorab grob planen, was wir kochen wollen. Wir können einige Dinge in Deutschland besorgen und mitnehmen, es gib aber auch einen nahe gelegen Supermarkt. Generelle Dinge, wie z.B. Gewürze oder Aufstriche für Frühstücksbrötchen könnte man auch mitbringen.&lt;br /&gt;
&lt;br /&gt;
Wer Kochvorschläge oder andere Ideen hat, gerne unten eintragen und kommentieren. Bedenkt, dass die Zubereitung (relativ) einfach sein sollte. Da sich die Liste in den letzten Jahren gut bewaehrt hat, behalten wir sie bei, aber die Reihenfolge/Tage kann man sicher noch hin und her bewegen. Einige (wenige) Sachen müssen wir dann manchmal trotzdem noch beim Spar kaufen, da ja auch der Kühlschrank nur begrenzt Platz hat.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Essenplan:'''&lt;br /&gt;
*Samstag: Spaghetti Bolognese + veg. Bolognese&lt;br /&gt;
*Sonntag: Käse Spätzle&lt;br /&gt;
*Montag: Burritos&lt;br /&gt;
*Dienstag: Risotto&lt;br /&gt;
*Mittwoch: Gulasch&lt;br /&gt;
*Donnerstag: Kartoffeln mit Kräuter-Quark&lt;br /&gt;
*Freitag: Dal mit Reis  (od. Curry mit Suesskartoffeln )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Einkaufsliste von 2022 (letztes Jahr): https://docs.google.com/document/d/166b_mIXxmoAgcv1upIGremd_36E1fmwwxsQADP2uEv8/&lt;br /&gt;
&lt;br /&gt;
@Christian: Vegane Option entwender selbst mitbringen oder hier mit reinschreiben (falls man die einfach bekommt)&lt;br /&gt;
&lt;br /&gt;
=== Alkohol/Party ===&lt;br /&gt;
&lt;br /&gt;
=== Spiele ===&lt;br /&gt;
 &lt;br /&gt;
Immer lustig sind gemeinsame Spieleabende. Also, wer im Besitz von Gesellschaftsspielen ist, bringt diese gerne mit! Um eine Übersicht zu bekommen auch bitte hier eintragen:&lt;br /&gt;
&lt;br /&gt;
''* Spiele hier eintragen''&lt;br /&gt;
&lt;br /&gt;
=== Sonstiges ===&lt;br /&gt;
&lt;br /&gt;
=== Alternativprogramm ===&lt;br /&gt;
  *  Rodeln (http://www.montafon.at/de/urlaubswelten/echte_naturliebhaber/rodeln)&lt;br /&gt;
  *  Schneeschuhwandern (http://www.montafon.at/schneeschuhwanderungen)&lt;br /&gt;
  *  Therme (http://www.montafon.at/schwimmen), z.B. http://www.aqua-dome.at/de (ca. 130km entfernt!)&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Admin&amp;diff=2498</id>
		<title>Category:Admin</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Admin&amp;diff=2498"/>
		<updated>2022-04-26T10:29:18Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
===== Remeis Admin-Page =====&lt;br /&gt;
&lt;br /&gt;
This page is only internally visible to the Admins.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Lab Course ====&lt;br /&gt;
&lt;br /&gt;
* Before the lab course: &lt;br /&gt;
** check the PCs in the Meridian building:&lt;br /&gt;
*** they should all be functional, broken ones should be replaced&lt;br /&gt;
*** in total we should have about 10 computers available for the students&lt;br /&gt;
** [[setup prakti|Setup the prakti accounts]]&lt;br /&gt;
* [[Computer_Introduction|Introduction to Computers/Linux for Lab Students ]]&lt;br /&gt;
&lt;br /&gt;
==== Serendipitous Issues ====&lt;br /&gt;
&lt;br /&gt;
* [[Login Problems|Typical login problems]]&lt;br /&gt;
* [[Unmet Dependencies|''unmet dependencies'' issue in apt-get]]&lt;br /&gt;
* [[Overflow Filesystem|overflow file system]]&lt;br /&gt;
&lt;br /&gt;
==== Add new Users ====&lt;br /&gt;
* Go to the remeis internal homepage -&amp;gt; admin -&amp;gt; LDAP&lt;br /&gt;
* Fill out the necessary fields, including a valid email address. If possible, also fill out the fields for room and telephone number.&lt;br /&gt;
* Log into LDAP ( https://www.sternwarte.uni-erlangen.de/phpldapadmin/), go to import and copy the text of the previous step. '''Important''': if the user is external, &amp;quot;current&amp;quot; in the first line has to be changed to &amp;quot;external&amp;quot;&lt;br /&gt;
* set the password of the user: Use the LDAP query &amp;lt;code&amp;gt;ldappasswd -H ldap://grus -x -D &amp;quot;cn=admin,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot; -W -S &amp;quot;uid={USERNAME},ou=current,ou=People,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot;&amp;lt;/code&amp;gt; while obviously adjusting the LDAP dn.&lt;br /&gt;
* log in as ubuntuadmin on taurus and create the home directory like that: &amp;lt;code&amp;gt;sudo mkdir /exports/disk1/{USERNAME} &amp;amp;&amp;amp; sudo chown {USERNAME}:remeis /exports/disk1/{USERNAME}&amp;lt;/code&amp;gt;&lt;br /&gt;
* Set the quota (on taurus), using a prototype which has normal quota &amp;lt;code&amp;gt;sudo edquota -p [prototype] [username]&amp;lt;/code&amp;gt;  (normal Quota is 8GB softlimit and 12GB hardlimit; it can be manually edited/shown with edquota -u user)&lt;br /&gt;
* Add the file for automatic forwarding of system emails: &amp;lt;code&amp;gt;/home/username/.forward&amp;lt;/code&amp;gt; which should just contain the mail address of the new user&lt;br /&gt;
* Add the default cshrc to /home/username/.cshrc &lt;br /&gt;
* If desired (in most cases), create a folder for the user at ''/userdata/data/username'' and adjust the permissions with &amp;lt;code&amp;gt;sudo chown username:remeis /userdata/data/username&amp;lt;/code&amp;gt;&lt;br /&gt;
* Send Email to admin about the new user&lt;br /&gt;
&lt;br /&gt;
==== Running Software / Updates / Setups ====&lt;br /&gt;
&lt;br /&gt;
In this section a selection of services and their current configuration is described. &lt;br /&gt;
&lt;br /&gt;
* [[CUPS| CUPS]] (Printing Service)&lt;br /&gt;
* [[Virtual Boxes| Virtual Boxes]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Admin&amp;diff=2497</id>
		<title>Category:Admin</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Admin&amp;diff=2497"/>
		<updated>2022-04-26T10:27:01Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
===== Remeis Admin-Page =====&lt;br /&gt;
&lt;br /&gt;
This page is only internally visible to the Admins.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Lab Course ====&lt;br /&gt;
&lt;br /&gt;
* Before the lab course: &lt;br /&gt;
** check the PCs in the Meridian building:&lt;br /&gt;
*** they should all be functional, broken ones should be replaced&lt;br /&gt;
*** in total we should have about 10 computers available for the students&lt;br /&gt;
** [[setup prakti|Setup the prakti accounts]]&lt;br /&gt;
* [[Computer_Introduction|Introduction to Computers/Linux for Lab Students ]]&lt;br /&gt;
&lt;br /&gt;
==== Serendipitous Issues ====&lt;br /&gt;
&lt;br /&gt;
* [[Login Problems|Typical login problems]]&lt;br /&gt;
* [[Unmet Dependencies|''unmet dependencies'' issue in apt-get]]&lt;br /&gt;
* [[Overflow Filesystem|overflow file system]]&lt;br /&gt;
&lt;br /&gt;
==== Add new Users ====&lt;br /&gt;
* Go to the remeis internal homepage -&amp;gt; admin -&amp;gt; LDAP&lt;br /&gt;
* Fill out the necessary fields, including a valid email address. If possible, also fill out the fields for room and telephone number.&lt;br /&gt;
* Log into LDAP ( https://www.sternwarte.uni-erlangen.de/phpldapadmin/), go to import and copy the text of the previous step. '''Important''': if the user is external, &amp;quot;current&amp;quot; in the first line has to be changed to &amp;quot;external&amp;quot;&lt;br /&gt;
* set the password of the user: Use the LDAP query &amp;lt;code&amp;gt;ldappasswd -H ldap://grus -x -D &amp;quot;cn=admin,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot; -W -S &amp;quot;uid={USERNAME},ou=current,ou=People,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot;&amp;lt;/code&amp;gt; while obviously adjusting the LDAP dn.&lt;br /&gt;
* log in as ubuntuadmin on taurus and create the home directory like that: &amp;lt;code&amp;gt;sudo mkdir /exports/disk1/{USERNAME} &amp;amp;&amp;amp; sudo chown {USERNAME}:remeis /exports/disk1/{USERNAME}&amp;lt;/code&amp;gt;&lt;br /&gt;
* Set the quota (on taurus), using a prototype which has normal quota &amp;lt;code&amp;gt;sudo edquota -p [prototype] [username]&amp;lt;/code&amp;gt;  (normal Quota is 8GB softlimit and 12GB hardlimit; it can be manually edited/shown with edquota -u user)&lt;br /&gt;
* Add the file for automatic forwarding of system emails: &amp;lt;code&amp;gt;/home/username/.forward&amp;lt;/code&amp;gt; which should just contain the mail address of the new user&lt;br /&gt;
* if desired (in most cases), create a folder for the user at ''/userdata/data/username'' and adjust the permissions with &amp;lt;code&amp;gt;sudo chown username:remeis /userdata/data/username&amp;lt;/code&amp;gt;&lt;br /&gt;
* send Email to admin about the new user&lt;br /&gt;
&lt;br /&gt;
==== Running Software / Updates / Setups ====&lt;br /&gt;
&lt;br /&gt;
In this section a selection of services and their current configuration is described. &lt;br /&gt;
&lt;br /&gt;
* [[CUPS| CUPS]] (Printing Service)&lt;br /&gt;
* [[Virtual Boxes| Virtual Boxes]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Skivergnuegen_2022&amp;diff=2449</id>
		<title>Skivergnuegen 2022</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Skivergnuegen_2022&amp;diff=2449"/>
		<updated>2022-01-13T11:18:44Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: /* Fahrer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Remeis Skifahren 2022''' The same procedure as every year ;-) &lt;br /&gt;
Hier werden die wichtigsten organisatorischen Dinge festgehalten. Jeder darf hier gerne editieren; wer keinen Account für das Wiki hat, muss sich bitte an jemanden wenden, der Zugang hat.&lt;br /&gt;
&lt;br /&gt;
[[File:154854 silvretta-montafon-panorama.jpeg|right|700px]]&lt;br /&gt;
&lt;br /&gt;
== Allgemeine Infos ==&lt;br /&gt;
&lt;br /&gt;
*Ferienwohnung(en):&lt;br /&gt;
**Wir kommen wieder unter im [https://www.grandau.at/montafon/zimmer/ferienhaus-enzian Haus Enzian] des [https://www.grandau.at/ Sporthotels Grandau].&lt;br /&gt;
**Adresse des Sporthotel: Montafonerstraße 274a, 6791 St. Gallenkirch, Österreich. Unsere Unterkünfte liegen im Türkeiweg.&lt;br /&gt;
&lt;br /&gt;
*Skigebiet: Montafon (Vorarlberg)&lt;br /&gt;
**Skigebiet Karte: https://winter.intermaps.com/montafon?lang=de&lt;br /&gt;
**Skipass Preise: https://www.montafon.at/de/Service/Bergbahn-Preise-Tickets/Mehrtageskarte-Winter&lt;br /&gt;
**Wer nicht alle 7 Tage Skifahren möchte: Es gibt Angebote wie z.B. 5 aus 7, mit einem solchen Skipass kann man innerhalb von 7 Tagen an 5 beliebigen Tagen skifahren.&lt;br /&gt;
&lt;br /&gt;
*Skiverleih: [http://www.sportharry.at/ Sport Harry], direkt an der Talstation.&lt;br /&gt;
&lt;br /&gt;
== Unterkunft ==&lt;br /&gt;
=== Aufteilung ===&lt;br /&gt;
&lt;br /&gt;
Dieses Jahr gibt es nur die Hütte mit folgenden Zimmern (wir sind insgesamt 12, also bleiben 2 Plätze frei).&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Zimmer&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Insassen&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | 2-er&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | 3-er&lt;br /&gt;
| Thomas&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | 4-er&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | 5-er&lt;br /&gt;
| Eva, Steffen, Nela, Ohle, Flo?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Fahrer ==&lt;br /&gt;
Fahrer können sich hier eintragen und Eckdaten angeben. Diejenige, die mitfahren möchten, sprechen sich mit den Fahrern ab und tragen sich ebenfalls ein. Klärt bitte auch die Gepäcklage, ggf. kann ein anderer Fahrer z.B. Skiausrüstung mitnehmen.&lt;br /&gt;
&lt;br /&gt;
'''Auf der Suche nach einer Mitfahrgelegenheit: '''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Fahrer&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | # Plätze&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Anreise&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Mitfahrer Anreise&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Abreise&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Mitfahrer Abreise&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Skimitnahme&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Kommentar&lt;br /&gt;
|-&lt;br /&gt;
|Eva&lt;br /&gt;
|0(3)&lt;br /&gt;
|Samstag&lt;br /&gt;
|Steffen+Christian&lt;br /&gt;
|Samstag?&lt;br /&gt;
|Steffen+Christian&lt;br /&gt;
|eigene ja&lt;br /&gt;
|Auto is voll&lt;br /&gt;
|-&lt;br /&gt;
|Johannes&lt;br /&gt;
|1+x(2+x?)&lt;br /&gt;
|Samstag&lt;br /&gt;
|&lt;br /&gt;
|Samstag?&lt;br /&gt;
|&lt;br /&gt;
|ja&lt;br /&gt;
|Mietwagen, daher noch x Plätze mehr möglich&lt;br /&gt;
|-&lt;br /&gt;
|Flo&lt;br /&gt;
|3(4)&lt;br /&gt;
|Samstag&lt;br /&gt;
|&lt;br /&gt;
|Samstag?&lt;br /&gt;
|&lt;br /&gt;
|ja&lt;br /&gt;
|fährt von Minga&lt;br /&gt;
|-&lt;br /&gt;
|Max&lt;br /&gt;
|4&lt;br /&gt;
|Samstag&lt;br /&gt;
|Katya, Jakob, Philipp&lt;br /&gt;
|Samstag?&lt;br /&gt;
|Katya, Jakob, Philipp&lt;br /&gt;
|ja&lt;br /&gt;
|voll, fährt von Erlangen&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Schwarzes Brett ==&lt;br /&gt;
&lt;br /&gt;
=== Essen ===&lt;br /&gt;
Hier gibt's den Essensplan, soweit übernommen von den letzten Jahren. Da wir sehr viele Leute sind, sollten wir wieder vorab grob planen, was wir kochen wollen. Wir können einige Dinge in Deutschland besorgen und mitnehmen, es gib aber auch einen nahe gelegen Supermarkt. Generelle Dinge, wie z.B. Gewürze oder Aufstriche für Frühstücksbrötchen könnte man auch mitbringen.&lt;br /&gt;
&lt;br /&gt;
Wer Kochvorschläge oder andere Ideen hat, gerne unten eintragen und kommentieren. Bedenkt, dass die Zubereitung (relativ) einfach sein sollte. Da sich die Liste in den letzten Jahren gut bewaehrt hat, behalten wir sie bei, aber die Reihenfolge/Tage kann man sicher noch hin und her bewegen. Einige (wenige) Sachen müssen wir dann manchmal trotzdem noch beim Spar kaufen, da ja auch der Kühlschrank nur begrenzt Platz hat.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Essenplan:'''&lt;br /&gt;
*Samstag: Spaghetti Bolognese + veg. Bolognese&lt;br /&gt;
*Sonntag: Käse Spätzle&lt;br /&gt;
*Montag: Burritos&lt;br /&gt;
*Dienstag: Risotto&lt;br /&gt;
*Mittwoch: Gulasch&lt;br /&gt;
*Donnerstag: Kartoffeln mit Kräuter-Quark&lt;br /&gt;
*Freitag: Dal mit Reis  (od. Curry mit Suesskartoffeln )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Einkaufsliste hier: https://docs.google.com/document/d/166b_mIXxmoAgcv1upIGremd_36E1fmwwxsQADP2uEv8/&lt;br /&gt;
&lt;br /&gt;
@Christian: Vegane Option entwender selbst mitbringen oder hier mit reinschreiben (falls man die einfach bekommt)&lt;br /&gt;
&lt;br /&gt;
=== Alkohol/Party ===&lt;br /&gt;
&lt;br /&gt;
=== Spiele ===&lt;br /&gt;
 &lt;br /&gt;
Immer lustig sind gemeinsame Spieleabende. Also, wer im Besitz von Gesellschaftsspielen ist, bringt diese gerne mit! Um eine Übersicht zu bekommen auch bitte hier eintragen:&lt;br /&gt;
&lt;br /&gt;
''* Spiele hier eintragen''&lt;br /&gt;
&lt;br /&gt;
=== Sonstiges ===&lt;br /&gt;
&lt;br /&gt;
=== Alternativprogramm ===&lt;br /&gt;
  *  Rodeln (http://www.montafon.at/de/urlaubswelten/echte_naturliebhaber/rodeln)&lt;br /&gt;
  *  Schneeschuhwandern (http://www.montafon.at/schneeschuhwanderungen)&lt;br /&gt;
  *  Therme (http://www.montafon.at/schwimmen), z.B. http://www.aqua-dome.at/de (ca. 130km entfernt!)&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=2170</id>
		<title>Setup prakti accounts</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=2170"/>
		<updated>2021-04-09T13:31:47Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Setup prakti accounts ====&lt;br /&gt;
&lt;br /&gt;
Shortly '''before''' a new lab course begins, initialize the prakti accounts:&lt;br /&gt;
* login as ubuntuadmin on the home server taurus: &amp;lt;pre&amp;gt;ssh ubuntuadmin@taurus&amp;lt;/pre&amp;gt;&lt;br /&gt;
* become root: &amp;lt;pre&amp;gt;sudo su&amp;lt;/pre&amp;gt;&lt;br /&gt;
* go to /exports/disk1/praktikum/intern/setup&lt;br /&gt;
* run the script setup: &amp;lt;pre&amp;gt;./setup&amp;lt;/pre&amp;gt; This script will rsync the template prakti directory to the 21 prakti home directories. It will also remove anything from the prakti home directories not present in the template&lt;br /&gt;
* login as ubuntuadmin on taurus and set new passwords for the prakti accounts:&lt;br /&gt;
** create a new random password, e.g. using http://passwordsgenerator.net/&lt;br /&gt;
** set the password: &amp;lt;pre&amp;gt;ldappasswd -H ldap://grus -x -D &amp;quot;cn=admin,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot; -W -S &amp;quot;uid=USERNAME,ou=Praktikum,ou=People,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot;&amp;lt;/pre&amp;gt; while adjusting USERNAME to the corresponding prakti account.&lt;br /&gt;
** note the password in a file&lt;br /&gt;
** do the above for all prakti accounts (as many as needed). Use different passwords for every account.&lt;br /&gt;
** notify all users at remeis that the accounts have been setup and include the new passwords&lt;br /&gt;
&lt;br /&gt;
'''After''' a block of the lab course is finished, you need to backup the accounts:&lt;br /&gt;
* get confirmation from Jörn, Uli, or Manami that all students are finished and the reports have been submitted.&lt;br /&gt;
* get the PDFs of the final protocols of each group and save them in &amp;lt;pre&amp;gt;/home/praktikum/intern/protocols_archive/&amp;lt;/pre&amp;gt;&lt;br /&gt;
* backup the prakti accounts:&lt;br /&gt;
** login as ubuntuadmin on the home server taurus&lt;br /&gt;
** become root&lt;br /&gt;
** rsync the prakti accounts to your PC, e.g.,&amp;lt;pre&amp;gt;rsync -av /exports/disk1/praktikum/prakti* kreykenbohm@orion:/scratch1/DVD-Burner&amp;lt;/pre&amp;gt;&lt;br /&gt;
** check how much disk space is used by the accounts.&lt;br /&gt;
** if more than ~4 GB are used, remove unneeded files from the prakti accounts, i.e. firefox/chrome caches, Download folders etc.&lt;br /&gt;
** also add the final protocols of each group to the backup&lt;br /&gt;
** get as many blank DVDs as needed &lt;br /&gt;
** backup the accounts to the DVDs, e.g. using Xfburn&lt;br /&gt;
** label the DVDs appropriately (year, spring/fall, block, and disk number (if applicable))&lt;br /&gt;
** get jewel cases for the DVDs from the closet in the server room&lt;br /&gt;
** store the DVDs in closet to the right in the meeting room&lt;br /&gt;
&lt;br /&gt;
'''Note''': the timing is especially important between the first and second block of a lab course. You have very little time to get confirmation that all groups of the first block are finished, back up all accounts, and initialize the accounts for the second block. Sometimes (if some students are not finished in time) the setup can only be done in the morning of the day when the next block begins...&lt;br /&gt;
&lt;br /&gt;
'''Note''': in some rare cases a group does not finish before the next block begins. In this case do '''not'''  initialize all accounts using the setup script, but keep the account of the delayed group and only initialze the other accounts.&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=2169</id>
		<title>Setup prakti accounts</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=2169"/>
		<updated>2021-04-09T12:21:04Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Setup prakti accounts ====&lt;br /&gt;
&lt;br /&gt;
Shortly '''before''' a new lab course begins, initialize the prakti accounts:&lt;br /&gt;
* login as ubuntuadmin on the home server taurus: &amp;lt;pre&amp;gt;ssh ubuntuadmin@taurus&amp;lt;/pre&amp;gt;&lt;br /&gt;
* become root: &amp;lt;pre&amp;gt;sudo su&amp;lt;/pre&amp;gt;&lt;br /&gt;
* go to /exports/disk1/praktikum/intern/setup&lt;br /&gt;
* run the script setup: &amp;lt;pre&amp;gt;./setup&amp;lt;/pre&amp;gt; This script will rsync the template prakti directory to the 21 prakti home directories. It will also remove anything from the prakti home directories not present in the template&lt;br /&gt;
* login as ubuntuadmin on taurus and set new passwords for the prakti accounts:&lt;br /&gt;
** create a new random password, e.g. using http://passwordsgenerator.net/&lt;br /&gt;
** set the password: &amp;lt;pre&amp;gt;ldappasswd -H ldap://grus -x -D &amp;quot;cn=admin,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot; -W -S &amp;quot;uid=USERNAME,ou=Praktikum,ou=People,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot;&amp;lt;/pre&amp;gt; while adjusting USERNAME to the corresponding prakti account.&lt;br /&gt;
** note the password in a file&lt;br /&gt;
** do the above for all prakti accounts (as many as needed). Use different passwords for every account.&lt;br /&gt;
** notify all users at remeis that the accounts have been setup and include the new passwords&lt;br /&gt;
&lt;br /&gt;
'''After''' a block of the lab course is finished, you need to backup the accounts:&lt;br /&gt;
* get confirmation from Jörn, Uli, or Manami that all students are finished and the reports have been submitted.&lt;br /&gt;
* backup the prakti accounts:&lt;br /&gt;
** login as ubuntuadmin on the home server taurus&lt;br /&gt;
** become root&lt;br /&gt;
** rsync the prakti accounts to your PC, e.g.,&amp;lt;pre&amp;gt;rsync -av /exports/disk1/praktikum/prakti* kreykenbohm@orion:/scratch1/DVD-Burner&amp;lt;/pre&amp;gt;&lt;br /&gt;
** check how much disk space is used by the accounts.&lt;br /&gt;
** if more than ~4 GB are used, remove unneeded files from the prakti accounts, i.e. firefox/chrome caches, Download folders etc.&lt;br /&gt;
** get the PDFs of the final protocols of each group and add them to the backup&lt;br /&gt;
** get as many blank DVDs as needed &lt;br /&gt;
** backup the accounts to the DVDs, e.g. using Xfburn&lt;br /&gt;
** label the DVDs appropriately (year, spring/fall, block, and disk number (if applicable))&lt;br /&gt;
** get jewel cases for the DVDs from the closet in the server room&lt;br /&gt;
** store the DVDs in closet to the right in the meeting room&lt;br /&gt;
&lt;br /&gt;
'''Note''': the timing is especially important between the first and second block of a lab course. You have very little time to get confirmation that all groups of the first block are finished, back up all accounts, and initialize the accounts for the second block. Sometimes (if some students are not finished in time) the setup can only be done in the morning of the day when the next block begins...&lt;br /&gt;
&lt;br /&gt;
'''Note''': in some rare cases a group does not finish before the next block begins. In this case do '''not'''  initialize all accounts using the setup script, but keep the account of the delayed group and only initialze the other accounts.&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=2168</id>
		<title>Setup prakti accounts</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=2168"/>
		<updated>2021-04-09T10:07:01Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Setup prakti accounts ====&lt;br /&gt;
&lt;br /&gt;
Shortly '''before''' a new lab course begins, initialize the prakti accounts:&lt;br /&gt;
* login as ubuntuadmin on the home server taurus: &amp;lt;pre&amp;gt;ssh ubuntuadmin@taurus&amp;lt;/pre&amp;gt;&lt;br /&gt;
* become root: &amp;lt;pre&amp;gt;sudo su&amp;lt;/pre&amp;gt;&lt;br /&gt;
* go to /home/praktikum/intern/setup&lt;br /&gt;
* run the script setup: &amp;lt;pre&amp;gt;./setup&amp;lt;/pre&amp;gt; This script will rsync the template prakti directory to the 7 prakti home directories. It will also remove anything from the prakti home directories not present in the template&lt;br /&gt;
* login as ubuntuadmin on taurus and set new passwords for the prakti accounts:&lt;br /&gt;
** create a new random password, e.g. using http://passwordsgenerator.net/&lt;br /&gt;
** set the password: &amp;lt;pre&amp;gt;sudo passwd prakti1&amp;lt;/pre&amp;gt;&lt;br /&gt;
** note the password in a file&lt;br /&gt;
** do the above for all prakti accounts (use different passwords for every account)&lt;br /&gt;
** notify all users at remeis that the accounts have been setup and include the new passwords&lt;br /&gt;
&lt;br /&gt;
'''After''' a block of the lab course is finished, you need to backup the accounts:&lt;br /&gt;
* get confirmation from Jörn, Uli, or Manami that all students are finished and the reports have been submitted.&lt;br /&gt;
* backup the prakti accounts:&lt;br /&gt;
** login as ubuntuadmin on the home server taurus&lt;br /&gt;
** become root&lt;br /&gt;
** rsync the prakti accounts to your PC, e.g.,&amp;lt;pre&amp;gt;rsync -av /exports/disk1/praktikum/prakti* kreykenbohm@orion:/scratch1/DVD-Burner&amp;lt;/pre&amp;gt;&lt;br /&gt;
** check how much disk space is used by the accounts.&lt;br /&gt;
** if more than ~4 GB are used, remove unneeded files from the prakti accounts, i.e. firefox/chrome caches, Download folders etc.&lt;br /&gt;
** get the PDFs of the final protocols of each group and add them to the backup&lt;br /&gt;
** get as many blank DVDs as needed &lt;br /&gt;
** backup the accounts to the DVDs, e.g. using k3b&lt;br /&gt;
** label the DVDs appropriately (year, spring/fall, block, and disk number (if applicable))&lt;br /&gt;
** get jewel cases for the DVDs from the closet in the server room&lt;br /&gt;
** store the DVDs in closet to the right in the meeting room&lt;br /&gt;
&lt;br /&gt;
'''Note''': the timing is especially important between the first and second block of a lab course. You have very little time to get confirmation that all groups of the first block are finished, back up all accounts, and initialize the accounts for the second block. Sometimes (if some students are not finished in time) the setup can only be done in the morning of the day when the next block begins...&lt;br /&gt;
&lt;br /&gt;
'''Note''': in some rare cases a group does not finish before the next block begins. In this case do '''not'''  initialize all accounts using the setup script, but keep the account of the delayed group and only initialze the other accounts.&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=2167</id>
		<title>Setup prakti accounts</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=2167"/>
		<updated>2021-04-08T12:24:38Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Setup prakti accounts ====&lt;br /&gt;
&lt;br /&gt;
Shortly '''before''' a new lab course begins, initialize the prakti accounts:&lt;br /&gt;
* login as ubuntuadmin on the home server taurus: &amp;lt;pre&amp;gt;ssh ubuntuadmin@taurus&amp;lt;/pre&amp;gt;&lt;br /&gt;
* become root: &amp;lt;pre&amp;gt;sudo su&amp;lt;/pre&amp;gt;&lt;br /&gt;
* go to /home/praktikum/intern/setup&lt;br /&gt;
* run the script setup: &amp;lt;pre&amp;gt;./setup&amp;lt;/pre&amp;gt; This script will rsync the template prakti directory to the 7 prakti home directories. It will also remove anything from the prakti home directories not present in the template&lt;br /&gt;
* login as ubuntuadmin on taurus and set new passwords for the prakti accounts:&lt;br /&gt;
** create a new random password, e.g. using http://passwordsgenerator.net/&lt;br /&gt;
** set the password: &amp;lt;pre&amp;gt;sudo passwd prakti1&amp;lt;/pre&amp;gt;&lt;br /&gt;
** note the password in a file&lt;br /&gt;
** do the above for all prakti accounts (use different passwords for every account)&lt;br /&gt;
** notify all users at remeis that the accounts have been setup and include the new passwords&lt;br /&gt;
&lt;br /&gt;
'''After''' a block of the lab course is finished, you need to backup the accounts:&lt;br /&gt;
* get confirmation from Jörn, Uli, or Manami that all students are finished and the reports have been submitted.&lt;br /&gt;
* backup the prakti accounts:&lt;br /&gt;
** login as ubuntuadmin on the home server taurus&lt;br /&gt;
** become root&lt;br /&gt;
** rsync the prakti accounts to your PC, e.g.,&amp;lt;pre&amp;gt;rsync -av /exports/disk1/praktikum/prakti* kreykenbohm@orion:/scratch1/DVD-Burner&amp;lt;/pre&amp;gt;&lt;br /&gt;
** check how much disk space is used by the accounts.&lt;br /&gt;
** if more than ~4 GB are used, remove unneeded files from the prakti accounts, i.e. firefox/chrome caches, Download folders etc.&lt;br /&gt;
** get as many blank DVDs as needed &lt;br /&gt;
** backup the accounts to the DVDs, e.g. using k3b&lt;br /&gt;
** label the DVDs appropriately (year, spring/fall, block, and disk number (if applicable))&lt;br /&gt;
** get jewel cases for the DVDs from the closet in the server room&lt;br /&gt;
** store the DVDs in closet to the right in the meeting room&lt;br /&gt;
&lt;br /&gt;
'''Note''': the timing is especially important between the first and second block of a lab course. You have very little time to get confirmation that all groups of the first block are finished, back up all accounts, and initialize the accounts for the second block. Sometimes (if some students are not finished in time) the setup can only be done in the morning of the day when the next block begins...&lt;br /&gt;
&lt;br /&gt;
'''Note''': in some rare cases a group does not finish before the next block begins. In this case do '''not'''  initialize all accounts using the setup script, but keep the account of the delayed group and only initialze the other accounts.&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=PhD_hat_Simon&amp;diff=2145</id>
		<title>PhD hat Simon</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=PhD_hat_Simon&amp;diff=2145"/>
		<updated>2021-02-05T13:55:45Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Simon's defense is planned in a few weeks.&lt;br /&gt;
&lt;br /&gt;
Biggest problem: How to gather all things to put on the hat.&lt;br /&gt;
Idea: People that commute between Bamberg &amp;amp; Erlangen (or pass Erlangen) can deliver things. (Max, Jakob, Ralf, ...)&lt;br /&gt;
&lt;br /&gt;
'''Work things''':&lt;br /&gt;
* The &amp;quot;Slurm Snail&amp;quot;&lt;br /&gt;
* Photo from Astroplate III conference dinner with Simon, Aakash and David&lt;br /&gt;
* HV-stars (maybe one holding a beer??)&lt;br /&gt;
* &amp;quot;Blue Giants&amp;quot; in Andromeda&lt;br /&gt;
* Guided tours and VHS courses [Ralf]&lt;br /&gt;
* Observing (and vacation) in Chile [Ralf]&lt;br /&gt;
* violent typing [Ralf]&lt;br /&gt;
* Search and replace with a stapler [I have maybe a photo Eugenia]&lt;br /&gt;
* Star catalogue query tool&lt;br /&gt;
&lt;br /&gt;
'''Private things''':&lt;br /&gt;
* Spruz label&lt;br /&gt;
* Bierwanderung (A map of a path with breweries? Maybe the &amp;quot;certificate&amp;quot; with stamps?)&lt;br /&gt;
* Whiskey tastings [Ralf] &lt;br /&gt;
* Seminars on Fluid Dynamics [Ralf]&lt;br /&gt;
* Chartreuse&lt;br /&gt;
* Beer brewing&lt;br /&gt;
* Skiing? (Skier paper model, artificial snow)&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Admin&amp;diff=2114</id>
		<title>Category:Admin</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Admin&amp;diff=2114"/>
		<updated>2020-10-23T13:46:53Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
===== Remeis Admin-Page =====&lt;br /&gt;
&lt;br /&gt;
This page is only internally visible to the Admins.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Lab Course ====&lt;br /&gt;
&lt;br /&gt;
* Before the lab course: &lt;br /&gt;
** check the PCs in the Meridian building:&lt;br /&gt;
*** they should all be functional, broken ones should be replaced&lt;br /&gt;
*** in total we should have about 10 computers available for the students&lt;br /&gt;
** [[setup prakti|Setup the prakti accounts]]&lt;br /&gt;
* [[Computer_Introduction|Introduction to Computers/Linux for Lab Students ]]&lt;br /&gt;
&lt;br /&gt;
==== Serendipitous Issues ====&lt;br /&gt;
&lt;br /&gt;
* [[Login Problems|Typical login problems]]&lt;br /&gt;
* [[Unmet Dependencies|''unmet dependencies'' issue in apt-get]]&lt;br /&gt;
* [[Overflow Filesystem|overflow file system]]&lt;br /&gt;
&lt;br /&gt;
==== Add new Users ====&lt;br /&gt;
* Go to the remeis internal homepage -&amp;gt; admin -&amp;gt; LDAP&lt;br /&gt;
* Fill out the necessary fields, including a valid email address. If possible, also fill out the fields for room and telephone number.&lt;br /&gt;
* Log into LDAP ( https://www.sternwarte.uni-erlangen.de/phpldapadmin/), go to import and copy the text of the previous step. '''Important''': if the user is external, &amp;quot;current&amp;quot; in the first line has to be changed to &amp;quot;external&amp;quot;&lt;br /&gt;
* set the password of the user: Use the LDAP query &amp;lt;code&amp;gt;ldappasswd -H ldap://grus -x -D &amp;quot;cn=admin,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot; -W -S &amp;quot;uid={USERNAME},ou=current,ou=People,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot;&amp;lt;/code&amp;gt; while obviously adjusting the LDAP dn.&lt;br /&gt;
* log in as ubuntuadmin on taurus and create the home directory like that: &amp;lt;code&amp;gt;sudo mkdir /exports/disk1/{USERNAME} &amp;amp;&amp;amp; sudo chown {USERNAME}:remeis /exports/disk1/{USERNAME}&amp;lt;/code&amp;gt;&lt;br /&gt;
* Set the quota (on taurus), using a prototype which has normal quota &amp;lt;code&amp;gt;sudo edquota -p [prototype] [username]&amp;lt;/code&amp;gt;  (normal Quota is 8GB softlimit and 12GB hardlimit; it can be manually edited/shown with edquota -u user)&lt;br /&gt;
* Add the file for automatic forwarding of system emails: &amp;lt;code&amp;gt;~/.forward&amp;lt;/code&amp;gt; which should just contain the mail address of the new user&lt;br /&gt;
* if desired (in most cases), create a folder for the user at ''/userdata/data/[username]'' and adjust the permissions with &amp;lt;code&amp;gt;sudo chown username:remeis username&amp;lt;/code&amp;gt;&lt;br /&gt;
* send Email to admin about the new user&lt;br /&gt;
&lt;br /&gt;
==== Running Software / Updates / Setups ====&lt;br /&gt;
&lt;br /&gt;
In this section a selection of services and their current configuration is described. &lt;br /&gt;
&lt;br /&gt;
* [[CUPS| CUPS]] (Printing Service)&lt;br /&gt;
* [[Virtual Boxes| Virtual Boxes]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Admin&amp;diff=2113</id>
		<title>Category:Admin</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Admin&amp;diff=2113"/>
		<updated>2020-10-20T10:06:45Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: /* Add new Users */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
===== Remeis Admin-Page =====&lt;br /&gt;
&lt;br /&gt;
This page is only internally visible to the Admins.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Lab Course ====&lt;br /&gt;
&lt;br /&gt;
* Before the lab course: &lt;br /&gt;
** check the PCs in the Meridian building:&lt;br /&gt;
*** they should all be functional, broken ones should be replaced&lt;br /&gt;
*** in total we should have about 10 computers available for the students&lt;br /&gt;
** [[setup prakti|Setup the prakti accounts]]&lt;br /&gt;
* [[Computer_Introduction|Introduction to Computers/Linux for Lab Students ]]&lt;br /&gt;
&lt;br /&gt;
==== Serendipitous Issues ====&lt;br /&gt;
&lt;br /&gt;
* [[Login Problems|Typical login problems]]&lt;br /&gt;
* [[Unmet Dependencies|''unmet dependencies'' issue in apt-get]]&lt;br /&gt;
* [[Overflow Filesystem|overflow file system]]&lt;br /&gt;
&lt;br /&gt;
==== Add new Users ====&lt;br /&gt;
* Go to the remeis internal homepage -&amp;gt; admin -&amp;gt; LDAP&lt;br /&gt;
* Fill out the necessary fields, including a valid email address. If possible, also fill out the fields for room and telephone number.&lt;br /&gt;
* Log into LDAP ( https://www.sternwarte.uni-erlangen.de/intern/phpldapadmin/), go to import and copy the text of the previous step. '''Important''': if the user is external, &amp;quot;current&amp;quot; in the first line has to be changed to &amp;quot;external&amp;quot;&lt;br /&gt;
* set the password of the user: Use the LDAP query &amp;lt;code&amp;gt;ldappasswd -H ldap://grus -x -D &amp;quot;cn=admin,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot; -W -S &amp;quot;uid={USERNAME},ou=current,ou=People,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot;&amp;lt;/code&amp;gt; while obviously adjusting the LDAP dn.&lt;br /&gt;
* log in as ubuntuadmin on taurus and create the home directory like that: &amp;lt;code&amp;gt;sudo mkdir /exports/disk1/{USERNAME} &amp;amp;&amp;amp; sudo chown {USERNAME}:remeis /exports/disk1/{USERNAME}&amp;lt;/code&amp;gt;&lt;br /&gt;
* Set the quota (on taurus), using a prototype which has normal quota &amp;lt;code&amp;gt;sudo edquota -p [prototype] [username]&amp;lt;/code&amp;gt;  (normal Quota is 8GB softlimit and 12GB hardlimit; it can be manually edited/shown with edquota -u user)&lt;br /&gt;
* Add the file for automatic forwarding of system emails: &amp;lt;code&amp;gt;~/.forward&amp;lt;/code&amp;gt; which should just contain the mail address of the new user&lt;br /&gt;
* if desired (in most cases), create a folder for the user at ''/userdata/data/[username]'' and adjust the permissions with &amp;lt;code&amp;gt;sudo chown username:remeis username&amp;lt;/code&amp;gt;&lt;br /&gt;
* send Email to admin about the new user&lt;br /&gt;
&lt;br /&gt;
==== Running Software / Updates / Setups ====&lt;br /&gt;
&lt;br /&gt;
In this section a selection of services and their current configuration is described. &lt;br /&gt;
&lt;br /&gt;
* [[CUPS| CUPS]] (Printing Service)&lt;br /&gt;
* [[Virtual Boxes| Virtual Boxes]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Admin&amp;diff=2112</id>
		<title>Category:Admin</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Admin&amp;diff=2112"/>
		<updated>2020-10-20T10:06:33Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: /* Add new Users */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
===== Remeis Admin-Page =====&lt;br /&gt;
&lt;br /&gt;
This page is only internally visible to the Admins.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Lab Course ====&lt;br /&gt;
&lt;br /&gt;
* Before the lab course: &lt;br /&gt;
** check the PCs in the Meridian building:&lt;br /&gt;
*** they should all be functional, broken ones should be replaced&lt;br /&gt;
*** in total we should have about 10 computers available for the students&lt;br /&gt;
** [[setup prakti|Setup the prakti accounts]]&lt;br /&gt;
* [[Computer_Introduction|Introduction to Computers/Linux for Lab Students ]]&lt;br /&gt;
&lt;br /&gt;
==== Serendipitous Issues ====&lt;br /&gt;
&lt;br /&gt;
* [[Login Problems|Typical login problems]]&lt;br /&gt;
* [[Unmet Dependencies|''unmet dependencies'' issue in apt-get]]&lt;br /&gt;
* [[Overflow Filesystem|overflow file system]]&lt;br /&gt;
&lt;br /&gt;
==== Add new Users ====&lt;br /&gt;
* Go to the remeis internal homepage -&amp;gt; admin -&amp;gt; LDAP&lt;br /&gt;
* Fill out the necessary fields, including a valid email address. If possible, also fill out the fields for room and telephone number.&lt;br /&gt;
* Log into LDAP ( https://www.sternwarte.uni-erlangen.de/intern/phpldapadmin/), go to import and copy the text of the previous step. '''Important''': if the user is external, &amp;quot;current&amp;quot; in the first line has to be changed to &amp;quot;external&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* set the password of the user: Use the LDAP query &amp;lt;code&amp;gt;ldappasswd -H ldap://grus -x -D &amp;quot;cn=admin,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot; -W -S &amp;quot;uid={USERNAME},ou=current,ou=People,dc=sternwarte,dc=uni-erlangen,dc=de&amp;quot;&amp;lt;/code&amp;gt; while obviously adjusting the LDAP dn.&lt;br /&gt;
* log in as ubuntuadmin on taurus and create the home directory like that: &amp;lt;code&amp;gt;sudo mkdir /exports/disk1/{USERNAME} &amp;amp;&amp;amp; sudo chown {USERNAME}:remeis /exports/disk1/{USERNAME}&amp;lt;/code&amp;gt;&lt;br /&gt;
* Set the quota (on taurus), using a prototype which has normal quota &amp;lt;code&amp;gt;sudo edquota -p [prototype] [username]&amp;lt;/code&amp;gt;  (normal Quota is 8GB softlimit and 12GB hardlimit; it can be manually edited/shown with edquota -u user)&lt;br /&gt;
* Add the file for automatic forwarding of system emails: &amp;lt;code&amp;gt;~/.forward&amp;lt;/code&amp;gt; which should just contain the mail address of the new user&lt;br /&gt;
* if desired (in most cases), create a folder for the user at ''/userdata/data/[username]'' and adjust the permissions with &amp;lt;code&amp;gt;sudo chown username:remeis username&amp;lt;/code&amp;gt;&lt;br /&gt;
* send Email to admin about the new user&lt;br /&gt;
&lt;br /&gt;
==== Running Software / Updates / Setups ====&lt;br /&gt;
&lt;br /&gt;
In this section a selection of services and their current configuration is described. &lt;br /&gt;
&lt;br /&gt;
* [[CUPS| CUPS]] (Printing Service)&lt;br /&gt;
* [[Virtual Boxes| Virtual Boxes]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=X2Go_Remote_Desktop&amp;diff=2009</id>
		<title>X2Go Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=X2Go_Remote_Desktop&amp;diff=2009"/>
		<updated>2020-04-24T09:46:57Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
A remote desktop connection allows you to work with the full desktop, but remotely from home. Currently all desktop computers at Remeis support a remote desktop connection with '''X2Go'''.&lt;br /&gt;
&lt;br /&gt;
=== Installation ===&lt;br /&gt;
&lt;br /&gt;
All you need to do is to install the X2Go Client on your laptop, available for Linux, Mac, and Windows. This page shows how to do this: [https://wiki.x2go.org/doku.php/doc:installation:x2goclient X2Go Client Download and Installation]&lt;br /&gt;
&lt;br /&gt;
=== Usage ===&lt;br /&gt;
&lt;br /&gt;
Start the X2Go Client an click on &amp;quot;New Session&amp;quot;&lt;br /&gt;
&lt;br /&gt;
In the client software you have to specify the following things:&lt;br /&gt;
* Host:  &amp;lt;desktop-computer&amp;gt;.sternwarte.uni-erlangen.de   (fill in &amp;lt;desktop-computer&amp;gt; with the machine you typically use when working at the observatory)&lt;br /&gt;
* Login: your remeis username&lt;br /&gt;
* Session type: XFCE   &lt;br /&gt;
* if you have ssh-keys installed, you can also check the box with &amp;quot;try auto login&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This could then look like the following (in case of user dauser on host corona):&lt;br /&gt;
&lt;br /&gt;
[[File:x2goclient_session_example.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Save the session, type in the session name into &amp;quot;Session&amp;quot;, click enter and type in your password. This will launch the XFCE environment on the Remeis machine.&lt;br /&gt;
&lt;br /&gt;
[[Category:Working Remotely]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=1880</id>
		<title>Setup prakti accounts</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=1880"/>
		<updated>2019-08-22T14:42:59Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: /* Setup prakti accounts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Setup prakti accounts ====&lt;br /&gt;
&lt;br /&gt;
Shortly '''before''' a new lab course begins, initialize the prakti accounts:&lt;br /&gt;
* login as ubuntuadmin on the home server taurus: &amp;lt;pre&amp;gt;ssh ubuntuadmin@taurus&amp;lt;/pre&amp;gt;&lt;br /&gt;
* become root: &amp;lt;pre&amp;gt;sudo su&amp;lt;/pre&amp;gt;&lt;br /&gt;
* go to /home/praktikum/intern/setup&lt;br /&gt;
* run the script setup: &amp;lt;pre&amp;gt;./setup&amp;lt;/pre&amp;gt; This script will rsync the template prakti directory to the 7 prakti home directories. It will also remove anything from the prakti home directories not present in the template&lt;br /&gt;
* login as ubuntuadmin on taurus and set new passwords for the prakti accounts:&lt;br /&gt;
** create a new random password, e.g. using http://passwordsgenerator.net/&lt;br /&gt;
** set the password: &amp;lt;pre&amp;gt;sudo passwd prakti1&amp;lt;/pre&amp;gt;&lt;br /&gt;
** note the password in a file&lt;br /&gt;
** do the above for all prakti accounts (use different passwords for every account)&lt;br /&gt;
** notify all users at remeis that the accounts have been setup and include the new passwords&lt;br /&gt;
&lt;br /&gt;
'''After''' a block of the lab course is finished, you need to backup the accounts:&lt;br /&gt;
* get confirmation from Jörn, Uli, or Manami that all students are finished and the reports have been submitted.&lt;br /&gt;
* backup the prakti accounts:&lt;br /&gt;
** login as ubuntuadmin on the home server taurus&lt;br /&gt;
** become root&lt;br /&gt;
** rsync the prakti accounts to your PC, e.g.,&amp;lt;pre&amp;gt;rsync -av /home/praktikum/prakti* kreykenbohm@orion:/scratch1/DVD-Burner&amp;lt;/pre&amp;gt;&lt;br /&gt;
** check how much disk space is used by the accounts.&lt;br /&gt;
** if more than ~4 GB are used, remove unneeded files from the prakti accounts, i.e. firefox/chrome caches, Download folders etc.&lt;br /&gt;
** get as many blank DVDs as needed &lt;br /&gt;
** backup the accounts to the DVDs, e.g. using k3b&lt;br /&gt;
** label the DVDs appropriately (year, spring/fall, block, and disk number (if applicable))&lt;br /&gt;
** get jewel cases for the DVDs from the closet in the server room&lt;br /&gt;
** store the DVDs in closet to the right in the meeting room&lt;br /&gt;
&lt;br /&gt;
'''Note''': the timing is especially important between the first and second block of a lab course. You have very little time to get confirmation that all groups of the first block are finished, back up all accounts, and initialize the accounts for the second block. Sometimes (if some students are not finished in time) the setup can only be done in the morning of the day when the next block begins...&lt;br /&gt;
&lt;br /&gt;
'''Note''': in some rare cases a group does not finish before the next block begins. In this case do '''not'''  initialize all accounts using the setup script, but keep the account of the delayed group and only initialze the other accounts.&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=1879</id>
		<title>Setup prakti accounts</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Setup_prakti_accounts&amp;diff=1879"/>
		<updated>2019-08-22T14:41:06Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Setup prakti accounts ====&lt;br /&gt;
&lt;br /&gt;
Shortly '''before''' a new lab course begins, initialize the prakti accounts:&lt;br /&gt;
* login as ubuntuadmin on the home server taurus: &amp;lt;pre&amp;gt;ssh ubuntuadmin@taurus&amp;lt;/pre&amp;gt;&lt;br /&gt;
* become root: &amp;lt;pre&amp;gt;sudo su&amp;lt;/pre&amp;gt;&lt;br /&gt;
* go to /home/praktikum/intern/setup&lt;br /&gt;
* run the script setup: &amp;lt;pre&amp;gt;./setup&amp;lt;/pre&amp;gt; This script will rsync the template prakti directory to the 7 prakti home directories. It will also remove anything from the prakti home directories not present in the template&lt;br /&gt;
* set new passwords for the prakti accounts:&lt;br /&gt;
** create a new random password, e.g. using http://passwordsgenerator.net/&lt;br /&gt;
** set the password: &amp;lt;pre&amp;gt;sudo passwd prakti1&amp;lt;/pre&amp;gt;&lt;br /&gt;
** note the password in a file&lt;br /&gt;
** do the above for all prakti accounts (use different passwords for every account)&lt;br /&gt;
** notify all users at remeis that the accounts have been setup and include the new passwords&lt;br /&gt;
&lt;br /&gt;
'''After''' a block of the lab course is finished, you need to backup the accounts:&lt;br /&gt;
* get confirmation from Jörn, Uli, or Manami that all students are finished and the reports have been submitted.&lt;br /&gt;
* backup the prakti accounts:&lt;br /&gt;
** login as ubuntuadmin on the home server taurus&lt;br /&gt;
** become root&lt;br /&gt;
** rsync the prakti accounts to your PC, e.g.,&amp;lt;pre&amp;gt;rsync -av /home/praktikum/prakti* kreykenbohm@orion:/scratch1/DVD-Burner&amp;lt;/pre&amp;gt;&lt;br /&gt;
** check how much disk space is used by the accounts.&lt;br /&gt;
** if more than ~4 GB are used, remove unneeded files from the prakti accounts, i.e. firefox/chrome caches, Download folders etc.&lt;br /&gt;
** get as many blank DVDs as needed &lt;br /&gt;
** backup the accounts to the DVDs, e.g. using k3b&lt;br /&gt;
** label the DVDs appropriately (year, spring/fall, block, and disk number (if applicable))&lt;br /&gt;
** get jewel cases for the DVDs from the closet in the server room&lt;br /&gt;
** store the DVDs in closet to the right in the meeting room&lt;br /&gt;
&lt;br /&gt;
'''Note''': the timing is especially important between the first and second block of a lab course. You have very little time to get confirmation that all groups of the first block are finished, back up all accounts, and initialize the accounts for the second block. Sometimes (if some students are not finished in time) the setup can only be done in the morning of the day when the next block begins...&lt;br /&gt;
&lt;br /&gt;
'''Note''': in some rare cases a group does not finish before the next block begins. In this case do '''not'''  initialize all accounts using the setup script, but keep the account of the delayed group and only initialze the other accounts.&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=PhD_hat_for_Maria&amp;diff=1863</id>
		<title>PhD hat for Maria</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=PhD_hat_for_Maria&amp;diff=1863"/>
		<updated>2019-05-16T09:07:54Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: /* building plan */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== PhD Hat for Maria ==&lt;br /&gt;
&lt;br /&gt;
====== list of ideas ======&lt;br /&gt;
&lt;br /&gt;
* colored hair&lt;br /&gt;
* shoes and socks of different color&lt;br /&gt;
* kids as little thesis helpers&lt;br /&gt;
* card/board games&lt;br /&gt;
* wiskey&lt;br /&gt;
&lt;br /&gt;
* line measurements (remeis intern poll)&lt;br /&gt;
* timing analysis (power spectra)&lt;br /&gt;
* constellations&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== building plan ==&lt;br /&gt;
&lt;br /&gt;
====== Private ======&lt;br /&gt;
&lt;br /&gt;
* firefighter&lt;br /&gt;
** firetruck with hose as tassel : Paper model + cord + nozzle ('''**Max**''') &lt;br /&gt;
** a beeper with button to start alarm (Jakob takes a look at this) &lt;br /&gt;
* Cycling from Erlangen to Remeis&lt;br /&gt;
** ESTW smokestack + canal leading to observatory + bike (with trailer) + figure (maybe fierfighter figure by playmobile?) with colored hair and shoes of different color ('''**Basti**''')&lt;br /&gt;
* whiskey (ardberg supernova)&lt;br /&gt;
&lt;br /&gt;
====== Work ======&lt;br /&gt;
&lt;br /&gt;
* Cyg X-1 (Draft Idea: build BH + Clumpy wind {clumps are sheep shaped} [wool &amp;amp; LEDS?] + accretion disk also sheep but colored wool?)&lt;br /&gt;
** BH as half sphere (styrofoam size of a tennis ball) ('''**Max**''')&lt;br /&gt;
** accretion disk made of colored wool ('''**Katya**''')&lt;br /&gt;
** clumpy wind: wool sheep on wire [similar like [https://i.pinimg.com/originals/3a/1e/e8/3a1ee866215e17f927e184652dc9a895.jpg Shaun das /Schaf]] ('''**Andrea**''')&lt;br /&gt;
* extended work on paper: LightCurve with words/day or git commits/day (get git repo) ('''**Christian**''')&lt;br /&gt;
* Web admin: extensive fights with WordPress -&amp;gt; small print for the side of the hat ('''**Matthias**''')&lt;br /&gt;
* CCD lab instructor: best of CCD protocols printout [ccd protocol layout]&lt;br /&gt;
* Teilchenweltvermittler (-&amp;gt; little &amp;quot;alien&amp;quot; particle stickers for the side of the hat; Images: /home/falkner/work/PhDhat)&lt;br /&gt;
* first-aider @ remeis: first-aid kit &amp;amp; defibrillator ('''**Max**''')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=PhD_hat_for_Maria&amp;diff=1862</id>
		<title>PhD hat for Maria</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=PhD_hat_for_Maria&amp;diff=1862"/>
		<updated>2019-05-14T14:33:55Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: /* Work */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== PhD Hat for Maria ==&lt;br /&gt;
&lt;br /&gt;
====== list of ideas ======&lt;br /&gt;
&lt;br /&gt;
* colored hair&lt;br /&gt;
* shoes and socks of different color&lt;br /&gt;
* kids as little thesis helpers&lt;br /&gt;
* card/board games&lt;br /&gt;
* wiskey&lt;br /&gt;
&lt;br /&gt;
* line measurements (remeis intern poll)&lt;br /&gt;
* timing analysis (power spectra)&lt;br /&gt;
* constellations&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== building plan ==&lt;br /&gt;
&lt;br /&gt;
====== Private ======&lt;br /&gt;
&lt;br /&gt;
* firefighter&lt;br /&gt;
** firetruck with hose as tassel : Paper model + cord + nozzle ('''**Max**''') &lt;br /&gt;
** a beeper with button to start alarm&lt;br /&gt;
* Cycling from Erlangen to Remeis&lt;br /&gt;
** ESTW smokestack + canal leading to observatory + bike (with trailer) + figure (maybe fierfighter figure by playmobile?) with colored hair and shoes of different color ('''**Basti**''')&lt;br /&gt;
* whiskey (ardberg supernova)&lt;br /&gt;
&lt;br /&gt;
====== Work ======&lt;br /&gt;
&lt;br /&gt;
* Cyg X-1 (Draft Idea: build BH + Clumpy wind {clumps are sheep shaped} [wool &amp;amp; LEDS?] + accretion disk also sheep but colored wool?)&lt;br /&gt;
** BH as half sphere (styrofoam size of a tennis ball) ('''**Max**''')&lt;br /&gt;
** accretion disk made of colored wool ('''**Katya**''')&lt;br /&gt;
** clumpy wind: wool sheep on wire [similar like [https://i.pinimg.com/originals/3a/1e/e8/3a1ee866215e17f927e184652dc9a895.jpg Shaun das /Schaf]] ('''**Andrea**''')&lt;br /&gt;
* extended work on paper: LightCurve with words/day or git commits/day (get git repo) ('''**Christian**''')&lt;br /&gt;
* Web admin: extensive fights with WordPress -&amp;gt; small print for the side of the hat ('''**Matthias**''')&lt;br /&gt;
* CCD lab instructor: best of CCD protocols printout [ccd protocol layout]&lt;br /&gt;
* Teilchenweltvermittler (-&amp;gt; little &amp;quot;alien&amp;quot; particle stickers for the side of the hat; Images: /home/falkner/work/PhDhat)&lt;br /&gt;
* first-aider @ remeis: first-aid kit &amp;amp; defibrillator ('''**Max**''')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=PhD_hat_for_Maria&amp;diff=1861</id>
		<title>PhD hat for Maria</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=PhD_hat_for_Maria&amp;diff=1861"/>
		<updated>2019-05-14T14:08:24Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: /* Work */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== PhD Hat for Maria ==&lt;br /&gt;
&lt;br /&gt;
====== list of ideas ======&lt;br /&gt;
&lt;br /&gt;
* colored hair&lt;br /&gt;
* shoes and socks of different color&lt;br /&gt;
* kids as little thesis helpers&lt;br /&gt;
* card/board games&lt;br /&gt;
* wiskey&lt;br /&gt;
&lt;br /&gt;
* line measurements (remeis intern poll)&lt;br /&gt;
* timing analysis (power spectra)&lt;br /&gt;
* constellations&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== building plan ==&lt;br /&gt;
&lt;br /&gt;
====== Private ======&lt;br /&gt;
&lt;br /&gt;
* firefighter&lt;br /&gt;
** firetruck with hose as tassel : Paper model + cord + nozzle ('''**Max**''') &lt;br /&gt;
** a beeper with button to start alarm&lt;br /&gt;
* Cycling from Erlangen to Remeis&lt;br /&gt;
** ESTW smokestack + canal leading to observatory + bike (with trailer) + figure (maybe fierfighter figure by playmobile?) with colored hair and shoes of different color ('''**Basti**''')&lt;br /&gt;
* whiskey (ardberg supernova)&lt;br /&gt;
&lt;br /&gt;
====== Work ======&lt;br /&gt;
&lt;br /&gt;
* Cyg X-1 (Draft Idea: build BH + Clumpy wind {clumps are sheep shaped} [wool &amp;amp; LEDS?] + accretion disk also sheep but colored wool?)&lt;br /&gt;
** BH as half sphere (styrofoam size of a tennis ball) ('''**Max**''')&lt;br /&gt;
** accretion disk made of colored wool&lt;br /&gt;
** clumpy wind: wool sheep on wire [similar like [https://i.pinimg.com/originals/3a/1e/e8/3a1ee866215e17f927e184652dc9a895.jpg Shaun das /Schaf]] ('''**Andrea**''')&lt;br /&gt;
* extended work on paper: LightCurve with words/day or git commits/day (get git repo) ('''**Christian**''')&lt;br /&gt;
* Web admin: extensive fights with WordPress -&amp;gt; small print for the side of the hat ('''**Matthias**''')&lt;br /&gt;
* CCD lab instructor: best of CCD protocols printout [ccd protocol layout]&lt;br /&gt;
* Teilchenweltvermittler (-&amp;gt; little &amp;quot;alien&amp;quot; particle stickers for the side of the hat; Images: /home/falkner/work/PhDhat)&lt;br /&gt;
* first-aider @ remeis: first-aid kit &amp;amp; defibrillator ('''**Max**''')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Admin&amp;diff=1708</id>
		<title>Category:Admin</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Admin&amp;diff=1708"/>
		<updated>2018-10-19T08:36:28Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin]]&lt;br /&gt;
&lt;br /&gt;
===== Remeis Admin-Page =====&lt;br /&gt;
&lt;br /&gt;
This page is only internally visible to the Admins.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Lab Course ====&lt;br /&gt;
&lt;br /&gt;
* Before the lab course: &lt;br /&gt;
** check the PCs in the Meridian building:&lt;br /&gt;
*** they should all be functional, broken ones should be replaced&lt;br /&gt;
*** in total we should have about 10 computers available for the students&lt;br /&gt;
** [[setup prakti|Setup the prakti accounts]]&lt;br /&gt;
* [[Computer_Introduction|Introduction to Computers/Linux for Lab Students ]]&lt;br /&gt;
&lt;br /&gt;
==== Serendipitous Issues ====&lt;br /&gt;
&lt;br /&gt;
* [[Login Problems|Typical login problems]]&lt;br /&gt;
* [[Unmet Dependencies|''unmet dependencies'' issue in apt-get]]&lt;br /&gt;
* [[Overflow Filesystem|overflow file system]]&lt;br /&gt;
&lt;br /&gt;
==== Add new Users ====&lt;br /&gt;
* Go to the remeis internal homepage -&amp;gt; admin -&amp;gt; LDAP&lt;br /&gt;
* Fill out the necessary fields, including a valid email address. If possible, also fill out the fields for room and telephone number.&lt;br /&gt;
* Log into LDAP, go to import and copy the text of the previous step. '''Important''': if the user is external, &amp;quot;current&amp;quot; in the first line has to be changed to &amp;quot;external&amp;quot;&lt;br /&gt;
* set the password of the user on taurus: &amp;lt;code&amp;gt;sudo passwd [username]&amp;lt;/code&amp;gt;&lt;br /&gt;
* log in: &amp;lt;code&amp;gt;ssh username@taurus&amp;lt;/code&amp;gt;&lt;br /&gt;
* currently only for X-ray group members: activate the X-ray scripts in the .cshrc&lt;br /&gt;
* Set the quota (on taurus), using a prototype which has normal quota &amp;lt;code&amp;gt;sudo edquota -p [prototype] [username]&amp;lt;/code&amp;gt;  (normal Quota is 8GB softlimit and 12GB hardlimit; it can be manually edited/shown with edquota -u user)&lt;br /&gt;
* if desired (in most cases), create a folder for the user at ''/userdata/data/[username]'' and adjust the permissions with &amp;lt;code&amp;gt;sudo chown username:remeis username&amp;lt;/code&amp;gt;&lt;br /&gt;
* send Email to admin about the new user&lt;br /&gt;
&lt;br /&gt;
==== Running Software / Updates / Setups ====&lt;br /&gt;
&lt;br /&gt;
In this section a selection of services and their current configuration is described. &lt;br /&gt;
&lt;br /&gt;
* [[CUPS| CUPS]] (Printing Service)&lt;br /&gt;
* [[Virtual Boxes| Virtual Boxes]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Internal&amp;diff=1433</id>
		<title>Category:Internal</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Category:Internal&amp;diff=1433"/>
		<updated>2018-05-02T11:58:06Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page (and all other pages in the namespace 'intern') can only be viewed when logged-in.&lt;br /&gt;
&lt;br /&gt;
=== Administrative stuff ===&lt;br /&gt;
&lt;br /&gt;
* '''[[Ocotber 24th: Open House]]'''&lt;br /&gt;
 &lt;br /&gt;
* [[Common Practices at Remeis]]&lt;br /&gt;
&lt;br /&gt;
==== Travels ====&lt;br /&gt;
&lt;br /&gt;
* [[How to combine business and private travel]]&lt;br /&gt;
&lt;br /&gt;
=== Lab course ===&lt;br /&gt;
&lt;br /&gt;
[[How the lab manuals are structured and how you can edit them]]&lt;br /&gt;
&lt;br /&gt;
[[Planning page for the 40cm imaging experiment]]&lt;br /&gt;
&lt;br /&gt;
[[Planning page for the CCD lab ]]&lt;br /&gt;
&lt;br /&gt;
[[Tables to fill in dates and comments for every group]]&lt;br /&gt;
&lt;br /&gt;
[[Location of the lab equipment]]&lt;br /&gt;
&lt;br /&gt;
[[What to mention in the computer introduction]]&lt;br /&gt;
&lt;br /&gt;
=== Lit Club ===&lt;br /&gt;
[[List of Literature Club Talks]]&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
[[List of servers in the Remeis Cluster]]&lt;br /&gt;
&lt;br /&gt;
=== Mac Minis ===&lt;br /&gt;
&lt;br /&gt;
Here are some short information about the Mac Minis in Erlangen:&lt;br /&gt;
* Link to the ecap wiki (works only in erlangen or in bamberg) - https://doku.ecap.physik.uni-erlangen.de/ &lt;br /&gt;
* When you login in the keyboard layout will always be english&lt;br /&gt;
* The size of your $HOME directory is limited to 20 GB - only store files here, which cannot be reproduced e.g. scripts, etc..&lt;br /&gt;
* Store all the other stuff in /local/scratch&lt;br /&gt;
* Following programs will be installed on our Mac Minis:&lt;br /&gt;
**ISIS&lt;br /&gt;
**IDL&lt;br /&gt;
**HEADAS(FTOOLS)&lt;br /&gt;
**DS9&lt;br /&gt;
=== eROSITA ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[eROSITA - Bamberg]]&lt;br /&gt;
* [[Coding standards]]&lt;br /&gt;
* [[Needed functions and libraries]]&lt;br /&gt;
* [[Q&amp;amp;A]]&lt;br /&gt;
* [[Preprocessing]]&lt;br /&gt;
* [[TODO]]&lt;br /&gt;
* [[fpipe-Treffen Tübingen 28.10.2010]]&lt;br /&gt;
* [[length of datatypes in C]]&lt;br /&gt;
&lt;br /&gt;
=== TANAMI ===&lt;br /&gt;
&lt;br /&gt;
* '''[[TANAMI| TANAMI - Start]]'''&lt;br /&gt;
* '''[[TANAMI - public]]'''&lt;br /&gt;
&lt;br /&gt;
=== Proposals ===&lt;br /&gt;
&lt;br /&gt;
When submitting a proposal for satellite observations usually a list of earlier &amp;lt;u&amp;gt;successful&amp;lt;/u&amp;gt; proposals is added. To make it easier to find those relevant for the individual observatory and the scientific aim of the current proposal, [[Proposals| here]] is a list of proposals our group was involved in. Please include title, PI/CoIs, cycle and publications based on the observation.&lt;br /&gt;
&lt;br /&gt;
=== Public Outreach ===&lt;br /&gt;
&lt;br /&gt;
* In general, [mailto:Katharina.Leiter@physik.uni-wuerzburg.de Katha Leiter] is the responsible person for outreach in the group of M. Kadler in Wuerzburg. You may want to talk to her.&lt;br /&gt;
* Guided Tours and Public Outreach at Remeis&lt;br /&gt;
** [[Guided Tours and Public Outreach | general informations and knowledge base]] for guides&lt;br /&gt;
** [http://www.sternwarte.uni-erlangen.de/intern/Kalender/index.php online calender] - where the tours have to be listed in addition to the whiteboad in the copymachine office&lt;br /&gt;
** [[available presentation and videos]]&lt;br /&gt;
* [[popular science]] - how to explain &amp;quot;what we do&amp;quot; and physical phenomena to the public&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous ===&lt;br /&gt;
&lt;br /&gt;
[[cinema | Movie schedule for the Remeis Movie Club]]&lt;br /&gt;
&lt;br /&gt;
[[phd_hat_list | List of future PhD's for hat matters]]&lt;br /&gt;
&lt;br /&gt;
[[RCL]]&lt;br /&gt;
&lt;br /&gt;
[[Remeis Gardening]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=PhD_hat_for_Victoria&amp;diff=1421</id>
		<title>PhD hat for Victoria</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=PhD_hat_for_Victoria&amp;diff=1421"/>
		<updated>2018-05-02T11:28:06Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== What to put on the hat (and who is building the parts) ===&lt;br /&gt;
&lt;br /&gt;
* Victoria's Head size: still to be measured!&lt;br /&gt;
* Base hat construction: Sebastian&lt;br /&gt;
&lt;br /&gt;
==== The hat ====&lt;br /&gt;
&lt;br /&gt;
* Tassel (Quaste): coffee beans and coins '''(Maria)'''&lt;br /&gt;
* illuminated IBIS coded mask on top (switched on by the tassel?) '''(Fritz, Tommy)'''&lt;br /&gt;
* Cygnus in soft AND hard state '''(Andreas, Matthias)'''&lt;br /&gt;
* RXTE observing PSDs, Spectra and Count-Rate '''()'''&lt;br /&gt;
* IBIS mask connected with hard state via polarization&lt;br /&gt;
* RXTE-ASM lightcurve around the hat '''(Natalie)'''&lt;br /&gt;
* train around the hat, missing car (Zugabteil) '''(Maria, Natalie)'''&lt;br /&gt;
* Dublin story: closed door with toilet and pillow '''(Tobi)'''&lt;br /&gt;
* lab protocol with pop-up-dragon '''(Matthias)'''&lt;br /&gt;
* books and vegetables&lt;br /&gt;
* Marvel hero(s)&lt;br /&gt;
* VHS logo&lt;br /&gt;
&lt;br /&gt;
==== Brainstorming ====&lt;br /&gt;
&lt;br /&gt;
* coffee-machine&lt;br /&gt;
* &amp;quot;dragon&amp;quot; (what the lab-students used to call her)&lt;br /&gt;
* bare-feet&lt;br /&gt;
* books&lt;br /&gt;
* vegetable box&lt;br /&gt;
* comics (she is a big fan of them, e.g. the MARVEL stuff?)&lt;br /&gt;
* Cygnus X-1 (her main studied source)&lt;br /&gt;
* timing analysis (mainly with RXTE, Fourier transforms, PSDs, etc.)&lt;br /&gt;
* INTEGRAL (annoying analysis problems, coded masks)&lt;br /&gt;
* contributed to X-ray polarization (perhaps combine some cinema polarization glasses with some X-ray images, such as of some bones)&lt;br /&gt;
* LitClub&lt;br /&gt;
&lt;br /&gt;
==== Other ideas ====&lt;br /&gt;
&lt;br /&gt;
* should we try to seriously establish a Nachpruefung&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=PhD_hat_for_Victoria&amp;diff=1418</id>
		<title>PhD hat for Victoria</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=PhD_hat_for_Victoria&amp;diff=1418"/>
		<updated>2018-05-02T11:27:00Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;=== What to put on the hat (and who is building the parts) ===  * Victoria's Head size: still to be measured! * Base hat construction: Sebastian  ==== The hat ====  * Tassel (...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== What to put on the hat (and who is building the parts) ===&lt;br /&gt;
&lt;br /&gt;
* Victoria's Head size: still to be measured!&lt;br /&gt;
* Base hat construction: Sebastian&lt;br /&gt;
&lt;br /&gt;
==== The hat ====&lt;br /&gt;
&lt;br /&gt;
* Tassel (Quaste): coffee beans and coins **(Maria)**&lt;br /&gt;
* illuminated IBIS coded mask on top (switched on by the tassel?) **(Fritz, Tommy)**&lt;br /&gt;
* Cygnus in soft AND hard state **(Andreas, Matthias)**&lt;br /&gt;
* RXTE observing PSDs, Spectra and Count-Rate **()**&lt;br /&gt;
* IBIS mask connected with hard state via polarization&lt;br /&gt;
* RXTE-ASM lightcurve around the hat **(Natalie)**&lt;br /&gt;
* train around the hat, missing car (Zugabteil) **(Maria, Natalie)**&lt;br /&gt;
* Dublin story: closed door with toilet and pillow **(Tobi)**&lt;br /&gt;
* lab protocol with pop-up-dragon **(Matthias)**&lt;br /&gt;
* books and vegetables&lt;br /&gt;
* Marvel hero(s)&lt;br /&gt;
* VHS logo&lt;br /&gt;
&lt;br /&gt;
==== Brainstorming ====&lt;br /&gt;
&lt;br /&gt;
* coffee-machine&lt;br /&gt;
* &amp;quot;dragon&amp;quot; (what the lab-students used to call her)&lt;br /&gt;
* bare-feet&lt;br /&gt;
* books&lt;br /&gt;
* vegetable box&lt;br /&gt;
* comics (she is a big fan of them, e.g. the MARVEL stuff?)&lt;br /&gt;
* Cygnus X-1 (her main studied source)&lt;br /&gt;
* timing analysis (mainly with RXTE, Fourier transforms, PSDs, etc.)&lt;br /&gt;
* INTEGRAL (annoying analysis problems, coded masks)&lt;br /&gt;
* contributed to X-ray polarization (perhaps combine some cinema polarization glasses with some X-ray images, such as of some bones)&lt;br /&gt;
* LitClub&lt;br /&gt;
&lt;br /&gt;
==== Other ideas ====&lt;br /&gt;
&lt;br /&gt;
* should we try to seriously establish a Nachpruefung&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=SRT&amp;diff=1414</id>
		<title>SRT</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=SRT&amp;diff=1414"/>
		<updated>2018-05-02T11:23:00Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;For general instructions about how to use the SRTs see the page in the Remeis Wiki: The Small Radio Telescope (SRT)  == Maintenance == === Mechanics...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;For general instructions about how to use the SRTs see the page in the Remeis Wiki: [[Small_Radio_Telescope|The Small Radio Telescope (SRT)]]&lt;br /&gt;
&lt;br /&gt;
== Maintenance ==&lt;br /&gt;
=== Mechanics ===&lt;br /&gt;
Both of the SRTs need some service from time to time. Apparently there should always be enough grease on the inner part of the elevation arm otherwise it gets stuck. Therefore it is necessary to apply some about each month. At this opportunity all other joints and the cables should be checked too. Since in the last years there was water accumulated in the big black box of the mount as well as in the box at the end of the elevation arm these should be opened sometimes to check if those are dry.&lt;br /&gt;
=== Cronjobs ===&lt;br /&gt;
The PCs controlling the SRTs are cygnus for SRT1 and musca for SRT2. Both of them have a cronjob running which moves the telescopes every day at 12:30 around each axis. Two times the elevation and one time the right azimuth. This whole procedure takes about 25 minutes to finish. It does not matter if the software controlling the telescopes is running or not. The cronjobs cancel at their own if the software is detected to be running. Of course, if one telescope is pointing to azimuth 358° then it takes about 5 minutes until it is ready for operation again.&lt;br /&gt;
== Software ==&lt;br /&gt;
Up to this point only the old software written in Java works properly.&lt;br /&gt;
=== Commands ===&lt;br /&gt;
* '''srt''' starts the software on cygnus for SRT1 via X-window-forwarding&lt;br /&gt;
* '''srt1''' starts the software on cygnus for SRT1 via X-window-forwarding&lt;br /&gt;
* '''srt2''' starts the software on musca for SRT2 via X-window-forwarding&lt;br /&gt;
* '''srt_start''' starts the Java software on the locally used machine&lt;br /&gt;
&amp;lt;pre&amp;gt;/data/system/software/IBMJava2-142/bin/java -cp $dir srt 0 &amp;lt;/pre&amp;gt;&lt;br /&gt;
essentially is the real part of Java which runs the interface as the class '''srt''' in &lt;br /&gt;
&amp;lt;pre&amp;gt;/data/system/software/IBMJava2-142/&amp;lt;/pre&amp;gt;&lt;br /&gt;
It searches for the used serial port of the PC. If another instance of the program is running the software will not start. &lt;br /&gt;
Of course it is not possible to use use one telescope for two sessions. If the software is started and another group is using it there will be an error on the command line which shows the username of who is using it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=RCL&amp;diff=1401</id>
		<title>RCL</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=RCL&amp;diff=1401"/>
		<updated>2018-05-02T11:09:31Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;=== RCL - internal information ===   There might be password protection on some RCL pages. These credentials should allow you to login:  Username: remeis  Password: Dr. Karl...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== RCL - internal information === &lt;br /&gt;
&lt;br /&gt;
There might be password protection on some RCL pages. These credentials should allow you to login:&lt;br /&gt;
&lt;br /&gt;
Username: remeis&lt;br /&gt;
&lt;br /&gt;
Password: Dr. Karl&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Poster&amp;diff=1399</id>
		<title>Poster</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Poster&amp;diff=1399"/>
		<updated>2018-05-02T11:07:28Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Printing Posters in Erlangen ===&lt;br /&gt;
&lt;br /&gt;
[[File:Postersubmission.png|300px|thumb|right]]&lt;br /&gt;
&lt;br /&gt;
If you want your poster to be printed at the RRZE, login to this [https://www.sso.uni-erlangen.de/simplesaml/module.php/core/loginuserpass.php?AuthState=_1c65b177aa8e6fd132551452235e366ebc2933dc77%3Ahttps%3A%2F%2Fwww.sso.uni-erlangen.de%2Fsimplesaml%2Fsaml2%2Fidp%2FSSOService.php%3Fspentityid%3Dhttps%253A%252F%252Fwww.poster.rrze.uni-erlangen.de%252Fsimplesaml%252Fmodule.php%252Fsaml%252Fsp%252Fmetadata.php%252Fdefault-sp%26cookieTime%3D1466692391%26RelayState%3Dhttps%253A%252F%252Fwww.poster.rrze.uni-erlangen.de%252Fupload%252Fcustomer.shtml website] with your FAU account, use &amp;quot;Dr. Karl Remeis Observatory &amp;amp; ECAP&amp;quot; as institution and &amp;quot;MPAI000&amp;quot; as customer ID.&lt;br /&gt;
&lt;br /&gt;
Then follow the instructions.&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
https://www.poster.rrze.uni-erlangen.de/welcome&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Poster&amp;diff=1398</id>
		<title>Poster</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Poster&amp;diff=1398"/>
		<updated>2018-05-02T11:05:19Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Printing Posters in Erlangen ===&lt;br /&gt;
&lt;br /&gt;
If you want your poster to be printed at the RRZE, login to this [https://www.sso.uni-erlangen.de/simplesaml/module.php/core/loginuserpass.php?AuthState=_1c65b177aa8e6fd132551452235e366ebc2933dc77%3Ahttps%3A%2F%2Fwww.sso.uni-erlangen.de%2Fsimplesaml%2Fsaml2%2Fidp%2FSSOService.php%3Fspentityid%3Dhttps%253A%252F%252Fwww.poster.rrze.uni-erlangen.de%252Fsimplesaml%252Fmodule.php%252Fsaml%252Fsp%252Fmetadata.php%252Fdefault-sp%26cookieTime%3D1466692391%26RelayState%3Dhttps%253A%252F%252Fwww.poster.rrze.uni-erlangen.de%252Fupload%252Fcustomer.shtml website] with your FAU account, use &amp;quot;Dr. Karl Remeis Observatory &amp;amp; ECAP&amp;quot; as institution and &amp;quot;MPAI000&amp;quot; as customer ID.&lt;br /&gt;
&lt;br /&gt;
Then follow the instructions.&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
https://www.poster.rrze.uni-erlangen.de/welcome&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Poster&amp;diff=1394</id>
		<title>Poster</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Poster&amp;diff=1394"/>
		<updated>2018-05-02T11:02:27Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: /* Printing Posters in Erlangen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Printing Posters in Erlangen ===&lt;br /&gt;
&lt;br /&gt;
If you want your poster to be printed at the RRZE, login to this [https://www.sso.uni-erlangen.de/simplesaml/module.php/core/loginuserpass.php?AuthState=_1c65b177aa8e6fd132551452235e366ebc2933dc77%3Ahttps%3A%2F%2Fwww.sso.uni-erlangen.de%2Fsimplesaml%2Fsaml2%2Fidp%2FSSOService.php%3Fspentityid%3Dhttps%253A%252F%252Fwww.poster.rrze.uni-erlangen.de%252Fsimplesaml%252Fmodule.php%252Fsaml%252Fsp%252Fmetadata.php%252Fdefault-sp%26cookieTime%3D1466692391%26RelayState%3Dhttps%253A%252F%252Fwww.poster.rrze.uni-erlangen.de%252Fupload%252Fcustomer.shtml website] with your FAU account, use &amp;quot;Dr. Karl Remeis Observatory &amp;amp; ECAP&amp;quot; as institution and &amp;quot;MPAI000&amp;quot; as customer ID.&lt;br /&gt;
&lt;br /&gt;
Then follow the instructions.&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
https://www.poster.rrze.uni-erlangen.de/welcome&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal Printing Posters in Erlangen]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Poster&amp;diff=1393</id>
		<title>Poster</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Poster&amp;diff=1393"/>
		<updated>2018-05-02T10:57:46Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Printing Posters in Erlangen ===&lt;br /&gt;
&lt;br /&gt;
If you want your poster to be printed at the RRZE, login to this [https://www.sso.uni-erlangen.de/simplesaml/module.php/core/loginuserpass.php?AuthState=_1c65b177aa8e6fd132551452235e366ebc2933dc77%3Ahttps%3A%2F%2Fwww.sso.uni-erlangen.de%2Fsimplesaml%2Fsaml2%2Fidp%2FSSOService.php%3Fspentityid%3Dhttps%253A%252F%252Fwww.poster.rrze.uni-erlangen.de%252Fsimplesaml%252Fmodule.php%252Fsaml%252Fsp%252Fmetadata.php%252Fdefault-sp%26cookieTime%3D1466692391%26RelayState%3Dhttps%253A%252F%252Fwww.poster.rrze.uni-erlangen.de%252Fupload%252Fcustomer.shtml website] with your FAU account, use &amp;quot;Dr. Karl Remeis Observatory &amp;amp; ECAP&amp;quot; as institution and &amp;quot;MPAI000&amp;quot; as customer ID.&lt;br /&gt;
&lt;br /&gt;
Then follow the instructions.&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
https://www.poster.rrze.uni-erlangen.de/welcome&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Poster&amp;diff=1392</id>
		<title>Poster</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Poster&amp;diff=1392"/>
		<updated>2018-05-02T10:56:47Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;=== Printing Posters in Erlangen ===  If you want your poster to be printed at the RRZE, login to this [https://www.sso.uni-erlangen.de/simplesaml/module.php/core/loginuserpas...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Printing Posters in Erlangen ===&lt;br /&gt;
&lt;br /&gt;
If you want your poster to be printed at the RRZE, login to this [https://www.sso.uni-erlangen.de/simplesaml/module.php/core/loginuserpass.php?AuthState=_1c65b177aa8e6fd132551452235e366ebc2933dc77%3Ahttps%3A%2F%2Fwww.sso.uni-erlangen.de%2Fsimplesaml%2Fsaml2%2Fidp%2FSSOService.php%3Fspentityid%3Dhttps%253A%252F%252Fwww.poster.rrze.uni-erlangen.de%252Fsimplesaml%252Fmodule.php%252Fsaml%252Fsp%252Fmetadata.php%252Fdefault-sp%26cookieTime%3D1466692391%26RelayState%3Dhttps%253A%252F%252Fwww.poster.rrze.uni-erlangen.de%252Fupload%252Fcustomer.shtml website]&lt;br /&gt;
[[Category:Internal]] with your FAU account, use &amp;quot;Dr. Karl Remeis Observatory &amp;amp; ECAP&amp;quot; as institution and &amp;quot;MPAI000&amp;quot; as customer ID.&lt;br /&gt;
&lt;br /&gt;
Then follow the instructions.&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
https://www.poster.rrze.uni-erlangen.de/welcome&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=ISIS_introduction_for_the_new_bachelor_students&amp;diff=935</id>
		<title>ISIS introduction for the new bachelor students</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=ISIS_introduction_for_the_new_bachelor_students&amp;diff=935"/>
		<updated>2018-04-12T14:26:41Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;== ISIS introduction for the new bachelor students ==   === General language features === * arrays ** operators &amp;amp; mathematical functions ** &amp;lt;code&amp;gt;where&amp;lt;/code&amp;gt; * structs  === P...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== ISIS introduction for the new bachelor students == &lt;br /&gt;
&lt;br /&gt;
=== General language features ===&lt;br /&gt;
* arrays&lt;br /&gt;
** operators &amp;amp; mathematical functions&lt;br /&gt;
** &amp;lt;code&amp;gt;where&amp;lt;/code&amp;gt;&lt;br /&gt;
* structs&lt;br /&gt;
&lt;br /&gt;
=== Plotting with ISIS ===&lt;br /&gt;
* &amp;lt;code&amp;gt;[o][h]plot&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;{x,y}label&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;{x,y}range&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;{x,y}log&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;color&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;linestyle&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;connect_points&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pointstyle&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;multiplot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Data analysis ===&lt;br /&gt;
* FITS files&lt;br /&gt;
* histograms&lt;br /&gt;
&lt;br /&gt;
=== Fitting with ISIS ===&lt;br /&gt;
* &amp;lt;code&amp;gt;load_data&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;group&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;group_data&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;rebin_data&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;[x]notice[_en]&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;fit_fun&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;set_par&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;edit_par&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;fit_counts&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;define_counts&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Isis / Slang]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Parallel_Error_Calculation_using_MPI_and_SLmpi&amp;diff=933</id>
		<title>Parallel Error Calculation using MPI and SLmpi</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Parallel_Error_Calculation_using_MPI_and_SLmpi&amp;diff=933"/>
		<updated>2018-04-12T14:19:33Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;=== Parallel Error Calculation with MPI and SLmpi ===  * For interactive error calculation in isis you can use &amp;lt;code&amp;gt;conf&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;conf_loop&amp;lt;/code&amp;gt; (using Isis_Slaves.n...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Parallel Error Calculation with MPI and SLmpi ===&lt;br /&gt;
&lt;br /&gt;
* For interactive error calculation in isis you can use &amp;lt;code&amp;gt;conf&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;conf_loop&amp;lt;/code&amp;gt; (using Isis_Slaves.num_slaves+1 cores on the host machine).&lt;br /&gt;
* Fast possibility: &amp;lt;code&amp;gt;mpi_fit_pars&amp;lt;/code&amp;gt;. It's a routine in the isisscripts, which uses MPI to calculate the confidence intervals in parallel on different machines.&lt;br /&gt;
&lt;br /&gt;
* Requirements:       &lt;br /&gt;
*# SLmpi installed: [http://www.sternwarte.uni-erlangen.de/git.public/?p=slmpi.git http://www.sternwarte.uni-erlangen.de/git.public/?p=slmpi.git]&lt;br /&gt;
*# A Portable Batch System (PBS), e.g., Torque (see [[torque:start|Torque]] for an Introduction)&lt;br /&gt;
*# the Remeis-isisscripts [http://www.sternwarte.uni-erlangen.de/git.public/?p=isisscripts http://www.sternwarte.uni-erlangen.de/git.public/?p=isisscripts]&lt;br /&gt;
    &lt;br /&gt;
* Create an isisscript to be submitted via PBS:       &lt;br /&gt;
*# load and group data, load best fit model&lt;br /&gt;
*# call &amp;lt;code&amp;gt;result = mpi_fit_pars([pars]);&amp;lt;/code&amp;gt;&lt;br /&gt;
*# if you have the isisscripts you can store everything in a fits-file via &amp;lt;code&amp;gt;fits_save_fit(filename,result)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* How to start the Job on the Remeis Cluster?&lt;br /&gt;
** Create a job-file with mpi-Option (e.g. by &amp;lt;code&amp;gt;qsub_array -p %%--%%mpi file.com&amp;lt;/code&amp;gt;)&lt;br /&gt;
** the Command File &amp;lt;code&amp;gt;file.com&amp;lt;/code&amp;gt; contains the list of scripts to be executed.&lt;br /&gt;
** Set nodes to the number of free parameters. (See below for an example).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash &lt;br /&gt;
#PBS -S /bin/bash -V &lt;br /&gt;
#PBS -t 0-0\%10000 &lt;br /&gt;
#PBS -l nodes=11 &lt;br /&gt;
#PBS -l walltime=03:00:00 &lt;br /&gt;
#PBS -N file.com &lt;br /&gt;
#PBS -o example_script.out  &lt;br /&gt;
#PBS -e example_script.err &lt;br /&gt;
cd /home/user/datadir &lt;br /&gt;
COMMAND[0]=&amp;quot;mpiexec isis-script example_script.sl&amp;quot; &lt;br /&gt;
/usr/bin/nice -n +15 ${COMMAND[$PBS_ARRAYID]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Isis / Slang]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Self-value_management&amp;diff=928</id>
		<title>Self-value management</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Self-value_management&amp;diff=928"/>
		<updated>2018-04-12T14:03:50Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;'''This page is under construction'''   Although the code below is very short (52 lines), its advantages are enormous. Thus, the explanation takes a while and is not written y...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''This page is under construction''' &lt;br /&gt;
&lt;br /&gt;
Although the code below is very short (52 lines), its advantages are enormous. Thus, the explanation takes a while and is not written yet ;-) &lt;br /&gt;
&lt;br /&gt;
It combines &lt;br /&gt;
* [[isis:structfun|structures with functions]] and&lt;br /&gt;
* [[isis:functionnest|function nesting]] &lt;br /&gt;
to prevent values to be calculated multiple times (e.g. cosine of an angle). This is especially very helpful for more complex codes, in which there are many 'shared' values, as the user only has to think about it once when setting up the '''svm-object'''. Afterwards the '''svm-object''' does all the work on its one!&lt;br /&gt;
&lt;br /&gt;
*  '''NOTES:'''&lt;br /&gt;
** Runtime is around twice as slow as compared to same code coded straight forward, which is due to the function calling!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
private define define_retrun_function( return_fields ){&lt;br /&gt;
  if(typeof(return_fields) != Array_Type) return_fields = [return_fields];&lt;br /&gt;
  &lt;br /&gt;
  variable f;&lt;br /&gt;
  foreach f ( return_fields )&lt;br /&gt;
    eval(sprintf(&amp;quot;private define return_%s(obj) { return obj.data.%s; };&amp;quot;, f, f));&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
private define define_calculation_function( field, execute ){&lt;br /&gt;
  if(typeof(field) != Array_Type) field = [field];&lt;br /&gt;
&lt;br /&gt;
  variable tempfun = &amp;quot;&amp;quot;;&lt;br /&gt;
  variable f,ff;&lt;br /&gt;
  foreach f (field){&lt;br /&gt;
    tempfun += sprintf(&amp;quot;private define calculate_%s(obj) {&amp;quot;, f);&lt;br /&gt;
    tempfun += sprintf(&amp;quot;(%s) = %s;&amp;quot;, strjoin(&amp;quot;obj.data.&amp;quot;+field, &amp;quot;,&amp;quot;), execute);&lt;br /&gt;
    foreach ff (field)&lt;br /&gt;
      tempfun += sprintf(&amp;quot;obj.%s = &amp;amp;return_%s;&amp;quot;, ff, ff);&lt;br /&gt;
    tempfun += sprintf(&amp;quot;return obj.data.%s;&amp;quot;, f);&lt;br /&gt;
    tempfun += &amp;quot;}&amp;quot;;&lt;br /&gt;
    eval(tempfun);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
private define reset_fields( obj ){&lt;br /&gt;
  variable fieldnames = get_struct_field_names( obj.data );&lt;br /&gt;
  variable f;&lt;br /&gt;
  foreach f (fieldnames){&lt;br /&gt;
    set_struct_field( obj, f, eval(sprintf(&amp;quot;&amp;amp;calculate_%s&amp;quot;, f)));&lt;br /&gt;
    set_struct_field( obj.data, f, NULL );&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
define object_init() {&lt;br /&gt;
  variable fieldnames = [ &amp;quot;sint&amp;quot;,&amp;quot;cost&amp;quot;,&amp;quot;fun&amp;quot; ];&lt;br /&gt;
  define_retrun_function( fieldnames );&lt;br /&gt;
  define_calculation_function([&amp;quot;sint&amp;quot;,&amp;quot;cost&amp;quot;], &amp;quot;sincos(obj.input.theta)&amp;quot;);&lt;br /&gt;
  define_calculation_function( &amp;quot;fun&amp;quot;, &amp;quot;obj.cost()+obj.sint()&amp;quot;);&lt;br /&gt;
  &lt;br /&gt;
  % Actual object&lt;br /&gt;
  variable obj = struct_combine(struct{&lt;br /&gt;
    data = struct_combine(fieldnames), % Storage for field values&lt;br /&gt;
    input = struct{ theta = 0. },&lt;br /&gt;
    reset = &amp;amp;reset_fields&lt;br /&gt;
  },fieldnames); % Adding defined fields&lt;br /&gt;
&lt;br /&gt;
  % Initialize object fields with pointers to calulating functions&lt;br /&gt;
  reset_fields( obj );&lt;br /&gt;
  &lt;br /&gt;
  return obj;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, let's have a look on the output of the following commands:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
isis&amp;gt; variable a = object_init;&lt;br /&gt;
isis&amp;gt; print(a);&lt;br /&gt;
{data=Struct_Type with 3 fields,&lt;br /&gt;
 input=Struct_Type with 1 fields,&lt;br /&gt;
 sint=&amp;amp;calculate_sint,&lt;br /&gt;
 cost=&amp;amp;calculate_cost,&lt;br /&gt;
 fun=&amp;amp;calculate_fun}&lt;br /&gt;
isis&amp;gt; a.fun();&lt;br /&gt;
1.0&lt;br /&gt;
isis&amp;gt; print(a);&lt;br /&gt;
{data=Struct_Type with 3 fields,&lt;br /&gt;
 input=Struct_Type with 1 fields,&lt;br /&gt;
 sint=&amp;amp;return_sint,&lt;br /&gt;
 cost=&amp;amp;return_cost,&lt;br /&gt;
 fun=&amp;amp;return_fun}&lt;br /&gt;
isis&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Isis / Slang]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=References_to_variables&amp;diff=927</id>
		<title>References to variables</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=References_to_variables&amp;diff=927"/>
		<updated>2018-04-12T13:58:10Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;=== References to variables === (after an email by Manfred)  This should explain difference between modifying an array (which is passed by reference into functions) and creati...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== References to variables ===&lt;br /&gt;
(after an email by Manfred)&lt;br /&gt;
&lt;br /&gt;
This should explain difference between modifying an array (which&lt;br /&gt;
is passed by reference into functions) and creating a new array (whose&lt;br /&gt;
scope is only local to your functions and will therefore be&lt;br /&gt;
garbage-collected after the function has exited).&lt;br /&gt;
&lt;br /&gt;
Whenever you modify only elements of an array a, i.e., when you use&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
a[where(a&amp;gt;2)] +=1;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
a[*] +=1;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
the reference to the array as a whole is not changed, which means that&lt;br /&gt;
you really modify the original array.&lt;br /&gt;
&lt;br /&gt;
Whenever you assign a new value to the entire variable `a', i.e. for&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
a += 1;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
which is just an abbreviation for&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
a = a + 1;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
or when you make an explict copy:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
a = @a;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
you lose the reference to the original array.&lt;br /&gt;
It doesn't matter that your new value happens to again be an array,&lt;br /&gt;
whose values are closely related to the original array... &lt;br /&gt;
&lt;br /&gt;
Therefore, if you plan on modifying an array that was passed to the function through a qualifier, make sure you actually make a copy of the array&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
variable tim = @qualifier(&amp;quot;tim&amp;quot;,[0.,0.]);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
such that changes are not passed on to the array outside the function. Otherwise, you might be in for an unpleasant surprise. &lt;br /&gt;
&lt;br /&gt;
Dereferencing a reference to a variable or function (the qualifier function in this example) would be:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
variable qref = &amp;amp;qualifier;&lt;br /&gt;
variable bla = (@qref)(&amp;quot;tim&amp;quot;,[0,0]);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The fact that reassigning entire arrays requires the creation of a new&lt;br /&gt;
array, followed by -- if there are no further references to the original&lt;br /&gt;
one -- garbage-collection of the old array (i.e. freeing its memory), is&lt;br /&gt;
the reason why building up arrays in loops is, though convenient, so&lt;br /&gt;
slow (for sufficiently large N) compared to building up lists, and&lt;br /&gt;
should therefore be avoided:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
variable a = Double_Type[0];&lt;br /&gt;
_for i (0, N)   a = [a, f(i)];  % creates a new&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
vs.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
variable l = {};&lt;br /&gt;
_for i (0, N)   list_append(l, f(i));  % work on one list&lt;br /&gt;
variable a = list_to_array(l);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(If you're interested, see a crux:~hanke/array_copy for a live demo of&lt;br /&gt;
the O(n^2) slowdown of `a=[a,f(i)]'.)&lt;br /&gt;
&lt;br /&gt;
[[Category:Isis / Slang]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Ternary_operator_%3F&amp;diff=923</id>
		<title>Ternary operator ?</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Ternary_operator_%3F&amp;diff=923"/>
		<updated>2018-04-12T13:53:20Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;The ternary operator can be used to asign values to a variable depending on a condition: &amp;lt;pre&amp;gt; variable myvariable = condition ? value_if_true : value_if_false &amp;lt;/pre&amp;gt; This is...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The ternary operator can be used to asign values to a variable depending on a condition:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
variable myvariable = condition ? value_if_true : value_if_false&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
This is equivalent to&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
variable myvariable;&lt;br /&gt;
if (condition)&lt;br /&gt;
  myvariable = value_if_true;&lt;br /&gt;
else&lt;br /&gt;
  myvariable = value_if_false;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
As you can see, using the ternary operator results in very concise code. It communicates that one (''and only one'') variable is assigned and thus prevents errors like unintentionally using different variables in the two branches of the if-else-statement. However, the ternary operator might confuse people not familiar with it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
There are a ''few'' cases, where the ternary operator seems to be slower than using an if condition. The reason is, so far, unknown and might be related to the underlying CPU-architecture and/or compiler, which has been used to compile S-Lang. In most cases, however, there is no difference in runtime or even a gain in speed when using the ternary operator. Especially if you run code on several machines in parallel, the ternary operator is the method of choice.&lt;br /&gt;
&lt;br /&gt;
Anyway, you may use this code to check which way is faster on ''your'' machine. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
variable Tif=0, Ttern=0, n, N=1000, i, iMax=1000000, b;&lt;br /&gt;
_for n (0, N-1)&lt;br /&gt;
{&lt;br /&gt;
  tic; _for i (0, iMax) if  (i==0) b=5; else b=7 ; Tif  +=toc;&lt;br /&gt;
  tic; _for i (0, iMax) b = (i==0 ?  5 :       7); Ttern+=toc;&lt;br /&gt;
}&lt;br /&gt;
vmessage(&amp;quot;T[if] = %.2fs, T[tern] = %.2fs&amp;quot;, Tif, Ttern);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Since the evaluation of both the if-statement and the ternary-operator&lt;br /&gt;
is probably anyways very fast compared to your other calculations,&lt;br /&gt;
you might also want to try this (minimally more expensive) example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
variable Tif=0, Ttern=0, n, N=1000, i, iMax=1000000, b;&lt;br /&gt;
_for n (0, N-1)&lt;br /&gt;
{&lt;br /&gt;
  tic; _for i (0, iMax) if  (i==0) b=sin(i); else b=cos(i) ; Tif  +=toc;&lt;br /&gt;
  tic; _for i (0, iMax) b = (i==0 ?  sin(i) :       cos(i)); Ttern+=toc;&lt;br /&gt;
}&lt;br /&gt;
vmessage(&amp;quot;T[if] = %.2fs, T[tern] = %.2fs&amp;quot;, Tif, Ttern);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Isis / Slang]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Iterating_over_an_array_-_three_different_for-loops&amp;diff=919</id>
		<title>Iterating over an array - three different for-loops</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Iterating_over_an_array_-_three_different_for-loops&amp;diff=919"/>
		<updated>2018-04-12T13:48:21Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;=== for === The traditional C-like for-loop is defined as follows: &amp;lt;pre&amp;gt; for (initialization; condition; increment/decrement) {   statement; } &amp;lt;/pre&amp;gt; This is very general, jus...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== for ===&lt;br /&gt;
The traditional C-like for-loop is defined as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
for (initialization; condition; increment/decrement) {&lt;br /&gt;
  statement;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
This is very general, just because nearly everything is possible! The three required expressions may contain any code and may not contain numbers: \\&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
words = [&amp;quot;hello&amp;quot;, &amp;quot;hi&amp;quot;, &amp;quot;welcome&amp;quot;, &amp;quot;me&amp;quot;, &amp;quot;you&amp;quot;, &amp;quot;they&amp;quot;, &amp;quot;meet&amp;quot;, &amp;quot;talk&amp;quot;, &amp;quot;email&amp;quot;];&lt;br /&gt;
for (sentence = &amp;quot;&amp;quot;; urand() &amp;lt; .9; sentence += words[int(urand*length(words))] + &amp;quot; &amp;quot;) {&lt;br /&gt;
  print(sentence);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
As you can see, the traditional for-loop is extremely flexible. But for the sake of speed! That is because the three expression are evaluated during each iteration!&lt;br /&gt;
&lt;br /&gt;
=== _for ===&lt;br /&gt;
As soon as you like to loop over integer numbers (for instance over the indices of an array) you don't need the above flexibility. Thus, you should use another for-loop, which is defined &amp;lt;u&amp;gt;for this purpose only&amp;lt;/u&amp;gt; (see also the [http://www.jedsoft.org/slang/doc/html/slang-8.html#ss8.3 S-Lang manual]):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
_for variable (start, end, increment/decrement) {&lt;br /&gt;
  statement;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
For instance:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
_for i (0, length(myarray)-1, 1) {&lt;br /&gt;
  print(myarray[i]);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Since S-Lang pre2.3.0-75, it is possible to omit &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; as the third argument of the &amp;lt;code&amp;gt;_for&amp;lt;/code&amp;gt; statement, reducing the above example to &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
_for i (0, length(myarray)-1) {&lt;br /&gt;
  print(myarray[i]);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== foreach ===&lt;br /&gt;
The last possibility to iterate through an array is to use the foreach-loop (in case you don't need the position of the element within the array). The following example is equivalent to the above one:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
foreach value (myarray) {&lt;br /&gt;
  print(value);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Isis / Slang]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Changing_qualifiers_before_passing_them_on&amp;diff=911</id>
		<title>Changing qualifiers before passing them on</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Changing_qualifiers_before_passing_them_on&amp;diff=911"/>
		<updated>2018-04-12T13:36:10Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== changing qualifiers before passing them on ==&lt;br /&gt;
&lt;br /&gt;
In S-Lang (and thus also isis) it is possible to pass options to functions as qualifiers rather than arguments. This is useful, e.g., if you only want to specify certain options sometimes and use a predefined value else.&lt;br /&gt;
&lt;br /&gt;
Defining a function, qualifiers can be used as (from the [[http://pulsar.sternwarte.uni-erlangen.de/hanke/science/X-ray/ISIS/cgi/help.cgi?subj=qualifier|S-Lang help for &amp;quot;qualifier&amp;quot;]])&amp;lt;span style=&amp;quot;color: red&amp;quot;&amp;gt;LINK DOES NOT EXIST ANYMORE?&lt;br /&gt;
&amp;lt;/span&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define echo (text)&lt;br /&gt;
{&lt;br /&gt;
   variable fp = qualifier (&amp;quot;out&amp;quot;, stdout);&lt;br /&gt;
   () = fputs (text, fp);&lt;br /&gt;
}&lt;br /&gt;
echo (&amp;quot;hello&amp;quot;);              % writes hello to stdout&lt;br /&gt;
echo (&amp;quot;hello&amp;quot;; out=stderr);  % writes hello to stderr&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To pass a bunch of qualifiers as a single struct instead of comma separated set of name-value pairs, you need to let the parser know that you are using a structure-valued argument. Use a double semicolon to do so:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
variable quals = struct{ out=stderr };&lt;br /&gt;
echo(&amp;quot;hello&amp;quot;;; quals);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Sometimes it is just useful to switch the behavior of a function via a qualifier without a value (or the &amp;lt;code&amp;gt;NULL&amp;lt;/code&amp;gt; value) by just checking for its existence via &amp;lt;code&amp;gt;qualifier_exists(&amp;quot;qualifier_name&amp;quot;)&amp;lt;/code&amp;gt; (again from the S-Lang help):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define echo (text)&lt;br /&gt;
{&lt;br /&gt;
   variable fp = stdout;&lt;br /&gt;
   if (qualifier_exists (&amp;quot;use_stderr&amp;quot;))&lt;br /&gt;
     fp = stderr;&lt;br /&gt;
   () = fputs (text, fp);&lt;br /&gt;
}&lt;br /&gt;
echo (&amp;quot;hello&amp;quot;; use_stderr);  % writes hello to stderr&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Qualifiers can also be passed on from one function to another function that is called in the definition: &amp;lt;code&amp;gt;__qualifiers()&amp;lt;/code&amp;gt; returns the active set of qualifiers as a structure. You can just use it directly with a double semicolon to pass the qualifiers as shown above:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define line_segment (x0, y0, x1, y1)&lt;br /&gt;
{&lt;br /&gt;
   moveto (x0, y0);&lt;br /&gt;
   lineto (x1, y1 ;; __qualifiers());&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So any qualifier specified in &amp;lt;code&amp;gt;line_segment&amp;lt;/code&amp;gt; is directly passed to &amp;lt;code&amp;gt;lineto&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
But what if you want to modify some of the qualifiers first? Just use [[http://pulsar.sternwarte.uni-erlangen.de/hanke/science/X-ray/ISIS/cgi/help.cgi?subj=struct_combine|struct_combine]] (or the equivalent dereference operator) and take advantage of the facts that&lt;br /&gt;
* it is NULL-safe and&lt;br /&gt;
* more than one structure may have the same field name, in which case the value is given by the last structure:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define get_pixel_array(dat, gainf, range)&lt;br /&gt;
{&lt;br /&gt;
   variable pix = qualifier(&amp;quot;pixel&amp;quot;, [0:31]);&lt;br /&gt;
   variable arr = Struct_Type[length(pix)];&lt;br /&gt;
   variable i;&lt;br /&gt;
   _for i(0, length(arr)-1)&lt;br /&gt;
      arr[i] = vtoen(dat, gainf, range;; struct { @__qualifiers(), pixel=[pix[i]] });&lt;br /&gt;
   return arr;&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
More complicated solution: &amp;lt;del&amp;gt;Just save the structure returned by the function &amp;lt;nowiki&amp;gt;__qualifiers()&amp;lt;/nowiki&amp;gt; into a variable, change/add/remove fields in that structure and then pass the new structure on. But be careful not to produce errors if no qualifier is used:&amp;lt;/del&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define get_pixel_array(dat, gainf, range)&lt;br /&gt;
{&lt;br /&gt;
   variable pix = qualifier(&amp;quot;pixel&amp;quot;,[0:31:1]);&lt;br /&gt;
   variable arr = Struct_Type[length(pix)];&lt;br /&gt;
   variable i;&lt;br /&gt;
   &lt;br /&gt;
   variable qual = __qualifiers();&lt;br /&gt;
   if (typeof(qual) == Null_Type){ % if there are no qualifiers, there also is no struct&lt;br /&gt;
      qual = struct{pixel};&lt;br /&gt;
   }else if (struct_field_exists(qual,&amp;quot;pixel&amp;quot;) == 0){&lt;br /&gt;
      qual=struct_combine(qual, &amp;quot;pixel&amp;quot;);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   _for i(0,length(arr)-1,1)&lt;br /&gt;
   {&lt;br /&gt;
      qual.pixel=[pix[i]];&lt;br /&gt;
      arr[i] = vtoen(dat,gainf,range;; qual);&lt;br /&gt;
   }&lt;br /&gt;
   return arr;&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Usually, it would probably be easier to change the original function but for example in this case for just a quick trouble shooting, I did not want to mess around with my function &amp;lt;code&amp;gt;vtoen&amp;lt;/code&amp;gt;, which usually takes the qualifier &amp;lt;code&amp;gt;pixel&amp;lt;/code&amp;gt; to know which pixels to sum up after gain correction. However, if you want an array of all individual pixels instead, i.e., loop through the entries in &amp;lt;code&amp;gt;pixel&amp;lt;/code&amp;gt; while leaving other qualifiers untouched, the presented option is a quick workaround to still be able to access the other possible qualifiers (as, e.g., time or flag filtering).&lt;br /&gt;
&lt;br /&gt;
If you want to look at how the &amp;lt;code&amp;gt;struct&amp;lt;/code&amp;gt; for qualifiers looks like, you can do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define qual(){ return __qualifiers(); }&lt;br /&gt;
variable test = qual(;noval, someval=1, anarray=[&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;]);&lt;br /&gt;
print(test);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Isis / Slang]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Changing_qualifiers_before_passing_them_on&amp;diff=909</id>
		<title>Changing qualifiers before passing them on</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Changing_qualifiers_before_passing_them_on&amp;diff=909"/>
		<updated>2018-04-12T13:30:08Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;== changing qualifiers before passing them on ==  In S-Lang (and thus also isis) it is possible to pass options to functions as qualifiers rather than arguments. This is usefu...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== changing qualifiers before passing them on ==&lt;br /&gt;
&lt;br /&gt;
In S-Lang (and thus also isis) it is possible to pass options to functions as qualifiers rather than arguments. This is useful, e.g., if you only want to specify certain options sometimes and use a predefined value else.&lt;br /&gt;
&lt;br /&gt;
Defining a function, qualifiers can be used as (from the [[http://pulsar.sternwarte.uni-erlangen.de/hanke/science/X-ray/ISIS/cgi/help.cgi?subj=qualifier|S-Lang help for ''qualifier'']]):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define echo (text)&lt;br /&gt;
{&lt;br /&gt;
   variable fp = qualifier (&amp;quot;out&amp;quot;, stdout);&lt;br /&gt;
   () = fputs (text, fp);&lt;br /&gt;
}&lt;br /&gt;
echo (&amp;quot;hello&amp;quot;);              % writes hello to stdout&lt;br /&gt;
echo (&amp;quot;hello&amp;quot;; out=stderr);  % writes hello to stderr&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To pass a bunch of qualifiers as a single struct instead of comma separated set of name-value pairs, you need to let the parser know that you are using a structure-valued argument. Use a double semicolon to do so:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
variable quals = struct{ out=stderr };&lt;br /&gt;
echo(&amp;quot;hello&amp;quot;;; quals);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Sometimes it is just useful to switch the behavior of a function via a qualifier without a value (or the &amp;lt;code&amp;gt;NULL&amp;lt;/code&amp;gt; value) by just checking for its existence via &amp;lt;code&amp;gt;qualifier_exists(&amp;quot;qualifier_name&amp;quot;)&amp;lt;/code&amp;gt; (again from the S-Lang help):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define echo (text)&lt;br /&gt;
{&lt;br /&gt;
   variable fp = stdout;&lt;br /&gt;
   if (qualifier_exists (&amp;quot;use_stderr&amp;quot;))&lt;br /&gt;
     fp = stderr;&lt;br /&gt;
   () = fputs (text, fp);&lt;br /&gt;
}&lt;br /&gt;
echo (&amp;quot;hello&amp;quot;; use_stderr);  % writes hello to stderr&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Qualifiers can also be passed on from one function to another function that is called in the definition: &amp;lt;code&amp;gt;__qualifiers()&amp;lt;/code&amp;gt; returns the active set of qualifiers as a structure. You can just use it directly with a double semicolon to pass the qualifiers as shown above:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define line_segment (x0, y0, x1, y1)&lt;br /&gt;
{&lt;br /&gt;
   moveto (x0, y0);&lt;br /&gt;
   lineto (x1, y1 ;; __qualifiers());&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So any qualifier specified in &amp;lt;code&amp;gt;line_segment&amp;lt;/code&amp;gt; is directly passed to &amp;lt;code&amp;gt;lineto&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
But what if you want to modify some of the qualifiers first? Just use [[http://pulsar.sternwarte.uni-erlangen.de/hanke/science/X-ray/ISIS/cgi/help.cgi?subj=struct_combine|struct_combine]] (or the equivalent dereference operator) and take advantage of the facts that&lt;br /&gt;
* it is NULL-safe and&lt;br /&gt;
* more than one structure may have the same field name, in which case the value is given by the last structure:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define get_pixel_array(dat, gainf, range)&lt;br /&gt;
{&lt;br /&gt;
   variable pix = qualifier(&amp;quot;pixel&amp;quot;, [0:31]);&lt;br /&gt;
   variable arr = Struct_Type[length(pix)];&lt;br /&gt;
   variable i;&lt;br /&gt;
   _for i(0, length(arr)-1)&lt;br /&gt;
      arr[i] = vtoen(dat, gainf, range;; struct { @__qualifiers(), pixel=[pix[i]] });&lt;br /&gt;
   return arr;&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
More complicated solution: &amp;lt;del&amp;gt;Just save the structure returned by the function &amp;lt;nowiki&amp;gt;__qualifiers()&amp;lt;/nowiki&amp;gt; into a variable, change/add/remove fields in that structure and then pass the new structure on. But be careful not to produce errors if no qualifier is used:&amp;lt;/del&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define get_pixel_array(dat, gainf, range)&lt;br /&gt;
{&lt;br /&gt;
   variable pix = qualifier(&amp;quot;pixel&amp;quot;,[0:31:1]);&lt;br /&gt;
   variable arr = Struct_Type[length(pix)];&lt;br /&gt;
   variable i;&lt;br /&gt;
   &lt;br /&gt;
   variable qual = __qualifiers();&lt;br /&gt;
   if (typeof(qual) == Null_Type){ % if there are no qualifiers, there also is no struct&lt;br /&gt;
      qual = struct{pixel};&lt;br /&gt;
   }else if (struct_field_exists(qual,&amp;quot;pixel&amp;quot;) == 0){&lt;br /&gt;
      qual=struct_combine(qual, &amp;quot;pixel&amp;quot;);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   _for i(0,length(arr)-1,1)&lt;br /&gt;
   {&lt;br /&gt;
      qual.pixel=[pix[i]];&lt;br /&gt;
      arr[i] = vtoen(dat,gainf,range;; qual);&lt;br /&gt;
   }&lt;br /&gt;
   return arr;&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Usually, it would probably be easier to change the original function but for example in this case for just a quick trouble shooting, I did not want to mess around with my function &amp;lt;code&amp;gt;vtoen&amp;lt;/code&amp;gt;, which usually takes the qualifier &amp;lt;code&amp;gt;pixel&amp;lt;/code&amp;gt; to know which pixels to sum up after gain correction. However, if you want an array of all individual pixels instead, i.e., loop through the entries in &amp;lt;code&amp;gt;pixel&amp;lt;/code&amp;gt; while leaving other qualifiers untouched, the presented option is a quick workaround to still be able to access the other possible qualifiers (as, e.g., time or flag filtering).&lt;br /&gt;
&lt;br /&gt;
If you want to look at how the &amp;lt;code&amp;gt;struct&amp;lt;/code&amp;gt; for qualifiers looks like, you can do:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define qual(){ return __qualifiers(); }&lt;br /&gt;
variable test = qual(;noval, someval=1, anarray=[&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;]);&lt;br /&gt;
print(test);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Isis / Slang]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=List_of_servers_in_the_Remeis_Cluster&amp;diff=885</id>
		<title>List of servers in the Remeis Cluster</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=List_of_servers_in_the_Remeis_Cluster&amp;diff=885"/>
		<updated>2018-04-12T10:50:59Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;== Server on the Remeis Cluster ==  Here you can find an overview of our servers and what pieces of software and services are running on each of them.  '''crux''' * LDAP * Web...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Server on the Remeis Cluster ==&lt;br /&gt;
&lt;br /&gt;
Here you can find an overview of our servers and what pieces of software and services are running on each of them.&lt;br /&gt;
&lt;br /&gt;
'''crux'''&lt;br /&gt;
* LDAP&lt;br /&gt;
* Web&lt;br /&gt;
* DNS&lt;br /&gt;
* DHCP&lt;br /&gt;
* NTP&lt;br /&gt;
* /data&lt;br /&gt;
* git&lt;br /&gt;
* Mail&lt;br /&gt;
* Backup (von /data)&lt;br /&gt;
* Ubuntu-Mirror&lt;br /&gt;
* MySQL&lt;br /&gt;
&lt;br /&gt;
'''leo'''&lt;br /&gt;
* /userdata&lt;br /&gt;
* 2 Vboxes: auriga: print &amp;amp; hydrus: web&lt;br /&gt;
* cronjobs&lt;br /&gt;
* torque server + client&lt;br /&gt;
* Randomnumber-Server&lt;br /&gt;
&lt;br /&gt;
'''phoenix'''&lt;br /&gt;
* /home&lt;br /&gt;
* Backup (von /home)&lt;br /&gt;
* /ixo&lt;br /&gt;
* cronjobs&lt;br /&gt;
* quota&lt;br /&gt;
&lt;br /&gt;
'''grus'''&lt;br /&gt;
* /eu&lt;br /&gt;
* cronjobs&lt;br /&gt;
&lt;br /&gt;
'''draco'''&lt;br /&gt;
* /loft&lt;br /&gt;
* VBox: openproject&lt;br /&gt;
* MySQL&lt;br /&gt;
* cronjob&lt;br /&gt;
&lt;br /&gt;
'''virgo'''&lt;br /&gt;
* /virgoabc&lt;br /&gt;
&lt;br /&gt;
'''serpens'''&lt;br /&gt;
* usage only for erosita project&lt;br /&gt;
* web (erosita)&lt;br /&gt;
&lt;br /&gt;
[[Category:Internal]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=How_to_use_the_Remeis_cluster&amp;diff=884</id>
		<title>How to use the Remeis cluster</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=How_to_use_the_Remeis_cluster&amp;diff=884"/>
		<updated>2018-04-12T10:01:58Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: /* ssh-keys */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How To use the Remeis Cluster ==&lt;br /&gt;
&lt;br /&gt;
The Cluster of the Remeis obsveratory is designed to make all ressources available for easy usage. Nevertheless, there are a few important things one has to know in order to use the cluster properly. In the following the most important information will be listed. Other questions or problems with the system or software sould be directed to [mailto:admins@sternwarte.uni-erlangen.de admins@sternwarte.uni-erlangen.de].&lt;br /&gt;
&lt;br /&gt;
=== Performing Computations  ===&lt;br /&gt;
&lt;br /&gt;
* The servers ''crux'', ''grus'', and ''phoenix'' should not be used for computations at all.&lt;br /&gt;
* Computations and extractions on the Cluster should be submitted via '''torque'''. Information on how to use it can be found [[torque:start|here]].&lt;br /&gt;
* Also [[torque:start#interactive_jobs|interactive sessions]] can be started via '''torque'''.&lt;br /&gt;
&lt;br /&gt;
===  The Data-Storage System ===&lt;br /&gt;
&lt;br /&gt;
* '''/userdata:''' Extracted data like images or spectra or other space consuming stuff or stuff which can re recreated/downloaded again should be put there. /userdata is a RAID6 system, i.e. two disks can fail simultaneously w/o data loss --&amp;gt; your data is safe on /userdata! However, there is NO backup of userdata, as /userdata is too big to be backuped simply. And there is no quota on /userdata.&lt;br /&gt;
&lt;br /&gt;
* '''/home:''' This is the place for self-developped software, scripts, documents, TeX files, diploma/phd/... theses, papers, spreadsheets, etc. /home is also a RAID system, i.e. more than one disk may fail w/o data loss. Furthermore, /home is backedup every night to TWO different disks (in two machines) AND once a week on an external disk that is stored outside the observatory  for the worst case (fire etc). It therefore does not make sense to create your own private backups on local scratch disks etc. /home, however, is quite small (1 TB for all the institute); we therefore have a quota of about 10GB per user. It is no problem to get more space, if you can't move stuff around anymore, just drop an Email to the admins. On the other hand, you don't have to fill your quota completely! To check your quota you can use the ''quota'' command on crux, like &lt;br /&gt;
  ssh crux quota -s -f /home&lt;br /&gt;
&lt;br /&gt;
* '''/scratch:''' For temporary or otherwise not very important data. You should not store anything important on /scratch!! The scratch disks are NOT backedup and the scratch disks are not fail safe, i.e. if a scratch disk is broken (which happens regularly), your data is GONE.&lt;br /&gt;
&lt;br /&gt;
* '''Satellite Data:''' We already have archives for most satellite raw data (applies mostly to the X-ray people). So please do not download any raw data yourself, but talk to the person in charge of a specific mission. You can find out who is responsible by executing &amp;lt;code&amp;gt;showSatelliteContacts&amp;lt;/code&amp;gt; in the shell.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Logging into Remeis ===&lt;br /&gt;
&lt;br /&gt;
====  Remote Login ====&lt;br /&gt;
&lt;br /&gt;
===== Using ssh =====&lt;br /&gt;
You can log-in via ssh simply by &lt;br /&gt;
  ssh -X &amp;lt;username&amp;gt;@&amp;lt;host&amp;gt;.sternwarte.uni-erlangen.de&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Using the NX-Client =====&lt;br /&gt;
&lt;br /&gt;
If you need a graphics interface, it might be worth to use the &amp;lt;code&amp;gt;nxclient&amp;lt;/code&amp;gt; to connect to the Remeis Cluster. The corresponding &amp;lt;code&amp;gt;nxserver&amp;lt;/code&amp;gt; is installed on (almost) all machines. In order to use it you have to [http://www.nomachine.com/download.php download] it and follow the Connection-Wizard to connect on a host. Always use the same machine, as only a limited number of total connections is allowed on each machine. This works for Linux, Mac OSX, and even Windows. &lt;br /&gt;
&lt;br /&gt;
===== Hosts =====&lt;br /&gt;
Host names are generally the constellation names, e.g., &amp;lt;code&amp;gt;norma&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;leo&amp;lt;/code&amp;gt;. All available hosts can be found in the shell variable &amp;lt;code&amp;gt;$RemeisHosts&amp;lt;/code&amp;gt;. The servers (&amp;lt;code&amp;gt;crux&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;grus&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;phoenix&amp;lt;/code&amp;gt;) should not be used.&lt;br /&gt;
&lt;br /&gt;
==== Connecting without password and short hostnames ====&lt;br /&gt;
&lt;br /&gt;
Sick of always typing &amp;lt;code&amp;gt;user@myfavouritehost.sternwarte.uni-erlangen.de&amp;lt;/code&amp;gt; and always having to enter your password when switching machines inside inside the Remeis Cluster? The follwing setup will make your life easier.&lt;br /&gt;
&lt;br /&gt;
===== Config-File =====&lt;br /&gt;
&lt;br /&gt;
In the file &amp;lt;code&amp;gt;~/.ssh/config&amp;lt;/code&amp;gt; you can set up the configuration for ssh. A few things are really useful.&lt;br /&gt;
   # activate compression, might lead to a faster connection&lt;br /&gt;
   Compression yes&lt;br /&gt;
   # do X11 forwarding by default, i.e., the option &amp;quot;-X&amp;quot; is &lt;br /&gt;
   # always set when using &amp;quot;ssh&amp;quot;&lt;br /&gt;
   forwardX11 yes&lt;br /&gt;
   &lt;br /&gt;
In order to define a short-cut for a host, you have to add the following information to the ''~/.ssh/config''&lt;br /&gt;
   # the short-name you want to call the  host (most useful is the general name of the machine&lt;br /&gt;
   Host=pulsar&lt;br /&gt;
   # now define user and host such that ''&amp;lt;User&amp;gt;@&amp;lt;Hostname&amp;gt;'' is the correct adress&lt;br /&gt;
   Hostname=pulsar.sternwarte.uni-erlangen.de&lt;br /&gt;
   User=YourUsername&lt;br /&gt;
   &lt;br /&gt;
===== ssh-keys =====&lt;br /&gt;
   &lt;br /&gt;
If you setup the ssh-keys properly, you can login via ssh without entering a password. This isn't only nice to have, but if you use [[torque:start|Torque]], this is mandatory. A detailed description can be found [[SSH-Keys|here]].&lt;br /&gt;
&lt;br /&gt;
=== Setting the Default Options/Software ===&lt;br /&gt;
&lt;br /&gt;
Each new account is equipped with a sample file at ''~/.cshrc'', which is loaded on every start of the terminal. Hence, this defines your options, i.e., the software available, short-cuts, your favourite editor, and so on. Commonly useful options are activated by default. In addition, there are a few additional features, which are commented out by default but still very useful for most users.&lt;br /&gt;
&lt;br /&gt;
   # set your favourite text editor to be used by default; important, e.g., if you want to use GIT&lt;br /&gt;
   setenv EDITOR jed &lt;br /&gt;
   &lt;br /&gt;
   # activate the X-ray software (HEADAS, satellite extraction scripts, ...)&lt;br /&gt;
   source $SOFTDIR/softwarescript_Xray.csh &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
More information on the TC shell and how to configure it can be found [[csh:start|here]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Current Members]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=How_to_use_the_Remeis_cluster&amp;diff=881</id>
		<title>How to use the Remeis cluster</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=How_to_use_the_Remeis_cluster&amp;diff=881"/>
		<updated>2018-04-12T09:53:49Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;== How To use the Remeis Cluster ==  The Cluster of the Remeis obsveratory is designed to make all ressources available for easy usage. Nevertheless, there are a few important...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How To use the Remeis Cluster ==&lt;br /&gt;
&lt;br /&gt;
The Cluster of the Remeis obsveratory is designed to make all ressources available for easy usage. Nevertheless, there are a few important things one has to know in order to use the cluster properly. In the following the most important information will be listed. Other questions or problems with the system or software sould be directed to [mailto:admins@sternwarte.uni-erlangen.de admins@sternwarte.uni-erlangen.de].&lt;br /&gt;
&lt;br /&gt;
=== Performing Computations  ===&lt;br /&gt;
&lt;br /&gt;
* The servers ''crux'', ''grus'', and ''phoenix'' should not be used for computations at all.&lt;br /&gt;
* Computations and extractions on the Cluster should be submitted via '''torque'''. Information on how to use it can be found [[torque:start|here]].&lt;br /&gt;
* Also [[torque:start#interactive_jobs|interactive sessions]] can be started via '''torque'''.&lt;br /&gt;
&lt;br /&gt;
===  The Data-Storage System ===&lt;br /&gt;
&lt;br /&gt;
* '''/userdata:''' Extracted data like images or spectra or other space consuming stuff or stuff which can re recreated/downloaded again should be put there. /userdata is a RAID6 system, i.e. two disks can fail simultaneously w/o data loss --&amp;gt; your data is safe on /userdata! However, there is NO backup of userdata, as /userdata is too big to be backuped simply. And there is no quota on /userdata.&lt;br /&gt;
&lt;br /&gt;
* '''/home:''' This is the place for self-developped software, scripts, documents, TeX files, diploma/phd/... theses, papers, spreadsheets, etc. /home is also a RAID system, i.e. more than one disk may fail w/o data loss. Furthermore, /home is backedup every night to TWO different disks (in two machines) AND once a week on an external disk that is stored outside the observatory  for the worst case (fire etc). It therefore does not make sense to create your own private backups on local scratch disks etc. /home, however, is quite small (1 TB for all the institute); we therefore have a quota of about 10GB per user. It is no problem to get more space, if you can't move stuff around anymore, just drop an Email to the admins. On the other hand, you don't have to fill your quota completely! To check your quota you can use the ''quota'' command on crux, like &lt;br /&gt;
  ssh crux quota -s -f /home&lt;br /&gt;
&lt;br /&gt;
* '''/scratch:''' For temporary or otherwise not very important data. You should not store anything important on /scratch!! The scratch disks are NOT backedup and the scratch disks are not fail safe, i.e. if a scratch disk is broken (which happens regularly), your data is GONE.&lt;br /&gt;
&lt;br /&gt;
* '''Satellite Data:''' We already have archives for most satellite raw data (applies mostly to the X-ray people). So please do not download any raw data yourself, but talk to the person in charge of a specific mission. You can find out who is responsible by executing &amp;lt;code&amp;gt;showSatelliteContacts&amp;lt;/code&amp;gt; in the shell.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Logging into Remeis ===&lt;br /&gt;
&lt;br /&gt;
====  Remote Login ====&lt;br /&gt;
&lt;br /&gt;
===== Using ssh =====&lt;br /&gt;
You can log-in via ssh simply by &lt;br /&gt;
  ssh -X &amp;lt;username&amp;gt;@&amp;lt;host&amp;gt;.sternwarte.uni-erlangen.de&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Using the NX-Client =====&lt;br /&gt;
&lt;br /&gt;
If you need a graphics interface, it might be worth to use the &amp;lt;code&amp;gt;nxclient&amp;lt;/code&amp;gt; to connect to the Remeis Cluster. The corresponding &amp;lt;code&amp;gt;nxserver&amp;lt;/code&amp;gt; is installed on (almost) all machines. In order to use it you have to [http://www.nomachine.com/download.php download] it and follow the Connection-Wizard to connect on a host. Always use the same machine, as only a limited number of total connections is allowed on each machine. This works for Linux, Mac OSX, and even Windows. &lt;br /&gt;
&lt;br /&gt;
===== Hosts =====&lt;br /&gt;
Host names are generally the constellation names, e.g., &amp;lt;code&amp;gt;norma&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;leo&amp;lt;/code&amp;gt;. All available hosts can be found in the shell variable &amp;lt;code&amp;gt;$RemeisHosts&amp;lt;/code&amp;gt;. The servers (&amp;lt;code&amp;gt;crux&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;grus&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;phoenix&amp;lt;/code&amp;gt;) should not be used.&lt;br /&gt;
&lt;br /&gt;
==== Connecting without password and short hostnames ====&lt;br /&gt;
&lt;br /&gt;
Sick of always typing &amp;lt;code&amp;gt;user@myfavouritehost.sternwarte.uni-erlangen.de&amp;lt;/code&amp;gt; and always having to enter your password when switching machines inside inside the Remeis Cluster? The follwing setup will make your life easier.&lt;br /&gt;
&lt;br /&gt;
===== Config-File =====&lt;br /&gt;
&lt;br /&gt;
In the file &amp;lt;code&amp;gt;~/.ssh/config&amp;lt;/code&amp;gt; you can set up the configuration for ssh. A few things are really useful.&lt;br /&gt;
   # activate compression, might lead to a faster connection&lt;br /&gt;
   Compression yes&lt;br /&gt;
   # do X11 forwarding by default, i.e., the option &amp;quot;-X&amp;quot; is &lt;br /&gt;
   # always set when using &amp;quot;ssh&amp;quot;&lt;br /&gt;
   forwardX11 yes&lt;br /&gt;
   &lt;br /&gt;
In order to define a short-cut for a host, you have to add the following information to the ''~/.ssh/config''&lt;br /&gt;
   # the short-name you want to call the  host (most useful is the general name of the machine&lt;br /&gt;
   Host=pulsar&lt;br /&gt;
   # now define user and host such that ''&amp;lt;User&amp;gt;@&amp;lt;Hostname&amp;gt;'' is the correct adress&lt;br /&gt;
   Hostname=pulsar.sternwarte.uni-erlangen.de&lt;br /&gt;
   User=YourUsername&lt;br /&gt;
   &lt;br /&gt;
===== ssh-keys =====&lt;br /&gt;
   &lt;br /&gt;
If you setup the ssh-keys properly, you can login via ssh without entering a password. This isn't only nice to have, but if you use [[torque:start|Torque]], this is mandatory. A detailed description can be found [[ssh-keys:start|here]]&lt;br /&gt;
&lt;br /&gt;
=== Setting the Default Options/Software ===&lt;br /&gt;
&lt;br /&gt;
Each new account is equipped with a sample file at ''~/.cshrc'', which is loaded on every start of the terminal. Hence, this defines your options, i.e., the software available, short-cuts, your favourite editor, and so on. Commonly useful options are activated by default. In addition, there are a few additional features, which are commented out by default but still very useful for most users.&lt;br /&gt;
&lt;br /&gt;
   # set your favourite text editor to be used by default; important, e.g., if you want to use GIT&lt;br /&gt;
   setenv EDITOR jed &lt;br /&gt;
   &lt;br /&gt;
   # activate the X-ray software (HEADAS, satellite extraction scripts, ...)&lt;br /&gt;
   source $SOFTDIR/softwarescript_Xray.csh &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
More information on the TC shell and how to configure it can be found [[csh:start|here]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Current Members]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
	<entry>
		<id>https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Common_Practices_at_Remeis&amp;diff=875</id>
		<title>Common Practices at Remeis</title>
		<link rel="alternate" type="text/html" href="https://www.sternwarte.uni-erlangen.de/wiki/index.php?title=Common_Practices_at_Remeis&amp;diff=875"/>
		<updated>2018-04-12T09:08:02Z</updated>

		<summary type="html">&lt;p&gt;Lorenz: Created page with &amp;quot;== Common Practices at Remeis ==  '''From an e-mail by J. Wilms on 2016 June 14 to the X-ray gang'''  ''We try to be as flexible as possible, and I trust that you are adults a...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Common Practices at Remeis ==&lt;br /&gt;
&lt;br /&gt;
'''From an e-mail by J. Wilms on 2016 June 14 to the X-ray gang'''&lt;br /&gt;
&lt;br /&gt;
''We try to be as flexible as possible, and I trust that you are adults and do not exploit the system. A minimum time for coordination in the group and knowing what everybody is doing is necessary. This time is the group meeting, and for this reason you have to be there and you should be prepared to discuss what you're doing there. If you do something else on the side, this is also fine, but it should not negatively impact on your research. It is on you to be able to manage your different tasks, and the expectation is that research has to come first.''&lt;br /&gt;
&lt;br /&gt;
=== Working Times ===&lt;br /&gt;
&lt;br /&gt;
'''Added by a request of J. Wilms on 2016 June 15'''&lt;br /&gt;
&lt;br /&gt;
Is is expected that you are in the office in Bamberg for at least ~3 days per week. Although we have flexible working times, arriving at 10 a.m. latest is a good practice to ensure significant overlap with your colleagues.&lt;br /&gt;
&lt;br /&gt;
'''From an e-mail by J. Wilms on 2016 June 14 to the X-ray gang'''&lt;br /&gt;
&lt;br /&gt;
''working from home or Erlangen is ok (except for [...] [the group meetings]), but [...] [your supervisor] and the people you're working with directly need to know where you are. This means that you need to be reachable by email or phone, and you need to be working. As a rule of thumb:  BSc-, MSc-, and PhD-thesis work is the equivalent to a full time job, irrespective of what your contracts say. Full time means 40+ hours per week. If you're working on the side this is fine - you know that we try to be supportive here -  but this does not mean that you should subtract off the time you're making money from the time you're spending on your research, which - I repeat myself - should keep you busy equivalent to a full time job. If you find that you cannot manage this schedule when working from home, then I strongly suggest that you go to the office.''&lt;br /&gt;
&lt;br /&gt;
''Due to the international nature of our work, it is to be expected that you have to be able to attend telecons after 18:00.''&lt;br /&gt;
&lt;br /&gt;
=== Illness &amp;amp; Vacation ===&lt;br /&gt;
&lt;br /&gt;
'''From an e-mail by J. Wilms on 2016 June 14 to the X-ray gang'''&lt;br /&gt;
&lt;br /&gt;
''if you are ill, always(!) notify Edith, [...] [your supervisor], *and* the people you're working with (i.e., all BSc/MSc students also have a PhD student as point of contact and (s)he should also know).''&lt;br /&gt;
&lt;br /&gt;
''if you plan to go on vacation, talk to [...] [your supervisor] first. [...] [We] will usually say yes, but there are some times you should avoid not being here, especially times before project deadlines, proposal deadlines, and the lab courses. This applies to everybody in the group.''&lt;br /&gt;
&lt;br /&gt;
''once your vacation has been approved or if you're going to a conference, put down the dates of your absence on the white board next to the xerox machine.''&lt;br /&gt;
&lt;br /&gt;
=== X-ray Group Meeting ===&lt;br /&gt;
&lt;br /&gt;
'''From an E-mail by J. Wilms on 2016 June 14 to the X-ray gang'''&lt;br /&gt;
&lt;br /&gt;
''group meeting starts Tuesdays, 10:00. The presence of everybody in the group (hiwis, BSc, MSc, PhD, postdocs) is *mandatory*. The only reason not to show up is if you're ill or if you have a lecture. In this case, please let me know. Do not assume I remember because you told me two weeks ago...''&lt;br /&gt;
&lt;br /&gt;
=== Journal Club ===&lt;br /&gt;
&lt;br /&gt;
Incomplete [[intern:litclub|list of past Literature Clubs]]&lt;br /&gt;
&lt;br /&gt;
'''From an e-mail by M. Oertel on 2016 June 14 to the X-ray gang'''&lt;br /&gt;
&lt;br /&gt;
''[...] assume that *everybody currently working in the xray-group is participating*.''&lt;br /&gt;
&lt;br /&gt;
''Litclub is always (except during lab) on Tuesdays at 11:30 after the [X-ray] group-meeting. On every Monday I randomly choose someone for the next Litclub. There's a list of astronomy-papers which I will then send to you and you choose one (ideally not strongly correlated to your current work) and prepare a ~10 minute summary-talk. The talk will be in English. You don't have to understand everything they did in the paper, you just have to explain the central idea. One of the main aspects is to practice fast-paper-reading-and-understanding, therefore it has to be on a short notice (meaning Monday morning). This is also to prevent you from spending a few days on preparing. If you come across any interesting paper you think could fit (even if you haven't read it) please send a link to me so that I can add it to the list. You can decline when I ask you on Mondays but please only do so if you have a deadline (proposal or thesis...)/are sick...''&lt;br /&gt;
&lt;br /&gt;
''It really is a good opportunity to practice giving talks, summarizing content and also it is a nice get-together for discussing interesting astro-stuff''&lt;br /&gt;
&lt;br /&gt;
'''From an e-mail by J. Wilms on 2016 June 14 to the X-ray gang'''&lt;br /&gt;
&lt;br /&gt;
''Your attendance and active participation is very strongly suggested. It is good for you.''&lt;br /&gt;
&lt;br /&gt;
=== PhD-Hat and -Celebration tradition ===&lt;br /&gt;
&lt;br /&gt;
[[intern:phd_hat_list|List of future PhDs]]&lt;br /&gt;
&lt;br /&gt;
'''From an e-mail by M. Kuehnel in 2016 June 14 to almost everybody'''&lt;br /&gt;
&lt;br /&gt;
''[...] this tradition is not alive in every institute. From my personal experience I know places where PhDs just defend and vanish without getting a hat, party, or anything personal from the colleagues. This is not how your 3+ years should end.''&lt;br /&gt;
&lt;br /&gt;
''We have the tradition at our institute that every PhD candidate gets a self-made hat after having defended her or his thesis. Also, a big party is organized for her or his after the defence. It is a common agreement that the hat and the party is *mainly build and organized by all other PhD students*. Of course, also contributions from bachelor or master students are very well welcomed, too. Thus, it is very much appreciate (if not expected) that /everybody/ contributes and not only a few. It is not expected, however, to spent hours, even ~20 minutes are enough (for, e.g., searching and printing a picture, which is supposed to be put on the hat).''&lt;br /&gt;
&lt;br /&gt;
''The main organization of the hat building process and the party is traditionally done by the PhD student, which is supposed to finish her or his PhD next. [...] This person is''&lt;br /&gt;
* ''the initiator of the hat building process and the organization of the party by, e.g., writing emails to everybody (expect to the PhD candidate, of course) in the first place. Creating a wiki-page for the hat might be useful here as well.''&lt;br /&gt;
* ''not expected to do all the work, but rather delegate the different tasks and keep the overview, i.e., is the main contact in case of questions. Here, the contribution of everybody is needed to complete all tasks! Here, quasi-regular meetings scheduled by the responsible person have been helpful.''&lt;br /&gt;
* ''trying to keep everybody updated and informed about, e.g., the hat status or the defence date. As you see, nobody needs to be afraid of this job.''&lt;br /&gt;
&lt;br /&gt;
''Furthermore (and here we are really privileged), our PhD supervisor sponsors the party and hat with a certain amount. The usual case in other institutes is that the PhD candidate her- or himself pays for the party! Note that often the sponsoring is not sufficient for all expenses. In the past, this was solved in an uncomplicated way by either &amp;quot;basst scho&amp;quot; (&amp;quot;it's fine&amp;quot;) from the people who had small expenses (like for the hat) or by the main organizer [...].''&lt;br /&gt;
&lt;br /&gt;
=== Dishwasher Etiquette ===&lt;br /&gt;
&lt;br /&gt;
'''From an e-mail by S. Falkner in 2016 August 29 to everybody'''&lt;br /&gt;
&lt;br /&gt;
[''Please follow the following guideline to avoid a messy kitchen, frustrated Coworkers and unnecessary excessive use of the dishwasher:] ''&lt;br /&gt;
&lt;br /&gt;
In case the dishwasher is full, check if it is clean&lt;br /&gt;
&lt;br /&gt;
(YES): Has it just finished and still hot?&lt;br /&gt;
* (YES): Open it completely for cooling and every one too see.&lt;br /&gt;
* (NO): Empty it COMPLETELY and put your dirty dishes in and check if there is other dirty stuff to put in!&lt;br /&gt;
(NO): Can you make some room for your stuff?&lt;br /&gt;
* (YES): Perfect, now you can start it if there is really no more room.&lt;br /&gt;
* (NO): Start it and EITHER clean your dishes in the sink (and do not just throw it in their) OR wait till the dishwasher is done and put it in then!.&lt;br /&gt;
&lt;br /&gt;
In case the dishwasher is not full, please do a quick check if the dishes look clean:&lt;br /&gt;
&lt;br /&gt;
(YES): Empty it COMPLETELY and put your dirty dishes in and check if there is other dirty stuff to put in! Especially on Monday mornings it may happen that the dishwasher is only half full but clean as someone was nice and turned it on Friday afternoon, such that the dishwasher doesn't grow to life over the weekend.&lt;br /&gt;
&lt;br /&gt;
(NO): Put your stuff in and ask yourself if it is Friday afternoon and no one else around any more?&lt;br /&gt;
* (YES): Start the dishwasher&lt;br /&gt;
* (NO): You may wait until you leave&lt;br /&gt;
&lt;br /&gt;
In general it would be nice if all could care more about the kitchen. If&lt;br /&gt;
everyone would do care it would not be necessary for some of us to clean&lt;br /&gt;
up quite a mess, but only a little bit for all of us.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Current Members]]&lt;/div&gt;</summary>
		<author><name>Lorenz</name></author>
	</entry>
</feed>