Visualizzazione post con etichetta linux. Mostra tutti i post
Visualizzazione post con etichetta linux. Mostra tutti i post

lunedì 3 maggio 2010

/bin/rm: Argument list too long

Sarà pure da niubbo ma non lo sapevo.....
se bisogna eliminare una lunga lista di files da linea di comando in linux e appare l'errore:
/bin/rm: Argument list too long, si può utilizzare find e la pipe a xargs e se ci sono spazi si può utilizzare l'argomento -print0 in find e -0 in xargs.
find . -iname "*.doc" -print0 | xargs -0 rm
Funziona, ho appena cancellato 30 Gb di files temporanei...

mercoledì 14 aprile 2010

Aggiornamento a lucid e plugin flash

Ho aggiornato un po' avventatamente una ubuntu lts a lucid.... e mi sono trovato con l'impossibilità di continuare gli aggiornamenti a causa di un problema al pacchetto del plugin di flash..,. rimaneva in uno stato incoerente e non c'era verso di proseguire.
Ho risolto facendo così:
aptitude download flashplugin-nonfree flashplugin-installer (che mi ha scaricato i pacchetti deb)
dpkg --force-overwrite --install (i due pacchetti scaricati)
ho potuto così continuare gli aggiornamenti.
che stress...

mercoledì 21 ottobre 2009

Incorporare sottotitoli a video avi

Purtroppo sembra essere defunta la mia freevobox che utilizzavo per gustarmi films ed altro in tv.
Per poter seguire le mie serie preferite (Big Bang Theory, Legend of Seeker, ed altro) ho dovuto collegare un portatile alla tv, e la cosa è molto scomoda da fare in continuazione. Visto che ho un lettore DVD-Divx posso sempre farmi dei dvd (abitudine tra l'altro abbandonata) per vedere i filmati senza sbattimenti. Un problema però c'è: ho bisogno dei sottotitoli in quanto le mie serie tv preferite o non sono ancora trasmesse in Italia (Legend of the Seeker, consigliatissimo) oppure hanno un doppiaggio da far rizzare i capelli (Big Bag Theory), ed il mio lettore dvd non li supporta.
La soluzione è quella, in attesa di ripristinare la freevobox, di incorporare i sottotitoli nei file avi così da evitare continui collegamenti e scollegamenti del portatile alla tv.
Ho provato vari software, ma il più pratico e veloce mi è sembrato mencoder.
Ecco un esempio di come ottenere il risultato voluto:

mencoder -oac copy -ovc xvid -xvidencopts fixed_quant=3 -sub Legend.Of.The.Seeker.s01e13.srt -subfont-text-scale 3 -subalign 2 -o test.avi Legend.of.the.Seeker.S01E13.avi

in sintesi i parametri passati a mencoder:
-oac copy (copia il flusso audio)
-ovc xvid -xvidencopts fixed_quant=3 (converti il video in xvid con qualità da 1 a 5)
-sub file dei sottotitoli da inserire
-subfont-text-scale la dimensione dei font da 1 a 5
-subalign dove posizionare il sottotitolo 0 in alto, 1 al centro, 2 in basso
-o file di destinazione
il file sorgente

Da notare che dalle prove che ho fatto non è possibile passare -ovc copy (che avrebbe risparmiato tempo) in quanto il filmato finale non incorpora i sottotitoli.
Per alcuni, il fatto di essere un programma a linea di comando può rappresentare un limite.
Per utilizzare un programma ad interfaccia grafica si può andare su avidemux, a mio parere più lento di mencoder.
Dimenticavo, sia mencoder che avidemux sono disponibili per Linux, Mac e Windows, e qui tutto lo scibile sulle opzioni di mencoder sui sottotitoli

martedì 6 ottobre 2009

sudo: timestamp too far in the future!


D'accordo, me la meritavo: ho pasticciato un po' troppo con le date....
La mia linuxbox che uso come mediacenter collegata ad un televisore
(ha su freevo) non mi consentiva più di fare sudo.
Il messaggio era:
sudo: timestamp too far in the future .....
Non avevo creato altri utenti, si poteva accedere solo tramite ssh e solo con quell'utente.
Per fortuna non avevo disabilitato root e ho potuto fare su - per loggarmi come root.
I metodi per resettare il timestamp 'sudo -k' o 'sudo -K' funzionavano una cippa.
Da qualche parte però era segnato il timestamp di sudo, bisognava solo trovarlo.
Dopo un po' di ricerche eccolo in /var/run/sudo
Rimuovendo la directory (rm -rf /var/run/sudo/username) si tornava al familiare messaggio iniziale che si ha la prima volta usando sudo:

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.

Password:

Tutto è bene ciò che finisce bene!
P.S.
L'immagine è proprio il modello di dvd player che ho sventrato per metterci il computer e collegarlo alla TV

mercoledì 26 agosto 2009

Stampante samba e cpu al 100%

Nel caso in cui utilizzando una stampante condivisa tramite samba il client (windows) non riesca a stampare e la cpu del server schizzi al 100% senza mai scendere (neanche riavviando il daemon smbd), occorre:
eliminare il file tdb dalla cache di samba.
Nel mio caso la stampante che faceva i capricci si chiamava PDF e quindi ho eliminato
/var/cache/samba/printing/PDF.tdb

venerdì 7 agosto 2009

Capricci dhcp

Un server ubuntu non riusciva ad ottenere un ip prestabilito (da un server dhcp Windows) in base alle regole stabilite per il suo mac adddress.
Nei log del server dhcp risultava il mac address, ma l'indirizzo non era mai quello voluto.
Ho messo mano per la prima volta in vita mia al file /etc/dhclient.conf.
Inserendo la stringa:
send dhcp-client-identifier xx:xx:xx:xx:xx:xx:xx;
(dove le xx rappresentavano il mac address) il server dhcp finalmente assegnava l'ip desiderato.
Devo ammettere che dhclient.conf contiene anche altre cosette interessanti.

sabato 27 giugno 2009

MacBook Pro Ubuntu: NetworkManager - wifi -dhcp

Ho installato l'ultima ubuntu (9.04) a 64 bit su un MacBook Pro, che convive allegramente con Mac OS X. Ho avuto difficoltà nell'utilizzare la scheda wireless (una Broadcom): si associava all'access point, ma non otteneva poi l'indirizzo.
Tra le varie prove che ho fatto per porre rimedio una ha funzionato: disattivare apparmor (croce e delizia di questa distribuzione).
Le soluzioni a questo punto erano due: disattivare apparmor o cercare un fix.
Una rapida ricerca ha portato al bug #342235 in cui è indicata la soluzione.
Con i permessi di root occorre:
  • modificare il file /etc/apparmor.d/sbin.dhclient3
  • posizionarsi nella sezione dove si trova "/usr/lib/NetworkManager/nm-dhcp-client.action"
  • inserire sopra a "/usr/lib/NetworkManager/nm-dhcp-client.action mr," la stringa "/var/run/dbus/system_bus_socket w,"
  • salvare e chiudere il file,
  • riavviare apparmor (/etc/init.d/apparmor restart) o riavviare il computer.
Ecco come deve apparire la sezione modificata:
/usr/lib/NetworkManager/nm-dhcp-client.action {
#include <abstractions/base>
#include <abstractions/dbus>
/var/run/dbus/system_bus_socket w,
/usr/lib/NetworkManager/nm-dhcp-client.action mr,
}
Ora la scheda wireless funziona senza problemi con NetworkManager.

domenica 31 maggio 2009

rsync di cartelle windows su linux

Ho avuto bisogno di fare delle copie sincronizzate e periodiche di un server nt su un server linux (red hat) ed ho messo in crontab questo script:


#!/bin/sh

if df | grep -q -w /mnt/nt

then

echo "nt C$ gia' montato"

else

mount -t smbfs -o username=nt\\administrator,password=password,ro //nt/c\$ /mnt/nt &> /dev/null

echo "nt C$ montato ora"

fi

#ricontrolliamo prima di iniziare rsync

if df | grep -q -w /mnt/nt

then

echo "inizio backup "

rsync -avz --delete /mnt/nt/Program\ Files/IBM/* /home/nt/IBM/

echo "smonto le condivisioni...."

umount /mnt/nt

echo "terminato"

else

echo "errore nel montare nt C$"

fi

umount /mntnt

Particolarmente interessante è:

if df | grep -q -w (punto di mount)

che restituisce true o false a seconda che la condivisione sia montata o meno....

giovedì 21 maggio 2009

Installazione openPMA


Da qualche anno sono un felice possessore di un Archos PMA400, un Personal Digital Assitant - Portable Media Player linux based (Linux Qtopia), hard disk 30 GB, wifi e tante altre belle cosette (un antesignano dell'iPod Touch, insomma). Ora è fuori produzione. Essendo basato su linux, naturalmente è stata creata una versione "community" che implementa e migliora il s.o. presente sul dispositivo. Ho deciso di sostituire il s.o. fornito dalla Archos con openPMA.
La procedura è stata abbastanza semplice ed indolore:
basta seguire le istruzioni contenute nell'official openPMA installation guide per installare ed integrare con le applicazioni già presenti openPMA.
Per prima è necessario scaricare ed installare il bootloader alternativo qui.
Avvenuta l'installazione del package nel PMA400 del boothack si lancia l'applicazione dal tab Impostazioni e si preme OK (è possibile anche fare il restore del bootloader ufficiale successivamente).
Si scarica e scompatta su un computer l'ultima versione di openPMA (giraffe).
Si spegne il palmare, lo si collega spento al computer tramite il cavo usb e finalmente lo si accende.
Si può procedere ora in due direzioni.
la prima, avendo sufficientemente spazio libero (6 GB):


  1. si esegue il chkdsk del disco

  2. lo si deframmenta

  3. ci si reca nella cartella System

  4. si rinomina aimage.img (il s.o.) ad esempio in aimage.archos

  5. si copiano i files aimage.img e openpma.img scaricati da opempma.org in questa cartella.
La seconda invece consiste:


  1. backup completo dei dati presenti sul palmare

  2. formattazione in fat32 del palmare

  3. si scompatta e si copia nel palmare formattato il PMA400 recovery già presente nell'archos ma comunque scaricabile dal sito di Archos

  4. ci si reca nella cartella System

  5. si rinomina aimage.img (il s.o.) ad esempio in aimage.archos

  6. si copiano i files aimage.img e openpma.img scaricati da opempma.org in questa cartella.

  7. se si vuole mantenere eventuali programmi installati precedentemente sul palmare copiare in questa cartella il file progfs.img dal backup effettuato.

Solo a questo punto si deve:


  1. smontare correttamente il PMA400 dal computer e senza staccare il cavo con una graffetta effettuare lo spegnimento del palmare agendo nell'apposito buco alla base (reset pin hole).

  2. a palmare spento scollegare il cavo usb e procedere all'accensione.
Il nuovo sistema operativo procederà quindi al processo di installazione consistente nella creazione di una partizione nascosta di 512 Mb ed al merge dei due files progfs.img e di openpma.img, contenenti le applicazioni.
Se tutto va a buon fine avremo il nostro nuovo sistema operativo funzionante.
Purtroppo, nonostante avessi 12 GB liberi, ho dovuto optare per la seconda scelta in quanto avevo sempre un errore durante la creazione della partizione nascosta. E' stato un procedimento più lungo, ma che mi ha anche consentito di fare un po' di pulizia.

Impressioni: il sistema mi sembra migliore e più stabile di quello fornito di fabbrica, ho a disposizione tramite terminale molte più funzioni e programmi, e se per qualche motivo volessi tornare indietro potrei farlo seguendo le istruzioni a ritroso della prima direzione, rinominando aimage.img in aimage.openpma e aimage.archos in aimage.img, verificando la presenza del file progfs.img (il file immagine contente le applicazioni installate di default da Archos), resettando e accendendo il palmare. Se volessi invece eliminare anche la partizione nascosta dovrei a questo punto tramite un pc eliminarla, formattare l'unità in fat32, copiare il PAM recovery, resettare e accendere il palmare.
L'unico difetto per ora ho riscontrato è stato la disattivazione dell'altoparlante interno, ma onestamente non ho ancora verificato se ci sono dei work-around.
Devo anche verificare se funziona il collegamento al televisore, la registrazione audio - video ed il telecomando.

domenica 17 maggio 2009

XBMC ed i plugins


A casa ho due vecchi computer  che svolgono la funzione di HTPC. 

Hanno  installato Freevo che è a mio parere il migliore software HTPC open source esistente.

Freevo è scritto in python, utilizza massivamente mplayer (anche se supporta vlc e xine), gira principalmente su Linux  e  non ha particolari richieste hardware, consentendo quindi di avere un ottimo sistema di home theatre a costi contenuti.

Nel mio caso utilizzo un PIII ed un PIV.

E'  estensibile grazie a  numerosi plugins. Ne ho scritto qualcuno anch'io e uno di questi è nella distribuzione ufficiale, per la precisione quello di wwitv.  

Installare freevo sul mio MacBook con Mac OS X è una operazione fattibile anche se non semplicissima, e per ora non ho abbastanza tempo libero per farlo.

Ho provato quindi XBMC, finalmente in versione Intel e PPC, bello pronto da installare con il suo file dmg.

Le richieste hardware sono decisamente più elevate, rendendolo inutilizzabile sui due  htpc che ho in casa, ma la grafica è decisamente carina, si interfaccia agevolmente con i server UPnP (il sistema che utilizzo per condividere musica, film foto e quant'altro) e fa lui stesso da server UPnP.

E' estensibile tramite plugins, e indovinate un po' in che linguaggio? Python!

Ho provato subito a scriverne uno di prova, e sono rimasto piacevolmente colpito dalla presenza di:

un soddisfacente tutorial, una maggiore documentazione, uno scheletro di plugin con cui partire, poche routines chiare ed accessibili.

Creare un plugin video in XBMC può addirittura consistere nel trovare la giusta regex in una pagina web ed passare i risultati a  

addDir(name,url,mode,thumbnail)o addLink(name,url,tumbnail)

Quindi come spiegato nell'ottimo tutorial, inserendo in CATEGORIES() 

addDir("MOVIES","http://www.tvdash.com/movies.html",1," http://reggiebibbs.files.wordpress.com/2007/12/the-movies360-crop.jpg") 

avremo un menu di tipo cartella "Movies" il cui clic  invocherà la routine INDEX() passando come argomento l'url http://www.tvdash.com/movies.html.

Compito della funzione INDEX sarà quello di scaricare la pagina web ed applicare la regex desiderata per poi passare a addLink(name,url) i links dei video trovati, creando dei sotto menu "links" che avranno il compito di lanciare il player collegandosi all'url del video specificato.

Decisamente veloce e semplice.