How to manually update VirtualBox Guest Addons

After upgrading VirtualBox on your system it is highly recommended to also update VirtualBox Guest Addons for your guest systems.
This should work automatically but typically doesn’t, at least in my case; just happened to me again after upgrading to VirtualBox 5.2.8.

How to update VirtualBox Guest Addons is described here:

In the “Devices” menu in the virtual machine’s menu bar, VirtualBox has a handy menu item named “Insert Guest Additions CD image”, which mounts the Guest Additions ISO file inside your virtual machine.

This did not work in my case: when clicking “Insert Guest Additions CD image” I get an error message which is not very specifc, it just says the desired CD image could not be mounted. A closer looks reveals that actually that image is mounted already, it just did not start automatically to perform the update.

Here is what I do in this case:

  1. Open a termin window
  2. Type ‘df -h’ to find the path to my mounted CD image. In my case that entry looks like this:
    /dev/sr0 56M 56M 0 100% /media/amagard/VBox_GAs_5.2.8
  3. cd to this path ( here: /media/amagard/VBox_GAs_5.2.8 )
  4. Type ‘sudo ./autorun.sh’

This actually kicked off the installation of the VirtualBox Guest Addons.

Advertisements

How I installed Teamviewer 12 on Linux Mint 18.2

 

Here is how I installed Teamviewer 12 on Linux Mint 18.2 64bit:
1. Downloaded Debian package from here
2. Located file in Downloads folder, right-click, “Open with GDebi Package Installer”
3. Ran into issue about missing dependency: libdbus library
4. Ran this as recommended elsewhere, didn’t help: sudo apt-get install -f
5. Found this useful discussion thread and basically ran the first two commands recommended, then re-attempted install through package manager successfully.

sudo dpkg --add-architecture i386
sudo apt-get update

 

Enabling 1366×768 resolution in Windows 10

I have been struggling for a while to set this up: enabling  Display Settings so that they would support the 1366×768 resolution of my TV screen, after I connected my laptop with Windows 10 installed to my TV.1) In Display Settings this resolution simply was not offered.

Until I figured out this setting in Display Settings –> Advanced Display Settings –> Display Adapter Properties –> Monitor:

Removing the check mark from this check box revealed the resolution I was looking for. Apparently Windows didn’t have much of a clue about the connected monitor. OK, I admit, I connected it via a simple VGA cable.

Smiley

1)I gave up on ubuntu, too many things didn’t work out of the box ( like sending laptop to sleep when closing the lid ), too much googling and obscure hacking needed, and then display driver started crashing when laptop woke up later on. I do complain about Windows a lot, but Linux systems can be worse, and with Windows 10 Microsoft made a great move towards good quality.

How to enable 1366×768 screen resolution in ubuntu 16-04

It took me a while and some hacking until I figured out how to enable 1366×768 screen resolution in ubuntu 16-04 for my secondary display, a Fujitsu-Siemens TV from pre-HD era, means: HD ready but not providing the full resolution, just 1366×768.

Anyway, here is the magic:

cvt 1366 768 60
xrandr –newmode "1368x768_60.00"   85.25  1368 1440 1576 1784  768 771 781 798 -hsync +vsync
xrandr –addmode VGA-0 "1368x768_60.00"
xrandr –output VGA-0 –mode "1368x768_60.00"

This is sort of what distinguishes a linux system from a Windows system. Often you have to do a lot of weird hacking to achieve certain things.

Nevertheless, I must say, when I had Fedora 25 installed on my computer beforehand it offered 1368×768 screen resolution out of the box, ubuntu didn’t. Well, that’s what makes linux so exciting for many: the need to tinker and learn interesting technical, sometimes magical secrets.

Thanks to this internet articles I finally solved my problem:

“Resolution” in wiki.ubuntu.com

How to get shared folder to work with a virtual ubuntu in Virtualbox

Getting shared folder to work with a virtual ubuntu in Virtualbox is a bit of a nightmare.
Initially they simply can’t be accessed, even after re-installing Virtualbox guest add-ons.
The reason and solution is described here, but adding root account to group vboxsf didn’t work as well because of this problem: "usermod: cannot lock /etc/passwd; try again later.".

Thus, to summarize this mess, to make it work
# you have to reboot into recovery mode
# run this: mount -o remount,rw /
# then that: usermod -a -G vboxsf adminuser
# resume booting into normal mode

Problem solved.
Shared folders BTW can be found under /media.

What Causes Side Pain When You Run (and How to Prevent It)

Interesting article on Lifehacker today for the runners among us: “What Causes Side Pain When You Run (and How to Prevent It)”.

According to the explanation provided this side pain has to do with some internal muscle strain and organs bumping around while running. How to deal with it ? Of course don’t run after heavy meals, and when it occurs take a break, and ensure your are sufficiently hydrated.

I usually don’t have that problem but I learned a different technique how to avoid and treat that problem, and I am not sure though how this is related to the explanations given in that article: breath in through your nose, and breath out through your mouth. It definitely works for me.

How to keep track of changes in multiple columns in a MS Excel spreadsheet

In a question to my blog article “How to keep track of changes in a MS Excel spreadsheet” I have been asked whether the code I showed there could be changed to monitor multiple columns in a spreadsheet.

Of course it can. The new code I am showing below handles an arbitrary number of columns, with the following assumptions / pre-requisites:

  • Column label in row 1
  • Row identifier (id) in column 1 of each row

I have changed my example from the previous article and added an additional column to my list of products: ‘Vendor’, here is an example:

Let’s change Price of Product C to $ 1301,00 and Vendor to ‘Company B’. Here is how the new Change History looks like:

Column B now shows which columns was changed and column C the new value, as usually together with a time stamp. Column A identifies for what product ( my ‘id’ column in this example ) the change occurred.

And here is the new code:

Private Sub Worksheet_Change(ByVal Target As Range)
 Dim AuditRecord As Range
 ' This is our change history ...
 Set AuditRecord = Worksheets("ChangeHistory").Range("A1:B65000")
 r = 0
 ' Now find the end of the Change History to start appending to ...
 Do
    r = r + 1
 Loop Until IsEmpty(AuditRecord.Cells(r, 1))
 ' For each cell modified ...
 For Each c In Target
   Row = c.Row
   Col = c.Column
   Value = c.Value
   ' ... update Change History with value and time stamp of modification
   AuditRecord.Cells(r, 1) = Worksheets("Products").Cells(1, 1) & " " & Worksheets("Products").Cells(Row, 1)
   AuditRecord.Cells(r, 2) = Worksheets("Products").Cells(1, Col)
   AuditRecord.Cells(r, 3) = Value
   AuditRecord.Cells(r, 4).NumberFormat = "dd mm yyyy hh:mm:ss"
   AuditRecord.Cells(r, 4).Value = Now
   r = r + 1
Next End Sub