Steps to Create an OS X Bootable ISO (El Capitan Example)

Apple has steps to create a bootable USB (linked below), but not an ISO file.
https://support.apple.com/en-us/HT201372

There are also several methods to create an ISO, such as colt2’s method linked below.
https://forums.macrumors.com/threads/el-capitan-bootable-dvd.1923931/post-22048516

The steps in this guide are what I found to be the most straight forward compared to other guides. These are performed on an OS X system to create a bootable ISO which can then be imaged to USB or used directly for installing on virtual machines.

Note – the ISO created from this method does not work when burned to DVD.  The resulting disk is bootable, but when trying to install the operating system you will receive the error:
The Install OS X El Capitan application can’t be used from this disk. Copy this application to a writable Mac OS Extended formatted disk and reopen it to continue installation.

The steps presented below can be used for other versions of OS X by increasing the size of the image as necessary and adjusting the name of the files appropriately (from El Capitan).

  1. Download El Capitan installer from Apple
    http://updates-http.cdn-apple.com/2019/cert/061-41424-20191024-218af9ec-cf50-4516-9011-228c78eda3d2/InstallMacOSX.dmg
  2. Install it
  3. Create a blank image file in the temp folder, overwriting any existing file that may exist
    hdiutil create -ov /tmp/ElCapitan -size 7316m -layout SPUD -fs HFS+J
  4. Mount the blank image to a temporary mount point
    hdiutil attach /tmp/ElCapitan.dmg -noverify -nobrowse -mountpoint /Volumes/my_bootdisk
  5. Write the installation files to the image (this step requires administrator privileges)
    sudo /Applications/Install\ OS\ X\ El\ Capitan.app/Contents/Resources/createinstallmedia --volume /Volumes/my_bootdisk --applicationpath /Applications/Install\ OS\ X\ El\ Capitan.app
  6. Unmount the new image
    hdiutil detach /Volumes/Install\ OS\ X\ El\ Capitan
  7. Convert the new image to an ISO file
    hdiutil convert /tmp/ElCapitan.dmg -format UDTO -o /tmp/ElCapitan
  8. Move the file from the tmp folder to the Desktop of the logged in user and also change extension to ISO
    mv /tmp/ElCapitan.cdr ~/Desktop/ElCapitan.iso
  9. Delete the original image file
    rm /tmp/ElCapitan.dmg

The resulting ISO file is now ready to use.

 

Posted in Uncategorized | Leave a comment

Steps to Upgrade OMV 4.x (Arrakis) to 5.x (Usul)

I had an OMV system running 4.1.35-1 (Arrakis). Initially I tried using the steps from OMV’s ryecoaaron: https://forum.openmediavault.org/index.php?thread/27909-eta-for-omv-5-0-2020-2021-2022/&postID=219830#post219830
(This included having to use a Python fix for the weakref.py error: https://jc-lan.org/2020/04/26/openmediavault-weakref-python-error-when-updating)

However my progress came to a halt at this step:
omv-salt deploy run nginx

When I received this error
-bash: omv-salt: command not found

Below are the alternative steps I used to complete the upgrade. At a high level we first upgrade the Debian OS, then go back and upgrade/repair OMV package. It is based on this guide: https://blog.sakuragawa.moe/upgrade-omv-4-to-5-a-painful-path/

  1. sed -i 's/arrakis/usul/g' /etc/apt/sources.list.d/openmediavault.list
  2. sed -i 's/stretch/buster/g' /etc/apt/sources.list
  3. apt update
  4. On the next two steps, if prompted then choose: Don’t touch keymap, install all package maintainer’s configuration files (several of these) and restart services during package upgrades without asking
  5. apt -y --auto-remove --allow-downgrades --no-install-recommends upgrade
    apt -y --auto-remove --allow-downgrades --no-install-recommends dist-upgrade
  6. Now reboot
  7. apt -y purge openmediavault
  8. apt install -y --auto-remove --allow-downgrades openmediavault
  9. apt-get install usrmerge
  10. omv-confdbadm migrate conf 5.0.0
  11. omv-confdbadm populate
  12. sudo apt-get -y purge php7.0*
  13. omv-firstaid
  14. Choose option 9 – Clear web control panel cache
  15. Try to access OMV web interface
  16. Perform a final reboot to fix any broken services
  17. NOTE: if you had notifications enabled previously, log in to the web interface and disable them under the General Settings. Apply changes, then immediately revert back to Enabled and apply changes again.
  18. OPTIONAL: if you had a static IP and DNS server configured you will need to reconfigure your name server. In the web interface remove it, save then add it back. OR you can do the following:
    nano /etc/resolv.conf
    Add a line with the IP of your DNS: nameserver x.x.x.x
  19. OPTIONAL: reinstall OMV-extras (https://omv-extras.org)
Posted in Uncategorized | Leave a comment

Windows Installer Coordiantor Hangs on Windows Remote Desktop Servers

Attempting to install an application on Windows Server acting as a RDS resulted in Windows Installer Coordinator hanging indefinitely with the message:
Please wait while the application is preparing for the first use
followed by the Windows Installer error message:
Install server not responding
This occurred on both Server 2012 R2 and Server 2019.

The workaround is the same for both versions and involves temporarily changing a local group policy setting:

  1. Open Local Group Policy Editor (gpedit.msc)
  2. Navigate to:
    Computer Configuration -> Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Application Compatibility
  3. Locate the setting: Turn off Windows Installer RDS Compatibility
  4. Change it to Enabled and click Apply

At this point you should be able to retry or restart the installation of the application. Once complete, revert the group policy setting back to the previous value (default is Not Configured).

 

Posted in Uncategorized | Leave a comment

Unable to remove Floppy Drive from ESXi Virtual Machine

Problem: Removing the floppy drive and saving the VM configuration, the floppy drive would automatically appear again.

Solution: Shutdown the VM and unregister it. Manually edit the vmx file, find one or more lines similar to the below and delete them:

floppy0.startConnected = “FALSE”
floppy0.clientDevice = “TRUE”
floppy0.fileName = “vmware-null-remote-floppy”

Then add a new line :
floppy0.present = “FALSE”

Save and overwrite the old vmx file in the datastore, then re-register the VM. Your floppy drive should now be gone.

Posted in Uncategorized | Leave a comment

Microsoft Project License Error Loop

We had Project Professional (specifically 2016 version 1908) running on Windows Server 2012 R2.  Initially Project was installed with SharedComputerLicensing enabled. Later we reinstalled it via Office Deployment Tool and shared computer activation disabled in order to utilize volume licensing (rather than subscription).

The problem was a user was getting a license error loop that would repeat every time Project was launched. Project was still usable in this state, but the error was causing confusion. Uninstalling Project and installing fresh did not resolve the issue.

We noticed you just updated your license. Please reboot Microsoft Project for the changes to take effect.

The root cause was this particular user had run Project in the past when it had been installed with SharedComputerLicensing enabled.   Deleting the user profile from the system resolved the error loop.

Posted in Uncategorized | Leave a comment

Ubuntu 20.04 on ESXi Generating multipathd Errors

Brand new install of Ubuntu 20.04 LTS (Focal Fossa) running as a virtual machine on ESXi was generating a lot of errors in syslog like the below

multipathd[711]: sda: failed to get udev uid: Invalid argument
multipathd[711]: sda: failed to get sysfs uid: Invalid argument
multipathd[711]: sda: failed to get sgio uid: No such file or directory
multipathd[711]: sda: add missing path

The solution is to edit the configuration of the virtual machine using the steps shownb elow for ESXi 6.7. Source https://ubuntuforums.org/showthread.php?t=2441797

  1. Shut down the VM
  2. Edit the VM -> Edit settings -> VM Options
  3. Under Advanced ->Configuration Parameters -> click Edit Configuration button
  4. Add a new parameter with following properties:
    Key: disk.EnableUUID
    Value: TRUE
  5. Click OK -> Save
  6. Power on the VM and confirm the errors have stopped in /var/log/syslog
Posted in Uncategorized | Leave a comment

Mopidy fails to connect to Icecast server with Ubuntu 20.04

Mopidy 3.0.2 was installed on Ubuntu 20.04 (Focal Fossa) using the apt.mopidy.com method.
All attempts to connect to a known working Icecast2 server would not work and the Icecast server would not log any errors. However the Mopidy log would record the following error:
[MainThread] mopidy.audio.gst GStreamer error: Could not connect to server
The root cause is a bug in the version of the libshout3 library that is included in Ubuntu 20.04 (source: https://bugs.launchpad.net/mixxx/+bug/1833225). A workaround is to downgrade libshout3 library to a working version. In this example we will use the library in Ubuntu 19.10 (Eoan): 2.4.3 (2.4.3-1) –> 2.4.1 (2.4.1-2build1)
https://packages.ubuntu.com/eoan/libshout3

Steps:

  1. cd /tmp
  2. wget http://mirrors.kernel.org/ubuntu/pool/main/libs/libshout/libshout3_2.4.1-2build1_amd64.deb
  3. sudo dpkg -i libshout3_2.4.1-2build1_amd64.deb
  4. Restart Mopidy

To prevent the library from being replaced with every apt-get upgrade  you can hold it:

sudo apt-mark hold libshout3

Once the libshout3 package is fixed in 20.04 we will be able to undo it:

sudo apt-mark unhold libshout3

Then upgrade libshout3 using apt-get.

Posted in Uncategorized | Leave a comment

Steps to Reset Windows Server 2003 R2 Standard using Linux

These are the steps taken from my notes to reset/change an administrator password on a Windows Server 2003 R2 Standard install. I used Ubuntu and chntpw and the Windows partition was not encrypted.

  1. Boot from Ubuntu live disk
  2. Switch to root
    sudo -i
  3. Add the repository that has chntpw
    apt-add-repository universe
  4. Install chntpw
    apt-get install chntpw
  5. Make a folder to mount the Windows partition drive
    mkdir /winmount
  6. Mount the partition (search available partitions using Gparted)
    mount /dev/xxx /winmount
  7. List all users
    chntpw -l /winmount/WINDOWS/system32/config/SAM
  8. Modify the desired user
    chntpw -u username /winmount/WINDOWS/system32/config/SAM
  9. Clear (blank) the password of the user, option 1.  Then unlock if necessary, option 2.
  10. Quit and write the changes
  11. Unmount and reboot
    unmount /winmount
Posted in Uncategorized | Leave a comment

Adjusting RAID Speed in OpenMediaVault

This affects the minimum and maximum speeds allowed for throttling of reshaping and checking activities of mdadm.

To monitor the current speed
sudo cat /proc/mdstat

To temporarily adjust the speed use the commands below. They will reset to defaults on the next reboot. The speed, x, is a number in kbytes/seconds.
echo x > /proc/sys/dev/raid/speed_limit_min
echo x > /proc/sys/dev/raid/speed_limit_max

To make the change permanent and persist after a reboot modify this file:
/etc/sysctl.d/99-openmediavault-mdadm.conf
Add these lines where the speed, x, is a number in kbytes/seconds.
dev.raid.speed_limit_min = x
dev.raid.speed_limit_max = x

Posted in Uncategorized | Leave a comment

OpenMediaVault weakref (Python) Error When Updating

When trying to perform apt-get update on OMV 4.1.27-1 (Arrakis), I received the following error

Hit:10 https://packages.openmediavault.org/public arrakis InRelease
Exception ignored in: <function WeakValueDictionary.__init__.<locals>.remove at 0x7fd4ea277598>
Traceback (most recent call last):
File "/usr/lib/python3.5/weakref.py", line 117, in remove
TypeError: 'NoneType' object is not callable
Exception ignored in: <function WeakValueDictionary.__init__.<locals>.remove at 0x7fd4ea277598>
Traceback (most recent call last):
File "/usr/lib/python3.5/weakref.py", line 117, in remove
TypeError: 'NoneType' object is not callable
Reading package lists... Done

The fix is to edit and replace 2 lines in weakref.py

nano /usr/lib/python3.5/weakref.py

Old line 109:
def remove(wr, selfref=ref(self)):
New line 109:

def remove(wr, selfref=ref(self), _atomic_removal=_remove_dead_weakref):

Old line 117:
_remove_dead_weakref(d, wr.key)
New line 117:

_atomic_removal(d, wr.key)

You must be careful to replace only the specific text and not modify whitespace, otherwise you may receive the following error during the next update:
TabError: inconsistent use of tabs and spaces in indentation

The source for the above fix: https://forum.openmediavault.org/index.php?thread/19658-upgrade-debian-9-and-4-x/&postID=155621#post155621

An alternative way to fix weakref.py is to replace the entire file:

wget -O /usr/lib/python3.5/weakref.py https://raw.githubusercontent.com/python/cpython/9cd7e17640a49635d1c1f8c2989578a8fc2c1de6/Lib/weakref.py

The source is from this post: https://forum.openmediavault.org/index.php?thread/19658-upgrade-debian-9-and-4-x/&postID=196631#post196631

Posted in Uncategorized | Leave a comment