DSC linuxos nxFile-erőforráshoz
A PowerShell Desired State Configuration (DSC) nxFile erőforrása egy Linux-csomópont fájljainak és könyvtárainak kezelésére szolgáló mechanizmust biztosít.
Syntax
nxFile <string> #ResourceName
{
DestinationPath = <string>
[ SourcePath = <string> ]
[ Type = <string> { directory | file | link } ]
[ Contents = <string> ]
[ Checksum = <string> { ctime | mtime | md5 } ]
[ Recurse = <bool> ]
[ Force = <bool> ]
[ Links = <string> { follow | manage | ignore } ]
[ Group = <string> ]
[ Mode = <string> ]
[ Owner = <string> ]
[ DependsOn = <string[]> ]
[ Ensure = <string> { Absent | Present } ]
}
Tulajdonságok
Tulajdonság | Leírás |
---|---|
DestinationPath | Megadja azt a helyet, ahol biztosítani szeretné egy fájl vagy könyvtár állapotát. |
SourcePath | A fájl- vagy mappaerőforrás másolási útvonalát adja meg. Ez az elérési út lehet helyi elérési út vagy URL-cím http/https/ftp . A távoli http/https/ftp URL-címek csak akkor támogatottak, ha a Type tulajdonság értéke fájl. |
Típus | Megadja, hogy a konfigurált erőforrás könyvtár vagy fájl-e. Állítsa ezt a tulajdonságot könyvtárra , hogy jelezze, hogy az erőforrás egy könyvtár. Állítsa fájlra, hogy jelezze, hogy az erőforrás egy fájl. Az alapértelmezett érték a fájl. |
Tartalom | Megadja egy fájl tartalmát, például egy adott sztringet. |
Ellenőrzőösszeg | Meghatározza a két fájl azonosságának megállapításához használandó típust. Ha az Ellenőrzőösszeg nincs megadva, csak a fájl- vagy könyvtárnevet használja az összehasonlításhoz. Az értékek a következők: ctime, mtime vagy md5. |
Ismétlődés | Azt jelzi, hogy vannak-e alkönyvtárak. Állítsa be ezt a tulajdonságot úgy $true , hogy jelezze, hogy alkönyvtárakat szeretne szerepeltetni. A mező alapértelmezett értéke: $false . Ez a tulajdonság csak akkor érvényes, ha a Type tulajdonság könyvtárra van állítva. |
Force | Bizonyos fájlműveletek (például egy fájl felülírása vagy egy nem üres könyvtár törlése) hibát eredményeznek. A Force tulajdonság használata felülírja az ilyen hibákat. Az alapértelmezett érték $false . |
Hivatkozások | Meghatározza a szimbolikus hivatkozások kívánt viselkedését. Ezt a tulajdonságot úgy állíthatja be, hogy kövesse a szimbolikus hivatkozásokat, és reagáljon a hivatkozás céljára. Másolja például a fájlt a hivatkozás helyett. Állítsa be ezt a tulajdonságot úgy, hogy kezelni tudja a hivatkozást. Másolja például magát a hivatkozást. A tulajdonság figyelmen kívül hagyásához hagyja figyelmen kívül a szimbolikus hivatkozásokat. |
Group | Annak a csoportnak a neve, amely engedélyekkel rendelkezik a fájlhoz vagy könyvtárhoz. |
Mód | Megadja az erőforrás kívánt engedélyeit oktális vagy szimbolikus jelöléssel. Például : 777 vagy rwxrwxrwx. Ha szimbolikus jelölést használ, ne adja meg az első karaktert, amely könyvtárat vagy fájlt jelöl. |
Tulajdonos | Annak a csoportnak a neve, amely a fájl vagy könyvtár tulajdonosa. |
Közös tulajdonságok
Tulajdonság | Leírás |
---|---|
DependsOn | Azt jelzi, hogy egy másik erőforrás konfigurációjának futnia kell az erőforrás konfigurálása előtt. Ha például az elsőként futtatni kívánt erőforráskonfigurációs szkriptblokk azonosítója ResourceName, és típusa ResourceType, akkor a tulajdonság használatának szintaxisa.DependsOn = "[ResourceType]ResourceName" |
Biztosítja | Meghatározza, hogy a fájl létezik-e. Állítsa ezt a tulajdonságot Bemutató értékre a fájl meglétének ellenőrzéséhez. Állítsa a Hiányzó értékre, és győződjön meg arról, hogy a fájl nem létezik. Az alapértelmezett érték a Jelen. |
További információ
A Linux és a Windows alapértelmezés szerint eltérő sortörési karaktereket használ a szövegfájlokban, és ez váratlan eredményeket okozhat, amikor nxFile-val konfigurál bizonyos fájlokat egy Linux rendszerű számítógépen. A Linux-fájlok tartalmának többféleképpen is kezelhetők a váratlan sortörési karakterek okozta problémák elkerülése mellett:
A fájl másolása távoli forrásból (http, https vagy ftp)
Hozzon létre egy fájlt Linux rendszeren a kívánt tartalommal, és állítsa be egy webes vagy FTP-kiszolgálóra, amely elérhető a konfigurálni kívánt csomópont(ok)on. Adja meg a SourcePath tulajdonságot az nxFile erőforrásban a fájl webes vagy FTP URL-címével.
Import-DSCResource -ModuleName nx Node $Node { nxFile resolvConf { SourcePath = "http://10.185.85.11/conf/resolv.conf" DestinationPath = "/etc/resolv.conf" Mode = "644" Type = "file" } }
Olvassa el a fájl tartalmát a PowerShell-szkriptben a Get-Content használatával, miután beállította a $OFS tulajdonságot a Linux sortörési karakter használatára.
Import-DSCResource -ModuleName nx Node $Node { $OFS = "`n" $Contents = Get-Content C:\temp\resolv.conf nxFile resolvConf { DestinationPath = "/etc/resolv.conf" Mode = "644" Type = "file" Contents = "$Contents" } }
Egy PowerShell-függvény használatával a Windows-sortöréseket linuxos sortörési karakterekre cserélheti.
Function LinuxString($inputStr){ $outputStr = $inputStr.Replace("`r`n","`n") $outputStr += "`n" Return $outputStr } Import-DSCResource -ModuleName nx Node $Node { $Contents = @' search contoso.com domain contoso.com nameserver 10.185.85.11 '@ $Contents = LinuxString $Contents nxFile resolvConf { DestinationPath = "/etc/resolv.conf" Mode = "644" Type = "file" Contents = $Contents } }
Példa
Az alábbi példa biztosítja, hogy a könyvtár /opt/mydir
létezik, és hogy a megadott tartalommal rendelkező fájl létezik.
Import-DSCResource -ModuleName nx
Node $node {
nxFile DirectoryExample
{
Ensure = "Present"
DestinationPath = "/opt/mydir"
Type = "Directory"
}
nxFile FileExample
{
Ensure = "Present"
Destinationpath = "/opt/mydir/myfile"
Contents=@"
#!/bin/bash`necho "hello world"`n
"@
Mode = "755"
DependsOn = "[nxFile]DirectoryExample"
}
}
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: