-
Notifications
You must be signed in to change notification settings - Fork 2
/
postsync_patch_nr1
36 lines (32 loc) · 1.48 KB
/
postsync_patch_nr1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# Dieser Patch muss in die Postsync-Datei der betroffenen Gruppe
# Dann wird in die Datei (s.u.) vor der Zeile, die mit $VOR beginnt
# eine Zeile eingefügt, die $EINFUEGEN enthält.
# Im Linbo-Log wird $BESCHREIBUNG ausgegeben und eine Erfolgs/Misserfolgsmeldung
######### BEGINN Patch Nr. 1 ###################
HARDWAREGRUPPE="travelmate5735z"
BESCHREIBUNG="Reparieren des Backlight-Bugs"
EINFUEGEN="setpci -s 00:02.0 F4.B=00"
VOR="^exit 0" # VORSICHT! DIE STELLE MUSS EINDEUTIG SEIN, SONST GIBT ES NEBENWIRKUNGEN!
# Zur Not in die Datei einen Platzhalterkommentar schreiben: z.B. #HIER
DATEI="/mnt/etc/rc.local"
# Sinnvolles weiterarbeiten nur möglich, wenn die Datei auch existiert...
if [ -e $DATEI ] ;
then
# wenn das Einzufügende schon drinsteht, dann erstmal rauslöschen...
grep -e "$EINFUEGEN" $DATEI >> /dev/null && sed -e "/$EINFUEGEN/d" -i $DATEI
# Test, ob die Stelle überhaupt gefunden werden kann.
if [[ $(grep -c -e "$VOR" "$DATEI") == "0" ]]
then
echo "Ich kann in $DATEI die Einfügestelle ($VOR) nicht finden! Ich gebe auf!"
else
if [[ "$(hostgroup)" == "$HARDWAREGRUPPE" ]]
then
echo -n "$BESCHREIBUNG "
sed -e "/$VOR/ i $EINFUEGEN" -i "$DATEI"
grep -e "$EINFUEGEN" $DATEI >> /dev/null && echo "...war an $(grep -c -e "$EINFUEGEN" "$DATEI") Stelle(n) erfolgreich" || echo "...ist gescheitert."
fi
fi
else
echo "Datei ($DATEI) existiert nicht. Patchen unmöglich."
fi
########### ENDE Patch Nr. 1 #####################