6 Replies Latest reply on Feb 25, 2014 5:56 AM by Rouven

    [SOLVED] Probleme beim Formatieren

    Rouven Apprentice
      Guten Tag,

      ich habe ein sporadisches Problem beim formatieren der Festplatte. Ich lege per Skript eine 100mb Systempartition an (brauchen wir für Laptops um die TPM Verschlüsselung nutzen zu können) und den Rest der Festplatte fürs Betriebssystem. Das funktioniert in 95% der Fälle wunderbar. Bei machen Rechner schlägt jedoch die Formatierung der 100mb Partition fehl und somit natürlich auch die Installation. Wenn ich eine defekte Festplatte gegen eine nagelneue austausche, habe ich dieses Phänomen eigentlich immer.

      Und jetzt das kuriose, wenn ich den PC mit einer Windows DVD starte, die Festplatte formatieren und dann die Installation nochmal über DSM starte, läuft sie ohne Probleme durch....

      Kann mir jemand sagen wo ich da ansetzten kann oder hat jemand eine Lösung dafür?
        • 1. Re: [SOLVED] Probleme beim Formatieren
          derniwi Master
          Hallo,

          so direkt kann ich dazu nichts sagen.
          Werden denn alle Partitionen sauber erstellt?
          Welche Größe haben die Platten?
          Evtl. mal die SMART-Werte auslesen?

          Kannst du das Skript hier mal reinstellen?

          Gruß
          Nils
          • 2. Re: [SOLVED] Probleme beim Formatieren
            Klaus Salger Expert
            Das klingt für mich so, als ob per DSM einfach nicht partitioniert würde.
            Wenn die Partitionierung irgendwann mal erledigt wurde wird brav formatiert aber mit neuen Platten geht das natürlich nicht.

            Ciao
              Klaus
            • 3. Re: [SOLVED] Probleme beim Formatieren
              Rouven Apprentice
              Die Festplatten sind in Ordnung, und 250GB groß.

              Angelegt wird nur die 100MB Partition und dann bricht das Skript bei der Formatierung ab.

              Hier das Skript:

              @echo off
              echo Partitioning and formatting multiple Partitions
              echo Partitioning and formatting multiple Partitions > _out.txt

              IF NOT "%OS%" == "Windows_NT" GOTO wrongOS_error
              IF NOT EXIST X:\ENTEO\osdclnt.ini GOTO wrongOS_error

              set disknumber=0
              set formatParams=/Y
              if "%InstallationParameters.QuickFormat%" == "1" set formatParams=/Y /Q

              set diskfull=0
              set activate_partition=0
              if "%disknumber%" == "0" set activate_partition=1

              echo Cleaning Disk %disknumber%
              echo Cleaning Disk %disknumber% >> _out.txt
              echo select disk %disknumber% > clean_%disknumber%.txt
              echo clean >> clean_%disknumber%.txt
              echo exit >> clean_%disknumber%.txt
              echo --- Content of clean_%disknumber%.txt >> _out.txt
              type clean_%disknumber%.txt >> _out.txt
              echo --- >> _out.txt
              diskpart /s clean_%disknumber%.txt >> _out.txt
              if errorlevel 1 goto cleandisk_error

              :createvolume_1
              set volumeletter=d
              set volumefs=%InstallationParameters.P1FileSystem%
              set volumesize=%InstallationParameters.P1Size%
              set returnlabel=createvolume_2
              goto createvolume

              :createvolume_2
              set volumeletter=c
              set volumefs=%InstallationParameters.P2FileSystem%
              set volumesize=%InstallationParameters.P2Size%
              set returnlabel=createvolume_3
              goto createvolume

              :createvolume_3
              set volumeletter=e
              set volumefs=%InstallationParameters.P3FileSystem%
              set volumesize=%InstallationParameters.P3Size%
              set returnlabel=createvolume_4
              goto createvolume

              :createvolume_4
              set volumeletter=f
              set volumefs=%InstallationParameters.P4FileSystem%
              set volumesize=%InstallationParameters.P4Size%
              set returnlabel=end
              goto createvolume


              :createvolume
              echo --- Creating %volumefs% Volume %volumeletter% with size %volumesize%
              echo --- Creating %volumefs% Volume %volumeletter% with size %volumesize% >> _out.txt
              if "%volumefs%" == "NONE" goto %returnlabel%
              echo removing Mountpoint %volumeletter%:
              echo removing Mountpoint %volumeletter%: >> _out.txt
              echo select volume %volumeletter% > remove_%volumeletter%.txt
              echo remove >> remove_%volumeletter%.txt
              echo exit >> remove_%volumeletter%.txt
              echo --- Content of remove_%volumeletter%.txt >> _out.txt
              type remove_%volumeletter%.txt >> _out.txt
              echo --- >> _out.txt
              diskpart /s remove_%volumeletter%.txt >> _out.txt
              if not errorlevel 1 goto createvolume_part

              echo volume did not exist... sleeping 2 seconds
              rem ping is used as a replacement for sleep
              ping 127.0.0.1 -n 3 -w 1000 > nul

              :createvolume_part
              echo creating new %volumeletter% Partition
              echo creating new %volumeletter% Partition >> _out.txt
              set local_sizeparam=
              if not "%volumesize%" == "0" set local_sizeparam=size=%volumesize%
              if "%volumesize%" == "0" set diskfull=1
              echo automount disable > create_%volumeletter%.txt
              echo select disk %disknumber% >> create_%volumeletter%.txt
              echo create partition primary %local_sizeparam% >> create_%volumeletter%.txt
              if "%activate_partition%" == "1" echo active >> create_%volumeletter%.txt
              set activate_partition=0
              echo assign letter %volumeletter% >> create_%volumeletter%.txt
              echo exit >> create_%volumeletter%.txt
              echo --- Content of create_%volumeletter%.txt >> _out.txt
              type create_%volumeletter%.txt >> _out.txt
              echo --- >> _out.txt
              diskpart /s create_%volumeletter%.txt >> _out.txt
              if errorlevel 1 goto createvolume_parterror

              echo formatting %volumeletter% Partition
              echo formatting %volumeletter% Partition >> _out.txt
              format %volumeletter%: %formatParams% /FS:%volumefs% >> _out.txt
              if errorlevel 1 goto createvolume_formaterror

              goto %returnlabel%

              :createvolume_diskfull
              set errortext=Creating Partition %volumeletter% failed - disk is full
              goto error

              :createvolume_parterror
              if "%diskfull%" == "1" goto createvolume_diskfull
              set errortext=Creating Partition %volumeletter% failed
              goto error

              :createvolume_formaterror
              set errortext=Formatting Partition %volumeletter% failed
              goto error

              :cleandisk_error
              set errortext=Cleaning Disk %disknumber% failed
              goto error

              :wrongOS_error
              set errortext=This Script works only in Windows PE
              goto error

              :error
              echo %errortext%
              echo %errortext% >> _out.txt
              echo %errortext% > _Error.txt
              exit /B 1

              :end
              echo Execution finished
              exit /B 0
              %errortext%
              echo %errortext% >>  out.txt
              echo %erro


              Gruß
              Rouven
              • 4. Re: [SOLVED] Probleme beim Formatieren
                Klaus Salger Expert
                OK, in dem Script sehe ich kein offensichtliches Problem.
                Dass das erste Volume den Laufwerksbuchstaben D statt wie üblich C bekommt ist zwar ungewöhnlich (und unnötig?), ein Problem würde ich an der Stelle allerdings nicht erwarten.

                Die Installationsparameter sind P1: 100, FAT32 und P2: 0, NTFS, richtig?
                Und die sind auch bei den Policyinstanzen der Problemkandidaten korrekt gesetzt?

                Ich würde empfehlen mal testweise einen Problemkandidaten mit einem Bootenvironment mit aktiviertem Debug-Flag zu booten, die _out.txt (unter x:\windows\temp) zu analysieren und mit diskpart Disks und Volumes zu prüfen.
                Dann kann man auch nochmal versuchen die Partitionen zu formatieren um mal zu sehen, was dabei rauskommt.

                Ansonsten könnte man auch testen, ob die aktuelle Original-Version des PreOS Scripts funktioniert.

                Ciao
                  Klaus
                • 5. Re: [SOLVED] Probleme beim Formatieren
                  _Mel_ Master
                  bekomme erstmal raus, was schief geht:

                  am einfachsten:
                  bau nach dem :error label ein "cmd" ein.
                  dann bekommst du an der stelle eine command prompt und kannst nachsehen. (output der vorherigen befehle, inhalt von _out.txt, partitionierung ansehen, format befehl mal von hand starten und sehen was passiert)
                  • 6. Re: [SOLVED] Probleme beim Formatieren
                    Rouven Apprentice
                    Hallo,

                    Danke für die Hinweise.

                    In der _out.txt war dann der entscheidende Hinweis. Aus irgendwelchen Gründen kann der Laufwerksbuchstabe D, anscheinend ab und zu, nicht zugewiesen werden. Hab ihn auf Q geändert und nu läuft es super....


                    Das zuweisen der ersten Partition unter einem anderem Laufwerksbuchstaben, mache ich damit C für die Windows Partition verfügbar ist.


                    Vielen Dank!

                    Gruß
                    Rouven