Архива за 'linux' категорију

Wireless mreža iz komandne linije | Milan Milošević

February 15, 2010

Savremene Linux distribucije odavno su počele da “zaglupljuju” korisnike šarenilom, ikonicama i kliktanjem. Sve je na dohvat miša, lepo i savršeno radi. Ali, napredne tehnologije nekad otkažu poslušnost, od kliktanja tada nema koristi i na scenu mora da stupi komandna linija. Tada shvatite da ste neke stvari zaboravili.

Slična situacija desila mi se pre par dana. Standardni upgrade paketa Debian testing-a doveo je do toga da lepa ikonica za povezivanje na wireless internet neće da radi. Posle malo petljanja i eksperimentisanja utvrdio sam da je problem sa network-manager-kde paketom ali to saznanje nije mi pomoglo da rešim problem, od uspostavljanja wireless veze nije bilo ni traga (“ikonica” je lepo listala dostupne mreže, ali ni nakon kliktanja veza nije htela da se uspostavi). Bug je već bio prijavljen, ali za rešenje treba čekati novu verziju… a to će verovatno da potraje. U nedostatku “inspiracije” za traženje alternativnog programa odlučio sam da wireless pokrećem iz komandne linije.

Ništa lakše od toga, komanda iwconfig (uz dopunu iwlist) završava sav posao, ali ako je reč o slobodnoj mreži ili WEP ključu. U mom slučaj je malo komplikovaniji – mreža je zaštićena WPA ključem.(...)

Pročitajte nastavak Wireless mreža iz komandne linije (144 words)

© Milan Milošević for Svet nauke, 2010. | Permalink | 0 komentara | Add to del.icio.us

Nokia N900 – mobilni kompjuter

December 30, 2009

Prošlog meseca najavljivana, najsvežija i najozbiljnijia uzdanica Nokije – N900, stigla je ovih dana i do naše redakcije. Ovaj Nokia smartphone opremljen je ARM Cortex-A8 procesorom, doalzi sa 1 GB radne emorije i ugrađenih 32 GB prostora za čuvanje pdoataka koje dodatno moguće proširiti sa microSD memorijskim karticama. Ekran osetljiv na dodir je zaista fantastičan sa rezolucijom od 800×480 piksela, a naravno poseduje i ugrađenu kamera od 5 megapiksela koji skriva klizni poklopac na poleđini.

Tu su još WiFi, HSDPA, te A-GPS, a ono što je najaznimljivije je da operativni sistem po svojim korenima veoma blizak Google Androidu. Naime, operativni sistem na N900 zasnovan je  Linuxu i zove se Maemo 5, koju u paru sa pomenutim moćnim procesorom i memorijom pruža sjajan korisnički doživljaj.

Kao što je i očekivano, dizajn, izbor materijala i završa obrada s u na zavidnom nivou, a koncepcijski radi se o candybar slajder telefonu sa punom izvlačećon QWERTY tastaturom, sa tasterima raspoređenim u tri reda.

Više slika u Flickr galeriji

Kakv je interfejs i doživljaj može da posvedoči sledeći video:

Duke Nukem 3D na Nokia N900

© goran | Svakodnevnica blog, 2009. | Permalink | Nema komentara | Dodaj u del.icio.us zbirku Tekst označen ključnim rečima: A-GPS, HSDPA, Linux, Maemo 5, N900, Nokai, Nokia N900, WiFi

Takođe nepropustite IT vesti i dešavanja na Personal magazinu

PS1 for your Shell?

November 30, 2009
Few years ago I went on a quest to find a perfect shell prompt. I asked the mighty Internets for ideas, but it seemed futile. I tried many things, simple prompts, complex prompts, but nothing could satisfy my requirements (I don't even remember what were my requirements back then.) So I picked best of both worlds and got this little monster.

:) oscar:~#

Happy face! And in case of an error, it looks sad.

:( 2 oscar:~#

Cute, a? It even prints the exit code. Useful and cute at the same time! And here is definition of the prompt. As you can see it uses simple function to determine return code of executed command and adjust its feelings accordingly.

smiley() {     RC=$?     [[ ${RC} == 0 ]] && echo ':)' || echo ":( ${RC}" } export PS1="\$(smiley) \u@\h:\w\\$ "

I think I got the idea for the smiley thing somewhere, but unfortunately I don't remember anymore where from. For more adventurous people, maybe this prompt would be more interesting.

export PS1="\[\033[0;36m\]\033(0l\033(B\[\033[0m\][\[\033[1;31m\]\u\[\033[0m\]]\[\033[0;36m\]\033(0q\033(B\[\033[0m\][\[\033[1;33m\]@\h\[\033[0m\]]\[\033[0;36m\]\033(0q\033(B\[\033[0m\][\[\033[0;37m\]\T\[\033[0m\]]\[\033[0;36m\]\033(0q\033(B\033(0q\033(B\033(0q\033(B\033(0q\033(B\033(0q\033(B\033(0q\033(B\033(0q\033(B\033(0q\033(B\[\033[0m\][\[\033[1;33m\]\w\[\033[0m\]]\n\[\033[0;36m\]\033(0m\033(B\[\033[0m\]\$ "

Magic! :) What is your favorite prompt? Please leave boring \u@\h:\w for dinner with your parents. :P

Load Average > 680

November 23, 2009

I just found this old screenshot from one of my previous jobs. It was taken on December 9th 2003, while one of the web hosting servers went woowoo due to badly optimized web site. Load average went sky high to 682! Anyone else had such a high load before or am I the absolute champion? :)

PS: I was using Fluxbox back than! Wow, crazy youth! :)

LVM Snapshots and XFS

November 16, 2009
Small note for everyone planing to use Linux LVM snapshots and using XFS at the same time. XFS has UUIDs which are unique identifiers of the filesystem. Two file systems with same UUID can not be mounted on the same server. Now, if we know that a snapshot of a logical volume represents a point-in-time copy of the original logical volume it doesn't take much time to realize that the filesystem on the snapshot is also a copy, thus it will have the same UUID as the filesystem on the original logical volume. So here is what happens when you try to mount the snapshot:

[root@server ~]# df -hT /var/lib/mysql_backup/ Filesystem    Type    Size  Used Avail Use% Mounted on /dev/mapper/sys-mysql_backup               xfs    25G   19G  6.3G  76% /var/lib/mysql_backup   [root@server ~]# lvcreate -s -n bkp-snap -L1G /dev/sys/mysql_backup   Logical volume "bkp-snap" created   [root@server ~]# mount /dev/sys/bkp-snap /mnt/misc/ mount: wrong fs type, bad option, bad superblock on /dev/sys/bkp-snap,        missing codepage or other        In some cases useful info is found in syslog - try        dmesg | tail or so   [root@server ~]# dmesg | tail -1 XFS: Filesystem dm-9 has duplicate UUID - can't mount

It doesn't look very good. There are two solution for this problem. One is to use nouuid option for mount command.

[root@server ~]# mount -o nouuid /dev/sys/bkp-snap /mnt/misc/   [root@server ~]# dmesg | tail -3 XFS mounting filesystem dm-9 Starting XFS recovery on filesystem: dm-9 (logdev: internal) Ending XFS recovery on filesystem: dm-9 (logdev: internal)

Another option would be to change UUID of the filesystem on the snapshot using xfs_admin command.

[root@server ~]# xfs_admin -U generate /dev/sys/bkp-snap Clearing log and setting UUID writing all SBs new UUID = 1bdcf6e1-62fb-47f2-83e4-dc398bb7a1cd   [root@server ~]# dmesg | tail -2 XFS mounting filesystem dm-9 Ending clean XFS mount for filesystem: dm-9

I am in favour of the first option (mount -o nouuid) since it does not perform any modification on the filesystem. It just feels safer, that's all... :)

Nostalgija

November 11, 2009
Nešto sam u tom raspoloženju ovih dana. To me je i nateralo da napišem ovaj blog. Posmatram okolo kako se neke stvari rade i ne sviđa mi se. Mislim tu pre svega na činjenicu da se danas svako naziva sistem administratorom. Sad svako može da kaže da zna da instalira Linux operativni sistem, i on [...]

More information on Linux memory management

November 10, 2009

I have just noticed that I missed to mention one very important thing in my previous post.

File /proc/meminfo contains a very useful field named Committed_AS. This field indicates TOTAL value of committed memory. If all applications would require all memory allocated to them your server would need this amount of memory.

If we look in the example from my previous post we would find following values:

loreto:/tmp # cat /proc/meminfo MemTotal:     33274944 kB … Committed_AS: 49751960 kB …

So my server has 32GB of RAM, but total amount of memory allocated is 48GB. That is 150%! If all this memory would be required at once server would crash pretty bad (or OOM killer would start butchering my Oracle databases to get some memory back!). :-)

Sivi oblaci i dim iznad Niša

November 8, 2009
Baš je grozno vreme ovih dana, ali rekoh da iskoristim i malo eksperimentišem sa fotoaparatom. Evo rezultata (Please open the article to see the flash file or player.) Snimljeno je juče, oko 16, 86 fotografija sa 15 sec pauze između. Sve je povezano sa: mencoder "mf://*.JPG" -mf fps=15 -o output-15.avi -ovc xvid \ -xvidencopts pass=2:bitrate=3000 -vf scale=800:600,eq2=1.5 Isti film, ali [...]

Sivi oblaci i dim iznad Niša | Milan Milošević

November 8, 2009

Baš je grozno vreme ovih dana, ali rekoh da iskoristim i malo eksperimentišem sa fotoaparatom. Evo rezultata

(Please open the article to see the flash file or player.)

Snimljeno je juče, oko 16, 86 fotografija sa 15 sec pauze između. (...)

Pročitajte nastavak Sivi oblaci i dim iznad Niša (25 words)

© Milan Milošević for Svet nauke, 2009. | Permalink | 4 komentara | Add to del.icio.us

На таласима Гугла

October 24, 2009
Релативно брзо након поднетог захтева, стигла ми је позивница за отварање Google Wave налога. Дакле, Талас је ту (и ја на њему), „сурфовање“ може да почне...

Dan slobode softvera

September 19, 2009
Danas je 19. septembar – dan slobodnog softvera. Ovaj dan se obeležava od 2004. godine, a od 2006. godine dogovoreno je da Dan slobodnog softvera bude svaka treća subota u septembru. U prošlogodišnjoj akciji učestvovalo je više od 500 timova iz 90 različitih zemalja. Interaktivnu mapu ovogdišnjih učesnika možete da pogledate na zvaničnom sajtu. Dan slobodnog [...]

OpenSSL za priručnu enkripciju

September 10, 2009

Brzo i jednostavno enkriptovanje fajlova (ukoliko pri ruci nije GPG ili nešto slično) se može postići pomoću OpenSSL paketa koji je instaliran podrazumevano na skoro svim mogućim računarima sa GNU/Linuxom.

Enkriptovanje fajla fajl.txt se vrši na sledeći način:

openssl enc -aes-256-cbc -salt -in fajl.txt -out fajl.enc

Fajl kasnije možete vratiti u normalno stanje sledećom komandom:

openssl enc -d -aes-256-cbc -in fajl.enc

U ovim gore primerima smo koristili AES algoritam za enkripciju, ukoliko želite neki drugi pomoću sledeće komande možete videti koje OpenSSL podržava:

openssl -h

I to je to.

Red Hat 5.4

September 5, 2009
Izašla je nova verzija popularnog Red Hat Enterprise Linux 5.4 . Glavna novina u novoj verziji je svakako implementirana podrška Kernel-based Virtual Machine (KVM) hipervizora na x86_64 platformi. KVM je čedo Izraelske kompanije Qumranet koju je kasnije kupio Red Hat. Popularnost KVM-a drastično je porasla od momenta kad je isti postao integralni deo Linux Kernel-a, [...]

Earcandy - jer imamo i uši

August 13, 2009

Ovo je jedan od onih programa koje morate da probate da biste se uverili koliko je koristan. Na prvo čitanje, možda ne zvuči da je u pitanju nešto revolucionarno, Earcandy prati koje aplikacije puštaju zvuk na vašem računaru, i odlučuje kojoj će da da prioritet u glasnoći.

Ali, instalirajte ovaj program i koristite ga nekoliko dana, shvatićete da je pun pogodak i nikada ga nećete propustiti kroz apt-get remove :)

Da vidimo o čemu se radi... Slušate muziku, i u Firefoxu otvorite on-line video da pogledate, Earcandy to odmah primeti i muziku utiša sve dok se video ne završi, i odmah nakon toga je ponovo pojača. Aha... Ili, dok gledate film, zazvoni vam VoIP telefon! Nema potrebe za pauziranjem, traženjem dugmeta za utišavanje jerbo Earcandy odmah utiša sve pošto ste postavili VoIP kao najprioritetniju aplikaciju. Ukratko, ukoliko ste vizuelan tip, pogledajte video fajl snimka Earcandy u akciji.

Sve ovo je moguće zato što se Earcandy oslanja na zvučni sistem pod imenom Pulse Audio (o kome pisah prošle godine). A ja jedva čekam da vidim šta će nam još pokloniti mogućnost kontrole koju PA pruža.

Okej, sada kada vam zvuči primamljivo, evo copy-paste uputstva kako da ga instlirate u vaš Ubuntu GNU/Linux sistem.

Prvo ćemo da dodamo javni ključ Launchpad PPA repozitorije:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6E73CA45

Onda, na kraj fajla /etc/apt/sources.list dodati gde se paketići nalaze:

deb http://ppa.launchpad.net/flimm/ppa/ubuntu jaunty main deb-src http://ppa.launchpad.net/flimm/ppa/ubuntu jaunty main

Earcandy je dostupan i za starije verzije Ubuntu-a. I sada, na kraju, instalirajte program:

sudo apt-get update sudo apt-get install earcandy

To je to. Pritisnite Alt i F2, pokrenite ear_candy i neka čarolija uradi svoje...

RealPlayer на x86_64 Debian

August 4, 2009
Таман инсталирам 32битни RealPlayer на 64битни Дебиан, покренем га да погледам неки стрим, кад ме дочека ужасно ружно сучеље, коцкасто, као пре 5 година! И, решим тај проблем...

GNU/Linux i ostala družina

July 27, 2009
Prezentacija sa predavanja koje sam održao na Astronomskom kampu Letenka 2009 o značaju slobodnog softvera uopšte i o njegovoj primeni u popularizaciji nauke. Linux I Ostala Druzina View more presentations from Milan Milosevic. Related posts:Goodbye M$ Windows !ITkutak.com – IntervjuU potrazi za vanzemaljskim civilizacijama Related posts:Goodbye M$ Windows !ITkutak.com – IntervjuU potrazi za vanzemaljskim civilizacijama

Linux Srbija spamuje domaću internet zajednicu

July 26, 2009

Pre nekoliko meseci dobio sam reklamnu poruku od sajta linuxsrbija.net. Predstavili su se kao veoma jaka i uticajna zajednica linuks korisnika nudeći reklamu.

Već prvi pogled na sajt linuxsrbija.net je pokazao da se uopšte ne radi o nekoj zajednici, pogotovo ne jakoj i da se u stvari izgleda radi o nekom porodičnom (svi funkcioneri na portalu se prezivaju isto: Branko Cvetić, vlasnik; […]

Linux memory management

July 10, 2009

Yesterday I had a request for memory usage report on Oracle servers in my company. As we are using Centreon, Nagios frontend which makes good use of performance data reported by Nagios plugins and makes nice graphs out of it, it was a matter of pasting the images into the mail and sending it. But than interesting question was raised: how come on a server with 32GB of RAM and with 30+ databases running, only 5GB of RAM is reported as used? Strange indeed.

I quickly logged in to server and checked memory usage:

loreto:/tmp # free              total       used       free    shared   buffers     cached Mem:      33274944   32931032     343912         0        20   27013200 -/+ buffers/cache:    5917812   27357132 Swap:     16779884    5603256   11176628

Really only 5GB, check_memory plugin was not wrong. Next this I checked were shared memory segments - Oracle uses shared memory in huge quantities, so this is also very important parameter.

loreto:/tmp # a=0; for i in $(ipcs -m|grep ^0x|awk ‘{print $5}’); do let a+=$i; done; echo $a 20443037885

Ugh, 20GB allocated for shared memory, while system reports only 5GB. Something is very wrong here. Confused, I took out the artillery.

loreto:/tmp # cat /proc/meminfo MemTotal:     33274944 kB MemFree:        198580 kB Buffers:            20 kB Cached:       27439580 kB SwapCached:     223880 kB Active:       16333936 kB Inactive:     15428724 kB HighTotal:    32634140 kB HighFree:        33516 kB LowTotal:       640804 kB LowFree:        165064 kB SwapTotal:    16779884 kB SwapFree:     10856700 kB Dirty:            1668 kB Writeback:           0 kB AnonPages:     4089416 kB Mapped:       10222968 kB Slab:           427584 kB CommitLimit:  33417356 kB Committed_AS: 49751960 kB PageTables:     826016 kB VmallocTotal:   112632 kB VmallocUsed:     22228 kB VmallocChunk:    90180 kB HugePages_Total:     0 HugePages_Free:      0 HugePages_Rsvd:      0 Hugepagesize:     2048 kB

Usually, used memory on Linux is calculated as (Total Memory - (Unused Memory + Buffers + Page Cache)). Why buffers and caches are not counted into memory usage? Simply because it contains data that is not really critical for operating system and applications running. It contains data that can be flushed and removed from the memory at any time.

So in my case that was:

33274944 - (198580 + 20 + 27439580) = 5636764

OK, this matches output from free command. But what about those 20GB of allocated shared memory?

Next few hours I spent in searching and reading Linux documentation on memory management and found few interesting things.

Linux uses principle of memory overcommitment. Basically, what this means is that when application requests memory to be allocated, kernel will always “give: the memory hoping that application will not really use it, or at least not the whole size allocated. Only when application tries to write the data into the memory, kernel will mark the memory as used. This can lead to situation where the size of allocated memory is actually higher than the size of physical memory inside the machine. But as long as there is no demand for allocated memory, system is running without problems.

And this is the core of my dilemma. Shared memory is allocated, but since there is no data in it, it is not counted into used memory.

Memory overcommit can be configured via two parameters:

loreto:/tmp # sysctl -a|grep overcommit vm.overcommit_ratio = 50 vm.overcommit_memory = 0

From Red Hat manual:

overcommit_memory — Configures the conditions under which a large memory request is accepted or denied. The following three modes are available: 0 — The kernel performs heuristic memory over commit handling by estimating the amount of memory available and failing requests that are blatantly invalid. Unfortunately, since memory is allocated using a heuristic rather than a precise algorithm, this setting can sometimes allow available memory on the system to be overloaded. This is the default setting. 1 — The kernel performs no memory over commit handling. Under this setting, the potential for memory overload is increased, but so is performance for memory intensive tasks (such as those executed by some scientific software). 2 — The kernel fails requests for memory that add up to all of swap plus the percent of physical RAM specified in /proc/sys/vm/overcommit_ratio. This setting is best for those who desire less risk of memory overcommitment.Note This setting is only recommended for systems with swap areas larger than physical memory. overcommit_ratio — Specifies the percentage of physical RAM considered when /proc/sys/vm/overcommit_memory is set to 2. The default value is 50.

Instaliranje PHP-GTK na Ubuntu 9.04

July 6, 2009

PHP-GTK je ekstenzija za PHP programski jezik koja implementira GTK toolkit. Ukratko, služi da u PHP-u pravimo samostalne grafičke aplikacije.

Ovde je opisana instalacije PHP-GTK 2.0.1 na Ubuntu 9.04 operativni sistem. Paket se ne nalazi u repozitoriji koja bi omogućila brzo i jednostavno instaliranje, već se mora kompajlirati iz izvornog koda.

Prvo instalirajte sve pakete potrebne za kompajliranje:

sudo apt-get install m4 gawk build-essential

PHP-GTK se može skinuti ovde, zatim raspakujte skinutu arhivu:

tar xzf php-gtk-2.0.1.tar.gz

PHP paket trenutno ima bag, te se pre kompajliranja mora napraviti ovaj trik:

cd /usr/share/aclocal cp libtool.m4 libtool-orig.m4 cat lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4 >> libtool.m4

Dalje ste spremni za kompajliranje po uputstvu sa PHP-GTK sajta. Ukratko:

./buildconf ./configure make sudo make install

I ne zaboravite da dodate sledeću liniju u /etc/php5/cli/php.ini:

extension=php_gtk2.so

To je to.

32 ili 64bita?

June 11, 2009
Ovo je mini linux howto za proveru da li je procesor i/ili operativni sistem 32bit-a ili 64bit-a (x86 platforma). Realna situacija u kojoj možete da naiđete na potrebu da ovako nešto proveravate je ako dođete na potpuno nepoznat “teren” pa treba da utvrdite šta je od postojeće opreme iskorišćeno i kako. Pa eto malog mini [...]

Volkswagen Amarok

June 7, 2009

Evo ga, Volkswagen Amarok:

VW je neko vreme davao imena automobilima po vetrovima (jetta, corrado, santana...), a sada su se bacili na GNU/Linux audio plejere :) Baš me interesuje kako će izgledati VW Rhythmbox...

Google Chrome за GNU/Linux и Mac OS X

June 5, 2009
Google је данас објавио рану развојну верзију Chrome веб прегледника за GNU/Linux и Mac OS X оперативне системе. Пуно тога недостаје у односу на чистокрвну Windows верзију, али је бар учињен први корак.

Debian testing & KDE 4.2.2 => problem

May 18, 2009
This entry is part 5 of 5 in the series GNU/Linux Debian - instalacija

Sinoć je Debian KDE tim ubacio novu verziju KDE 4.2.2 u testing verziju. Na žalost  običan apt-get upgrade je napravio lom

Rezultat upgrade-a bio je mrtav kdm, gdm je naravno radio ali nije bilo šanse da se pokrene KDE okuženje. Posle deintsliranja svih KDE paketa (čak je i apt-get nudio opciju autoremove) sledeći pokušaj instalacije bio je neuspešan.

Posle apt-get install kde sistem je izbacivao “unmet dependeny”:

kde: Depends: kdeaddons (>= 4:3.5.5) but it is not going to be installed"

Svi pokušaji da instaliram KDE (uključujući i sid repo) nisu dali rezultat.

Još uvek ne uspevam da rešim problem, a vidim da nisam jedini sa problemom ovog tipa. Sudeći po sajtu Debian-a izgleda da meta paket  kde više ne postoji u testing verziji, ubačen je nov meta paket kde-full.

apt-get install kde-full

Instalacija tog paketa isto nije dala rezultate (kdm se lepo pokrene, izbaci nov login promt i novu šminku, ali posle logina - prazan ekran).

Trenutna situacija: KDE na Debian testing mrtav, više informacija uskoro - kad proradi. Do tada - ako niste raspoloženi za experimentisanje ne radite upgrade

UPDATE: posle promene mirror-a (na ftp.us.debian.org)

apt-get update apt-get upgrade

KDE 4 konačno radi. E sad kako radi… to je već drugo pitanje & stvar ukusa. Možda ću ja ipak da uradim downgrade na stable verziju, tamo je još uvek KDE 3.5

Acer Aspire One 110

April 25, 2009
Друг Хатала ме је замолио да на нетбук Acer Aspire One 110 уместо Линукса на италијанском језику инсталирам неки други са подршком за српски, као и сетом канцеларијских и других основних алата. Ово је била прилика да тестирам нетбук са свежим Ubuntu 9.04 (Jaunty Jackalope) Netbook Remix.

Стигао је мајски Линукс Журнал бр. 181

April 8, 2009
Непуних месец дана након наградне игре Линукс Журнала у којој је награда за добитнике годишња претплата на електронско издање магазина, данас је објављен „први“ број 181 за мај 2009.