Hallo,
den entsprechenden Code an dieser Stelle hatte ich vor einiger Zeit einmal vorgeschlagen:
http://forums.wsusoffline.net/viewtopic.php?f=9&t=3955#p12272http://forums.wsusoffline.net/viewtopic.php?f=9&t=3893aber so ganz hatte ich den existierenden Code wohl auch nicht verstanden. Die for-Schleife an dieser Stelle kann man wohl ganz entfernen, sodass ab der Zeile 919 in DownloadUpdates.sh, Version 9.5.1, jetzt steht:
- Code: Select all
echo "Creating integrity database for ${Txt} ..."
hashdeep -c md5,sha1,sha256 -l ../client/${Vz}/*.exe | tr '/' '\\' > ../client/md/hashes-${Vz}.txt
echo "Creating integrity database for ${Txt}-${OS_ARCH}-glb ..."
hashdeep -c md5,sha1,sha256 -l -r ../client/${Vz}/${OS_ARCH}-glb | tr '/' '\\' > ../client/md/hashes-${Vz}-${OS_ARCH}-glb.txt
Ich glaube nur nicht, dass das so ausreicht. hashdeep soll mit der Option -l ja relative Pfade verwenden, aber bezogen auf das Basisverzeichnis ../client/bin/ oder ../client/md. Der ursprüngliche Code hatte jeweils zwei cds vorgesehen, die jetzt anscheinend fehlen. Richtiger wäre wahrscheinlich:
- Code: Select all
echo "Creating integrity database for ${Txt} ..."
cd ../client/md
hashdeep -c md5,sha1,sha256 -l ../${Vz}/*.exe | tr '/' '\\' > hashes-${Vz}.txt
cd "$PATH_PWD"
echo "Creating integrity database for ${Txt}-${OS_ARCH}-glb ..."
cd ../client/md
hashdeep -c md5,sha1,sha256 -l -r ../${Vz}/${OS_ARCH}-glb | tr '/' '\\' > hashes-${Vz}-${OS_ARCH}-glb.txt
cd "$PATH_PWD"
Diese Verzeichniswechsel sind auch in der Batchdatei wsusoffline/cmd/DownloadUpdates.cmd an denselben Stellen enthalten, zum Beispiel ab Zeile 594 in DownloadUpdates.cmd:
- Code: Select all
echo Creating integrity database for .NET Frameworks' installation files...
if not exist ..\client\md\nul md ..\client\md
pushd ..\client\md
..\bin\%HASHDEEP_EXE% -c md5,sha1,sha256 -l ..\dotnet\*.exe >hashes-dotnet.txt
if errorlevel 1 (
popd
echo Warning: Error creating integrity database ..\client\md\hashes-dotnet.txt.
echo %DATE% %TIME% - Warning: Error creating integrity database ..\client\md\hashes-dotnet.txt>>%DOWNLOAD_LOGFILE%
) else (
popd
echo %DATE% %TIME% - Info: Created integrity database for .NET Frameworks' installation files>>%DOWNLOAD_LOGFILE%
)
Viele Grüße,
Hartmut
PS:
Im Batchskript DownloadUpdates.cmd sind die Verzeichniswechsel pushd und popd
pushd:
https://technet.microsoft.com/en-us/library/bb490978.aspxpopd:
https://technet.microsoft.com/en-us/library/bb490969.aspxEdit: Die Pfade mussten auch noch einmal korrigiert werden.