2012. június 23., szombat

Firefox sqlite tömörítés

Már régen írtam cikket a Firefox könyvjelzők szinkronizálásáról Dropboxban, mely művelet során a places.sqlite fájlban eltárolt könyvjelzőket tároljuk el Dropboxban. A könyvjelzőkön kívűl még sok mindent tárol a Firefox SQL adatbázisban, például a cookie-kat, letöltéseket, kiegészítőket is. Ezen fájlok viszont hajlamosak a hosszantartó böngészések során igencsak megnőni. Az Sqlite nevű program azonban tartogat egy megoldást, mellyel jelentősen csökkenthetjük ezen fájlok méretét (Dropboxban tárolás esetén hasznos tulajdonság), és ezzel a böngésző gyorsaságát is növelhetjük.
Az interneten sok leírás található, hogyan tömöríthetnénk ezeket a fájlokat, én az sqlite3 nevű programot használom, szükség esetén feltelepíti a szkript:
#!/bin/bash
if [ `aptitude search '~i ^sqlite3$' | grep "sqlite3" -c` == '0' ];
then
sudo apt-get install sqlite3
fi

for i in /home/$USER/.mozilla/firefox/*/*.sqlite
do
echo -en "\e[1;33mOptimizing: \e[0;37m$i... "

sqlite3 $i 'VACUUM;'

if [ $? -eq 0 ]
then
echo -e "\e[1;32mOK\e[0;37m"
else
echo -e "\e[1;31mERROR\e[0;37m"
fi
done
 A következőképpen állíthatjuk szolgálatunkba a szkriptet:
sudo gedit /usr/bin/vacuum
A megnyíló Geditbe illesszük be a fenti szkriptet, majd adjunk neki futási jogosultságot:
sudo chmod +x /usr/bin/vacuum

Ezután már futásra kész a szkript, bármilyen mappából kiadhatjuk a vacuum parancsot, én nálam a places.sqlite fájlt jelentősen rövidítette:
-rw-r--r--  1 chef chef 10485760 jún   22 22.35 places.sqlite
-rw-r--r--  1 chef chef 4214784 jún   22 23.06 places.sqlite

2012. június 14., csütörtök

Multiboot backup pendrive


Néha előfordulhat, hogy még kedvenc Linux rendszerünk is elromlik. Ilyenkor jól jönne, ha 10 perc rendszervisszaállítás után újra használhatnánk a rendszerünket. Most bemutatok egy lehetőséget, mellyel mindezt megtehetjük. Egy multiboot-os pendrive-ot fogunk készíteni rajta minden eszközzel, mellyel a gépélet-mentést végrehajthatjuk. Természetesen több lehetőség is adott, és tetszés szerint konfigurálható lesz - akár más célokra is - a pendrive.

A rendszer mentéséhez és visszaállításához egy nagyon hasznos programot szeretnék bemutatni, melyre nem rég találtam rá. A Clonezilla egy backup készítő program, hasonló, mint a Windows-ra is elérhető Norton Ghost. Hasznos lehet, ha kedvenc Linux rendszerünkről akarunk mentést készíteni, és aztán később gyorsan arra az állapotra akarunk visszatérni.
A Clonezilla gyakorlatilag egy Linux operációs rendszer, melynek Live verzióját ajánlom, mellyel nagyon gyorsan készíthetünk biztonsági másolatot rengeteg féle operációs rendszerről (Linux, Win, Mac, stb), egyéb partícióról, vagy akár egy teljes lemezről. Szerver verziójában akár 40, vagy több gépre is telepíthetünk egy korábban ezzel a programmal lementett rendszert.
Én egy 12 Gb használt területű ext4 partícióról készítettem mentést, körülbelül 10 perc alatt, és az eredmény egy 4 Gb-os backup lett. Visszaállítás mentésből is körülbelül 10 percet vett igénybe.

A rendszerek telepítésekor gyakran használunk partícionáló eszközöket, ezek közül én a GParted Live  nevűt részesítem előnyben egyszerű használata és megbízhatósága miatt.

További kiegészítésként (pl.: a rendszeren tárolt adatok gyors lementésére elromlott operációs rendszernél) jól jöhet, ha van az USB pendrive-on egy kisebb használható GUI-s rendszer. Ezek közül én a rendkívűl gyors és szinte bármilyen őskövületet felismerő Damn Small Linux-ot (DSL) ajánlom, nagyon jól összeválogatott kis programgyűjteménye van és nagyon kicsi a rendszerigénye.

A multiboot-os pendrive elkészítéséhez pedig a MultiSystem nevű programot fogjuk használni.
Itt találtam egy szkriptet mellyel könnyen telepíthetjük a MultiSystem függőségeit. Ehhez töltsük le telepítő szkriptet:
wget http://liveusb.info/multisystem/install-depot-multisystem.sh.tar.bz2
tar xvjf install-depot-multisystem.sh.tar.bz2
chmod +x install-depot-multisystem.sh
./install-depot-multisystem.sh
Mivel a telepítő szkriptet elvileg Ubuntu rendszerre készítették, ezért lehet, hogy nem talál majd a telepítés előtt minden csomagot. A nem talált csomagokat apt-get-tel tegyük fel, nálam az xterm hiányzott:
sudo apt-get install xterm
Ha minden megvan már csak egy FAT32-re formázott USB eszközre lesz szükségünk. Én a 16 Gb-os pendriveomon 700 Mb-os FAT32 partíciót készítettem GParted-del, melyből 290 Mb-ot foglal el a fent említett 3 rendszer.

Ezután ha elindítjuk a multisystem nevű programot, akkor kiválaszthatjuk a pendrive-ot amelyre telepíteni akarjuk majd a rendszereket:

A kiválasztás után már pakolhatunk is a pendrive-ra letöltött, LiveCD módban működni képes OS-eket.
A "Menü ->  LiveCD-k letöltése" résznél lehet keresgélni a kompatibilis Live rendszerek között, a fent említett programokat innen töltöttem le:


A letöltött .iso képfájlokat betallóztam, a MultiSystem néha root jelszót kér Grub2 generáláshoz, és ha minden jól megy a végén már kész is a működő multiboot-os mindentudó backup pendrive! :D


Ha tesztelni akarjuk az elkészített pendrive-ot akkor a MultiSystem-en belül Qemu-val, vagy VirtualBox-al is kipróbálhatjuk mit is sikerült alkotni.
A programon belül is felkínált Live rendszerek listájából is láthatjuk, hogy rengeteg lehetőség van és nagyon sokféle multiboot-os eszközt rakhatunk össze, ha valaki erre jár kíváncsi vagyok mit talált ki. :)

2012. június 1., péntek

Fájlmásolás, link küldése Androidra


Gyakran szükség van gyorsan valamilyen adat átvitelére számítógépről Androidos telefonunkra. Két lehetőséget mutatok be, melyeket én is használok, az első akkor lehet hasznos amikor csak egy honlap, vagy fájl linkjét akarjuk átküldeni, és azt majd a telefonról megnézzük, illetve letöltjük. A második megoldásban konkrétan fájlokat másolhatunk át számítógépünkről mobilunkra. Mindkét megoldás platform független, szóval minden rendszeren (Linux, Windows, Mac) használhatóak.

Link küldése

Telefonunkra a ChromeToPhone alkalmazást kell telepítenünk, ezt itt tudjuk beszerezni (az oldal állításával ellentétben Marketről(Google Play) nem tölthető le): Letöltési link
Számítógépen pedig böngészőnhöz kell egy kiegészítőt telepítenünk, Firefox-hoz használható a következő FoxToPhone add-on, mely a mobilra telepített alkalmazásnak tud küldeni linket.
Első link küldésekor engedélyt kér az alkalmazás a telefonnal való kommunikációra.


Ha a fenti programokat telepítettük, akkor a böngészőben (ahogy a képen is látszik fent), ha egy linkre jobb egérgombbal kapcsolunk, vagy csak simán egy oldalon, akkor az adott linket el tudjuk küldeni telefonunkra ("Link küldése az Androidra"), amit ott később megnyithatunk.
 A ChromeToPhone eredetileg -mint ahogy a neve- is mutatja Chrome-ra készült, tehát elérhető hozzá is egy kiegészítő.

Fájlműveletek

Többféle fájlküldési módszert is kipróbáltam már mióta Androidot használok és végül az FTP kapcsolaton keresztül történő műveleteknél maradtam. A telefonra fel kell telepíteni egy FTP szervert, ehhez ajánlom SwiFTP FTP Server-t, melyet Google Play-ről letölthetünk.
A mobilunkra telepített FTP szerverre pedig számítógépről egy FTP klienssel lehet csatlakozni, ehhez én a nyílt forráskódú, platformfüggetlen FileZilla klienst ajánlom.
A telefonon ezután a SwiFTP programot megnyitva a Setup résznél állítsunk be egy felhasználónevet, egy jelszót hozzá, mentsük el a beállításokat a Save gombbal, majd a Start gombbal el is indíthatjuk FTP szerverünket, mellyel a kiírt címre a gépen lévő FileZilla programmal csatlakozhatunk.


A SwiFTP által Wifi URL-nél kiírt cím kettőspont előtti részét kell FileZillában a Cím részhez beírni ("ftp://" nélkül), felhasználónévhez és jelszóhoz a Setup résznél megadottakat, porthoz a Wifi URL-nél a kettőspont utáni számot.

Sok sikert a műveletekhez, és mint mindig a kérdéseket, észrevételeket örömmel várom! :D

2012. május 30., szerda

Eclipse IDE for Java EE Developers telepítés


A Java EE alkalmazások fejlesztéséhez is használható IDE telepítésével először meggyűlt a bajom, ezért gondoltam írok róla egy leírást (a megoldást ezen az oldalon találtam meg).
Először töltsük le az Eclipse honlapjáról a legfrissebb Eclipse IDE for Java EE Developers-t: LINK
Az ajánlott telepítési könyvtár a /opt, tehát ide helyezzük át a tar fájlt:
sudo mv eclipse-jee-indigo-SR2-linux-gtk.tar.gz /opt/
csomagoljuk ki:
sudo tar -xvzf eclipse-jee-indigo-SR2-linux-gtk.tar.gz
állítsuk be a szükséges jogosultságokat:
cd /opt
sudo chown -R root:root eclipse
sudo chmod -R +r eclipse
 Ha most akarnánk futtatni az Eclipse-et akkor a következő hibát kapnánk:
launcher error: Unable to locate companion shared library
Egy környezeti változót még be kell állítani, ezért készítsünk magunknak egy indító szkriptet:
sudo gedit /usr/bin/eclipse
Másoljuk be Gedit-be a következő szkriptet:
#!/bin/bash
export ECLIPSE_HOME="/opt/eclipse"
$ECLIPSE_HOME/eclipse $*
Adjunk futási jogot a szkriptünknek:
sudo chmod +x /usr/bin/eclipse
Ezzel készen is vagyunk.

 

2012. május 13., vasárnap

Parcellite URL shortening - rövidítés automatikusan

Gyakran küldözgetek emailben, msnen egyéb helyeken linkeket és sokszor jól jönne, ha gyorsan lehetne rövidíteni a linket. Néha külön felkeresek egy ilyen honlapot például goo.gl, tiny.cc, bitly.com és ott rövidítek, de most eszembe jutott, hogy sokkal hatékonyabb lenne, ha ez egyből a vágólapra kerülhetne. Szerencsére a Crunchbangben alkalmazott vágólapkezelő, a Parcellite nevű programban van lehetőség ún. action-ök végrehajtására a program használata közben.
Azonban az alapértelmezetten a tárolókban lévő verzió kicsit bugos, és egy action végrehajtása után eltűnik a trayiconoknál a Parcellite ikonja. Érdemes inkább a hivatalos honlapról feltelepíteni egy frissebb változatot, én az 1.0.2rc5 ös verziót telepítettem fel egy letölthető .deb csomagból.
Itt találtam egy majdnem kész szkriptet, amit kicsit módosítottam úgy, hogy egyből bekerüljön a vágólapra a rövidített link.
A szkripthez szükséges az xclip program, amivel a vágólapra helyezzük a linket:
sudo apt-get install xclip
Ezekután jöjjön a szkript:
#!/bin/bash
UR1='http://ur1.ca/'
LONG="$1"
alias xclip="xclip -selection c"
curl -A 'Mozilla' -s "$UR1" -d"longurl=$LONG" |grep -i 'Your ur1 is'|sed -e 's/<[^>]*>//g' | sed -e 's/Your ur1 is: //' | sed -e 's/\t\t//' | xclip -selection "clipboard"
Így kelthetjük életre Parcellitével: először létrehozunk egy szkriptfájlt (másoljuk be a fenti kódot a Gedit-be, és mentsük el a fájlt), majd futtathatóvá tesszük.
sudo gedit /usr/bin/shurl
sudo chmod +x /usr/bin/shurl
Végül Parcellite ikonon jobb klikk > Beállítások > Műveletek:
vegyünk fel egy új műveletet, például:
Művelet: URL Shortener, Parancs: shurl %s

Ha már a vágólapon van egy hosszú link (pl.: kimásoltunk egy linket Firefox-ban címsorból), Ctrl gomb lenyomása közben kattintsunk a Parcellite ikonjára, majd a feltűnő ablakban az URL Shortener-re, és máris Ctrl+v- vel beilleszthetjük bárhova a rövidített linket. Enjoy!

2012. május 8., kedd

VirtualBox integrációs szolgáltatások telepítése hiba


VirtualBox-ban egy ideje nem tudom telepíteni az integrációs szolgáltatásokat (Guest Additions), a telepítő nem találja a Sun szerveren a fájlt (lehet inkább az Oracle szerverén kéne keresgélnie :).

Az integrációs szolgáltatások több mindenhez jók, legfontosabbak:
- egér és billentyűzet integrációja (ha a vendégkörnyezet felé visszük az egeret, akkor az automatikusan a vendég környezetben lesz lekezelve)
- mappamegosztás a vendég és a gazda gép között

Az integrációs szolgáltatások egy .iso fájlban vannak elhelyezve, melyet elvileg így is lehetne telepíteni:
sudo apt-get install virtualbox-guest-additions
Nekem ez nem sikerült, ezért feltöltöttem a fájlt ide: LETÖLTÉS
A letöltött fájlt helyezzük el a VirtualBox mappájában, hogy a virtuális gépen az Eszközök > Integrációs szolgáltatások telepítése... résznél felinstallálhassuk:
sudo cp VBoxGuestAdditions.iso /usr/share/virtualbox
Remélem valakinek megkönnyítettem ezzel a dolgát. :)
Ha már a VirtualBox-ról volt szó, egy nagyon jó, és részletes VirtualBox leírás található magyarul itt:

2012. április 17., kedd

Crunchbang finomhangolás

Az előző részben telepített Crunchbang rendszer néhány finomhangolását mutatom be most:
  1. A fent említett cikkben található Liquorix kernel telepítésével sajnos, ha telepítettünk laptop-mode-tools csomagot, akkor az nem fog működni, és bootolásnál a következő hibát írja ki: Unhandled kernel version: 3.1
    Ennek megoldására nyissuk meg a laptop-mode leíró fájlt és adjuk hozzá a 3.1-es kernel verziót a kompatibilitási listához:
    sudo gedit /usr/sbin/laptop_mode
    Keressük meg a következő részt:
    case "$KLEVEL" in
            "2.4" ) ;;
            "2.6" ) ;;
    és írjuk be a 2.6-os verzió után a 3.1-et:
    case "$KLEVEL" in
            "2.4" ) ;;
            "2.6" ) ;;
            "3.1" ) ;;
    Mentsük el a változtatásokat és már kész is.

  2. Az én HP 4530s laptopom, de valószínű sok másik gép is bejelentkezéskor, mindenféle hibaüzeneteknél, túl sok backspace leütésnél idegesítő csipogó hangot ad ki figyelmeztetésül.
    Ezek letiltása sorban, GTK programok csipogásának letiltása:
    echo "gtk-error-bell = 0 " >> ~/.gtkrc-2.0.mine
    Bash csipogás megszüntetése:
    echo "set bell-style none" >> ~/.inputrc
    Minden csipogás megszüntetése X-en belül:
    echo "xset b off" >> ~/.config/openbox/autostart.sh
    Konzol muteing:
    echo "setterm -blength 0" >> ~/.profile
    echo "setterm -bfreq 0" >> ~/.profile
    végül GDM-en belül így tilthatjuk a csipogást:
    sudo gedit /etc/gdm/gdm.conf
    Keressük ki a [greeter] részt, és írjuk be alá a következőt, majd mentsük el a változtatást:
    SoundOnLogin=false
    Ha gépünkben található speaker, akkor még:
    echo 'blacklist pcspkr' | sudo tee -a /etc/modprobe.d/pcspkr.conf sudo rmmod pcspkr
    Ezzel megszüntettünk mindenféle csipogó hangot.

  3.  Végül pedig egy apró kis észrevétel: nálam valamiért nem menti el a Network Manager a hozzáadott hálózatokat alapból. Ha szeretnénk alapértelmezett kapcsolatokat hozzáadni, hogy azok el is mentődjenek akkor azt megtehetjük, ha root módban indítjuk el a Network Manager-t és így adjuk hozzá a kapcsolatot:
    sudo nm-network-connection 

     Egyelőre ennyi, most készülök még pár cikkel, remélem minél hamarabb ki tudnak kerülni ezek.

    Források:

    Csipogás kikapcsolása

    Laptop-mode hiba