Search-Mailbox is a great method in Exchange 2013/365 to do searches, moves, cleanups, etc., but in Exchange 2013 one does have to have special privileges to use -DeleteContent, and they are not built-in. Info is here:
http://blogs.technet.com/b/exchange/archive/2010/03/26/3409621.aspx
Once you set up the permissions, you can delete all of the recoverable email (the emails deleted from Deleted Items still being held):
Search-Mailbox -Identity username -SearchDumpsterOnly -DeleteContent
To set up the permissions, do the below:
New-RoleGroup -Name "Exchange Mailbox Import Export" -Roles "Mailbox Import Export" -Members "<domain\groupname>" -DisplayName "Exchange Mailbox Import Export" -Description "This group will provide access to mailbox import and export cmdlets within entire Exchange Organization."
New-RoleGroup -Name "Exchange Support Diagnostics" -Roles "Support Diagnostics" -Members "<domain\groupname>" -DisplayName "Exchange Support Diagnostics" -Description "This group will provide access to support diagnostics cmdlets within entire Exchange Organization."
Categories:
Exchange and Exchange Online
Just saw this. Looks very good, though haven’t built one yet. If I ever move to a Docker-based platform, will probably use it!
https://www.discourse.org/faq/
Categories:
Web Methods
A great command in Linux is:
dd bs=4M if=file.iso of=/dev/sd<letter> status=progress && sync
where <letter>
is the letter for your flash drive. Do be careful finding it, because your hard drive(s) and CD/DVD drive(s) are also among these; you can get the list with ls /dev/sd*
, and also all mounted drives can be listed with mount
.
Also, it does have to be run as root, so sudo
as a prefix may be very helpful.
Categories:
Tools
If one has one’s LAN Active Directory synchronized with EOL/Azure, one cannot add secondary email addresses in the EOL console. In this situation:
- Open ADSIedit from the domain controller
- Open up the OU containing the user
- Open the Properties of the user
- Open the Properties for the item “proxyAddresses”.
- The primary (the “reply”) email address for the user needs to be specified thus, with caps in the prefix:
SMTP:user@domain.xyz
- Secondary email addresses for the user need to be specified thus, with lowercase prefix:
smtp:alias@domain.xyz
- Then run the sync or wait for the automatic run, and it’s done!
Also, as a bonus, after the above is done once, user objects in Active Directory Users and Computers get a new tab, “Attributes”, from which the above can be done for other users.
Categories:
Exchange and Exchange Online
Active Directory

Completion of these steps will free up a lot of resources on an SBS. You will need to have a different method (e.g., Labtech, many others) to keep client machines up to date.
- Run (install first if not present) the SQL Server Management Studio.
- Connect the Studio, to type Database Engine, server name
\\.\pipe\mssql$microsoft##ssee\sql\query
- In the Studio, under Databases, you will find an item “SUSDB”.
- If you don’t know where the database files are held, find them using the properties of that item.
- Run an SQL query to get a list of connections:
EXEC sp_who2
- Run SQL query/ies to kill all connections to DBName SUSDB only, using the SPIDs, e.g.,
KILL 999
- Right-click SUSDB, “Delete” SUSDB, and close the Studio.
- Delete the database files and all of the update files.
- Disable the WSUS-related items in services.msc and IIS.
The above is digested from the following:
https://social.technet.microsoft.com/Forums/en-US/d7f5d5bb-6623-4d46-80e6-421674a46829/remove-wsus-from-sbs2011-server?forum=smallbusinessserver
http://blog.mpecsinc.ca/2011/07/sbs-2011-wsus-sql-memory-usage-is-very.html
Categories:
Servers
Microsoft is pushing all of its favorite customers very hard to upgrade to Windows 10, to the point that many are hurting themselves accidentally. Here we have a tool which eliminates the problem:
https://www.grc.com/never10.htm
Categories:
Windows OS-Level Issues
Categories:
Exchange and Exchange Online
If all of your settings are correct but you still get the popup saying that macros are disabled, your OTM file — the VBA project file — is corrupt. In the case of Outlook:
- Export your modules to .BAS files
- Exit Outlook
- Go here in Explorer:
C:\Users\[user]AppData\Roaming\Microsoft\Outlook
- Delete the OTM file
- Restart Outlook
- Import your exported .BAS files into the new VBA project which it created for you.
Categories:
Scripting
Here’s a bash script! Works very nicely. Once run on one side and specifying a destination, one does not need a password to open that SSH link in the future.
#!/bin/bash
echo "setup-autossh by Jonathan E. Brickman, jeb@ponderworthy.com"
if [ $# = 0 ]; then
read -p "Please enter the SSH destination in the format user@host : " sshdest
elif [ $# = 1 ]; then
sshdest=$1
else
echo "Usage: setup-autossh [user@destination]"
exit 1
fi
if [ ! -f ~/.ssh/id_rsa ]; then
echo "Creating RSA key for authorization..."
ssh-keygen -t rsa -N "" -f ~/.ssh/id_rsa
fi
echo "Copying authorized RSA key to $sshdest ..."
remotecmd="cat > authorized_keys ; mkdir -p .ssh ; cat authorized_keys >> .ssh/authorized_keys ; rm authorized_keys"
cat ~/.ssh/id_rsa.pub | ssh $sshdest $remotecmd
Categories:
Remote Access, Remote Desktop, Terminal Server
Tools
When a business needs a truly public calendar simply editable by all, it is not clear what best to do in Exchange or especially Exchange Online. Shared mailboxes and room calendars look like they should do it but don’t. One way is to create an ordinary user mailbox and then give all users full delegation rights in Powershell:
Get-Mailbox | foreach-object { Add-MailboxPermission -Identity "Public Calendar" -User $_.SamAcc
ountName -AccessRights FullAccess }
The only catch is that this does require a license.
Categories:
Exchange and Exchange Online