Fix postgres upgrade error when upgrade Gitlab-CE from 8.x to 9.0

Right after Gitlab 9.0 was released, I upgraded our gitlab 8.x server and got stucked at PostGres upgrade with the following error:

Creating temporary data directory:Error creating new directory: /var/opt/gitlab/postgresql/data.9.6.1

I'd tried many things including changing the folder ownership and using a different tmp folder for postgres upgrade but it's still the same. Luckily, by searching through the Gitlab community edition issues site, I found out someone had a similar problem. I tried what they suggested and it worked. Here are the steps I had done to fix the upgrade:

1. Change the gitlab-psql users shell to /bin/bash (as root):

chsh -s /bin/bash gitlab-psql

2. Run dpkg-reconfigure dash and select NO will link /bin/sh to /bin/bash

3. Run the Gitlab upgrade again and everything was fine:

gitlab-ctl upgrade


WPA2 Enterprise with FreeRADIUS and AD integration on Ubuntu16.04

So you don't want to use the RADIUS feature of your MS Windows server, do you? Here you go, FreeRADIUS, an open-sourced project that will please you.

Assuming: FreeRADIUS IP domain domain controllerMYNTDOMAIN: nt domain name
1. Install samba, winbind, krb5-user:

sudo apt install samba winbind krb5-user

2. Config samba by editing:

a. /etc/samba/smb.conf:


## Browsing/Identification ###

# Change this to the workgroup/NT-domain name your Samba server will part of
   workgroup = MYNTDOMAIN

# need to add these
security = ads
password server =
winbind use default domain = true

b. /etc/krb5.conf:

        default_realm = MYDOMAIN.COM


        MYDOMAIN.COM = {
                kdc =
                admin_server =
                default_domain =

[domain_realm] = MYDOMAIN.COM = …

Fix freeradius-config installation error on Ubuntu 16.04 and FreeRadius3.0.X

This morning, I just tried to install FreeRadius 3.0.X on my Ubuntu 16.04 server. And it said that I have to install freeradius-config in order to finish the installation. But, I got these error messages:

dpkg: error processing archive /var/cache/apt/archives/freeradius-config_3.0.12-ppa1~xenial_amd64.deb (--unpack):
 trying to overwrite '/etc/freeradius/hints', which is also in package freeradius 3.0.12-ppa1~xenial
Errors were encountered while processing:
E: Sub-process /usr/bin/dpkg returned an error code (1)

So what I did to fix that is to run the following command to force orverwrite the freeradius-config page:

sudo dpkg -i --force-overwrite /var/cache/apt/archives/freeradius-config_3.0.12-ppa1~xenial_amd64.deb

Then the rest was fine.

Shakespeare in love with Vyatta

This is a memo of my presentation last Saturday at the University of Information Technology about Vyatta. I'm just trying show how easy it is to get started with Vyatta and what job I'm doing right now.

Everything is around these commands:


It was fun.


Search in all text files in Linux

Just use this command line:

grep -rnw '/path/to/somewhere/'-e "pattern"