Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

La linea di comando indispensabile per LAMP

Link copiato negli appunti

Per molti programmatori LAMP, il rapporto con la componente server (e la componente Linux) può non essere così scontato. In fondo, i CMS di nuova generazione permettono di eseguire via browser operazioni, come l'aggiornamento del sistema, il backup del database o la manutenzione ordinaria, che fino a pochi anni fa erano possibili solo attraverso la mediazione di strumenti come FTP o SSH.

Tuttavia, conoscere i rumendi della linea di comando, l'approccio nativo dei sistemi Unix-like, può essere utile in svariate situazioni. Di seguito ho raccolto alcuni comandi molto semplici e assolutamente indispensabili, che non dovrebbero mancare nel background di nessun LAMPer. Se ve ne vengono in mente altri segnalaterli nei commenti!

Backup e ripristino del database

mysqldump permette di ottenere un dump (o copia) del database in formato SQL. L'uso è molto semplice:

Prima di prodere vi verrà  chiesta la password del database per l'utente DB_USER gzip mysqldump

Per ripristinare il database mysql zcat cat

zcat db_backup.sql.gz | mysql -u DB_USER -p DB_NAME

Trova e sostituisci

Questo comando mi è stato molto utile in diverse situazioni, in pratica consiste del sostituire una stringa con un altra all'interno di uno stream di testo. Per esempio è utile se cambiamo server o dominio ad un sito fatto con WordPress, perché con un solo comando sostituiamo tutti i riferimenti al vecchio dominio con il nuovo.

zcat db_backup.sql.gz | sed -e 's/127.0.0.1/www.domain.tld/g' | gzip -9 > new_db_backup.sql.gz

Dov'è quella funzione?

Ammettiamo di avere una directory con 30 file PHP e di cercare quali chiamano la funzione pippo()

grep -n -i 'pippo(' *.php

In pochi attimi otterremo la lista dei file che contengono pippo(

Mettere a posto i permessi dei file

Una cosa noiosa di Apache è il messaggio Access denied apache www-data

Due semplici comandi eseguiti nella root del sito metteranno a posto tutti i permessi, i cui valori dovranno essere adattati alla situazione locale con particolare attenzione alla sicurezza.

find . -type d -exec chmod 750 {}\\;
find . -type f -exec chmod 640 {} \\;

Cancellare i vecchi file

Vogliamo cancellare i file più vecchi di 30 giorni o di 5 minuti? Nessun problema!

find /var/www/store/spool/ -type f -mtime +30 -exec rm -f {} \\;
find /var/www/store/cache/ -type f -mmin +5 -exec rm -f {} \\;

Se qualcosa non fosse chiaro man nomecomando man mysqldump Linuxmanpages.com

Quelli presentati qui sopra sono una parte molto piccola di cià che è possibile fare da linea di comando come supporto ad una applicazione LAMP, ma già  dovrebbero far capire quanto questo approccio sia premiante per la gestione delle risorse e la manutenzione.

Ti consigliamo anche