Outils pour utilisateurs

Outils du site


Panneau latéral

Menu tree

welcome:linux_usually:small_tricks

Small tricks

Difficulté
Très facile

Accept a changed ssh key:

when you try to log via SSH to a machine that has changed the key, you get something like that

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is 
  .......... 

In order to reset the saved identification of the machine, run:

ssh-keygen -R <ip> 

Now you can log again via SSH.

connect to CUPS from web interface

Copy / synchronize folders

  • copy the hardlinks inside the local machine (for backups of affa for ex.):
    cp -a /source/folder /destination/folder 
  • copy the hard links from / to a remote machine (for backups of affa for ex.):
    rsync -arPvH /source/folder root@IP:/destination/folder 
  • copy complete folder (incl. hidden files) via an archive:
    • create the archive: tar cvfz archive.tar.gz /path-to folder-to-copy
      IMPORTANT: make sure that you are NOT into the path that you want to copy!!
    • move or copy the archive
    • extract the archive:
      cd /path-to-the folder where the archive is to extract
      tar xvfz archive.tar.gz 

Create from a partition a file ISO for a CDROM

 sudo dd if=/dev/sdX of=/home/user/cdrom.iso bs=2048 conv=notrunc 

Create a Freedos USB key

This is particularly needed to install drivers or to update a bios. Source

  • download the image
  • extract the img. file
     bzip2 -d FreeDOS-1.1-USB-Boot.img.bz2
  • copy the image on the USB key (check which device!)
    # dd if=FreeDOS-1.1-USB-Boot.img of=/dev/sdf 
  • mount the USB key
    # mount /dev/sdf1 /mount/point 
  • copy the drivers and bios etc… on the key
    #cp BIOS_UPDATE.EXE /mount/point
  • umount the USB key

Creating a multiboot USB key:

My preferred solution is named “easy2boot”. The explanations for installation and use are for example here http://la-vache-libre.org/creer-une-cle-usb-multi-boot-en-6-etapes-avec-easy2boot-tuto/ in french.

Deleting old kernels:

  • for Ubuntu 10.04:
sudo apt-get remove linux-headers-2.6.32-67 linux-headers-2.6.32-67-generic linux-image-2.6.32-67-generic --purge
  • for an OS with gnome2:
package-cleanup --oldkernels -count=2
  • for Fedora >=22:the command “package-cleanup” is not available any more (belong to the package “yum-utils”) but the number of remaining kernels can be set into “/etc/dnf/dnf.conf” with the parameter “installonly_limit=XX”. Replace XX through the number of kernels you want to keep.

Desktop Mate:

When Mate doesn't display correctly its panel(the top bar with “applications”, “places” and “system”), enter in a terminal to force Mate to regenerate the panel:

 $ killall mate-panel 
run the command automatically at login…

Erase the MBR

dd if=/dev/zero of=/dev/sdX bs=512 count=1

sdX or hdX or vdX or… = your disk!

Health of the hard drives

With the utility “Smartmontool”:

  • Get summary info about the disk by SMART:
    sudo smartctl -H -i /dev/sdX 
  • Get complete info about the disk by SMART:
     sudo smartctl -a /dev/sdX 
  • Run tests:
    Two types of tests are at least available: the short one (~1-5 min.) and the long one (~10-150 min).
    • Start the short test:
      sudo smartctl -t short /dev/sdX 
    • Start the long test:
      sudo smartctl -t long  /dev/sdX 
  • Access afterwards to the results of the tests:
    sudo smartctl -l selftest /dev/sdX 
  • Get briefly results (gives a message only by status “SMART failing” or if the autotests have reported errors)
    sudo smartctl -q errorsonly -H -l selftest /dev/sdX 

Recognizing which drive is “sdX” get getting the serial number:

hdparm -i /dev/sdX | grep -i serial

Information about the hardware

“lshw” or “dmidecode” or “hardinfo” in graphical mode

Information about parameters of php

Information about the present partitions

$ df -hT
Sys. de fichiers                   Type       Taille Utilisé Dispo Uti% Monté sur
devtmpfs                           devtmpfs     3,9G       0  3,9G   0% /dev
tmpfs                              tmpfs        4,0G    4,0K  4,0G   1% /dev/shm
tmpfs                              tmpfs        4,0G    1,8M  4,0G   1% /run
tmpfs                              tmpfs        4,0G       0  4,0G   0% /sys/fs/cgroup
/dev/sda7                          xfs           25G     17G  7,5G  70% /
tmpfs                              tmpfs        4,0G     32K  4,0G   1% /tmp
/dev/sda5                          xfs           20G     12G  7,9G  60% /home
//Server_samba/shared_folder1       cifs         10G    8,2G  1,8G  82% /mount/point 

Information about the RAM

$ free -t
             total       used       free     shared    buffers     cached
Mem:       2058028    1906956     151072          0     212940     764968
-/+ buffers/cache:     929048    1128980
Swap:      4104504        500    4104004
Total:     6162532    1907456    4255076 

Monitoring the system

“top” or “htop”

Info about the size of a directory

du -sh 

Mass rename of files

Use the program called “metamorphose”.

Mass changing permissions

For files and folders.

$ find the_folder_to_set_permissions/ -type d -exec chmod 750 {} \;
$ find the_folder_to_set_permissions/ -type f -exec chmod 640 {} \; 

Useful for manually installed web application.

Missing dependency

yum (or dnf) provides "the_name_of_the_missing_library"

will give which package must be installed to solve the missing dependency.

Mount a additional partition over the /etc/fstab file

must be tried and confirmed
  • as explained in thispage, setting /media/user as a mountpoint makes the partion appear in the files manager.
  • permissions of the mountpoint:
    • chmod 777 /the/mountpoint
    • as described here, setting a parameter “umask” allow to set permissions like 755

Partition table for partitions larger than 2TB

MSDOS partition tables are OK for partitions smaller than 2TB. Larger partitions are automatically “cut” by 2TB.
For larger partitions, use “parted” instead of “fdisk” and set the type “GPT” for the partition type.
The alignment of the partitions is a little bit tricky with parted.
Following allows the creation of a partition on the whole disk:

 # parted /dev/sdX
(parted) mkpart primary ext4 0% 100% 

See https://wiki.archlinux.org/index.php/GNU_Parted too.

Renommer en masse

Pour renommer des fichiers en masse: utiliser gprename
Dispo sous Ubuntu 18.

Le lanceur ne se trouve pas dans le menu des applications ⇒ lancer “gprename” depuis un terminal.

Send the SSH key

$ ssh-copy-id -i ~USER_TO_CONNECT/.ssh/id_rsa.pub root@192.168.xxx.xxx

SSH connexion with key

$ ssh -i /path/of/the/key.rsa user@IP_of_remote_host 

to create a symbolic links:

ln -s /path/of/the/source /path/of/the/link 

Use of the command "visudo":

Visudo is used to edit and modify /etc/sudoers for example.

source: http://stackoverflow.com/questions/12736351/exit-save-edit-to-sudoers-file-putty-ssh

To make changes to sudo from putty/bash:

  • Type visudo and press enter.
  • Navigate to the place you wish to edit using the up and down arrow keys.
  • Press insert to go into editing mode.
  • Make your changes - for example: user ALL=(ALL) ALL.
It matters whether you use tabs or spaces when making changes.
  • Once your changes are done press esc to exit editing mode.
  • Now type :wq to save and press enter.

You should now be back at bash.
Now you can press ctrl + D to exit the session if you wish.

Don't update a rpm with yum or dnf

yum –exclude=name_of_package* update

Users and groups

  • list all users:
     cat /etc/passwd

    or

    getent passwd
  • list the groups the user is in:
    groups the_user
  • list all groups:
    cat /etc/group
  • add a user:
    adduser the_user   #for complete adding (password + /home folder etc...) or
    useradd   #more simply
  • add a group:
    addgroup the_goup
  • delete a user:
    userdel the_user

ZFS

Delete all snapshots of a dataset

Delete all snapshots of dataset “DATASET”:

# zfs list -H -t snapshot | grep "DATASET" | cut -f 1 | xargs -n 1 zfs destroy -r
welcome/linux_usually/small_tricks.txt · Dernière modification: 2020/08/05 06:13 (modification externe)