Quick tips / references for using Linux / Ubuntu.

General

○ Find in linux with command lines ⇾ link

○ Cannot move files to the trash/wrong owner ⇾ link

○ Gnome screen shot ⇾ link

○ Windows shrink drive in windows ⇾ link (partition, resize disk drive, hard disk)

○ Turn off animation open and minimize windows on ubuntu 17.10 and later (gnome desktop): Gnome Tweak Tools > Apperance > Animations OFF

○ Type Vietnamese in SublimeText, install vn ime (exactly like that). Press F2 for using.

○ Look and kill an app process:

ps ax | grep teamviewer # check the id
kill -9 <pid> # kill some process

○ Install file .bin, .run

chmod +x file-name.run 
./file-name.run

○ Unzip a file,

sudo apt-get install unzip
unzip <file>
unzip <file> -d <destination>

○ Terminal multi windows:

sudo apt-get install terminator

○ Add bookmark for evince (default pdf reader)

  • F9: hide/show sidebar
  • Menu on the top right > Add bookmarks
  • Click on bookmark and rename it
  • Ctrl + Shift + S to save (instead of Ctrl + S)

○ Remove PPA from ubuntu by terminal. For example, The repository ‘http://ppa.launchpad.net/b-eltzner/qpdfview/ubuntu artful Release’ does not have a Release file. Remove the file b-eltzner-qpdfview-ubuntu from directory /etc/apt/sources.list.d

sudo rm /etc/apt/sources.list.d/<file>

○ Get ip address: ifconfig

Nautilus / Files management

○ Make a shortcut link to a folder/file in linux terminal ⇾ link

○ Shortcut to a folder in linux ⇾ link

○ Thumbnail nautilus: go to setting, set and apply this line

sudo chown -R yourusername:yourusername ~/.cache/thumbnails

○ Shorten directory in terminal

  • Temporarily, just enter PS1='\u:\W\$ ' en press enter.
  • Permanently, open sudo gedit ~/.bashrc and find
    if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[email protected]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
    else
    PS1='${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$ '
    fi
    
  • Remove @\h and replace \w by \W so that it becomes,
    if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u\[\033[00m\]:\[\033[01;34m\]\W\[\033[00m\]\$ '
    else
    PS1='${debian_chroot:+($debian_chroot)}\u:\W\$ '
    fi
    
  • Save, exit, close terminal and start another to see the result.

○ Right click nautilus “Open as Administrator”:

sudo apt-get install nautilus-admin
nautilus -q # restart nautilus

○ Mount iso file on linux

sudo mount -o loop <image>.iso /mnt/<folder>

If you mount another iso file to the same , it will replace the current one.

○ Extract a iso file: first, mount it like in 37 to folder named iso then copy all the contents in iso to some folder you want.

cp -r /mnt/iso <directory>

○ Sync files with mega right on terminal

  • Install megatools: sudo apt-get install megatools
  • Using megatools, cf the main website.
  • Create a condig file which stores your login information (be careful, everyone can see your pass)
    sudo apt-get install vim # in case that you don't have vim on your system
    vim .megarc # create a file named .megarc
    
  • vim opens and type
    [Login]
    Username = [email protected]
    Password = yourpassword
    

    If you have back slash in your password, you must escape it with another backslash

  • Quit vim and save the file by pressing ESC and then :wq!
  • Upload a file: megaput --path /Root/<folder> file
  • See the list of file on remote: megals
  • Upload a folder: megacopy --local <folder> --remote <folder>
  • Download from link: megadl <mega-link>
  • Download a single file: megaget <file>
    megaget /Root/Apps/matlab17b/R2017b_glnxa64_dvd2.iso
    
  • Download from uploaded directory:
    megacopy --local <folder> --remote <folder-to-download> --download
    

○ Save a directory a $PATH of local profile.

sudo gedit ~/.profile
# copy and paste following line (should change the path)
export PATH=/home/thi/anaconda3/bin:$PATH
# save and close .profile and then apply following line to get instant update
source ~/.profile

○ Copy files from ubuntu to iPhone iOS iPad

  • Don’t need to install any files if one needs to copy photos/videos from iphone to ubuntu, one can use gThumb to do this or just use file manager to copy.
  • If one wants to copy files to iphone. Follow this one

○ Check the current path: pwd

Surface

○ Tweaks for ubuntu on surface book ⇾ link

○ App linux-surface.

Errors

○ Problem save file as root user and cannot open later ⇾ link

○ Prevent bluetooth devices disconnected after sleep ⇾ link

Failed to load module 'canberra-gtk-module'

sudo apt install libcanberra-gtk-module libcanberra-gtk3-module

User / Group / Ownership

○ How to add existing user to an existing group[ref]

sudo usermod -a -G groupName userName

○ Change ownership of a folder and its children

# folder and its children
chown -R thi:root folder
# a file
chown <user>:<group> file

○ Check the permission of curent directory:

ls -l 
ls -l <file>

check ll

Matlab

○ Scale matlab: need to install matleb version >= R2017b

s = settings;s.matlab.desktop.DisplayScaleFactor
s.matlab.desktop.DisplayScaleFactor.PersonalValue = 2

○ Launching matlab without graphic ui[ref]

matlab -nodesktop

○ Cannot open matlab without sudo: change the owner permission of folder /home/thi/.matlab to thi*

Another solution: suppose that matlab is installed on a user’s directory and you have already add this to the $PATH. IT’s only work if you use matlab (not sudo matlab). Then do

sudo env "PATH=$PATH"

from this, you can sudo matlab

○ Matlab drive connector: after installing, run

~/bin/MATLABConnector toggle

○ How to install matlab silently (only with command lines) on linux? (if below doesn’t work, you can check here, my method is different from this one)

  1. Suppose that you have 2 dvd iso files which contains the installation of matlab (dvd1.iso and dvd2.iso)
  2. For the activation, you have libmwservices.so and license_standalone.lic
  3. First, you need to extract 2 dvd iso files to a common folder named install_matlab in /home/thi/
  4. Create a new folder to install matlab called matlabR in /home/thi/
  5. Extract all files in 2 iso files to folder install_matlab like the instruction 38
  6. Run below command line
    sudo /home/thi/matlab_install/install -agreeToLicense yes -mode silent -destinationFolder /home/thi/matlabR -fileInstallationKey xxxxx-xxxxx-xxxxx  -outputFile /home/matlab_install.log
    
  7. After the installation, copy file license_standalone.lic to /home/thi/matlabR/licenses/
  8. Copy file libmwservices.so to /home/thi/matlabR/bin/glnxa64/
  9. Try running matlab: /home/thi/matlabR/bin/matlab
  10. If you have an error like libXt.so.6: cannot open shared object file: No such file or directory, try to install
    sudo apt-get install libxt6
    
  11. Make linux recognize your matlab command matlab like in the instruction 40.

○ Make linux recognize matlab command

  • Suppose that you have installed matlab on /home/thi/matlabR
  • You need to add above directory to the $PATH so that the system can recognize your matlab command
    export PATH=$PATH:/home/thi/matlabR/bin
    
  • You can use echo $PATH to check if the path is located in it or not.

○ Remove matlab on linux: simply rm -rf <matlab-folder>

Download / Internet

○ Download a direct link by terminal

wget <direct-link> -O <name-of-file>.<file-extension>

○ Download from google drive by terminal

  • Download as usual without terminal by a web browser
  • Open Downloads windows of the browser and then copy the download link.
  • Stop the download process
  • Use the command link in 33 where <direct-link> is the link copied above.

○ Use ssh to get access to another computer in the same network (LAN)

  1. Follow (a little bit) here.
  2. On the remote machine
    1. update and upgrade install
    2. install openssh-server
    3. open /etc/ssh/sshd_config and uncomment on Port 22 and lines starting with Hostkey...
    4. start the network: sudo service ssh start
    5. stop the network: sudo service ssh stop
    6. check if the network is running or not? sudo service ssh status
    7. Check the current ip: ifconfig: look on the inet
  3. On the local machine
    1. Install the same tool and use ssh [email protected]

○ Connect ssh to a virtual machine (the same network)

  • Install openssh for both client and server machine
    sudo apt-get install openssh-client
    sudo apt-get install openssh-server
    
  • On server machine, check ssh is running or not
    ps -A | grep sshd
    # return [number] ?  00:00:00 sshd then it works
    

○ Download playlist audio youtube, using youtube-dl

sudo apt-get install curl -y (cài curl nếu chưa cài)
sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl

youtube-dl --extract-audio --audio-format mp3 -o "%(title)s.%(ext)s" <link-playlist>

Media / Photo / Music

○ Mp3 tag editor:

sudo apt install exfalso  # Ex Falso

○ Resize multiple photos (keep the ratio/scale) (more options):

# install
sudo apt-get install imagemagick

# resize but keep the ratio (save to jpg)
mogrify -resize 50% -format jpg *

# resize keep the extension
mogrify -resize 50% *

# with a specific size (save to jpg)
mogrify -resize 800x600 -format jpg *

# just the width (save to jpg)
mogrify -resize 800x -format jpg *

# only resize images bigger than 1000px width
mogrify -resize 1000x\> *