Labels

3300 (1) 3PAR (1) Active Directory (1) ADFS (1) Admin Share (1) Auto-Sync (2) Auto-Sync locked (1) AWS (3) AzCopy (1) Azure (3) Backups (2) Broadcom (1) Call Forwarding (1) CLI (2) cmd (1) Compatibility View (1) Dameware MRC (1) Databases (1) DFS (1) DNS (1) Domain Admin (1) domain controller (1) Enterprise Mode (1) ESXi 5.0 (1) ESXi 5.1 (5) ESXi 5.5 (3) Exchange (3) Exchange 2010 (5) Extreme (1) ExtremeXOS (1) Federation (1) File Share (1) FSMO (1) GPO (1) Group Policy (1) Group Policy Client (1) Hardware Acceleration (1) Helpdesk (1) HP-UX (1) Hyper-V (2) IAM (1) IE10 (1) IE11 (1) IP conflict (1) Kayako (3) LDAP (1) Licence (1) Links (9) local groups (1) LUN lock (1) LUN number (1) MAC address (1) Microsoft Teams (1) Mitel (1) Namespaces (1) Networking (6) Nexenta (6) NMC (1) Office 365 (4) OneDrive (1) Outlook 2003 (1) Outlook 2013 (1) PC (1) Physical (1) PowerCLI (10) Powershell (10) promoted links (2) Public Folders (1) RDP (1) RDS (1) Recovery Services (1) RedShift (1) Registry (3) Reports (1) Resolve (2) Restart (1) RSA (1) Run As (1) SAML (1) SAN (1) Scavenging (1) script (10) Server 2003 (3) Server 2008 R2 (1) Server 2012 R2 (2) Servers (2) sharepoint 2013 (3) SMTP (3) Snapshot (2) SRM (1) SSH (5) SSL Certificate (2) Temporary profile (1) Terminal Server (3) Troubleshooting (5) Ubuntu (1) Update Manager (1) Useful Apps (1) VAAI (1) vCenter Server Appliance (1) VDI (1) VDP (1) Veeam Backup and Replication (2) VM (1) VM Error (1) vmdk (1) VMFS (1) vMotion (2) VMware (20) VoiP (1) vSphere 5.5 (4) vSphere 6.0 (2) vSphere 6.5 (1) vUM (1) webpart (1) Windows (3) Windows 10 (1) Windows 7 (2)

Friday 7 July 2017

PowerShell: Get Hostname Following Successful Ping

The script below will attempt to ping a range of IP addresses and if successful, will return their hostnames;
1..10 | % {Test-NetConnection -ComputerName x.x.x.$_ -ErrorAction SilentlyContinue -WarningAction SilentlyContinue } | Select ComputerName,RemoteAddress,PingSucceeded, `@{ Name = 'HostName'; Expression = { If ($_.PingSucceeded){([System.Net.Dns]::gethostentry($_.computername)).HostName}Else{$null} } } | FT -AutoSize
Replace the "1..10" at the start of the command with the range of IP addresses you wish to scan and update the -ComputerName parameter with the IP you wish to scan (e.g. 10.100.1.$_)

PowerShell: Basic Networking Troubleshooting

http://www.thomasmaurer.ch/2016/02/basic-networking-powershell-cmdlets-cheatsheet-to-replace-netsh-ipconfig-nslookup-and-more/

The above site has a nice "cheat sheet" of PowerShell cmdlets for networking tasks

Wednesday 3 May 2017

Azure: Recovery Services VM Backups Failing

This morning I received a number of emails telling me that the backups of some of my Azure VMs had failed with the following message;


When I have encountered this message previously, one of the following three actions has resolved the error and allowed backups to work again;

1. Connect to the VM and check the "IaasVmProvider" service. This should be running with the startup type set to Automatic and logging on with the local system account. If this is stopped, start the service.

2. Update the agent on the VM by reinstalling the VMAgent binary as outlined at https://docs.microsoft.com/en-gb/azure/backup/backup-azure-vms-troubleshoot#vm-agent. NOTE: Make sure no backups are running on your VM when you do this.

3. Reinstall the VMSnapshot extension by browsing to the VM in the Azure portal and clicking on "Extensions". Uninstall the "VMSnaphot" extension then try to run the backup again. This will reinstall the extension and automatically start the IaasVMProvider service in the OS.

Tuesday 4 April 2017

vSphere: Snapshot Error - Change Tracking Target File Already Exists

I ran into an issue when attempting to consolidate and create snapshots of VMs being backed up using NetBackup. The snapshot creation would start but fail at 10% with the following error;
An error occurred while saving the snapshot: Change tracking target file already exists.
 This is quite a easy fix and simply involves moving the ctk files out of the root folder.

1. SSH to ESXi host that the VM is running on.
2. Navigate to the virtual machine directory using the following command;
cd /vmfs/volumes/datastore/virtual_machine/
3. List the contents of the directory with "ls" and look for file including "-ctk.vmdk".
4. Create a temporary directory using the following command;
mkdir temp
5. Move the ctk files into this directory using the following command;
 mv *-ctk.vmdk temp/
6. Attempt to take another snapshot to confirm this is now working.

Tuesday 17 January 2017

Windows: Wrongly Hidden "Protected Operating System" Files and Folders

I came across an issue where a folder of SQL backups had been wrongly marked as hidden. They had been classed as "Protected Operating System Files" and so the "hide" box in the properties was greyed out.

Running the below from the command line removes the Hidden and System properties from the folder as well as from all sub-folders inside the top level.

attrib -H -S C:\path\to\your\folder /S /D 
or 
attrib -H -S C:\path\to\your\file.doc /S /D