9.4. Přihlašovací skripty

Přihlašovací skript je krátký program, který se spouští po přihlášení uživatele do domény. Jeho nejběžnější využití spočívá v připojení domovské složky uživatele a vybraných sdílených složek na serveru. Lze je ale využívat k celé řadě úkonů jako jsou například spouštění monitorovacích programů, instalace síťových periferií (např. tiskáren), synchronizace času klienta a serveru nebo zobrazování důležitých oznámení správců systému.

Konfigurace přihlašovacích skriptů spočívá v inicializačním souboru logon.ini, který je součástí sdílené složky netlogon. V něm lze definovat proměnné a využívat předdefinované proměnné pro obecnou specifikaci chování serveru. Po přihlášení uživatele server zpracuje tento soubor, provede náhrady za proměnné a zástupné znaky a s ohledem na specifikované sekce vygeneruje skutečný přihlašovací skript, který následně systém Windows spustí. Tento skript je dočasný a ukládá se do složky netlogon ve tvaru <uživatelské_jméno>@<jméno_domény>.bat. Takto vypadá ukázkový inicializační soubor, který si vzápětí popíšeme.

9.4.1. Rychlý start

Příklad 9-2. Ukázkový soubor logon.ini


1       HOME = H:
2       public = F:
3       special = S:
4       #    Tohle je komentar--------------------------
5       [Global]
6       @ECHO "Vítejte v naší síti!"
7       pause
8       SET OS=${os}
9       SET WEBIS_URL=https://in.priklad.cz/webmail
10      NET TIME \\${server} /SET /YES
11      net use ${public} /delete /y
12      NET USE ${public} \\${server}\globalshare /YES
13      #   Tohle je dalsi komentar--------------------- 
14      [Group: admins@${domain}]
15      @ECHO "Nazdar správče."
16      NET USE G: \\${server}\adminshare1 /YES
17      NET USE I: \\${server}\adminshare2 /YES
18
19      [User: jaroslava.rychla@${domain}]
20      NET USE ${special} \\${server}\specialshare /YES
21
22      [Computer: STROJ*, M2?3]
23      @ECHO "Sedíte u počítače ${computer}."
24       
25      [OS: Win95]
26      @ECHO "Váš operační systém je: ${os}."
27      net use ${home} /delete /y
28      NET USE ${HOME} \\${server}\home /YES
29        
30      [IP: 192.168.2.*]
31      @ECHO "Vaše IP adresa: ${ip}."
32        
33      [Server: MAILBOX1]
34      @ECHO "Jste připojeni k serveru ${server}."
  

Následuje popis řádek po řádku.

9.4.2. Syntaxe a proměnné

K obecným zásadám zápisu inicializace přihlašovacích skriptů patří následující:

Samotná inicializace sestává v zásadě ze tří částí, jak je vidět už na příkladu. První část je definice globálních proměnných a maker. Ty představují zástupná jména pro příkazy a hodnoty, které se dále vyskytují na více místech inicializace. Druhá část je sekce Global, která obsahuje příkazy, které se provedou vždy, a může se vyskytovat i několikrát na různých místech skriptu. Třetí část sestává ze sekcí, které se provádějí jen v případě, že je splněna podmínka, která danou sekci definuje. Taková sekce vždy začíná zápisem [kategorie: hodnota1, hodnota2, ... ]. Takovýto zápis vyjmenovaných hodnot pro jednotlivé kategorie je opět specifický pouze pro váš souborový server, syntaxe inicializačních souborů systému Windows jej nepodporují. Následuje výčet kategorií, podle kterých lze jednotlivé sekce specifikovat:

Při zadávání hodnot pro jednotlivé sekce můžete využívat zástupné znaky * a ?, kde hvězdička nahrazuje libovolný počet znaků (tedy i nula) a otazník nahrazuje právě jeden znak. Příklady použití jsou vidět ve vzorové inicializaci.

Při psaní inicializace můžete využít i globální přednastavené proměnné:

Příklady použití těchto proměnných jsou opět vidět ve vzorové inicializaci.

9.4.3. Příkazy

Při psaní inicializace můžete nad rámec příkladů, které jsou vidět ve vzorové inicializaci, využívat i všech ostatních příkazů operačního systému MS-DOS. Jako referenční materiál k tomu lze využít podrobná dokumentace v angličtině.