Linux et plus particulièrement « ubuntu » – quelques infos pratiques

Linux (documents sur doc.ubuntu-fr.org)

https://openclassrooms.com/courses/reprenez-le-controle-a-l-aide-de-linux/la-console-ca-se-mange

https://doc.ubuntu-fr.org/tutoriel/console_commandes_de_base

 

Équivalent Windows de la commande ipconfig : ifconfig

 

Structure Linux

/home : documents /usr ou /opt : « équivalent de program files » de Windows

/bin /sbin /dev /lib /proc bibliothèques linux

/ect : fichiers « conf » de configuration des logiciels installés

Voir les unités « montées » ou les « monter » -> commande mount (contraire : umount)

Équivalent de la commande dir sous « ms » -> ls

( recopier une liste de fichiers dans un fichier texte : ls > fichiers-son.txt )

Liste des fichiers en voyant leur attributs : ls -l

ls -a
affiche tous les fichiers et répertoires y compris les cachés du répertoire courant

(Attributs dxxxx-xx-x le d signifie que c’est dossier et – que c’est un fichier et l que c’est un link et drwx-xx-x drwx signifie que c’est un répertoire dont les droits sont en lecture (read) écriture (write) et exécution (exécute)  et ensuite on voit a qui s’applique les droits propriétaire et groupe concernés)

R -> 4 / W -> 2 / X -> valeur 1 soit 7 pour tous les droits (4+2+1) donc chmod 777 * donne tous les droits et 644 donne les droits en lecture/écriture

mkdir -> équivalent de md (make directory)

rm -> remove (file) équivalent de « del » sous Dos

(exemple : rm file.txt)

rmdir > remove directory (équivalent rd sous dos)

( exemple : rmdir directory -> supprime le dossier directory  )

équivalent de copy sur ms windows : commande cp ( exemple cp -r *.* correspondrait a un xcopy /s *.* )

touch fichier.txt créé un fichier « vide » nommé fichier.txt

chmode ubuntu :ubuntu vide.txt change le propriétaire du fichier qui sera ubuntu du groupe ubuntu (identifiant :groupe)

Commande pour connaître l’emplacement où l’on se situe dans l’arboresence : pwd (print working directory)

cd /home/txxxx ou peut faire cd /home/ puis touche tab et caractère t afin d’avoir proposition de ce qui existe commençant par la lettre t

cd = change directory

cd
permet de revenir au répertoire /home/utilisateur (identique à cd ~)
cd –
permet de revenir au répertoire précedent
cd ..
permet de remonter au répertoire parent (ne pas oublier l’espace contrairement à windows)
cd /
permet de remonter à la racine de l’ensemble du système de fichiers
cd /usr/bin/
se place dans le répertoire /usr/bin/

Équivalent sous linux de la commande « copy » de « Ms »

-> équivalent commande  « cp » sous Linux

-R ou -r : Copie un répertoire et tout son contenu, y compris les éventuels sous-répertoires

mv Équivalent move ou ren
Permet de déplacer ou renommer des fichiers et des répertoires

exemple : mv nomfich nouveaunomfich

fdisk (Équivalent MS-DOS : fdisk)
Modifier la table de partition des disques

exemple :

-l Informations détaillées des disques
sudo fdisk /dev/sda
sudo fdisk -l

autre méthode pour avoir des infos sur disque et partitions

lhhw

sudo lshw -class disk

Autre utilitaire pour manipuler les partitions

cfdisk vous permet d’afficher les partitions d’un disque et de les modifier.

exemple suivant sudo cfdisk /dev/hda

formattage des disques

mkfs vous permet de formater votre partition

par exemple, pour formater hdb1 en ext3 :  sudo mkfs.ext3 /dev/hdb1

en mode « terminal » pour connaître les variables d’environnement du système « ubuntu »

taper printenv

Info:

pour un nom de fichier avec un « espace » il faut utiliser « nom de fichier »

 

Sous Microsoft \\10.0.50.56 s’écrit smb://10.0.50.56 sur linux

Etre en « administrateur avec droits » sur linux

-> Commande : sudo –i ou sudo -s

-> avoir « les droits super user » : sudo

passwd « nom identifiant » : permet en administrateur de changer le mot de passe

Changer un mot de passe « inconnu ou oublié » d’un compte utilisateur

cd /media/ubuntu (ou it) -> quand on boot en « try » sur un cd live de ubuntu puis cd / »nom du volume » hébergeant l’os que l’on identifie avec gestion de fichier et commande « go emplacement »

cd /etc puis effacer en fin de ligne après nom d’utilisateur les valeurs entre les 2 : dans les fichiers shadow et passwd

Puis

Après démarrage du cd live de ubuntu avant de choisir l’utilisateur faire ctrl+alt+F2 afin d’avoir l’invite de session et changer le mot de passe de l’utilisateur avec la commande passwd avant d’ouvrir linux en mode GUI

(et ctrl+altF7 pour relancer l’interface GUI)

sudo

Équivalent de  » runas »
Exécuter des commandes en tant qu’un autre utilisateur et  donc avec d’autres privilèges que les siens.

Configurer « sudo » pour allouer des droits sans saisie du mot de passe à un utilisateur

utiliser sudo visudo et dans # User privilege specification

existant : root ALL=(ALL) ALL

ajouter : user ALL=(ALL) NOPASSWD:ALL (remplacer user par l’utilisateur concerné)

faire un raccourci lançant un « batch »

exemple pour lancer un « batch » nommé test.sh se trouvant dans /home/user/bureau/

mettre : bash -c ‘/home/user/Bureau/test.sh’

( le fichier batch doit avoir #! /bin/bash en 1ère ligne suivit d’une ligne vide et ensuite des commandes a exécuter – ce fichier dans les propriétés de celui-ci doit être exécutable « cocher pour activer »)

Désactiver la session Invité

sudo gedit  /etc/lightdm/lightdm.conf

Puis dans la section Seatdefaults ajouter la ligne suivante (à la fin)

allow-guest=false

sudo restart lightdm

Source : http://korben.info/comment-enlever-loption-de-session-invite-sous-ubuntu.html

Si à partir du CD live on veut lancer l’os d’un autre disk

chroot ./

Mettre l’attribut lecture à  « tout le monde » sur tous les fichiers de l’emplacement où l’on se trouve

-> chmode 644 *

( autre exemple : chmode 777 /var/www/html -> chmode sur le dossier html : ensuite le contenu créé héritera des droits du dossier html )

chmode:

Équivalent MS-DOS/MS Windows : cacls
Signification : change mode
Modifie les permissions d’accès à un fichier ou à un répertoire.

Télécharger un lien en http -> wget « nom du packet »

Trouver un packet installé -> dpkg -l liste les packets installés

Trouver un packet dont le nom contient « viewer »

-> dpk -l grep viewer

Installer un package téléchargé :

-> dpkg –i (pour installer) plus « nom du packet en .deb »

-> dpkg –r (pour retirer)

Désinstaller un package

-> commande apt-get remove –purge « nom du packet »

Exemple : apt-get remove –purge teamviever

Installer un package

apt-get install gnome-panel (installer gui style gnome »

Mise à jour des packets disponibles : apt-get update (mise à jour du catalogue)

Mise à jour des packets déjà installés : apt-get upgrade (force les maj)

(faire apt-get update et après apt-get upgrade)

« tuer » un process

Voir les process dont le nom contient vnc : ps aux |grep vnc

et ensuite kill « numéro de process »

Afficher la mémoire libre et utilisée

-> Commande : free lh ou free -h

Voir l’espace disque libre

-> df –h (ds : disk free)

Remarque

sous Thunderbird (client messagerie) le chiffrage des mails peut être fait avec le plug-in « enigmail » et la présence sur l’os ubuntu du packet  « gnupg2″

Sous ubuntu « remmina » est le client « partage de bureau »

pour installer un « serveur apache » sous ubuntu installer : apt-get install mysql-server phpmyadmin et configurer le serveur apache (base mysql administrateur de la base est le root)

( exemple : joomla sera donc a mettre en place sous ubuntu sur /var/www/html/joomla NB: après avoir créé le dossier « joomla » et donné des droits d’écriture dans ce dossier joomla )

( exemple sur le serveur apache local : localhost/joomla/installation/index.php pour configurer joomla sur le serveur web )

Utilitaire de contrôle à distance exemple : tightvnc viewer et tight serveur pour le serveur

(pour vnc : retirer le chiffrement de linux avec la commande dconf-editor et dans gnome-desktop-remoteaccess décocher « remote encryption»)

(pour accès via rdp de windows il faut installer l’interface xfce4)

sudo –i

apt-get install xrdp xfce4

exit

ensuite

cd /home/utilisateur/

gedit .xession et en fin de fichier mettre xfce4-session et fermer en enregistrant

dans « vino-preferences » lancer bureau à distance

Menu multiboot (ms windows et ubuntu) -> le menu de séléction de l’os via grub

 1- verification

Identifier si l’ordinateur démarre sur le disque dur en mode EFI

Cela n’est possible que si vous avez déjà installé Ubuntu sur le disque dur. Ou bien en regardant dans les réglages du BIOS (voir paragraphe ci-dessous).

Depuis une session Ubuntu installée sur le disque (à noter que ça fonctionne aussi pour une session liveCD ou liveUSB), il suffit d’ouvrir un terminal, et saisir la commande suivante:

[ -d /sys/firmware/efi ] && echo "Session EFI" || echo "Session non-EFI"

Remarque: si le démarrage est en mode classique (le résultat de la commande est « Session non-EFI »), soit le BIOS n’est pas de type UEFI, soit le BIOS est de type UEFI mais n’est pas réglé pour démarrer sur le disque dur en mode UEFI.
2- sauvegarder l’existant et mettre en place

Sauvegarder l’existant

  • Démarrer l’ordinateur. Sous Windows 8, redémarrer pour démarrer ensuite sous Ubuntu :
    • aller en bas à droite, périphérique, rester appuyer sur la touche Majuscule, choisir d’icône de mise sous tension, et choisir redémarrer
    • dans le menu sur fond blanc, choisir <à compléter>, et ensuite Ubuntu
  • Sous Ubuntu, faire une copie des fichiers EFI dans un terminal :
sudo cp -R /boot/efi/ ~/EFI_sauvegarde/
  • Vérifier les différentes copies (somme de contrôle md5) :
find /boot/efi/ ~/EFI_sauvegarde/ -name "*.efi" -exec md5sum {} \; | sort
    • On observe en général que /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi et /boot/efi/EFI/Boot/bootx64.efi sont identiques:
o    dbed1f7ed9e19e53bfc7f43122ce3d83  /boot/efi/EFI/Boot/bootx64.efi
o    dbed1f7ed9e19e53bfc7f43122ce3d83  /boot/efi/EFI/HP/boot/bootmgfw.efi
dbed1f7ed9e19e53bfc7f43122ce3d83  /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi
    • Le système Ubuntu peut utiliser shimx64.efi ou grubx64.efi pour démarrer, le premier étant compatible avec Secure-Boot, alors que le second ne l’est pas

Remplacer le programme d’amorçage standard

Toujours sous Ubuntu :

  • Renommer /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi en /boot/efi/EFI/Microsoft/Boot/bootmgfw_orig.efi :
sudo mv /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi /boot/efi/EFI/Microsoft/Boot/bootmgfw_orig.efi
  • Supprimer sous /boot/efi/ toutes les copies du programme EFI ayant la même somme de contrôle que /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi :
sudo rm /boot/efi/EFI/Boot/bootx64.efi
sudo rm /boot/efi/EFI/HP/boot/bootmgfw.efi
  • Copier le programme d’amorçage /boot/efi/EFI/ubuntu/shimx64.efi sous /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi :
sudo cp  /boot/efi/EFI/ubuntu/shimx64.efi /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi

/!\ il arrive parfois à windows de réécrire /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi en cas de mise à jour… Dans ce cas, recommencer les étapes décrites ci-dessus /!\

  • Redémarrer l’ordinateur.

A cette étape là, le bios UEFI de l’ordinateur démarrera sur grub, et grub ne pourra démarrer que le système Ubuntu, le programme d’amorçage de Microsoft ayant été supprimé.

Permettre le démarrage de Windows

Grub n’est plus en mesure de détecter correctement le programme d’amorçage de Windows car il n’est plus disponible sous son nom standard. Il faut donc lui permettre de retrouver le nouveau nom.

Solution 1

Principes : – Grub utilise la commande os-prober pour détecter les autres OS. Cette commande cherche un chemin standard pour détecter Windows. L’objectif est de modifier le résultat en sortie de cette commande pour tenir compte du renommage effectué plus tôt (bootmgfw.efi renommé en bootmgfw_orig.efi)

sudo os-prober

Le système Ubuntu étant régulièrement mis-à-jour, il faut que la modification opérée ne soit pas écrasée lors des mises-à-jour. Il faut donc créer un script supplémentaire, qui ne soit pas fourni par un paquet existant

  • Créer le script /tmp/za-windows8-hp
touch /tmp/za-windows8-hp ; sudo xdg-open /tmp/za-windows8-hp
  • Reseigner son contenu comme ceci :
#! /bin/sh
set -e

sed -i -e "s/item_in_dir bootmgfw.efi/item_in_dir bootmgfw_orig.efi/" /usr/lib/os-probes/mounted/efi/20microsoft

exit 0
  • Enregistrer le fichier et fermer l’éditeur de texte.
  • Créer le script /etc/kernel/postinst.d/za-windows8-hp :
sudo mv /tmp/za-windows8-hp /etc/kernel/postinst.d/za-windows8-hp
  • Il doit être rendu exécutable (même droits que le scripts /etc/kernel/postinst.d/zz-update-grub) :
sudo chmod ugo+x /etc/kernel/postinst.d/za-windows8-hp
sudo chown root:root /etc/kernel/postinst.d/za-windows8-hp
  • Exécuter le script une première fois (les fois suivantes, il sera exécuté lors de l’installation d’un nouveau noyau linux) :
sudo /etc/kernel/postinst.d/za-windows8-hp
  • Vérifier que le nom du programme EFI renvoyé par os-prober est bien le nom modifié (/EFI/Microsoft/Boot/bootmgfw_orig.efi) :
sudo os-prober
  • Mettre-à-jour les entrées de grub :
sudo update-grub
  • Redémarrer et tester le démarrage sous Windows.