Repository Dropbox per Debian Squeeze

 

 

Dato che nei repository ufficiali Debian, Dropbox non è presente, volevo segnalare che nel mio Repository, sono presenti le versioni amd64 ed i386 di nautilus-dropbox_0.6.7-1. Sperando sia di gradimento 🙂

 

#### Edmond's repository
deb https://www.edmondweblog.com/repo/ binary/

 

enjoy 😉

RarCrack su Debian Squeeze

 

 

RarCrack usa un algoritmo bruteforce per trovare la password di un archivio rar,zip,7z. Per una corretta compilazione su Debian Squeeze:

 

# apt-get install libxml2-dev build-essential

$ wget

$ tar -xjf rarcrack-0.2.tar.bz2

$ cd rarcrack-0.2

$ make

# make install

 

ipotizzando di avere un archivio compresso con password, chiamato file.rar, si può iniziare il cracking usando un comando simile:

 

# rarcrack file.rar --type rar --threads 5

 

dove i threads sono al massimo 12. La password "123" è stata trovata in 2 minuti circa.

 

GOOD: password cracked: '123'

real    2m15.301s

 

enjoy 😉

Debian Squeeze con Tor Polipo e TorButton

 

 

Per avere un buono anonimato in rete, servono tre strumenti, due presenti in ogni repository, Tor e Polipo, e l'altro è un addons per i browser Firefox/iceweasel oppure Chrome.

 

Installazione:

 

# apt-get install tor polipo

 

Configurazione:

 

# nano /etc/polipo/config

 

e configurarlo/copiarlo come questo:

 

### Basic configuration
### *******************
## Replace with the default polipo.conf file in /etc/polipo/config

# Uncomment one of these if you want to allow remote clients to
# connect:

# proxyAddress = "::0"        # both IPv4 and IPv6
# proxyAddress = "0.0.0.0"    # IPv4 only

proxyAddress = "127.0.0.1"
proxyPort = 8118

# If you do that, you'll want to restrict the set of hosts allowed to
# connect:

# allowedClients = "127.0.0.1, 134.157.168.57"
# allowedClients = "127.0.0.1, 134.157.168.0/24"

allowedClients = 127.0.0.1
allowedPorts = 1-65535

# Uncomment this if you want your Polipo to identify itself by
# something else than the host name:

proxyName = "localhost"

# Uncomment this if there's only one user using this instance of Polipo:

cacheIsShared = false

# Uncomment this if you want to use a parent proxy:

# parentProxy = "squid.example.org:3128"

# Uncomment this if you want to use a parent SOCKS proxy:

socksParentProxy = "localhost:9050"
socksProxyType = socks5

### Memory
### ******

# Uncomment this if you want Polipo to use a ridiculously small amount
# of memory (a hundred C-64 worth or so):

# chunkHighMark = 819200
# objectHighMark = 128

# Uncomment this if you've got plenty of memory:

# chunkHighMark = 50331648
# objectHighMark = 16384

chunkHighMark = 67108864

### On-disk data
### ************

# Uncomment this if you want to disable the on-disk cache:

diskCacheRoot = ""

# Uncomment this if you want to put the on-disk cache in a
# non-standard location:

# diskCacheRoot = "~/.polipo-cache/"

# Uncomment this if you want to disable the local web server:

localDocumentRoot = ""

# Uncomment this if you want to enable the pages under /polipo/index?
# and /polipo/servers?.  This is a serious privacy leak if your proxy
# is shared.

# disableIndexing = false
# disableServersList = false

disableLocalInterface = true
disableConfiguration = true

### Domain Name System
### ******************

# Uncomment this if you want to contact IPv4 hosts only (and make DNS
# queries somewhat faster):
#
# dnsQueryIPv6 = no

# Uncomment this if you want Polipo to prefer IPv4 to IPv6 for
# double-stack hosts:
#
# dnsQueryIPv6 = reluctantly

# Uncomment this to disable Polipo's DNS resolver and use the system's
# default resolver instead.  If you do that, Polipo will freeze during
# every DNS query:

dnsUseGethostbyname = yes

### HTTP
### ****

# Uncomment this if you want to enable detection of proxy loops.
# This will cause your hostname (or whatever you put into proxyName
# above) to be included in every request:

disableVia = true

# Uncomment this if you want to slightly reduce the amount of
# information that you leak about yourself:

# censoredHeaders = from, accept-language
# censorReferer = maybe

censoredHeaders = from,accept-language,x-pad,link
censorReferer = maybe

# Uncomment this if you're paranoid.  This will break a lot of sites,
# though:

# censoredHeaders = set-cookie, cookie, cookie2, from, accept-language
# censorReferer = true

# Uncomment this if you want to use Poor Man's Multiplexing; increase
# the sizes if you're on a fast line.  They should each amount to a few
# seconds' worth of transfer; if pmmSize is small, you'll want
# pmmFirstSize to be larger.

# Note that PMM is somewhat unreliable.

# pmmFirstSize = 16384
# pmmSize = 8192

# Uncomment this if your user-agent does something reasonable with
# Warning headers (most don't):

# relaxTransparency = maybe

# Uncomment this if you never want to revalidate instances for which
# data is available (this is not a good idea):

# relaxTransparency = yes

# Uncomment this if you have no network:

# proxyOffline = yes

# Uncomment this if you want to avoid revalidating instances with a
# Vary header (this is not a good idea):

# mindlesslyCacheVary = true

# Suggestions from Incognito configuration
maxConnectionAge = 5m
maxConnectionRequests = 120
serverMaxSlots = 8
serverSlots = 2
tunnelAllowedPorts = 1-65535

 

La configurazione di default per Torbutton dovrebbe essere già così:

 

Proxy HTTP :  127.0.0.1  Porta :  8118
Proxy SSL : 127.0.0.1 Porta : 8118
Host SOCKS : 127.0.0.1 Porta : 9050
flag su SOCKS v5

 

per iniziare ad utilizzare tor e polipo::

 

# /etc/init.d/tor start
# /etc/init.d/polipo start

 

avviare torbutton e verificare l'anonimato quà e quà.

 

 

enjoy 😉

 

Installare Debian Squeeze da Debian Squeeze

 

 

 

 

Il titolo sarebbe dovuto essere "Come installare una distribuzione Linux direttamente dal prorpio O.S. senza inutili perdite di tempo, riuscendo così a fare diverse altre cose " ma sarebbe stato troppo lungo :). Diciamo che questa soluzione è molto comoda, soprattutto per chi come me nell' hard disk, ama testare molteplici O.S, e di conseguenza non ha voglia di rimanere fisso a guardare il monitor mentre il tutto finisce. L'esempio base che riporto è quello di una installazione di Debian 6.0 Squeeze da Debian Squeeze stessa, ma diciamo che si può adattare alle varie esigenze.

 

Requisiti:

 

  1. una partizione libera
  2. debootstrap installato
  3. un minimo di manualità, creatività e pazienza

 

formattare partizione in ext4, creare cartella di lavoro e mount partizione:

 

# mkfs.ext4 /dev/sdXX

# mkdir /mnt/debian

# mount /dev/sdXX /mnt/debian

 

scaricare debian squeeze base per la propria architettura, i386 o amd64

 

# /usr/sbin/debootstrap --arch i386 squeeze /mnt/debian https://ftp.it.debian.org/debian

 

oppure se si ha il cd debian montato in /cdrom, cambiare l'indirizzo con il path tipo: file:/cdrom/debian/

alla fine dell'istallazione base eseguire chroot:

 

# chroot /mnt/debian /bin/bash

 

adesso siamo all'interno del sistema, dove possiamo fare delle modifiche, io mi limito a citarne alcune, quelle più importanti, il lavoro grosso e di perfezionamento si può fare direttamente una volta avviato l' O.S. oppure tante modifiche direttamente dal chroot.

 

# nano /etc/fstab

 

all'interno inseriamo qualche linea tipo:

 

/dev/sdXX         /             ext4   defaults                 0    1

/dev/scd1       /media/cdrom0   udf,iso9660 user,noauto     0       0

/dev/scd0       /media/cdrom1   udf,iso9660 user,noauto     0       0

 

la partizione di swap condivisa andiamo a recuperarla da /etc/fstab del nostro sistema principale

 

quindi montiamo tutto:

 

# mount -a

 

abilitare connessione:

 

# nano /etc/network/interfaces

 

ed inserire qualche linea tipo:

 

auto lo
iface lo inet loopback
allow-hotplug eth0
eth0 inet dhcp

 

con resolv.conf non dovrebbero esserci problemi:

 

# nano /etc/resolv.conf

 

altrimenti inserire:

 

domain localdomain
search localdomain
nameserver 192.168.1.1
nameserver 192.168.1.1

 

aggiungere hostname:

 

# echo Debianbox > /etc/hostname

 

anche in /etc/hosts non dovrebbero esserci problemi:

 

# nano /etc/hosts

 

altrimenti inserire:

 

127.0.0.1       localhost
::1             localhost ip6-localhost ip6-loopback
fe00::0         ip6-localnet
ff00::0         ip6-mcastprefix
ff02::1         ip6-allnodes
ff02::2         ip6-allrouters

 

a questo punto siamo pronti a scaricare i pacchetti che ci permetteranno di avviare il nosto O.S. in tutta tranquillità:

 

# apt-get update

# apt-cache search linux-image

 

scaricare ed installare linux-image per la propria architettura, grub-pc, ed il proprio DE come gnome o kde:

 

# apt-get install linux-image-versione-arch grub-pc gnome-desktop-environment

 

alla fine apparirà qualche errore, ma non è importante. Nell'attesa del completamento, ci si può occupare d'altro, ed è proprio questo il senso di questa guida 🙂 Una volta riavviato basta fare un update-grub per trovare nel menu di grub la voce della nostra installazione, ma abbiamo il problema del login dato che non è stato settato ne utente e ne password, quindi per ovviare a questo problema, nel menu di grub relativo al nostro O.S. digitare "e" ed aggiungere  al kernel l'opzione:

 

rw init=/bib/bash

 

adesso si può proseguire con il boot e nella shell che appare, non rimane che aggiungere utente e password:

 

# adduser nome_utente

# passwd root

 

a questo punto abbiamo una Debian Squeeze perfettamente funzionante (quasi) 🙂

 

Step Finale:

molto probabilmente all'avvio non si dispone della connessione internet per poter aggiornare ed installare i componenti che mancano, questo perchè bisogna abilitare la nostra interfaccia di rete, eth0 o eth1, i passi potrebbero essere:

 

# ifconfig eth0 up

# ifconfig eth0 indirizzo_rete

# dhclient

 

spero di essermi ricordato tutto 🙂

 

 

enjoy 😉

Nautilus script per un perfetto screencast

 

Volevo segnalare un ottimo script per Nautilus, che aiuta ad  eseguire in tutta comodità screencast video o audio/video, il tutto con una bella ed ordinata gui, fatta con zenity e sfruttando chiaramente ffmpeg. Questo script dal nome ZDesktopRecorder è stato creato da c2asr, in seguito ad un post da me fatto dal titolo "Screencast Perfetto di una singola finestra con FFmpeg", che dire, se non che questa è la classica ciliegina sulla torta 🙂 Quindi ringraziando per la collaborazione di nuovo c2asr invito a provarlo.

 

1) Download

2) Download

enjoy 😉

Errore Ignoring file 'google-chrome.list.save' in directory

 

Oggi facendo il passaggio da Debian Squeeze (stable) a Debian Wheezy (testing) ho ricevuto questo errore:

 

"Ignoring file 'google-chrome.list.save' in directory '/etc/apt/sources.list.d/' as it has an invalid filename extension"

 

questo errore succede poichè la directory sources.list.d non supporta estensioni .save o .distupgrade, si risolve il tutto con il comando:

 

# sh -c "echo 'Dir::Ignore-Files-Silently:: \"(.save|.distupgrade)$\";' > /etc/apt/apt.conf.d/99ignoresave"

 

enjoy 😉

Screencast Perfetto di una singola finestra con FFmpeg

 

Il titolo di questo post inizia con "Screencast Perfetto", e magari ad alcuni potrà sembrare un tantino esagerato, ma secondo me non lo è affatto. In Gnu/Linux esistono diversi programmi per fare uno screencast, ne cito uno per tutti, RecordmyDektop, anche se io ho sempre preferito utilizzare FFmpeg, Quello che ho notato in tutti i programmi è la "difficoltà" di centrare la finestra o il terminale in maniera precisa, certo nulla di grave, basta mettersi lì e perdere un pò di tempo per trovare il rettangolo perfetto. Però finalmente io ho trovato la soluzione che mi soddisfa completamente, e questo grazie a FFmpeg, che io amo molto, tanto è vero che gli ho dedicato una categoria esclusiva 🙂 Comunque andando al sodo la soluzione è la seguente:

$ xwininfo

digitando nel terminale xwininfo e successivamente toccando una finestra, avremo a disposizione molte informazioni:

xwininfo: Please select the window about which you
          would like information by clicking the
          mouse in that window.

xwininfo: Window id: 0x2424585 (has no name)

  Absolute upper-left X:  274
  Absolute upper-left Y:  219
  Relative upper-left X:  274
  Relative upper-left Y:  219
  Width: 654
  Height: 439
  Depth: 0
  Visual: 0x21
  Visual Class: TrueColor
  Border width: 0
  Class: InputOnly
  Colormap: 0x0 (not installed)
  Bit Gravity State: ForgetGravity
  Window Gravity State: NorthWestGravity
  Backing Store State: NotUseful
  Save Under State: no
  Map State: IsViewable
  Override Redirect State: yes
  Corners:  +274+219  -352+219  -352-366  +274-366
  -geometry 654×439+274+219
 

io ho preso queste informazioni toccando la finestra che mi interessava, e come si può vedere ci sono molti dati utili, tra cui il posizionamento-Corners-geometry. Adesso non bisogna fare altro che darle in pasto a FFmpeg. Quindi per prima cosa bisogna creare lo script record.sh, ed incollarci dentro:

 

#!/bin/sh

INFO=$(xwininfo -frame)

WIN_GEO=$(echo $INFO | grep -oEe 'geometry [0-9]+x[0-9]+' | grep -oEe '[0-9]+x[0-9]+')
WIN_XY=$(echo $INFO | grep -oEe 'Corners:\s+\+[0-9]+\+[0-9]+' | grep -oEe '[0-9]+\+[0-9]+' | sed -e 's/\+/,/' )

ffmpeg -f x11grab -r 25 -b 2000k -s $WIN_GEO -i :0.0+$WIN_XY /tmp/screencast.avi

 

in caso di problemi di formattazione si può scaricare da quà:

settare i permessi:

$ chmod +x record.sh

e lanciare:

$ ./record.sh

adesso non dobbiamo fare altro che toccare la finestra da registrare e lo script si occuperà in automatico della posizione precisa, salvando lo screencast in /tmp. Attenzione: per registrare il terminale bisogna toccare la barra della finestra, altrimente lo script non riesce a determinare l'esatta posizione, non so il motivo, per quanto riguarda tutto il resto, basta cliccare in un punto qualsiasi delle finestre.

FFmpeg ti amo!!!

enjoy 😉

Inserire logo in un video con FFmpeg

 

Un pò di tempo fa c'era la possibilità di inserire un logo in un video con FFmpeg usando vhook, ma ho scoperto che adesso questo non è più possibile, o meglio, non è più possibile con vhook, ma si può fare lo stesso usando Soc e libavfilter, infatti nel mio post precedente, ho parlato di come installare FFmpeg da sorgenti, appunto per poter compilare ed utilizzare queste librerie. Diciamo che la possibilità di inserire un logo in un video può essere molto utile, specialmente per chi vuole marchiare i propri video per renderli unici, non proprio come il mio dove ho inserito tux-sioux gigante 🙂

Ed ecco di seguito un' altro dei comandi magici:

$ ffmpeg -i video.avi  -vf "movie=0:png:immagine.png [logo]; [in][logo] overlay=10:10:1" output.avi

ps: per chi è pigro ed interessato a limite inserirò i pacchetti ffmpeg e x264 nel mio repository.

ps: la "cosa mancante" del post precedente è –enable-filter=movie

enjoy 😉

Velocizzare boot e prestazioni su Debian Squeeze parte 2

 

 

Nella guida precedente ho iniziato a sperimentare la possibilità di velocizzare Debian Squeeze ed LMDE, partendo dalla fase di boot, fino ad arrivare in questa seconda parte ad aumentare, ove possibile, la reattività del sistema. Già con l'installazione di preload si cerca di aumentare la reattività dei programmi usati più spesso, ma per ottenere questo bisogna dare a preload alcune ore di utilizzo, affinche memorizzi le abitudini. Le modifiche successive io le ho testate sul mio sistema, senza problemi, ma ciò non toglie che è meglio stare attenti.

 

atime ed /etc/fstab:

la prima modifica riguarda  /etc/fstab e l'inserimento dell'opzione noatime e nodiratime. Linux di default tende a tenere traccia di tutto quello che si fà, non solo delle modifiche dei file, ma anche della solo lettura, e scrive tutto sul disco. Questo sicuramente è d'obbligo su un server, ma su un pc Desktop secondo me non è necessario. C'è da tenere conto che una minore scrittura, significa anche aumento della durata dell' hard disk. Quindi /etc/fstab dovrebbe essere così:

/dev/sdaxx    /    ext4    rw,noatime,nodiratime,errors=remount-ro    0    0

lo stesso discorso vale per la partizione di /home separata.

 

vm.swappiness:

un'altra modifica che si può fare riguarda /etc/sysctl.conf e cioè andare a modificare il file, ed inserire un valore  a vm.swappiness che andrà a dire al kernel se tenere tutto in Ram oppure nella cache su disco.  Oggi ci si ritrova ad avere tanta Ram che nemmeno si utilizza, quindi cerchiamo di sfruttarla. Di default questo valore in Debian è 60, e la modifica si può fare da 0 a 100, io ho optato per 20. Per chi ha un pc portatile, può essere utile diminuire la scrittura su disco, in quanto la durata della batteria ne gioverebbe.

# echo 'vm.swappiness=20' >> /etc/sysctl.conf

 

vm.vfs_cache_pressure:

anche questa opzione da inserire in /etc/sysctl.conf aiuta a velocizzare il sistema, il valore di default in Debian è 100, si può provare a dimezzarlo:

# echo 'vm.vfs_cache_pressure=50' >> /etc/sysctl.conf

 

per le mie esigenze queste opzioni vanno benissimo e mi ritrovo con un pc veloce e reattivo:

 

Boot=25 secondi circa

Halt=5 secondi circa

 

ps: in LMDE consiglio di rimuovere il mintMenu dal pannello, che è pesantissimo, ed aggiungere la classica Barra del menu di Gnome.

 

enjoy 😉

Wake on LAN (WOL) su Debian Squeeze

 

Wake on LAN (WOL) è uno standard Ethernet che consente di avviare un computer in standby da una postazione remota, a patto di conoscerne l'indirizzo MAC. Tutto questo è possibile dato che i computer recenti anche se spenti, continuano ad essere alimentati con una tensione di standby. Questa guida è stata testata su Debian Squeeze con dei pc in lan.

 

Requisiti:

Verificare che WOL sia attivato nel Bios dei pc che vogliamo accendere.

 

# apt-get install ethtool wakeonlan

 

verificare che sulla schede di rete sia abilitato WOL:

# ethtool eth0

 

il risultato nel mio caso è questo:

 

root@debian:/home/edmond# ethtool eth0
Settings for eth0:
    Supported ports: [ TP ]
    Supported link modes:   10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Full
    Supports auto-negotiation: Yes
    Advertised link modes:  10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Full
    Advertised pause frame use: No
    Advertised auto-negotiation: Yes
    Speed: 100Mb/s
    Duplex: Full
    Port: Twisted Pair
    PHYAD: 1
    Transceiver: internal
    Auto-negotiation: on
    MDI-X: on
    Supports Wake-on: pumbag
    Wake-on: g
    Current message level: 0x00000001 (1)
    Link detected: yes
 

"g" significa che WOL è abilitato

nel caso fosse su "d" significa che è disabilitato, quindi per abilitarlo:

 

# ethtool -s eth0 wol g

 

creare uno script chiamato wol ed inserire:

 

## /etc/init.d/wol
#
# chkconfig: 2345 99 99
# description: Force NIC into WOL mode
#
ethtool -s eth0 wol umbg
exit

 

quindi:

 

$ chmod a+x wol

# cp wol /etc/init.d/

# update-rc.d wol defaults

 

adesso per svegliare il nostro pc, basta inviare i Magic Packet:

 

$ wakeonlan indirizzo_mac_pc

 

 

enjoy 🙂