Saturday, November 24, 2018

Manjaro 18 in VMware Workstation 15 Review

Manjaro Linux is a surprisingly older Linux distribution based on the popular distro, Arch. However recently is has shut up in popularity with more recent attention an updates according to DistroWatch.com.



In this tutorial, I will show you how to setup a virtual machine in VMware Workstation 15 and get it up and running.

For this demo, I have downloaded a copy of the GNOME 3 version, however they provide ISO version for other Desktop Environments like KDE and XFCE.

Get Manjaro Here

Creating the Virtual Machine


In VMware Workstation, start by creating a new virtual machine. Select Typical and click Next.


Select Installer Disc Image File (iso).
VMware won't be able to recognise the Linux Distro on the image and error will display. This is ok.
Click Next.


Select Linux from the Guest Operating System type.
Then from the drop down for Version, select "Other Linux 4.x or later Kernel 64-bit"
Click Next



Give the Virtual Machine a name and a location to store the virtual machine files.


By default, VMware will set the Virtual Hard Disk capacity to 8GB.
I recommend setting it to at least 20GB. This will give enough space to install the OS, and some extra applications and packages.


Also by default, VMware will set the RAM and CPU configuration to a very low specifications.
I recommend increasing it to at least 4GB of RAM and 2 vCPUs for testing. More if you are working with more production applications.


Once you click Finsih, you can then start the virtual machine.

If everything is working you will be presented with the boot loader.
Scroll down using the arrow keys and select Boot.
This will boot the OS from the ISO Disc Image. You can then use the Live Boot OS, or being the install.




To begin installing the Manjaro Linux OS, click on the Launch Installer from the Hello screen.
Follow the wizard to complete the install.

The wizard will step you through the basics like Time Zone, User Accounts, Install Hard Drive etc and the install was surprisingly quick for me.


VMware Tools Preinstalled


Manjaro has been kind enough to preinstall the VMware Tools utitlity for Linux. So there is no need to install these after the install. All VMware drivers will be working along with most features.

For more information, please check out the Manjaro Wiki.

Review


On the surface, Manjaro appears to be a clean looking and fast Linux OS. This may differ depending on which Desktop Environment build you choose.

I was surprised to find that along side the normal packages you come to expect on Linux distros, such as Mozilla FireFox and LibreOffice, some Microsoft references can also be found preloaded.




Microsoft Office Online, Skype Online can be found in the Applications Menu. I was expecting it to just open in a Firefox window, however they opened in their own isolated windows. Annoying though, I needed to sign in to my Microsoft Account for each window.



Steam for Linux is also preloaded. For some the Microsoft options might be enough to switch to Linux and still get work done, while still using open source OS.

The Application Manager was something familiar for a lot of Linux Distro. Big list of apps ready to download and install from the internet. But unlike Ubuntu, it was fast. I didn't experience any delay switch between categories or application details. I was easily able to select apps for install and removal very easily.

I have used Ubuntu on and off for some time (mostly in virtual machines, but also on desktops) and I would have to say that if any distro was going to get me to switch to Linux, it would be this one.

Friday, September 28, 2018

"Sorry, we failed you. Try refreshing!" when browsing Reddit on Google Chrome

For so long I was getting the following error when trying to view Reddit on Chrome on my laptop.

"Sorry, we failed you. Try refreshing!" 

This (for me):

  • Only occurred on my laptop
  • Only happened in Google Chrome
It bugged me for ages but often didn't have a moment to sit down and work out the problem but tonight had the chance.

I tested and confirmed that it worked fine in Edge, removed AdBlocker and with no signs of a fix.

So I did the most Level 1 Help Desk resolution... cleared the browser cache.

Fixed!

I figured there must have been something in the cache or cookies that was trying to load older versions or authentication of the site that were causing conflicts, resulting in the above error.

Surprisingly, there weren't that many articles about this issue, nor advising of simple things like clearing the cache. I even saw one guy to advise to just change their entire browser preference. A bit extreme I thought.

Thursday, June 14, 2018

Deleting Office 365 Tenant

For a long time now, I have been using trials to test new technologies at home that I can use for my work like every good tech does. With the introduction of Office 365, more and more I need to be able to test the clouds services for different scenarios. However, I like to completely remove any services that I am finished with an no longer need as a end-of-the-day clean up task.

So how do you do this with Office 365?

By default, once the trial subscription expires the tenant will remain active allowing you a chance to purchase a new subscription and assign to your tenant. In this case I know I will never need the tenant again.

So this is what I have found to decommission a Office 365 trial tenant using Azure Active Directory.

WARNING!


Please triple check that you are doing this on the correct tenant. This deletion is unrecoverable. You do this at your own risk.

Prerequisites

Before you can start this process you need to make sure:

  • All subscriptions are deprovisioned
    This can be viewed in the Office 365 Subscriptions portal
  • All users have been deleted
    The primary admin account needs to be remaining with no licenses assigned

Procedure

  1. Logon to https://portal.azure.com/
  2. Go to All Services 
  3. Search for "Directory" and Select Azure Active Directory 
  4. Select Delete Directory
  5. A check will be done to make sure all services have been decommissioned 
    1. All user accounts, App registrations, enterprise applications need to be deleted 
    2. Subscriptions should be Deprovisioned 
    3. Have full access to the Azure AD directory
    4. If you don't, it will provide a link to fix this. 
    5. No MFA enabled 
  6. If all the above is cleared, you will be allowed to delete the directory. 

Once deleted, you will need to log out. After a moment, you won't be able to sign into the account, confirming the deletion of the tenant.

Wednesday, October 11, 2017

Microsoft's end of Windows 10 Mobile

This month we have heard from Microsoft that Windows 10 Mobile is no longer a focus and will no longer developing the platform. For me, this a long time coming but still a sad day.


I started my Windows Phone journey with the Samsung Omnia 7 running Windows Phone 7. As with the image above, it wasn't as great as the iPhone 4 that I was sporting at the time, but I had gotten it as a trial.

What I liked about it was it was fast, and everything was integrated. The People Hub and Messaging was amazing. I could send SMS, MMS, and Facebook messages all from the one app. and this carried on to the Windows Phone 8.

I made the next step by getting the Nokia Lumia 920 running Windows Phone 8. I had this phone for two years without fail. It was a great phone. Windows Phone 8 was definitely the peak of the line for Windows Phone.



On this device, it did everything and more than even Android and iOS even do today out of the box. My most beloved feature was the in-car features. While I was driving and received a text, it would read the messages to me and I could reply by voice. And it work almost flawlessly. They took this out in Windows 10 Mobile.



While most people would make fun of the fact I had a Windows Phone and I didn't have the availability of the apps they did on other platforms, the apps I did use worked well. I had what I needed and it supported the few I needed.

Windows Phone 8 integrated perfectly with Windows 8 at the time also. Passwords saved in Windows would automatically be available for me on my phone. It was great.

Over time, even in the Windows Phone 8 days, the writing was on the wall. More developers stopped updating their apps and Microsoft would provide less feature updates. I made the choice to give the benefit of the doubt and went with the Microsoft Lumia 950, but it was a mistake.

Most of the features I liked in the Lumia 920, didn't exist in the 950 thanks to Windows 10 Mobile. It was another OS and acted very differently despite the same interface. After dropping my Samsung Galaxy 7 Edge, I was forced to use it on my four week trip to the Philippines and it worked very well, I'll give it that. However it continued as more devs and apps dropped support for the phone and platform. While some will say that this was due to the change in platform to the new UWP, most just killed the old app but didn't develop a new one.

I had a love hate relationship with my Windows Phone, but I stood by them in hopes it would become something more. But Microsoft did nothing to help the situation. In changing from Windows Phone 7, Windows Phone 8, Windows Phone 8.1 and Windows 10 Mobile, they had different code based which all put more efforts on the developers which by Windows 10 Mobile there was little to no reason to continue to redevelop. And I understand their frustration.

The idea Microsoft had for Windows Phone was great and I think ahead of its time, but the execution and handling was poor.

Since signing up for the Lumia 950 in 2015, I have since had a Samsung Galaxy 7 Edge and now using the iPhone 8 and in both platforms the experience is much better but still wish that Windows Phone had more.

Thursday, October 6, 2016

PowerShell: Download and Install Java 8 JRE

This script I wrote for our automation system that will:
  1. Download the latest Java 8 JRE from Java.com
  2. Save in a local directory C:\Install
  3. Create a Install Options File
  4. Run the installer silently with the necessary Installer Options
The Installer Options file determines what configuration is used the install of Java.

For example, in the script I have configured. This will perform a silent install, auto updates enabled, no reboot after the installation, Sponsors/ads install disabled and will uninstall any older existing installations of Java JRE.

  • INSTALL_SILENT=Enable
  • AUTO_UPDATE=Enable
  • REBOOT=Disable
  • SPONSORS=Disable
  • REMOVEOUTOFDATEJRES=Enable
You can find these and other options to use from the Java website:


This has been tested to work on PowerShell v2 and higher.


--------------------------------------------------------------------------
                Deploy Java JRE Software
                  Date: 21-Sept-2016
               Created by: Daniel Burrowes
--------------------------------------------------------------------------

Description:
Downloads the Java installer and installs silently

-------------------------------------------------------------------------- 

# -Verbose and -Debug

    [CmdletBinding()]
    param(    )

# --------------------------------------------------------------------------

Write-Verbose "Setting Global Variables..."
$InstallDir = "c:\Install\Java"
$Source = "http://javadl.oracle.com/webapps/download/AutoDL?BundleId=211996"
$Destination = "$InstallDir\java.exe"
$Options = "$InstallDir\java_options.txt"


#Create install directory
Write-Verbose "Creating Install Directory"
New-Item -Path $InstallDir -ItemType directory -Force

Write-Verbose "Downloading Software..."
$start_time = Get-Date
(New-Object System.Net.WebClient).DownloadFile($Source, $Destination)
Write-Verbose "Time taken: $((Get-Date).Subtract($start_time).Seconds) second(s)" 

Write-Verbose "Creating Installer Options File..."
$text = 'INSTALL_SILENT=Enable
AUTO_UPDATE=Enable
REBOOT=Disable
SPONSORS=Disable
REMOVEOUTOFDATEJRES=Enable
'

# Create file
$text | Set-Content $Options

#Running the installer
Write-Verbose "Executing Java Install.."
Start-Process -FilePath $Destination -ArgumentList "INSTALLCFG=$Options /s /L $InstallDir\jre-install.log" -Wait -Verbose -PassThru

Monday, April 25, 2016

PowerShell: BATCH Script to Allow PowerShell Scripts to Execute

For some SysAdmins, they will use one or more tools to deploy software to a range of computers on their network. For me, it our monitoring tool that allows are to remote execute scripts to do some sort of task.

Writing in PowerShell is amazing and is Microsoft's best yet command line tool. However by default for security purposes, script execuition is blocked for untrusted or unsigned scripts.

I won't go into Signing scripts just now but using the following command will allow you to run PowerShell Scripts

Set-ExecutionPolicy -RemoteSigned

This line still provides a level of protection while still allwoing you to execute custom scripts. Other switches include -bypass and -unrestricted.

So how can we get a large number of these set?

There are a number of ways:
  1. Group Policy
  2. Batch Script
The reason for me writing this BATCH Script is that it allows me to deploy and run on a computer regardless of the Domain it is joined to.

Copy and paste this code into a text file called SetExecutionPolicy.bat and then Save.

This script also creates entries into the Windows Event Viewer to tell you if and when the command has been executed, or if it failed to run.



@echo off

REM -------------------------------------------------------------
REM       Set-ExecutionPolicy RemoteSigned for Powershell
REM          Date: 10-Spet-2015
REM        Author: Daniel Burrowes
REM -------------------------------------------------------------



Echo Setting PowerShell Execution Policy for RemoteSigned

PowerShell.exe Set-ExecutionPolicy RemoteSigned

IF %ERRORLEVEL% NEQ 0 goto ERROR    

EVENTCREATE /T INFORMATION /L APPLICATION /ID 100 /D "PowerShell Execution Policy has been set to RemoteSigned"
GOTO DONE

:ERROR 

EVENTCREATE /T ERROR /L APPLICATION /ID 100 /D "PowerShell ExecutionPolicy batch script failed to run." 


:DONE

Echo Done!

EXIT

PowerShell: Download and Install Citrix Receiver

I have been doing quite a bit of work lately on PowerShell scripting for work and this is a common one we deploy to our clients that use Citrix.

This script does the following:
  1. Creates the folder C:\Install\CitrixReceiver
  2. Downloads the latest Citrix Receiver software from the Citrix website
  3. Installs the downloaded Receiver silently
The link for the Citrix Receiver is: http://downloadplugins.citrix.com/Windows/CitrixReceiver.exe

Works with PowerShell v2 and higher.
A lot of my scripts are built to work at this level as it means that I can deploy my scripts to older machines without having to first upgrade PowerShell.

Copy and paste the code into a text file called InstallCitrixReceiver.ps1.



# --------------------------------------------------------------------------
#                Citrix Receiver Install Script
#                   Date: 14-Mar-2016
#               Created by: Daniel Burrowes
# --------------------------------------------------------------------------

# -Verbose and -Debug

[CmdletBinding()]
param()

# --------------------------------------------------------------------------
#  Change Log
#
#  14-Mar-2016
# -Added /IncludeSSON to argument list
# --------------------------------------------------------------------------

#Create install directory
Write-Verbose "Creating Install Directory"
$InstallDir = "C:\Install\CitrixReceiver"
New-Item -Path $InstallDir -ItemType directory -Force


Function Download-Citrx {

 $Source = "http://downloadplugins.citrix.com/Windows/CitrixReceiver.exe"
 $destination = "C:\Install\CitrixReceiver\CitrixReceiver.exe"

    Write-Verbose "Downloading Software..."
    (New-Object System.Net.WebClient).DownloadFile($Source, $Destination)
    Write-Verbose "Time taken: $((Get-Date).Subtract($start_time).Seconds) second(s)" 

}

Write-Verbose "Downloading Latest Citrix Receiver"
Download-Citrx

Write-Verbose "Running silent install of Citrix Receiver"
Start-Process -FilePath "C:\Install\CitrixReceiver\CitrixReceiver.exe" -ArgumentList "/silent /IncludeSSON" -Wait -Verbose -PassThru

Executing Powershell scripts may require you to allow scripts to run.:
#Set-Execution Policy -RemoteSigned

Tuesday, May 26, 2015

VMware ESXi E1000 vs VMXNET3 Network Adapters

I found this really helpful article from Rickard Nobel who has done a set of testing showing the performance improves when using VMXNET3 network adapters over the emulated E1000 cards.

http://rickardnobel.se/vmxnet3-vs-e1000e-and-e1000-part-1/

http://rickardnobel.se/vmxnet3-vs-e1000e-and-e1000-part-2/

Check it out and leave a comment.

Monday, May 25, 2015

Windows Update Servers List

Here is a list of the server addresses required for accessing Microsoft Update servers.
This may required for firewall or proxy policies.
  • http://windowsupdate.microsoft.com 
  • http://*.windowsupdate.microsoft.com 
  • https://*.windowsupdate.microsoft.com 
  • http://*.update.microsoft.com 
  • https://*.update.microsoft.com 
  • http://*.windowsupdate.com 
  • http://download.windowsupdate.com
  • http://download.microsoft.com 
  • http://*.download.windowsupdate.com 
  • http://wustat.windows.com 
  • http://ntservicepack.microsoft.com

See this article for further information

Windows Activation Servers

In some case you might need a list of the servers required for Microsoft Windows activation to apply to a firewall or proxy policy.

This is the list as defined by Microsoft:
  • http://go.microsoft.com/
  • https://sls.microsoft.com/
  • https://sls.microsoft.com:443
  • http://crl.microsoft.com/pki/crl/products/MicrosoftRootAuthority.crl
  • http://crl.microsoft.com/pki/crl/products/MicrosoftProductSecureCommunications.crl
  • http://www.microsoft.com/pki/crl/products/MicrosoftProductSecureCommunications.crl
  • http://crl.microsoft.com/pki/crl/products/MicrosoftProductSecureServer.crl
  • http://www.microsoft.com/pki/crl/products/MicrosoftProductSecureServer.crl
  • https://activation.sls.microsoft.com

See this article for further information: