Aggiungere a /etc/sysctl.conf le seguenti stringhe:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
ed eseguire come root:
sysctl -p
oppure riavviare il computer.
Aggiungere a /etc/sysctl.conf le seguenti stringhe:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
ed eseguire come root:
sysctl -p
oppure riavviare il computer.
E’ possibile installare VMware Workstation 10 su CentOS 7, pur non essendo al momento una distribuzione supportata ufficialmente, a patto di installare un paio di package extra e smanettare un po’ con i sorgenti del modulo vmnet di VMware.
In particolare, anche se l’installazione di VMware viene completata correttamente, non è possibile avviare il programma poiché il modulo kernel “vmnet”, necessario per il funzionamento della virtual network, non viene compilato a causa di una incompatibilità tra i sorgenti di vmnet ed i sorgenti del kernel.
Per installare WMware Workstation su CentOS 7 dobbiamo (come root):
yum update kernel
yum install gcc kernel-headers kernel-devel
Completata l’installazione, avviando VMware partirà il task di compilazione del modulo vmnet da inserire nel kernel, ma la compilazione fallirà e verrà creato un log con i dettagli dell’errore.
A questo punto viene il bello: bisognerà editare un file dei sorgenti di vmnet per correggere un paio di errori:
/usr/lib/vmware/modules/source
tar -xvf vmnet.tar
cd vmnet-only
vi filter.c
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 0, 0)
cd /usr/lib/vmware/modules/source
tar -uvf vmnet.tar vmnet-only
Con questa semplice modifica ora sarà possibile avviare VMware Workstation e far compilare correttamente vmnet.
Per individuare nel kernel in esecuzione la frequenza del timer degli interrupt va usato il comando:
albertoscotti@scorpius:~$ grep HZ /boot/config-`uname -r` CONFIG_NO_HZ_COMMON=y # CONFIG_HZ_PERIODIC is not set CONFIG_NO_HZ_IDLE=y # CONFIG_NO_HZ_FULL is not set CONFIG_NO_HZ=y CONFIG_RCU_FAST_NO_HZ=y # CONFIG_HZ_100 is not set # CONFIG_HZ_250 is not set # CONFIG_HZ_300 is not set CONFIG_HZ_1000=y CONFIG_HZ=1000 CONFIG_MACHZ_WDT=m
I valori che ci interessano sono quelli di CONFIG_HZ= e CONFIG_HZ_valore=, che nel mio caso sono settati a 1000.
Qualora sia presente la voce CONFIG_NO_HZ allora siamo in presenza di un kernel tickless dove la generazione degli interrupt avviene on-demand e non ad intervalli predefiniti di tempo.
Nel mio caso, essendo definito anche il valore CONFIG_NO_HZ_IDLE, ho un kernel in cui la generazione degli interrupt è mista: on-demand se il processore è idle e ogni 1000Hz se il processore è sotto carico.
Per gestire le partizioni XFS in Linux è necessario il pacchetto xfsprogs, mentre il pacchetto opzionale xfsdump contiene alcune preziose utility per controllare la frammentazione del filesystem e dei file.
Per verificare lo stato di frammentazione di un filesystem XFS lanciare il comando xfs_db e verificare il valore fragmentation factor:
# xfs_db -c frag -r mount_point
actual 288787, ideal 286616, fragmentation factor 0,75%
Nel mio caso il valore è molto basso, non è quindi necessario riorganizzare il filesystem.
E’ possibile controllare la frammentazione anche solo di singoli file, tramite il comando xfs_db:
# xfs_bmap -v nome_file_frammentato nome_file_frammentato: EXT: FILE-OFFSET BLOCK-RANGE AG AG-OFFSET TOTAL 0: [0..524159]: 499404728..499928887 1 (134240184..134764343) 524160 1: [524160..2097023]: 504064368..505637231 1 (138899824..140472687) 1572864 2: [2097024..27320671]: 542998144..568221791 1 (177833600..203057247) 25223648
In questo caso nome_file_frammentato ha 3 frammenti (extents).
Nel caso in cui invece il fragmentation factor sia consistente, io considero consistenti valori >= 20%, per deframmentare un filesystem XFS lanciare il comando:
# xfs_fsr -v -t 600 mount_point
oppure per deframmentare un singolo file:
# xfs_fsr -v nome_file_frammentato
SANE è uno dei progetti tra i più maturi nel mondo opensource e consente di utilizzare su Linux una quantità enorme di scanner costruiti da produttori differenti.
Alcuni scanner di recente produzione di Epson, tuttavia, non sono (ancora pienamente) supportati, come ad esempio il mio Perfection V37.
Epson, anche se non fornisce supporto per i suoi device se utilizzati sotto Linux, fornisce fortunatamente i driver per farli funzionari con le distribuzioni più diffuse: possono essere scaricati da http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX
Per usare lo scanner V37 sotto Ubuntu o Debian non dovremo fare altro che scaricare i pacchetti DEB core package, data package e iscan plugin package per l’architettura adatta, nel mio caso Debian7 su AMD64, ed installarli:
dpkg -i iscan_2.29.2-1~usb0.1.ltdl3_amd64.deb dpkg -i iscan_2.29.2-1~usb0.1.ltdl7_amd64.deb dpkg -i iscan-data_1.24.0-2_all.deb dpkg -i iscan-plugin-perfection-v370_1.0.0-2_amd64.deb
Installati i driver, inserite il cavo USB nel computer e verificate che lo scanner venga correttamente riconosciuto:
sane-find-scanner scanimage -L
questi comandi dovrebbero restituire qualcosa come “Found USB scanner (vendor=0x04b8 [EPSON], product=0x014a [EPSON Perfection V37/V370]) at libusb:001:002“: ora il vostro scanner è riconosciuto da Linux.
Buona scansione!
Accidenti! Mi sono dimenticato di impostare la lingua italiana per la tastiera durante l’installazione di Debian e ora non riesco a fare venire fuori underscore, chiocciole e punti e virgola vari!
Cosa devo fare?
Lancia, come root, il comando:
dpkg-reconfigure keyboard-configuration
Se anche a voi capita che il vostro DNS caching server basato di BIND non riesca più a risolvere gli indirizzi e nei log è presente un errore simile a:
Oct 26 18:37:10 squid named[1536]: error (no valid DS) resolving ‘www.google.com/A/IN’: 192.168.1.1#53
la causa è da ricercare nel fatto che l’upstream DNS non riesce a soddifare le richieste DNSSEC del nostro caching DNS: se potete, quindi, cambiate DNS upstream.
Per disattivare le query DNSSEC da BIND, è sufficiente rimuovere, o commentare, da named.conf l’opzione “dnssec-enable yes“.
E’ capitato a tutti di vedersi servire dalla cache di un server proxy, come ad esempio Squid, oggetti corrotti, incompleti oppure troppo vecchi.
E’ possibile eliminare dalla cache selettivamente questi oggetti indesiderati tramite l’utility squidclient, lanciata con il seguente comando:
squidclient -h <indirizzo server squid> -m PURGE <URL oggetto da eliminare>
Si tenga presente che non è possibile eliminare tutti i contenuti per un dato URL o sito, ogni oggetto va cancellato singolarmente.
dd if=file_ISO_debian_disco_1 of=device_USB bs=4M; sync
In Linux il supporto automatico al comando TRIM è stato introdotto dal kernel 2.6.33 per il filesystem ext4, tuttavia nella stragrande maggioranza dei casi non è attivo di default: prima di eseguire la procedura è quindi bene verificare di avere un kernel recente (anche un uname -a dovrebbe essere sufficiente).
Per attivare TRIM è necessario editare il file /etc/fstab per fare sì che al riavvio il filesystem venga montato con l’opzione discard:
/dev/sda2 / ext4 noatime,discard 0 1