Affichage des articles dont le libellé est Ligne de Commande. Afficher tous les articles
Affichage des articles dont le libellé est Ligne de Commande. Afficher tous les articles

vendredi 25 septembre 2020

jeudi 26 septembre 2019

nano dupliquer une ligne

nano est un éditeur de texte en ligne de commande plus intuitif que vi.
Voici deux commandes très utiles :

CTRL-k : permet de supprimer une ligne
CTRL-u : permet de rajouter la ligne qui vient d'être supprimée

Une combinaison des deux raccourcis permet de dupliquer ou déplacer une ligne de texte.

mardi 5 septembre 2017

Logs

Pour connaître les dernières connections sur un poste linux :

last​

Ou uniquement les dernier reboot :

last reboot

lundi 3 avril 2017

mysql - transfert de tables volumineuses

L'astuce suivante propose de déplacer une table volumineuse vers un autre serveur.


  1. Export des données sur le serveur source

    mysqldump --user=<mysql_user> -p <nom_base> <nom_table> > /chemin/grosfichier.sql
  2. Import des données sur le serveur cible

    mysql -h localhost -u <mysql_user> -p <nom_base> < /chemin/grosfichier.sql
On constate, en général, que le dump est très rapide mais la durée de l'import sera au prorata de la taille du fichier.

mercredi 8 février 2017

Utilisation de grep

La commande pour rechercher tous les fichiers PHP qui contiennent un bout de code, avec recherche récursive dans tous les sous-répertoires d'un projet :

grep -r --include "*.php" "<bout de code\"avec guillemets\">"

mercredi 1 février 2017

Créer une archive protégée par mot de passe

Pour réaliser une archive protégée par mot de passe en ligne de commande :

zip --password <mdp> secure.zip /chemin/* -r

En particulier, je compresse tout ce qui se trouve dans le dossier /chemin/ et de marnière récursive. Je place le tout dans un dossier secure.zip avec le mot de passe <mdp>.

lundi 5 septembre 2016

scp

Voici l'utilisation de l'outil scp pour copier un fichier sur un serveur en ligne de commande.

scp <mon_fichier> <user>@<serveur>:/<chemin>


dimanche 13 mars 2016

Ressource bloquée

Il y a quelques temps, je travaillais sur un disque virtuel crypté. Au moment de démonter le disque, le système m'avertit que ce dernier est bloqué par des processus. Voici la commande qui m'a permis d'identifier et de tuer les processus coupables :

lsof +D <chemin vers le disque occupé>

Cette commande me renvoie la liste des processus et leur précieux PID que l'on peut utiliser via la commande suivante :

kill <PID>

Ceci étant fait, je pouvais enfin démonter mon disque proprement.


mardi 1 mars 2016

Changer son mot de passe

Vous souhaitez changer de mot de passe mais le système vous refuse les mots de passe trop courts.
Comme souvent avec linux, quand ça passe pas, essaie avec sudo :

sudo passwd <login>

et ça passe ! Attention, cependant, au risque d'utiliser un mot de passe trop simple !


lundi 22 février 2016

winmail.dat

Comment exploiter le contenu d'un winmail.dat ?
Installez le paquet tnef et lancez la commande suivante :

tnef -f . winmail.dat

Cette commande va extraire le contenu dans le dossier du fichier winmail.


vendredi 1 janvier 2016

cryptsetup

Pour ouvrir un conteneur truecrypt avec cryptsetup

sudo cryptsetup --type tcrypt open /chemin/FICHIER nom

=> ceci crée une entrée "nom" dans /dev/mapper/
Ensuite, il faut monter l'entrée :

sudo mount /dev/mapper/nom /mnt/dossier

attention /mnt/dossier doit exister au préalable !

démonter :

sudo umount /mnt/dossier
sudo cryptsetup close /dev/mapper/nom

dimanche 13 septembre 2015

Manjaro - impression d'écran

Par défaut dans manjaro, la touche print screen n'est pas utilisé. Pour l'associer à l'outil de capture d'écran, c'est assez simple :

Menu paramètres > Clavier > Onglet Raccourcis Clavier > ajouter.

Là, on écrit l'une des commandes suivantes au choix :
 xfce4-screenshooter (lancer la fenêtre de capture d'écran)
 xfce4-screenshooter -f (capturer tout l'écran)
 xfce4-screenshooter -w (capturer la fenêtre active)
 xfce4-screenshooter -r (capturer une région)
 xfce4-screenshooter -s /tmp (enregistrer le fichier dans le répertoire /tmp)
ensuite on associe cette commande à la touche print screen.




samedi 12 septembre 2015

util-linux

Comment connaître l'UUID d'une partition disque ?

Installez util-linux

sudo pacman -S util-linux
sudo apt-get install util-linux

et puis testez :

sudo blkid

Vous avez la liste de vos disques et leur UUID.

vendredi 5 juin 2015

SELinux sur CentOS

J'ai récemment migré un site php sous apache hosté sur un serveur Ubuntu vers un serveur CentOS.

Le premier problème rencontré après ma migration vers CentOS a été l'upload de fichiers qui ne fonctionne plus.
Pourtant, après avoir vérifié sur le web, les droits de mon répertoire d'upload étaient bien ajustés :

sudo chown apache:apache /var/www/upload_dir
sudo chmod 774 /var/www/upload_dir


Rien à faire, j'ai toujours un « permission denied » dans mon /etc/httpd/logs/ssl_error_log …

Que s'est-t-il passé ? La gestion traditionnelle des droits sur les répertoires est soumises à SELinux (Security-Enhanced Linux). Le principe est que les utilisateurs et les applications peuvent changer les droits d'accès aux répertoires du serveur et pas toujours de la bonne manière. L'administrateur ne peut contrôler tous ces changements de droits.

SELinux va donc recouvrir tous les dossiers du serveur par un niveau ré-haussé de sécurité. Par exemple, il va interdire les accès autres que lecture seule pour http (apache) dans mon /var/www/.

On peut changer le statut de SELinux en modifiant /etc/selinux/config (selinux=enfocing, permissive ou disabled) ou en écrivant

Setenforce 0

Cette commande va permettre de désactiver SELinux mais ne résiste pas à un reboot. Si on modifie le fichier /etc/selinux/config, ça résiste à un reboot.

Passer en disabled ou permissive permet de retrouver l'accès écriture à mon dossier et donc l'upload des fichiers fonctionne à nouveau. Le problème, c'est qu'on perd l'avantage de SELinux.

Comment configurer le système pour ouvrir les droits d'écriture sur certains répertoires (/var/www/upload_dir) et pas sur le reste ?
Voici quelques commandes utiles de SELinux.

Tout d'abord, on peut afficher le « contexte SELinux » associé à un fichier :

ls -Z /var/www/index.php

=> -rw-r--r--  username username system_u:object_r:httpd_sys_content_t /var/www/html/index.html

system_u:object_r:httpd_sys_content_t nous renseigne sur le contexte SELinux sous le format utilisateur:rôle:type:mls. (mls n'est pas affiché)

On peut tester cette commande sur quelques fichiers du serveur pour mieux cerner son fonctionnement.
Pour résumé, apache (httpd_t) peut lire des fichier de type httpd_sys_content_t. Par exemple, apache ne pourrait pas lire un fichier dans le home d'un utilisateur.

Comment modifier le contexte des fichiers ?

chcon -v --type=httpd_sys_content_t /var/www/newfile.php

En récursif :

chcon -vR –type=httpd_sys_content_t /var/www/newdir

Finalement, voici le type qu'on va appliquer aux fichiers dans lesquels on souhaite uploader des fichiers :

chcon -vR unconfined_u:object_r:httpd_sys_rw_content_t:x0 /var/www/upload_dir

Maintenant qu'on a ouvert l'accès à l'upload de fichier, il reste à faire ça correctement en modifiant le code php pour :

  1. vérifier que l'extension du fichier est dans une « white list » (gif, jpg, png, pdf, doc, etc.) ;
  2. vérifier que le type du fichier correspond bien à ce que son extension prétend être.

vendredi 22 mai 2015

Nettoyer son pc - fichier de sauvegarde

voici une petite ligne de commande utile pour retrouver les fichiers de sauvegarde qui ont tendance à s'accumuler sur le pc. Exemple : test.php~.

find /chemin/ -name '*~'

samedi 25 avril 2015

eg - exemples à suivre

Comment obtenir de l'aide sur l'utilisation d'une commande linux ?? Je vous renvoie vers cet article de l'excellent Korben pour comprendre ce qu'est eg.

Voici en résumé, les commandes a entrer pour installer eg.

sudo apt-get install python-pip (j'ai également vérifié l'existence de python-dev et build-essential)

sudo pip install eg

Voila, c'est pas plus compliqué. Il suffit de tester :

eg top

N'oubliez pas le CTRL+Z pour sortir du mode "exemple".


mardi 4 novembre 2014

Changer de clavier

Le défi du jour : changer de clavier en ligne de commande. Fort utile sur un serveur configuré en clavier us.
C'est simple :

sudo loadkeys be

lundi 3 novembre 2014

Changer d'adresse ip

Voici une utilisation du paquet ifconfig qui permet de changer d'adresse ip en une ligne :

sudo ifconfig eth0 192.168.1.234 netmask 255.255.255.0 up 

vendredi 19 septembre 2014

Ripper un CD

Ripper un cd en ligne de commande.
Installez ce paquet :

sudo apt-get install cdda2wav

et utilisez ensuite cette commande :

CDDA_DEVICE=/dev/cdrom cdda2wav (ou cdda2mp3)

Simple, efficace.