Thanks: 0
Ergebnis 1 bis 2 von 2
-
17.08.2018, 00:26 #1
- Registriert seit
- 06.01.2014
- Beiträge
- 62
- Thanks (gegeben)
- 44
- Thanks (bekommen)
- 5
- Total Downloaded
- 0
- Total Downloaded
- 0
Box 1:Xpeed LX3 OpenATV 6.3 (2020-02-18)Box 2:Xpeed LX3 OpenATV 6.4 (2020-05-28)Skript das die /etc/fstab nach nfs durchsucht und diese versucht zu mounten
Hallo,
aus der Not heraus habe ich folgendes Skript geschrieben weil meine nfs Laufwerke ständig getrennt waren.
Ich habe bei jedem Receiver in /etc/exports die /media/hdd freigegeben.
Auch habe ich in /etc/fstab jeweils alle anderen Receiver als nfs eingetragen.
Beispiel:
xpeedlx3:/hdd /media/net/schlafzimmer-receiver nfs _netdev,rw,nolock,tcp,nfsvers=3,rsize=8192,wsize=8 192,timeo=14,soft
Als Sahnehäubchen habe ich in jedem Receiver /media/hdd/movie/<receiver> je einen Symlink erstellt der auf /media/hdd/net/<receiver> zeigt.
Beispiel:
/media/hdd/movie/schlafzimmer-receiver -> /media/hdd/net/schlafzimmer-receiver
Nun zum Skript. Zunächst wird die aktuelle Zeit mit date ausgegeben, um zu sehen wann es ausgeführt wurde.
Es ließt die /etc/fstab spaltenbasiert ein.
Auskommentierte Einträge beginnend mit # werden ignoriert.
Es wird nach nfs durchsucht.
Dann wird geprüft ob das Zielverzeichnis leer ist und wenn ja wird mount durchgeführt.
Das Ergebnis wird in /tmp/mounttest.log protokolliert.
Eingeplant wird es über crontab -e / crontab -l. Dazu hier zwei Beispiele:
# Alle 5 Minuten
*/5 * * * * ~/mounttest > /tmp/mounttest.log
# Alle 6 Stunden
0 */6 * * * ~/mounttest > /tmp/mounttest.log
Dateiname: mounttest
Verzeichnis: home von root
Seltsam das Forum hat l i n e durch **** ersetzt. Einfach hier herunterladen: mounttest.txt
Code:#!/bin/bash date grep -e nfs /etc/fstab | grep -v \# | tr -s [:space:] | while read -r **** ; do echo " " echo "Processing $****" # your code goes here NAME=`echo "$****" | cut -d" " -f1` #echo "Name: $NAME" DIR=`echo "$****" | cut -d" " -f2` #echo "Path: $DIR" #echo "Content: " #ls -A $DIR #echo " " if [ "$(ls $DIR)" ]; then echo "$DIR is not Empty. $NAME is already mounted." else echo "$DIR is Empty. Try to mount $NAME." mount $NAME fi done echo "Done." #eof
- grep Linux Tutorial mit Beispielen // kushellig
- grep - Shell Removing Tabs/Spaces - Stack Overflow
| tr -s [:space:] - #nixCraft
Bash Shell Check Whether a Directory is Empty or Not - nixCraft
Bash Shell: Check File Exists or Not - nixCraft - 10 Practical Linux Cut Command Examples to Select File Columns
- # Cronttab
Crontab Generator - Generate crontab syntax
crontab.guru - the cron schedule expression editor - Using cut command for an environment variable - Unix & Linux Stack Exchange
HT=`hostname | cut -f 1 -d "."` - # Processing each **** directly
bash - How to process each **** received as a result of grep command - Stack Overflow
grep xyz abc.txt | while read -r **** ; do
echo "Processing $****"
# your code goes here
done
Geändert von blueice_haller (17.08.2018 um 00:39 Uhr)
-
Advertising
-
17.08.2018, 06:42 #2
- Registriert seit
- 15.06.2013
- Beiträge
- 2.359
- Thanks (gegeben)
- 287
- Thanks (bekommen)
- 1399
- Total Downloaded
- 1,32 MB
- Total Downloaded
- 1,32 MB
Box 1:hd51Box 2:vuduo4kseBox 3:und noch 20-30 andereMacht ein „mount -a“ nicht das gleiche?
hd51, vuduo4se,....
Lesezeichen