Composer est un manager de dépendance pour le php. Il est inspiré de npm pour le node ou bundler pour le rails. Pour l’installer sur votre distribution préférée, procéder comme suit :
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
alias composer='/usr/local/bin/composer'
Maintenant la commande composer est disponible 🙂
Il vient de m’arriver la chose suivante :
Mon serveur web tournait bien. Son CPU était peu utilisé, avec un load average de 0.05.
Ses connexions réseaux étaient très peu nombreuses.
J’ai donc suspecté une activité malicieuse en provenance d’une des adresses IP, l’autre étant de confiance.
J’ai donc voulu bannir une adresse IP, pour voir si cela corrigeait mon problème.
Sous Debian-like, entrez :
iptables -I INPUT -s IP_source -j DROP
Pour bannir une adresse IP sur tous les services, sur tous les ports.
Pour bannir une IP sur des services en particulier, ici les services web, entrez:
iptables -I INPUT -s IP_source -p tcp --dport 80,443 -j DROP
Devinez quoi ? Cela a résolu mon problème !
Ils sont relous ces scripkiddies !
Monaco, est une police très appréciée des développeurs. C’est une police créé par Apple, hélas…
Pour l’installer sur Ubuntu, faites simplement :
curl -kL https://raw.github.com/cstrap/monaco-font/master/install-font-ubuntu.sh | bash
Si vous avez perdu votre mot de passe admin, vous pouvez le redéfinir avec les commandes SQL suivante :
UPDATE sys_user SET passwort = md5('admin') WHERE username = 'admin';
La requête SQL remet le mot de passe administrateur à « admin », et elle doit être exécutée dans la base de donnée ISPConfig avec phpmyadmin par exemple.
Si vous n’avez pas phpmyadmin d’installé, voici comment exécuter la requête à travers l’invite de commande mysql:
Se logger sur la base de donnée mysql :
mysql -u root -p
Entrer le mot de passe root mysql, puis utiliser la base de donnée ISPConfig :
use dbispconfig;
Puis,
UPDATE sys_user SET passwort = md5('admin') WHERE username = 'admin';
Fermer en entrant
quit;
Ou le raccourcis Ctrl + D
Sceptique au début, j’ai fini par m’y mettre. Zsh est un shell plus intelligent que bash, il faut bien le reconnaître.
Voici comment l’installer et l’utiliser:
sudo apt-get install zsh
On peut l’utiliser en tapant la commande zsh, mais on peut aussi le définir comme shell par défaut avec la commande suivante :
chsh
On vous demande alors quel shell utiliser, ce à quoi vous devez répondre /bin/zsh
Maintenant il faut le configurer pour avoir tout un tas de raccourcis, et des thèmes super jolies. Pour cela on va utiliser ohmyzsh.
Pour l’installer, il faut d’abord disposer des outils nécessaire à l’installation :
sudo apt-get install git curl
Puis, télécharger et installer ohmyzsh.
curl -L http://install.ohmyz.sh | sh
chsh -s `which zsh`
Redémarrez et admirez le résultat.
Pour finir vous pouvez ajouter des plugins et des thèmes en éditant le fichier .zshrc et en replaçant la ligne :
ZSH_THEME="sorin"
avec le thème de votre choix, et la ligne
plugins=(git common-aliases debian )
pour ajouter les plugins de votre choix.
La liste des plugins est disponible ici, et la liste des thèmes et disponible là.
Certaines boites mails sont plus permissives que d’autres.
Par exemple Gmail permet de joindre des fichiers jusqu’à 25 Mo, mais les boites mails comme hotmail et outlook, permettent d’envoyer des pièces ne dépassant pas 10 Mo.
Pour joindre des fichiers plus important, il est recommandé d’utiliser un service de stockage en ligne, comme Drive ou Dropbox.
Quand on a besoin de fichiers factices, on peut en créer avec la commande touch, mais cela créé un fichier vide :
touch toto.pdf du -sh * 0 toto.pdf
Pour cela, on va plutôt utiliser la commande fallocate comme suit :
fallocate -l 5M toto.pdf
Ce matin, lorsque j’ai voulu faire mes mises à jour (apt-get update), j’ai eu droit à ce message sympa :
Lecture des listes de paquets... Erreur ! E: Encountered a section with no Package: header E: Problem with MergeList /var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_trusty-security_main_i18n_Translation-en E: Les listes de paquets ou le fichier « status » ne peuvent être analysés ou lus.
Pas de quoi s’affoler, il suffis d’entrer les deux commandes suivantes :
sudo rm /var/lib/apt/lists/* -vf sudo apt-get update
Et c’est réparé 🙂
[source]
Le flac, c’est le mieux que l’on puisse trouver pour écouter du son. C’est un format lossless, soit sans perte de qualité.
Mais pour écouter les morceaux que l’on vient de télécharger comme un gros porc d’acheter, ce n’est pas toujours possible.
Il suffis d’installer et d’utiliser le meilleur encoder du monde, lame.
Installer lame
$ sudo apt-get install lame
Aller dans le dossier des flacs
$ cd mondossier
Puis
$ for file in *.flac; do flac -cd "$file" | lame -h - "${file%.flac}.mp3"; done
Quand une adresse mail se fait dérober son mot de passe, et que du coup cette même adresse remplie la file d’attente d’envoi de message, il faut nettoyer tout ça, sans perdre les autres message.
mailq | tail -n +2 | awk 'BEGIN { RS = "" } / michel@toto.fr/ { print $1 }' | tr -d '*!' | postsuper -d -
Et remplacez michel@toto.fr par l’adresse mail du noob au mot de passe weak.
Voici un petit pense bête pour ajouter une route par défaut :
sudo route add -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.2.2
Avec ici :
Atom, est un éditeur de texte libre made in Github. De nombreux plugins existent, et de nombreux autres sont attendus. Ne cherchez pas plus loin, c’est l’éditeur de code du futur.
Pour l’installer sur votre distribution préférée, procéder comme suit :
sudo add-apt-repository ppa:webupd8team/atom sudo apt-get update sudo apt-get install atom
Et vous aurez en bonus les mises à jour.
Je voulais établir une connexion VPN entre un boitier DDWRT WRT54GL v1.1 et un serveur openvpn externe.
L’idée de base était d’encapsuler les connexions et que les stations clientes passent automatiquement par le tunnel VPN.
La connexion s’établissait bien, même coté serveur, les logs me confirmaient une authentification réussie.
Seulement coté client, un annoncé qu’il était impossible de créer l’interface tun0, du à une erreur de chemin.
Après quelques recherches, j’ai compris que le système de fichier était chrooté dans /tmp et que pour faire fonctionner il fallait installer JFFS2.
Cela étant, j’ai donc tenté un upgrade avec le firmware que l’on trouve ici.
Il en a résulté la del clignotante annonçant le décét du boitier.
Heureusement, l’astuce consistant à court circuiter a fonctionné, alors que toutes lueurs d’espoir avaient disparues.
Dans la structure de fichier de la solution Zimbra, les messages ne sont pas enregistrés dans un répertoire portant le nom de l’adresse mail, mais dans un dossier nommé par l’identifiant de l’adresse.
Commencez par vous logger avec l’utilisateur zimbra :
su zimbra
Puis,
zmprov getMailboxInfo utilisateur@mondomaine.fr
vous retournera quelque chose du genre :
mailboxId: 83 quotaUsed: 410317688
Le problème est le suivant :
On a récupéré un message dans les sauvegardes.
mail-important.msg
On l’a déplacé dans l’arborescence de Zimbra
mv mail-important.msg /opt/zimbra/store/0/[id_user]/msg
Remplacer [id_user] par l’identifiant de votre utilisateur.
Pourtant le message n’est toujours pas visible par l’utilisateur.
En effet, il faut mettre à jour la base de donnée de Zimbra pour que tout fonctionne.
Il suffis d’entrer la commande suivante :
zmmailbox -z -m user@mondomaine.fr addMessage Inbox mail-important.msg
Je sais le faire avec mv !
Avec mv, il est possible de le faire, mais il faut soit passer par un script, soit taper une ligne de commande longue comme la bible.
L’outil dont je vais vous parler s’appelle mmv.
mmv n’est pas présent pas défaut sur Debian / Ubuntu. Il vous faudra l’installer :
# apt-get install mmv
Créons un répertoire de test pour se familiariser avec la commande
$ mkdir test
$ cd test
Créons un ensemble de fichier simulant un répertoire d’image :
$ touch photo{1..20}.JPG
$ ls photo10.JPG photo12.JPG photo14.JPG photo16.JPG photo18.JPG photo1.JPG photo2.JPG photo4.JPG photo6.JPG photo8.JPG photo11.JPG photo13.JPG photo15.JPG photo17.JPG photo19.JPG photo20.JPG photo3.JPG photo5.JPG photo7.JPG photo9.JPG
Si l’on veut renommer toutes ces photos en quelque chose qui ressemble à Photo-N.jpg, il suffis de procéder ainsi :
$ mmv "photo*.JPG" "Photo-#1.jpg"
$ ls Photo-10.jpg Photo-12.jpg Photo-14.jpg Photo-16.jpg Photo-18.jpg Photo-1.jpg Photo-2.jpg Photo-4.jpg Photo-6.jpg Photo-8.jpg Photo-11.jpg Photo-13.jpg Photo-15.jpg Photo-17.jpg Photo-19.jpg Photo-20.jpg Photo-3.jpg Photo-5.jpg Photo-7.jpg Photo-9.jpg
Le signe * représente toujours le caractère jocker, et le #1 représente le premier jocker.
Ouais l’explication n’est pas très claire, c’est pour cela que j’ai fait un bel exemple.
Si l’on désire renommer les fichiers avec 2 paramètres, :
$ mmv "*-*.jpg" "#1(#2).jpg"
$ ls Photo(10).jpg Photo(12).jpg Photo(14).jpg Photo(16).jpg Photo(18).jpg Photo(1).jpg Photo(2).jpg Photo(4).jpg Photo(6).jpg Photo(8).jpg Photo(11).jpg Photo(13).jpg Photo(15).jpg Photo(17).jpg Photo(19).jpg Photo(20).jpg Photo(3).jpg Photo(5).jpg Photo(7).jpg Photo(9).jpg
Ceci a changé ma vie.
KMail peut tirer parti du filtre anti-spam Bayesien Bogofilter.
Il est recommandé de transférer les messages non-sollicités dans un dossier Pourriel plutôt que directement dans la corbeille, afin de vous permettre de vérifier de temps en temps que des messages importants n’aient pas été identifiés comme spam par erreur.
Vous pouvez ensuite configurer les propriétés du dossier Pourriel (clic droit sur le dossier, puis Faire expirer) pour qu’il se vide automatiquement au bout de x jours.
Dans un premier temps, il faudra une phase d’apprentissage à Bogofilter, où vous devrez lui indiquer quels sont les messages à classer comme non-sollicités et quels sont ceux à classer comme sollicités. Faites un clic droit sur le ou les messages en question (évitez de le faire un à un, sélectionnez-en plusieurs en maintenant CTRL enfoncée), puis Appliquer les filtres > Classer comme message (non-)sollicité, ou sélectionnez le message et cliquez sur une des deux icônes Classer comme (non-)sollicité sur la barre d’outils.
Vous pouvez configurer plus finement les filtres dans le menu Configuration > Configurer les filtres.
Pour plus d’information sur Bogofilter, vous pouvez consulter la FAQ Bogofilter.
Lorsque j’ai eu ce message en lançant un import de base de donnée, je me suis dit que le serveur MySQL avait carrément planté, ou que le fichier SQL était corrompu.
En fait cela est du à un dépassement des limites fixées dans le fichier de configuration /etc/mysql/my.cnf
Pour fixer cette erreur, éditez ce fichier avec les droits super utilisateur,
sudo nano /etc/mysql/my.cnf
et modifiez la ligne
max_allowed_packet=64M
en remplaçant 64M par la valeur de votre choix.
J’avais l’habitude d’extraire des tar.gz mais l’export natif de MySQL créé des .sql.gz
gzip -d export.sql.gz
Cela va vous décompresser l’archive et créer le fichier SQL dans le répertoire courant.
Pour plus d’info, faite man gzip
Dans la lignée des mémentos Mysql, voici comment ajouter un utilisateur à Mysql.
Se connecter en tant que root :
mysql -u root -p
Taper le mot de passe root, puis entrez
grant all privileges on *.* to 'utilisteur'@'hote' identified by 'mot_de_passe';
C’est la rentrée, et pour recommencer à travailler, voici LE meilleur éditeur de texte du monde, je vous présente Sublim Text 3 :
Pour l’installer sur votre distribution préférée qui ne peut être qu’Ubuntu, tapez simplement :
sudo add-apt-repository ppa:webupd8team/sublime-text-3 sudo apt-get update sudo apt-get install sublime-text-installer
Bonne année à vous !
Cette astuce est utile pour corriger l’erreur qui dit
“username is not in the sudoers file. This incident will be reported”
J’ai eu cette erreur en voulant ajouter le groupe www-data à mon utilisateur.
J’ai voulu le faire en tapant la commande suivante :
usermod -G www-data sheebypanda
Mais j’ai oublié de mettre l’option -a pour dire qu’il faut l’ajouter sans écraser les autres.
Sinon votre utilisateur ne fera parti que du groupe passé en commande.
Il est alors impossible pour l’utilisateur de passer super-utilisateur car il n’est plus présent dans le fichier sudoers, il ne fait plus parti du groupe admin, etc…
Alors voila comment tout remettre bien.
Commencez par redémarrer en mode de secours, puis lancer un terminal root et entrez cette commande en l’adaptant pour vote utilisateur :
usermod -a -G adm,cdrom,sudo,dip,plugdev,lpadmin,sambashare sheebypanda
Redémarrez et appréciez.
[Source]
sudo apt-get install apache2 php5 mysql-server libapache2-mod-php5 php5-mysql
Pif Pouf.
Pour sauvegarder son serveur, c’est souvent un peu chiant d’exporter les bases de données. Lorsqu’on utilise un outil comme backupPC, on est obligé de faire un peu de tuning plus ou moins propre.
Heureusement qu’un outil hyper simple est disponible pour sauvegarder chaque jour, chaque semaine, et chaque mois ses bases de données MySQL : AutoMysqlBackup
(suite…)
Lorsque l’on veut démarrer virtualbox, et que l’on obtient une fenêtre pareille avec le message d’erreur suivant :
Kernel driver not installed (rc=-1908) The VirtualBox Linux kernel driver (vboxdrv) is either not loaded or there is a permission problem with /dev/vboxdrv. Please reinstall the kernel module by executing '/etc/init.d/vboxdrv setup' as root. If it is available in your distribution, you should install the DKMS package first. This package keeps track of Linux kernel changes and recompiles the vboxdrv kernel module if necessary.
$ sudo apt-get install linux-headers-$(uname -r) $ sudo /etc/init.d/virtualbox start
Quand on migrez un WordPress, et qu’aucun lien ne fonctionne, d’habitude, on va dans la page d’admin et on reformate les permaliens.
Quand la page d’admin est aussi inaccessible, on doit souvent corriger le fichier htaccess qui se trouve à la racine du site.
(suite…)
Je ne retiens jamais cette option, car le zip ne vaut pas le targz :
zip -r monzip.zip repertoire/à/archiver
C’est facile !
sudo apt-get install pdftk
puis
pdftk fichier1.pdf fichier2.pdf cat output fichier-fusionné.pdf
Beaucoup d’article traite le sujet dans le détail, c’est pour cela que je vous propose une
# myisamchk -r /var/lib/mysql/MaBase/MaTable
Remplacez MaBase et MaTable par le nom de la base et de la table qui pose problème, indiqués dans le message d’erreur.
Voici une vidéo rapide qui explique les bienfaits de l’utilisation de l’OpenData :