box_backup_vmware[1]We use Veam to backup our servers. Veam uses snapshots to copy the whole machine which can then get copied to disk to be backed up to tape. Sometimes due to changes on the servers through the night the Veam backup job overruns. When a backup is initialy created removed it can put strain on the disks and also take it offline. So when a job overruns it can take the server down during production.

Here is a powershell script which is run first thing in the morning so we know via email if we need to warn the business or cancel a backup of any issues!

Run this script on the machine with Veam installed, recommend you install PowerShell Version 3. Replace %xxx% values with your correct one!

asnp VeeamPSSnapin -ErrorAction SilentlyContinue
$PSEmailServer = "%ExchangeServer%"
$Activejobs = Get-VBRJob | ?{$_.GetLastState() -eq "Working"}
foreach($jobs in $Activejobs)
{
Send-MailMessage -From "%emailfrom@domain.com%" -to %emailto@domain.com% -Subject "Veam Job Still Running" -Body $jobs.name
}

 

To turn a powershell .ps1 script into a sheduled task do the following :

Run this program for the task: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe and Add the location of the ps1 script as the argument of the scheduled task

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

DH_2D00_073113_2D00_1[1]Recently we were having issues with the time period of our Veam backups of SQL database. Veam creates a snapshot of a server, which can then be copied to disk or to tape subsiquently. The SQL servers were having their Indexes fully rebuilt every night.

“If you’re using the FULL recovery model, the entire index rebuild operation is fully logged, which means the transaction log file must be at least as large as the index being rebuilt. It also means the next
transaction log backup will essentially contain the entire index.” ( Per http://sqlmag.com/blog/it-bad-idea-rebuild-all-indexes-every-night  )

This balloned the storage needed on the SAN nightly by more than 1TB due to the writes of the transaction log and the changes from the inital snapshot and also slowed down the overall backup process

A smarter way to index the servers each night is to analyse the fragmented indexes , and only reindex thoose

This can be found here : http://blogs.technet.com/b/sql_server_isv/archive/2010/10/18/index-fragmentation-if-it-isn-t-broke-don-t-fix-it.aspx

Indexing tasks and scipts can be found here : http://technet.microsoft.com/en-us/library/ms189858.aspx

 

 

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

We had a recent issue with a new Blackberry Enterprise server with the Following Error showing in the Event Viwer

SRP connection down, ignore sending packets

First thing to test is the SRP Connection using blackberrys tool : BBSRPtest.exe. This is now found in the install files from Blackberry Setup ( so don’t remove! )

Running this proved the following error:

Registry key HKEY_LOCAL_MACHINE\Software\Research In Motion\BlackBerryRouter is
missing, trying HKEY_LOCAL_MACHINE\Software\Research In Motion\BlackBerry Enterp
rise Server\Dispatcher
Registry key HKEY_LOCAL_MACHINE\Software\Research In Motion\BlackBerry Enterpris
e Server\Dispatcher is missing

 

The new version of this software needs variables in the command line

 E.g. BBSRPtest.exe -host au.srp.blackberry.com 3101 ( or your BB server from below )

https://www.blackberry.com/SRPAddressLookup/

VN:F [1.9.22_1171]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

usbpowerexceededrAfter rolling out Citrix Receiver Version 4 on some new IBM machines ( M Series ) it down graded the milli amp value of the generica USB hub from the standard 500mA to 100mA

There is a registry value to force this back up to 100mA which is located in

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Hardware ID of USB Hub\Paramters

( Find the Hardware ID of the USB hub in hardware ID’s )

“ForcePortPower” Dword : 500

Unplug and replug in device

However this did not work. The issue seems to be with the CitrixReciever.exe installing USB drivers causing the issue on some machine which are not needed in XenApp ( only Xen Desktop )

To install CitrixReciever without the USB Drivers you can run with the following command :

CitrixReceiver.exe /includeSSON ADDLOCAL=ICA_Client,ReceiverInside,SSON,AM,SELFSERVICE,DesktopViewer,Flash

 

 

VN:F [1.9.22_1171]
Rating: 9.5/10 (2 votes cast)
VN:F [1.9.22_1171]
Rating: +2 (from 2 votes)

When trying to produce the list below , it exported the results fine in the PowerShell Window , however when I tried to export to CSV I got this value

System.Collections.ObjectModel.Collection’1[Micorosoft.Exchange.Management.MapiTasks.FolderAccessRight]

Looking at a user who also had this error below I replcated AccessRights with

@{Name=’AccessRights’;Expression={[string]::join(“;“, ($_.AccessRights))}}

Make sure it only has one square braket though!

Reference : http://www.experts-exchange.com/Programming/Languages/Scripting/Powershell/Q_27099740.html

 

VN:F [1.9.22_1171]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Modified from the tracked back URL , this goes through all mailbox’s on the Exchange server and export’s their Mailbox Access Perimissions to CSV Files inside C:\Export\ and also any extra folder permissions that have been assigned to any other folders :

(Blank Folder name means mailbox access! )

 

$Mailboxes = Get-Mailbox -ResultSize Unlimited
 
ForEach ($Mailbox in $Mailboxes) {
 
$MBXFolders = @() 
$MBXFoldersCorr = New-Object System.Collections.ArrayList 
$Permissions = @() 
$MBX_tocheck = "$Mailbox" $MBXFolders = Get-MailboxFolderStatistics 
$MBX_tocheck | select folderpath
 
$Permissions += Get-MailboxPermission -Identity "$Mailbox" | where {$_.user.tostring() -ne "NT AUTHORITY\SELF" -and $_.IsInherited -eq $false} |
 
Select User,@{Name='AccessRights';Expression={[string]::join(', ', $_.AccessRights)}}
 
foreach ($item in $MBXFolders) {  $temp = $item.FolderPath  $temp = $Temp.Replace("/","\")  $MBXFoldersCorr.Add($temp) | out-null } foreach ($item in $MBXFoldersCorr) { Try {  $MailboxFolder = $MBX_tocheck + ":" + $item  $Permissions += $(Get-MailboxFolderPermission $MailboxFolder -ErrorAction Stop | Select-Object FolderName,User,AccessRights | where {
 
($_.AccessRights -notcontains “None”)})  } Catch {
 
 Continue  } }
 
 $Permissions | Select FolderName,User,@{Name='AccessRights';Expression={[string]::join(";", ($_.AccessRights))}}  | export-csv -path "C:\Export\
 
$MBX_tocheck.csv"
 
}

 

Get list of Full Access Mailbox permissions 

Get-Mailbox | Get-MailboxPermission | where { ($_.AccessRights -eq "FullAccess") -and ($_.IsInherited -eq $false) -and -not ($_.User -like "NT AUTHORITY\SELF") } | ft @{Name="Identity";expression={($_.Identity -split "/")[-1]}}, User -AutoSize

For Office 365

$Mailboxes = Get-Mailbox -ResultSize Unlimited
 
ForEach ($Mailbox in $Mailboxes) {
 
Get-MailboxFolderPermission -identity $Mailbox.name | Where AccessRights -ne "None" |FL
 
}

$Mailboxes = Get-Mailbox -ResultSize Unlimited

ForEach ($Mailbox in $Mailboxes) {

Get-MailboxFolderPermission -identity $Mailbox.name | Where AccessRights -ne “None” |FL

}

Get all current Mailbox Forwards

Get-mailbox -ResultSize unlimited | select DisplayName,ForwardingAddress | where {$_.ForwardingAddress -ne $Null}

A cool feature to make this better , would be to email this report out to each user so they can see the permissions on their mailbox and alter themselves or speak to the helpdesk!

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Recently I had a word document which when being merged would display random images on random pages in the Footer. I used Office 2010 to remove all the Footer and Header however it still came up with them.

I then used the find and replace function to search for ^g ( Graphics ) pictures however these images wearn’t inline so it didn’t fine any.

Thanks to the below trackback I was able to run the below Macro to remove all images from the Document , Inline and Out!

Sub demo()

Dim oShp As Shape

Dim oIShp As InlineShape

For Each oShp In ActiveDocument.Shapes

oShp.Delete

Next

For Each oIShp In ActiveDocument.InlineShapes

oIShp.Delete

Next

End Sub

Can be added via , Tools , Macro, Macro’s. Add the following code and click the play button and if it asks run demo!

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Recently I rolled out an updated to Update the styles inside Word for Normal.dot. The update only updated the styles and did not change the autotext etc. After the update we wanted to check on a terminal server who had not been updated.

Open powershell and run the follinwg command

Get-ChildItem E:\RoamingProfilePath -Recurse | Where-Object {$_.LastWriteTime -lt “2012-06-23 00:00:00” -and $_.Name -eq “filename.dot“} | Export-Csc “C:\file.csv”

The excel sheet can be pruned for users via their profile path using the excel function

=SUBSTITUTE(SUBSTITUTE(B3,”E:\RoamingProfilePath“,””,1),”\AppData\Roaming\Microsoft\Templates”,””,1)

 

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

6281.ofc365_5F00_h_5F00_rgb_5F00_79A65196[1]Step 1. Ensure that your Operating System and Software are up to date.

  1. Ensure that the software and system you are running meet the minimum requirements for the service by consulting the Software Requirements located here.
  2. Run Windows Update to ensure that your software has the latest patches and feature updates.
  3. Open this link and install all the updates listed there for Outlook 2010: http://community.office365.com/en-us/wikis/manage/562.aspx

  4.  

     If that does not improve the situation, you can try installing this hotfix: http://support.microsoft.com/kb/2516474

Step 2. Repairing your profile may resolve your connection issue.


How do I repair my Outlook 2007 profile?

1.     In Outlook 2007, on the Tools menu, click Account Settings.

2.     In the Account Settings dialog box, on the E-mail tab, select your account, and then click Repair. Follow any prompts from the repair wizard.

3.     When the repair is done, restart Outlook 2007.

How do I repair my Outlook 2010 or Outlook 2013 profile?

1.     In Outlook 2010 (or Outlook 2013), on the File tab, click the arrow next to Account Settings, and then click Account Settings.

2.     In the Account Settings dialog box, on the E-mail tab, select your account, and then click Repair. Follow any prompts from the repair wizard.

3.     When the repair is done, restart Outlook 2010.

Step 3. Verifying Connectivity and Autodiscover settings.

If you have repaired your Outlook profile and are still experiencing issues, please follow the directions in this link to verify Autodiscover DNS settings and run the Remote Connectivity Analyzer.

If you are having trouble running the Remote Connectivity Analyzer, please respond to this email or call support for assistance, and use this Service Request when asked if this is a new or existing issue.

Step 4. Continuing Connectivity Problems

If you have completed the steps above, but are still experiencing connectivity issues with Microsoft Outlook, please reply to this email to receive further contact from a support agent, or contact support via the phone. If your case has already archived, you can re-activate it through the Microsoft Online Portal, respond to the case in email, or call in for assistance.

To find a phone number for your country or region, sign in to Office 365. On the Admin Overview page, on the left pane, under Support, click Overview. You can use this Service Request when asked if this is a new or existing issue.

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)