Fix Gitlab won’t start, database system is shut down, failed to load.

When you have issues with GitLab you will want to check the status to see which component of gitlab is not working as expected. Do this using the following command:

sudo gitlab-ctl status

Verify the log files of the component to obtain details about the failure. Log files for Omnibus installation of gitlab are located under.


Within this location there are several subfolders that container log files.

You will can to examine the file that is named current for the component.

Example, suppose we are fixing database is shutdown error.

sudo nano /var/log/gitlab/postgresql/current

When we examine this log file we discover there is an issue with reading the cacert.pem file. This is causing the database to be unable to startup.

 FATAL: could not load root certificate file "/opt/gitlab/embedded/ssl/certs/cacert.pem": No such file or directory
 LOG: database system is shut down

If the file is missing then you need to restore it from your backups.

If the file is there the error could be caused by a permission error.

Change the files permission  using the commands below and restart gitlab.

sudo chmod 644 /opt/gitlab/embedded/ssl/certs/cacert.pem
sudo gitlab-ctl restart

Verify that gitlab is started correctly

sudo gitlab-ctl status





Fix Discord App Black Screen Crash Virtualbox

Windows, Linux (Ubuntu, Mint, Debian etc…), MacOS may be affected by this issue if you are using running a guest operating system and trying to use Discord.

In order to resolve this issue follow these simple steps.

  1. First shutdown your Virtualbox guest instance.
  2. Next go to select you Virtualbox and click the Settings icons in toolbar.
  3. Go to Display panel and uncheck ‘Enable 3D Acceleration’
  4. Click OK to save the settings

Now restart your Virtualbox guest instance and try startup Discord again.

Note: As this entry is being created the latest version of Discord is 0.0.5 for Linux.




Add Filezilla PPA to Ubuntu 16.04

This will setup your system with the latest Filezilla version and will allow you to keep it up to date with regular system updates.

sudo sh -c 'echo "deb xenial-getdeb apps" >> /etc/apt/sources.list.d/getdeb.list'
wget -q -O - | sudo apt-key add -
sudo apt update
sudo apt install filezilla

Compiling Apache2 modules on OSX, MacOS for MP4 Pseudo Streaming

Requirements from fresh Install with MAMP

$ ./apachectl -V

Server version: Apache/2.2.29 (Unix)

Server built:   Oct 20 2014 15:05:57

Server’s Module Magic Number: 20051115:36

Server loaded:  APR 1.4.8, APR-Util 1.5.2

Compiled using: APR 1.3.8, APR-Util 1.3.9

Architecture:   64-bit

Server MPM:     Prefork

  threaded:     no

    forked:     yes (variable process count)

Server compiled with….

 -D APACHE_MPM_DIR=”server/mpm/prefork”



 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)







 -D HTTPD_ROOT=”/Applications/MAMP/Library”

 -D SUEXEC_BIN=”/Applications/MAMP/Library/bin/suexec”


 -D DEFAULT_SCOREBOARD=”logs/apache_runtime_status”

 -D DEFAULT_LOCKFILE=”logs/accept.lock”

 -D DEFAULT_ERRORLOG=”logs/error_log”

 -D AP_TYPES_CONFIG_FILE=”/Applications/MAMP/conf/apache/mime.types”

 -D SERVER_CONFIG_FILE=”/Applications/MAMP/conf/apache/httpd.conf”

Notes: The Apache2 2.2.29 source packages includes APR 1.4.8 and APR-UTIL 1.5.2??

Paths and prefixes must be specified since OS X does include some libraries by default. These are not necessarily the right versions for our purposes so we must explicitly specify the paths and libraries we wish to compile against.

Steps to Complete on VM

  • Install latest updates
  • Setup OS X environment, compile Apache2 and modules from source
  • Show hidden files
    • defaults write AppleShowAllFiles TRUE && killall Finder
  • Steps
    • xcode-select —-install 
      (Command Line Tools)
      sudo ln -s /Applications/ /Applications/
      sudo gcc
      (C Compiler must be run to accept license agreement otherwise build will fail)
      #mkdir -p /Applications/ ln -s /usr/bin/cc /Appl#ications/
      ./configure --prefix=/usr/local/apache-2.2.29 --with-included-apr
      make && sudo make install
      sudo ln -s /usr/local/apache-2.2.29 /usr/local/apache
      echo 'export PATH=/usr/local/apache/bin:$PATH' >> ~/.bash_profile 
      echo 'export MANPATH=/usr/local/apache/man:$MANPATH' >> ~/.bash_profile
      source ~/.bash_profile
      apachectl -V

      Server version: Apache/2.2.29 (Unix)

      Server built:   Mar 14 2015 16:27:41

      Server’s Module Magic Number: 20051115:36

      Server loaded:  APR 1.5.1, APR-Util 1.5.3

      Compiled using: APR 1.5.1, APR-Util 1.5.3


      H264 Streaming Apache Module
      tar -zxvf apache_mod_h264_streaming-2.2.7.tar.gz
      cd ~/mod_h264_streaming-2.2.7
      ./configure --with-apxs=/usr/local/apache/bin/apxs
  make && sudo make install

 Module will be located at this path /usr/local/apache-2.2.29/modules/


Get the MAMP Apache2 version


apachectl -V

For MAMP Pro it’s Apache 2.2.29

Get the Apache 2.2.29 source code from the Apache2. (direct link)


sudo make install


./configure --prefix=/usr/local/apache-2.2.29 --with-included-apr
sudo make install


H264 Streaming Apache Module
tar -zxvf apache_mod_h264_streaming-2.2.7.tar.gz
cd ~/mod_h264_streaming-2.2.7
./configure --with-apxs=/usr/local/apache-2.2.29/bin/apxs

./configure --disable-apxstest (this works too - but is not recommended)

./configure –with-apxs=/Users/bigmac/Applications/MAMP/Library/

sudo make install

sudo cp /usr/libexec/apache2/ /Applications/MAMP/Library/modules/

sudo chown bigmac:admin /Applications/MAMP/Library/modules/

wget -O test.mp4 “http://localhost/Big_Buck_Bunny_Trailer.mp4?start=12”



Compile Apache 2.2.29 on spare VM with same APR and APR-UTIL versions

Update paths on VM to point ‘apache’ to new patch /usr/local/apache-2.2.29/

ln -s ~/Applications/MAMP/Library /usr/local/apache
echo 'export PATH=/usr/local/apache/bin:$PATH' >> ~/.bash_profile 
echo 'export MANPATH=/usr/local/apache/man:$MANPATH' >> ~/.bash_profile

Compile h264 module on VM using

Copy to MAMP Box

Copy /usr/local/apache-2.2.29/lib/ folder to MAMP box


Figure out compile prefixes for h264 mod, to point to MAMP Apache location

Change system wide symlink

ln -s ~/Applications/MAMP/Library /usr/local/apache
echo 'export PATH=/usr/local/apache/bin:$PATH' >> ~/.bash_profile 
echo 'export MANPATH=/usr/local/apache/man:$MANPATH' >> ~/.bash_profile

Add the following to /Applications/MAMP/conf/apache/httpd.conf  – In the Module section.

LoadModule h264_streaming_module modules/
AddHandler h264-streaming.extensions .mp4

chmod 664

Verify apache APR and APR-UTIL versions.

$ apachectl -V

Server version: Apache/2.4.9 (Unix)

Server built:   Mar 14 2015 01:15:08

Server’s Module Magic Number: 20120211:31cd

Server loaded:  APR 1.4.8, APR-UTIL 1.5.2

Compiled using: APR 1.4.8, APR-UTIL 1.5.2

Architecture:   64-bit

Restart Apache

Test to see if it’s loaded

apachectl -t -D DUMP_MODULES

apachectl -M

h264_streaming_module (shared)

h264_streaming_module (shared)


If h264 module is not listed then verify settings.

Test to see if it’s working as expected

Apple in MacOS X 10.8 and 10.9 and 10.10 breaks the ability to compile Apache modules.

Try going to:

cd /Applications/

and do:

ln -s XcodeDefault.xctoolchain OSX10.10.xctoolchain
sudo ln -s /Applications/ /Applications/

If installing locally here are some differences:

 sudo chown root:wheel

MAMP_h264_streaming_module_MAMPLoadModule h264_streaming_module modules/




AddType application/x-httpd-php .php .phtml

AddHandler h264-streaming.extensions .mp4

2015 03 14 03 42 46 PM

Quit MAMP Pro

Start MAMP Pro

You will see a new module in the list

2015 03 14 03 43 46 PM




Proper VNC Configuration on Modern Ubuntu 16.04

Note we use TigerVNC here as it is more secure and the new recommended vnc gold standard. TigerVNC makes use of encryption and is a much improved VNC server and client combo. Comparatively, TightVNC has not been updated in 8 years.


Download the TigerVNC Ubuntu Release files using the following links:





sudo dpkg -i tigervnc*.deb && sudo apt install -f


Create Config File

sudo nano /etc/systemd/system/vncserver@.service

Insert these contents into /etc/systemd/system/vncserver@.service.

Replace the bolded user with your own username.

Description=Start TigerVNC Server at startup

ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver :%i -depth 24 -geometry 1280x1024
ExecStop=/usr/bin/vncserver -kill :%i


Save the file.


Enable the service

sudo systemctl enable vncserver@1.service


Start the service

sudo systemctl start vncserver@1



Force Password Authentication with SSH

If you want to connect to a host by using a password instead of a public key you can use the following command to initiate a request.

Note: This will only work if your host allows the user you are trying to connect with to authenticate by using password. Typically, this is disabled for root users and not advised to enable password authencation unless you really know what you are doing.

ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no