dmidecode: Getting the serial number of your x86 system

The serial number of your system can be easily found on the bottom of your laptop in most of the systems. However, if you are working with a remote server and need to collect its info things get a little complicated. But fear not, for there is dmidecode to save your day.

From the man page:

dmidecode is a tool for dumping a computer's DMI (some say SMBIOS) table
 contents in a human-readable format. This table contains a description of
 the system's hardware components, as well as other useful pieces of informa‐
 tion such as serial numbers and BIOS revision.(...)

So, give it a try and see what a plethora of information types you can see using a single command.

As for the serial number, issue:

$ sudo dmidecode -s system-serial-number

In my system:

$ sudo dmidecode -s system-serial-number
[sudo] password for dbkreling: 


How to enable git-completion on PS1 variable

A nicer bash prompt I use includes a git completion script that indicates the branch of a repository I may be into. Like this:


Green indicates “master” is clean and no modified files are present. Red indicates there is something new in that branch.

In order to configure that, I had to include some instructions on my .bashrc file. It looks like this:

# git completion
source /usr/share/git-core/contrib/completion/


PS1=’\[\e[01;30m\]\t`if [ $? = 0 ]; then echo “\[\e[32m\] ✔ “; else echo “\[\e[31m\] ✘ “; fi`\[\e[00;40;37m\]\u\[\e[01;37m\]:`[[ $(git status 2> /dev/null | head -n2 | tail -n1) != “# Changes to be committed:” ]] && echo “\[\e[31m\]” || echo “\[\e[33m\]”“[[ $(git status 2> /dev/null | tail -n1) != “nothing to commit, working directory clean” ]] || echo “\[\e[32m\]”`$(__git_ps1 “(%s)\[\e[00m\0]”)\[\e[01;34m\]\w\[\e[00m\]\$ ‘

Now, sometimes (in a new environment mostly), we may configure the .bashrc just the way we want it and then:


Boom! You see a big "__git_ps1: command not found"  message.

That is because you don’t have the file you included in the directory loaded at the top of you .bashrc file (the /usr/share/git-core/contrib/completion/

So in order to get rid of that, we need to include it. The file is available in contrib/completion/git-prompt.bash from the git repository git://

So after you clone it, you should simply copy the missing files to your system file system. In my case, I preferred to copy the whole “completion” dir to my file systems, as I did not have it. So:

$ sudo cp -r completion/ /usr/share/git-core/contrib/

Now I have my git-completion.bash file in the correct place. Let’s see if that worked when running a new bash session:


Great! Worked like a charm.

Let me know if you have a different solution for it or if this did not solve your problem.

Thanks for reading.


Technically Speaking was used as a reference for this post.

Create a new user on your system

This is a quick checklist on how to create a user from the command line:
1. useradd -m your_username (add a user called your_username with a home directory)
2. passwd your_username (set a password for your_username)
3. usermod -aG wheel your_username  (to include the user in the sudoers list)
4. su - your_username (to change to the your_username account)
NOTE: sudo usermod -a -G sudo username (to include user ‘username’ in the sudo group)

[iprconfig 8/8] Verifying what is the RAID for your label

To display the name of your disk providing the label you used when you created the RAID, issue:

[root@jupiter1-lp1 ~]# iprconfig -c query-array-label foobar

Continue reading “[iprconfig 8/8] Verifying what is the RAID for your label”

[iprconfig 6/8] Showing Specific Disk Information

The show-details command displays different sorts of information about your disks.

iprconfig -c show-details [sdN | sgX]…

If you use the array called sda you will get information like this: Continue reading “[iprconfig 6/8] Showing Specific Disk Information”