ubuntu rename user login

C++
#As root / or as another user. 
# Kill the processes of the user to rename
pkill -u <OldLoginName>

#Rename user login
usermod -l <OldLoginName> <NewLoginName>

#Rename HomeDir 

sudo usermod -d /home/NewHomeDir -m NewLoginName# To manage every aspect of the user database, you use the usermod tool.
# To change username (it is probably best to do this without being logged in):

sudo usermod -l newUsername oldUsername
# This however, doesn't rename the home folder.
# To change home-folder, use

sudo usermod -d /home/newHomeDir -m newUsername# -l changes login name
# -d changes home directory
# -m copies over contents from old home directory
usermod -l <newname> -d /home/<newname> -m <oldname>

# NOTE: will not work if you are currently logged on as user
# - workaround by temporarily enabling root account and running above command there
# [sudo passwd root] 
# - after root account has been used to change username lock it using
# [sudo passwd -l root]
Source

Also in C++: