<

Using Diskpart on a Server Core Remote Shell

Published on
12,566 Points
6,566 Views
Last Modified:
Approved
To effectively work with Diskpart on a Server Core, it is necessary to write some small batch script's, because you can't execute diskpart in a remote powershell session.

To get startet, place the Diskpart batch script's into a share on your local computer and mount it to your server core:

Limited access to the Server Core:
net use z: \\mycomputer\myshare /user:mydomian\myuser Test123 -> Dummy user recommended, cause you must add the password over remoteshell

Open in new window

or

Full access to the Server Core:
Copy the files to the Servercore \\servercore\C$ share, using an administrative user.


How to use Diskpart and your scripts:
I allways have a basic "list" script to get an overview over the current situation:
rescan
List disk
List volume
Exit

Open in new window


And it's executed like this:
DISKPART /S c:\list

Open in new window


You can give any/no filetype to the script (list.txt, list.cmd) you like.

Output example:
DISKPART> list disk

  Disk ###  Status         Size     Free     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
  Disk 0    Online           74 GB      0 B
  Disk 1    Offline          74 GB      0 B

DISKPART> list volume

  Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  Volume 0     D                       DVD-ROM         0 B  No Media
  Volume 1         System Rese  NTFS   Partition    100 MB  Healthy    System
  Volume 2     C                NTFS   Partition     74 GB  Healthy    Boot

Open in new window



What's most important to find out is, if a dvd drive is mounted on the server core, cause this will change the volume numbers and you have to use a different script. Copy the examples to a file and execute them with DISKPART /S:

Warning! If a volume 2,3,or 4 is already existing on your server and its not the system volume it will be deleted! Try in a test evironment first please!

Example 1 (DVD = Volume 1):
This will set Disk 2 online, create a new Volume (3) on Disk 2, do a standard format of volume 3 and add the next free drive letter to it.
list disk 
select disk 2
online disk
attr disk clear readonly
create partition primary
list volume
select volume 3
format
select volume 3
ASSIGN
exit

Open in new window



Example 2 (no DVD):
This will set Disk 2 online, create a new Volume (2) on Disk 2, do a Standard format of volume 2 and add the next free drive letter to it.
list disk 
select disk 2
online disk
attr disk clear readonly
create partition primary
list volume
select volume 2
format
select volume 2
ASSIGN
exit

Open in new window



Example 3 (add second volume after Example 1):
This will set Disk 3 online, create a new Volume (4) on Disk 3, do a Standard format of volume 4 and add the next free drive letter to it.
list disk 
select disk 3
online disk
attr disk clear readonly
list volume
select volume 4
format
select volume 4
ASSIGN
exit

Open in new window



I recommend you to work with DISKPART only! Powershell command's like get-psdrive won't rescan for new drive's and partitions you have added to the server! They will update only after a logging of your remote session and reconnecting to the Server core. To update the drives in Diskpart just execute the list script again and the RESCAN command will scan your server for new drives (yes, it's not really necessary , but it won't hurt).

Sometimes one or two of the last commands of the script's have not executed at all and I had to add a short script that will only execute the ASSIGN command for example. Maybe it's better to execute DISKPART on a large drives/volumes in a PowerShell backround job to avoid the permanent updating of your remoteshell when the format command ist executed.

I hope this was informative and good luck!
0
Comment
Author:Felix Leven
0 Comments

Featured Post

Simplify Active Directory Administration

Administration of Active Directory does not have to be hard.  Too often what should be a simple task is made more difficult than it needs to be.The solution?  Hyena from SystemTools Software.  With ease-of-use as well as powerful importing and bulk updating capabilities.

Join & Write a Comment

This tutorial will walk an individual through the steps necessary to configure their installation of BackupExec 2012 to use network shared disk space. Verify that the path to the shared storage is valid and that data can be written to that location:…
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …

Keep in touch with Experts Exchange

Tech news and trends delivered to your inbox every month