lighningcrow
Goto Top

Benötige Untersrüzung beim Fileserver Spiegeln

Spieglein Spieglein an der Wand

Hi Leutz,

ich hab da mal wieder ne Frage.

Ich Möchte gerne Daten von einem Fileserver auf einen zweit Pc Spiegeln.
Ich denke das geht mit robocopy...

(Kennt dazu jemand eine gute Doku?)

Jetzt aber zu dem eigentlichen Problem. Ich möchte gerne das Anmeldescript so abändern, das es erst abfragt ob der Primäre File Server überhaupt erreichbar ist. Wenn ja dann soll es die Laufwerke wie gehabt mappen, wenn nein dann nimm den Ersatz Server.

z.B.:

If Ping 123.123.123.123 == IO
net use S: \\123.123.123.123\Userverzeichnis$
If Ping 123.123.123.123 == Nicht IO
net use S: \\123.123.123.124\Userverzeichnis$

Ist das möglich???

Und jetzt nochmal zum Spiegeln: Bekomme ich es mit Robocopy so hin das er die Geänderten daten des Secundär Servers zurück auf den Primär Server Spiegelt???

Als Quasie ein hin und her Spiegeln.

Auf Beiden Systemen läuft SBS 2003.

MFG
LC

Content-ID: 87262

Url: https://administrator.de/contentid/87262

Ausgedruckt am: 05.11.2024 um 09:11 Uhr

lighningcrow
lighningcrow 14.05.2008 um 17:33:35 Uhr
Goto Top
Hmm...
keiner eine Idee???

Oder habe ich mich etwas zu undeutlich Ausgedrückt???
60730
60730 14.05.2008 um 17:46:05 Uhr
Goto Top
Servus,

das mappen geht ungefähr so:

rem variable für den Server löschen
set server=
rem wenn Server1 existiert, dann setze Ihn ihn die Variable Server ein
if exist \\server1\freigabe\>nul set server=server1
rem wenn Server1 nicht da (Variable leer) dann gehe zum Mirror
if %server% =="" goto mirror  
rem wenn Variable gefüllt, dann zu "ende" gehen  
if not %server% == "" goto end  
goto end

:mirror
rem teste, ob Server2 vorhanden ist
if exist \\server2\freigabe\>nul set server=server2
Rem wenn nicht, dann mach irgendwas, damit die User / der Admin eine Nachricht bekommt
if %server% =="" echo "Super toll, beide Server sind nicht erreichbar, der Admin übrigens auch nicht - ist bereits auf die Bahamas ausgewandert"  
:end
rem mappe die Freigabe anhand der Variable %server%
net use x: \\%server%\freigabe

Zum Robocopy - puh willst du das wirklich machen?
Gehen tut es, aber das muß wirklich sehr durchdacht sein.
Wann wird von A nach B gesichert ist ja klar- abends - wenn keiner mehr da ist. Aber wann zurück?
lighningcrow
lighningcrow 14.05.2008 um 17:54:19 Uhr
Goto Top
na super jetzt editiere ich schon den Hauptthreat und prompt antwortet jemand ;)

1. Wie Bekomme ich in den Beiträgen den Code Hintergraut (nur so nebenbei)

2. Kannst du mir dein Batch n bissl auseinandernehmen, (was bewirkt was)
weil wegen dem Hintergrundwissen was mir augenscheinlich fehlt...

wäre Dankbar (Bin ich auch schon wegen der Antwort)

Gibt es denn eine Alternative zum Robocopy???

Etwas zum Hintergrund der Datensicherungen:

1 Es läuft Täglich ein Band Backup
2 Es läuft zweimal Täglich eine Schattenkopie
3 Das system läuft im RAID 5
4 Bin ein Externer Admin sprich nicht immer beim Selben Kunden daher sollen die Daten Gespiegelt werden damit ein permanenter zugriff möglich ist.
60730
60730 14.05.2008 um 18:16:19 Uhr
Goto Top
Servus again,

also den "Ping" würd ich da komplett rauslassen - du willst schliesslich nicht wissen, ob der Server anpingbar ist - sondern, ob der SMB Dienst die Freigabe "rausrückt"...


Und wenn du anstelle [code] die "<>" benutzt wirds auch "grau" face-wink

Wegen Robocopy zurück - wenn Server1 nicht da ist und die User Server2 benutzen, wird es einen Grund geben, warum Server1 nicht da ist.
Das zu automatisieren, macht (IMHO) echt keinen Sinn. Klar eine Batch, die den umgekehrten Weg geht, wie die "Sicherungsbatch" - kannst du vorbereiten - mehr aber auch nicht.
lighningcrow
lighningcrow 14.05.2008 um 18:24:44 Uhr
Goto Top
Macht Sinn, wenn du mir jetz noch sagst wie ich mir eine Mail schicken kann sobald der FS off ist komme ich durch die Leitung und geb dir nen Schmatzer face-big-smile

Edit: Hoffe du kannst mir dein Batch trozdem erklären...
Edit: Wer lesen kann ist eindeutig im Vorteil... Habs gesehen...
lighningcrow
lighningcrow 14.05.2008 um 18:34:09 Uhr
Goto Top
> rem variable für den Server
> löschen
> set server=
> rem wenn Server1 existiert, dann setze Ihn
> ihn die Variable Server ein
> if exist \\server1\freigabe\>nul set server=server1
> rem wenn Server1 nicht da (Variable leer) dann gehe zum Mirror
> if %server% =="" goto mirror  
> rem wenn Variable gefüllt, dann zu "ende" gehen  
> if not %server% == "" goto end  
> goto end
> 
> :mirror
> rem teste, ob Server2 vorhanden ist
> if exist \\server2\freigabe\>nul set
> server=server2
> Rem wenn nicht, dann mach irgendwas, damit
> die User / der Admin eine Nachricht bekommt
> if %server% =="" echo "Super  
> toll, beide Server sind nicht erreichbar, der
> Admin übrigens auch nicht - ist bereits
> auf die Bahamas ausgewandert"  
> :end
> rem mappe die Freigabe anhand der Variable
> %server%
> net use x: \\%server%\freigabe
> 


Wofür ist "nul"
Bei allem anderen hat gerade ein Ganz Großes Brett Risse bekommen und der Schalter Klick gemacht...

War richtig das ich das ganze nur am anfang eintragen muß und dann nur noch anstatt
\\server1\freigabe$
\\%server%\freigabe$ 
eintragen muß
60730
60730 14.05.2008 um 18:39:41 Uhr
Goto Top
Macht Sinn, wenn du mir jetz noch sagst wie
ich mir eine Mail schicken kann sobald der FS
off ist komme ich durch die Leitung und geb
dir nen Schmatzer face-big-smile
ich nutze für sowas Bmail.exe - andere nehmen blat.exe - beides Kommandozeilenmailer.
Findest du per Google

if %server% =="" goto mail  

:mail 
bmail.exe -s (ip des Exchange) -t (deine Emailadresse) -f (wer schicktdiemail@firma) -m  -a "Server nicht vorhanden"  

Edit: Hoffe du kannst mir dein Batch trozdem
erklären...
Edit: Wer lesen kann ist eindeutig im
Vorteil... Habs gesehen...

Bis morgen, mein Fahrrad ruft und schaut schon ganz traurig face-wink
lighningcrow
lighningcrow 15.05.2008 um 15:32:54 Uhr
Goto Top
Ups Schon wieder...
Hab den Komentar überlesen....

(Bla Bla wer lesen kann und so weiter)

werde mal Probieren...

melde mich dann wieder
60730
60730 15.05.2008 um 15:46:26 Uhr
Goto Top
Wofür ist "nul"

So ganz allgemein - alles was "normalerweise" in der Dosbox angezeigt wird kannst du umleiten.
Dazu nutzt man das Zeichen >
(muüßte in der Batch nicht unbedingt sein, aber ich hab die Schreibweise so im Blut)

Nul steht für das Nuldevice, >lpt1 für den Paralellen Port >c:\test.txt für die Datei Text.txt auf c: usw.
lighningcrow
lighningcrow 15.05.2008 um 15:49:21 Uhr
Goto Top
Hmmm...
kann ich irgendwie die IP Mit dem Namen abgelichen???

Hier meine Test Batch:

set server=
if exist \\192.168.1.1\Freigabe>nul set server=192.168.1.1
if %server% =="Server1" Echo Hallo  

oder geht nur IP
60730
60730 15.05.2008 um 16:04:57 Uhr
Goto Top
Hmmm...
kann ich irgendwie die IP Mit dem Namen
abgelichen???

Hier meine Test Batch:

> set server=
> if exist \\192.168.1.1\Freigabe>nul set
> server=192.168.1.1
> if %server% =="Server1" Echo  
> Hallo
> 

oder geht nur IP

Servus,

also - wenn du die Variable Server mit der Ip füllst dann steht dort die Ip und nicht der Name....#
ungetestet müßte das so funktionieren:

Rem Variablen leeren
set servername=
set serverip=
rem Erreichbarkeit testen und Variable ServerIP setzen
 if exist \\192.168.1.1\Freigabe>nul set serverip=192.168.1.1
Rem wenn variable Serverip = Ip von Server1 dann setze Servername Server1 
if %serverip% =="192.168.1.1" set Servername ="Server1"  
Echo Hallo
rem Zeige alle Variablen, die mit "Server" beginnen und pausiere - damit man auch was sieht  
Set server
Pause
lighningcrow
lighningcrow 19.05.2008 um 18:00:56 Uhr
Goto Top
mal ne Ganz blöde Frage zum Mailer wenn ich diesen mit ins Logonscript nehme,
muss er dann nicht bei jedem user instaliert sein???

bzw. bekomme ich für jede Anmeldung die läuft dann eine email das der Server nicht da ist???

sehe ich das richtig???
lighningcrow
lighningcrow 19.05.2008 um 18:11:53 Uhr
Goto Top
Hm,
das script ist ja so in ordnung, das Problem ist nur das ich ca. 12 Verschiedene Laufwerke mappe,


if exist \\192.168.1.1 set serverip="192.168.1.1"
<\code>

funktioniert das ganze nur wenn ich die exist Abfrage für ein Verzeichniss mache, oder mache ich was falsch?
60730
60730 19.05.2008 um 18:13:39 Uhr
Goto Top
mal ne Ganz blöde Frage zum Mailer:

Moin, es gibt nur dumme Antworten face-wink
wenn ich diesen mit ins Logonscript nehme,
muss er dann nicht bei jedem user installiert
sein???

"installiert" muß der gar nicht werden - jeder User muß nur auf den Pfad gelangen, wo er "liegt"


bzw. bekomme ich für jede Anmeldung die läuft dann eine email das der Server nicht da ist???

Wenn "jede" Anmeldung - das gleiche Skript ausführt (indem der Mailer aufgerufen wird) - ja natürlich...

sehe ich das richtig???

Wie Joe Kelly so schön sagt - RISCHDISCH
lighningcrow
lighningcrow 19.05.2008 um 18:15:15 Uhr
Goto Top
Klonk...

Habe schon wieder ein Brett in der Logik...

vergesst die Frage...
lighningcrow
lighningcrow 20.05.2008 um 21:41:18 Uhr
Goto Top
@echo off
set server=
set serverip=
if exist \\192.168.123.4\server >nul set serverip=192.168.123.4
if %serverip% =="" @echo "Hilfe"
pause
<\code>

was mache ich hier falsch Ich bekomme die meldung das Echo an der stelle syntaktisch falsch sei.
60730
60730 21.05.2008 um 10:39:33 Uhr
Goto Top
Moin,

probiers mal so herum:

@echo off
set server=
set serverip=0.0.0.0
if exist \\192.168.123.4\netlogon >nul set serverip=192.168.123.4
if not %serverip% == "0.0.0.0" goto map  
@Echo "Hilfe"  
goto end
:map
echo %serverip%
:end
lighningcrow
lighningcrow 27.05.2008 um 19:14:12 Uhr
Goto Top
@echo off
set server=
set serverip=0.0.0.0
if exist \\192.168.123.4\server >nul set serverip=192.168.123.4
if not %serverip% == "192.168.123.4"  
@Echo "Hilfe"  
pause

Wieder Syntaxfehler...

a5657eb2344c8451e833620f2cc2f422-test