#!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. which chromium-browser > /dev/null && [ -d /etc/chromium ] && mv /etc/chromium/ /etc/chromium-browser sleep 10 # Print the IP address _IP=$(hostname -I) || true if [ "$_IP" ]; then printf "My IP address is %s\n" "$_IP" fi # set hostname #if [ -f /boot/client-cfg/hostname.txt ]; then # hostname --file /boot/client-cfg/hostname.txt #fi #Hostname wird anhand des WLAN0 erstell / kann auch entsprechend auf anderes Geraet umgestellt werden #ip a s wlan1 2&>1 /dev/null || #Check einbauen der aktive Verbindung prüft if [ -d /home/pi ]; then echo pi$(cat /sys/class/net/wlan0/address | sed s'/://g') > /tmp/hostname && hostname --file /tmp/hostname else echo thin$(cat /sys/class/net/wlan0/address | sed s'/://g') > /tmp/hostname && hostname --file /tmp/hostname fi cp /tmp/hostname /etc/hostname # insert/update hosts entry ip_address="127.0.2.1" host_name=$(cat /tmp/hostname) # find existing instances in the host file and save the line numbers matches_in_hosts="$(grep -n $host_name /etc/hosts | cut -f1 -d:)" host_entry="${ip_address} ${host_name} ${host_name}.lebenshilfe.local" echo "Please enter your password if requested." if [ ! -z "$matches_in_hosts" ] then echo "Updating existing hosts entry." # iterate over the line numbers on which matches were found while read -r line_number; do # replace the text of each line with the desired host entry sudo sed -i '' "${line_number}s/.*/${host_entry} /" /etc/hosts done <<< "$matches_in_hosts" else echo "Adding new hosts entry." echo "$host_entry" | sudo tee -a /etc/hosts > /dev/null fi #Fuer eth0, wenn kein WLAN vorhanden ist. Kann dann auskommentiert werden. #echo rpi$(cat /sys/class/net/eth0/address | sed s'/://g') > /tmp/hostname && hostname --file /tmp/hostname # set network # start X environment if [ -f /boot/client-cfg/xinitrc ]; then if [ -d /home/pi ]; then ln -fs /boot/client-cfg/xinitrc /home/pi/.xinitrc; su -l pi -s /bin/bash -c 'startx -- vt1' & else ln -fs /boot/client-cfg/xinitrc /home/thinnote/.xinitrc; su -l thinnote -s /bin/bash -c 'startx -- vt1' & fi fi exit 0