Professional Documents
Culture Documents
Full Circle Issue 34
Full Circle Issue 34
´O´ TTE
ELÓ UTÁNA
full circle magazine #34 tartalom ^
full circle
Minden szöveg- és képanyag, amelyet a magazin tartalmaz, a Creative Commons Nevezd meg! -Így add tovább! 2.5 Magyarország Li-
cenc alatt kerül kiadásra. Ez annyit jelent, hogy átdolgozhatod, másolhatod, terjesztheted és továbbadhatod a benne található cikkeket
a következő feltételekkel: jelezned kell eme szándékodat a szerzőnek (legalább egy név, e-mail cím vagy url eléréssel) valamint fel kell
tüntetni a magazin nevét (full circle magazin) és az url-t, ami a www.fullcirclemagazine.org (úgy terjeszd a cikkeket, hogy ne sugalmazzák azt, hogy te készí-
tetted őket vagy a te munkád van benne). Ha módosítasz, vagy valamit átdolgozol benne, akkor a munkád eredményét ugyanilyen, hasonló vagy ezzel kom-
patibilis licensz alatt leszel köteles terjeszteni.
full circle magazine #34 tartalom ^
A magazin az alábbi programok
használatával készült:
E
bben a hónapban egy új GIMP Hogyant olvashattok a fotók digitális retusálásá-
ról. Sokan gondolják, hogy a GIMP nem ér fel egy Photoshoppal, de ez az okta-
tóanyag majd megmutatja, hogy erejük összemérhető. Remélhetőleg a
következő számban is lesz GIMP Hogyan. Ha már a GIMP-ről beszélünk, még
mindig kapunk leveleket Ubuntu felhasználóktól, akik azon tűnődnek, mi fogja felválta-
ni a GIMP-et az Ubuntu későbbi kiadásaiban, mivel képszerkesztőre mindenképp szük-
ség van, ezzel egyet kell értsek. Mivel egy kezdőnek elég nyomasztó, lehet, hogy itt az
ideje egy alapfunkciós GIMP-nek, csak a legszükségesebbekkel?
Szintén ebben a számban, Lucas (a cikkek szerzője) írt egy Az Ubuntu egy teljes értékű ope-
ismertetőt az új Asus UL30-A laptopjáról. Az Ubuntu Játékok rovatban Ed ismerteti az rációs rendszer, mely egyaránt
kiváló laptopokra, asztali gépek-
et az -től. Töltsd le a demó verziót és próbáld ki, de fontold re és szerverekre. Mindegy, hogy
meg a tejles verzió megvásárlását is, támogatva ezzel azokat, akik natív Linuxos játéko- otthon, az iskolában vagy munká-
kat készítenek. £20 ($33 / €26)-ért szinte ingyen van. ra használod, az Ubuntuban min-
den szükséges alkalmazás
megtalálható, mint például szö-
Ebben a hónapban fültanúi lehetünk a visszatérésének is! A vegszerkesztő, levelezőprogram
műsorvezetők Robin Catling, Ed Hewitt és Dave Wilkins. Köszönet nekik, amiért eleget és webböngésző. Az Ubuntu in-
tettek a kihívásnak! A negyedik oldalon találhatók további információk és a letöltési gyenes és mindig is az marad.
link. Elérhetőek a podcast@fullcircle.org címen. Nem kell licencdíjat fizetni. Letöl-
tés után rögtön használható és
teljesen ingyen odaadhatod csa-
Mindenkinek jó olvasgatást kívánok! ládodnak, kollégáidnak, barátaid-
nak, iskolatársaidnak.
F
Módosítsuk a menu eljárásun- def Menu():
olytassuk a 7. részben kat úgy, hogy a jobb oldalon lé- cbk = Cookbook() # Initialize the class
elkezdett recept adatbá- vő kódra hasonlítson: loop = True
zisunk programozását. while loop == True:
Ez a cikk hosszú lesz, és print
A menut egy if|elif|else '==================================================='
sok-sok kódot fog tartalmazni. struktúrával töltjük fel print ' RECIPE DATABASE'
Szóval kössétek fel a gatyákat, (következő oldal, balra fent). print
és ne felejtsétek a kezeket és lá- '==================================================='
bakat mindvégig a kocsiban tar- print ' 1 - Show All Recipes'
Gyorsan fussunk át a menu print ' 2 - Search for a recipe'
tani. Az adatbázisunkat már metódusunkon. A felhasználó ál- print ' 3 - Show a Recipe'
létrehoztuk. Most már szeret- tal választható opciók kiíratásá- print ' 4 - Delete a recipe'
nénk megjeleníteni a tartalmát, val kezdünk. Egy változót (loop) print ' 5 - Add a recipe'
hozzáadni, illetve törölni belőle. print ' 6 - Print a recipe'
True-ra (igaz) állítunk és a while print ' 0 - Exit'
De hogyan is fognak ezek mű- ciklusban addig iterálunk, amíg print
ködni? Kezdésként egy konzolos a loop=False nem lesz. A raw_in- '==================================================='
alkalmazást fogunk elkészíteni, put() paran- response = raw_input('Enter a selection -> ')
ehhez pedig egy menüt kell
full circle magazine #34 tartalom ^
Programozzunk Pythonban - 8. rész /usr/bin/python -u
"/home/greg/python_examples/APSW/cookbook/cookbook_stub.py"
===================================================
RECIPE DATABASE
if response == '1': # Show all recipes ===================================================
pass 1 - Show All Recipes
elif response == '2': # Search for a recipe 2 - Search for a recipe
pass 3 - Show a Recipe
elif response == '3': # Show a single recipe 4 - Delete a recipe
pass 5 - Add a recipe
elif response == '4': # Delete Recipe 6 - Print a recipe
pass 0 - Exit
elif response == '5': # Add a recipe ===================================================
pass Enter a selection ->
elif response == '6': # Print a recipe
pass
elif response == '0': # Exit the program PrintAllRecipes rutinnak nincs
print 'Goodbye' pass
loop = False
szüksége a (self) paraméteren def PrintOut(self,which):
else: kívül másra, akárcsak a Search- pass
print 'Unrecognized command. Try again.' forRecipe-nek és az EnterNew el-
járásnak sem. A Néhány menüelemnél ki
kellene íratni a menüt újra PrintSingleRecipe, DeleteReci- szeretnénk majd íratni a Recipe
csot használva várunk arra, és újra, addig, amíg meg nem pe és PrintOut metódusoknak táblában lévő összes receptet,
hogy a felhasználó kiválasszon nyomjuk a "0"-t. Ekkor kiíratjuk tudniuk kell melyik recepttel így a felhasználó képes lesz vá-
egy menüelemet. Ezt követően a "Goodbye" szöveget és kilé- van dolguk, tehát szük- ségük lasztani a listából. Ezek az 1-es,
az if lekezeli a kiválasztott mű- pünk. Ezen a ponton már elkezd- van egy olyan paraméterre, 3-as, 4-es és 6-os opciók lesz-
veletet. Mielőtt azonban tesztel- hetjük a Cookbook osztályban amit most "which"-nek fogunk nek. Módosítsuk hát ezeket a
ni tudnánk mindezt, létre kell eljárásaink vázának létrehozá- nevezni. Egyelőre mind- egyik menüelmeket a pass parancs
hoznunk az osztályunk __init__ sát. Szükségünk lesz egy olyan kódtörzsben használjuk a pass cbk.PrintAllRecipes()-re való
eljárását: függvényre, ami megjeleníti a parancsot. A Cookbook osztály cseréjével. A felhasználói vissza-
Recipes tábla információit, egy alatt helyezzük el az eljárástör- jelzést ellenőrző rutinunk most
def __init__(self):
pass olyanra amivel kereshetünk a re- zseket: már így néz ki (ld. következő
ceptek között, egy másikra, def PrintAllRecipes(self): oldal tetején).
pass Van még egy dolog, amit
A programunkat mentsük ami megjelenít egy teljes recep- def SearchForRecipe(self):
ugyanoda, ahol múltkor az adat- tet a három táblából; egyre, pass meg kell tennünk: be kell állíta-
bázist hoztuk létre és futtas- ami töröl egy receptet, még egy- def nunk az __init__ metódust. A
suk. A jobbra fent található re, amivel új receptet tudunk fel- PrintSingleRecipe(self,which) kódtöredéket helyettesítsük az
: alábbi sorokkal:
képhez hasonlót kellene lát- venni, és végül egy olyanra, pass def __init__(self):
nunk. ami az alapértelmezett nyomta- def DeleteRecipe(self,which):
global connection
Egész egyszerűen csak ki tóval kinyomtatja a receptet. A pass global cursor
def EnterNew(self):
full circle magazine #34 tartalom ^
Programozzunk Pythonban - 8. rész
%(str(x[0]).rjust(5),x[1].lju menünek, illetve amikor kivá-
if response == '1': # Show all recipes st(30),x[2].ljust(20),x[3].lj lasztjuk az 1-est, akkor a követ-
cbk.PrintAllRecipes() ust(30))
print '--------------' kező oldal tetején láthatót
elif response == '2': # Search for a recipe
pass self.totalcount = cntr fogjuk kapni.
elif response == '3': # Show a single recipe Épp ezt akartuk elérni. Ha
cbk.PrintAllRecipes() A cntr változóban fogjuk szá- Dr. Pythont vagy hasonlót hasz-
elif response == '4': # Delete Recipe molni a képernyőn megjelení- nálunk, akkor csak annyi a
cbk.PrintAllRecipes()
elif response == '5': # Add a recipe tett receptek számát. Ezen a gond, hogy az alkalmazásunk
pass ponton már készen is vagyunk nem áll meg. Egyszerűen vára-
elif response == '6': # Print a recipe a metódussal. Ha esetleg ki- kozzunk, amíg a felhasználó
cbk.PrintAllRecipes() hagytál volna valamit, alant meg nem nyom egy gombot,
elif response == '0': # Exit the program
print 'Goodbye' megtalálod a szubrutin teljes így lesz pár perce a kimenet vé-
loop = False kódját. gigbogarászására. Ha már itt
else: vagyunk, akkor írassuk is ki az
print 'Unrecognized command. Try again.' Figyeljük meg, hogy használ- előbb beállított változóból az
juk az ASPW cursor.execute eljá- összes recept számát. Helyez-
Először létrehozunk két glo- rás által visszaadott vektort. A zük a menu 1-es választási le-
képernyőre "csinosan kiíratni"
bális változót a kapcsolathoz pkID-t, mint itemet írjuk ki, így hetősége alá:
a receptlista fejlécét. A megfele-
(connection) és a kurzorhoz (cur- a későbbiekben majd ki tudjuk
lő szóközölés eléréséhez hasz- print 'Total Recipes - %s'
sor). Mindkettőt bárhonnan el választani a megfelelő recep-
nálni fogjuk a "%s" formázási %cbk.totalcount
tudjuk érni a cookbook (szakács- tet. Amikor a programot lefuttat- print '---------------------
parancsot, és a balra zárást. Va-
könyv) osztályból. Ezután létre- juk, meg kellene jelennie a ----------------------------'
lami ilyesmit szeretnénk kapni:
hozunk egy self.totalcount
változót, amivel megszámoljuk Item Name Serves Source def PrintAllRecipes(self):
a receptek számát. Ezt a válto- ----------------------------- print '%s %s %s %s'
zót a későbbiekben is használni %('Item'.ljust(5),'Name'.ljust(30),'Serves'.ljust(20),
fogjuk. Végezetül létrehozzuk a Végül létre kell hoznunk az 'Source'.ljust(30))
kapcsolatot és a kurzort. SQL utasítást, ami lekérdezi az print '---------------------------------'
sql = 'SELECT * FROM Recipes'
adatbázist és kiíratja a találato- cntr = 0
A következő lépésben össze- kat. A múlt havi cikkben ennek for x in cursor.execute(sql):
rakjuk a Cookbook osztály Prin- nagyját már tárgyaltuk: cntr += 1
tAllRecipes() eljárását. Mivel a sql = 'SELECT * FROM Recipes' print '%s %s %s %s'
cntr = 0 %(str(x[0]).rjust(5),x[1].ljust(30),x[2].ljust(20),x[3
connection és a cursor változók for x in ].ljust(30))
globálisak, ezért nem kell min- cursor.execute(sql): print '---------------------------------'
den metódusban újra létrehozni cntr += 1 self.totalcount = cntr
őket. Ezt követően szeretnénk a print '%s %s %s %s'
full circle magazine #34 tartalom ^
Programozzunk Pythonban - 8. rész
általános változóként használ-
juk, és az egyes elemekre a zá-
Enter a selection -> 1
Item Name Serves Source rójelezett indexszel
-------------------------------------------------------------------------------------- hivatkozunk a tuple-ban. Mivel
1 Spanish Rice 4 Greg a táblázat elrendezése
2 Pickled Pepper-Onion Relish 9 half pints Complete Guide to Home Canning pkID/name/servings/ source, az
--------------------------------------------------------------------------------------
=================================================== x[0], x[1], x[2] és x[3] értéke-
RECIPE DATABASE ket fogjuk megjeleníteni. Ez-
=================================================== után a "wantot" fogjuk
1 - Show All Recipes használni ahhoz, hogy mindent
2 - Search for a recipe
3 - Show a Recipe kiválasszunk a hozzávalók táb-
4 - Delete a recipe lájából, ahol a recipeID (a recipe
5 - Add a recipe adattábla kulcsa) megegyezik az-
6 - Print a recipe zal a pkID-vel, amit éppen hasz-
0 - Exit
=================================================== náltunk. Végigiterálunk a vissza-
Enter a selection -> adott tuple-ön, mindegyik hoz-
závalót kiíratva, majd az inst-
ructions táblából kivesszük az
r promptot (Select a recipe -->), FROM Recipes WHERE instrukciókat - mint ahogy ezt
es = raw_input('Press A Key - majd, ha egy helyes választ gé-
> ') pkID=%s"%str(which)' lekérde- az ingredients táblánál csinál-
pelnek be, meghívjuk a Print- zést használjuk, ahol a where tuk. Végül, a felhasználó gomb-
Single Recipe() rutint a Recipe az az érték, amit meg szeret- nyomására várakozunk, hogy a
A második elemet (Recept
tábla beli pkID-vel a Cookbook nénk találni. Ezt követően az képernyőn meg tudjuk jeleníte-
keresése) ugorjuk egyelőre át,
osztályból. Ha a megadott ér- outputot "csinosan kiíratjuk" az ni a receptet. A kód a
és foglalkozzunk a hármassal
ték nem szám, akkor egy Value- ASPW által visszaadott tuple- következő oldalon található.
(egyetlen recept kiíratása). Elő-
Error kivétel dobódik, melyet a ből. Ebben az esetben x-et egy Most már a hatból két metó-
ször nézzük meg a menü ré-
ValueError: fog majd elkapni
szét. Itt íratjuk ki a receptek
(jobbra lent).
listáját, akárcsak az első opció- try:
nál, majd megkérjük a felhasz- res = int(raw_input('Select a Recipe -> '))
Következőként a Cookbook if res <= cbk.totalcount:
nálót, hogy válasszon. Ahhoz, cbk.PrintSingleRecipe(res)
osztályban lévő PrintSingleReci-
hogy a hibás inputokkal szem- elif res == cbk.totalcount + 1:
pe metóduson fogunk dolgozni.
ben bebiztosítsuk magunkat, print 'Back To Menu...'
Megintcsak a kapcsolattal és a else:
használni fogjuk a Try|Except ve-
kurzorral kezdünk, majd ezután print 'Unrecognized command. Returning to menu.'
zérlési szerkezetet. Meg fogjuk except ValueError:
létrehozzuk az SQL utasítást is.
jeleníteni a felhasználó felé a print 'Not a number...back to menu.'
Ebben az esetben a 'SELECT *
full circle magazine #34 tartalom ^
Programozzunk Pythonban - 8. rész
dussal készen vagyunk. Foglal- SQLite Database Browser sze-
def PrintSingleRecipe(self,which):
kozzunk akkor a keresés rutinnal, rű lekérdezés-szerkesztőt hasz- sql = 'SELECT * FROM Recipes WHERE pkID = %s' %
megint a menüvel kezdve. Sze- nálunk, akkor a like str(which)
rencsénkre csak a keresés utasí- utasításaink a "%" wildcardot print
tás meghívására van szükség fogják használni. Tehát, amikor '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
for x in cursor.execute(sql):
az osztályban. Cseréljük le a "rice"-t (rizs) tartalmazó recept- recipeid =x[0]
pass parancsot: névre keresünk, akkor a lekérde- print "Title: " + x[1]
zés ilyen lenne: print "Serves: " + x[2]
cbk.SearchForRecipe() print "Source: " + x[3]
SELECT * FROM Recipes WHERE print
Rakjuk most össze a kere- name like '%rice%' '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
sés algoritmusát. A Cookbook sql = 'SELECT * FROM Ingredients WHERE RecipeID
= %s' % recipeid
osztályban cseréljük le a Search- Mivel a "%" karakter a print 'Ingredient List:'
ForRecipe autogenerált törzsét sztringeknél egy helyettesítési for x in cursor.execute(sql):
a következő oldalon található karakter is, a %%-ot kell hasz- print x[1]
kódra. print ''
nálnunk a szövegünkben. Ami print 'Instructions:'
még rosszabb, az az, hogy egy sql = 'SELECT * FROM Instructions WHERE RecipeID
Jó sok minden van itt. Mi- helyettesítő karaktert haszná- = %s' % recipeid
után létrehoztuk a kapcsolatun- lunk a felhasználó által kere- for x in cursor.execute(sql):
kat és a kurzorunkat, megjele- print x[1]
sett szó beillesztésére is. Ezért print
nítjük a keresés menüt. A fel- a '%%%s%%' karakterso- '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
használónak három keresési le- rozathoz jutunk. Hát, nem ép- resp = raw_input('Press A Key -> ')
hetőséget, illetve egy kilépés pen szép. A harmadik
rutint fogunk felkínálni. A fel- lekérdezést Join utasításnak ne-
az ingredients táblából, a kap- ben (hagyma és paprika
használó egy szót kereshet a re- vezzük. Nézzük meg egy kicsit
csolatot, vagyis a hozzárende- fűszerek), egy zöld és egy pi-
cept nevében, forrásában, közelebbről:
lést a recipeID és a pkID ros. Ez megzavarhatja a fel-
vagy a hozzávalók listájában.
alapján megvalósítva. Ezután a használónk fejét. A menünk a
Emiatt nem tudjuk egyszerűen sql = "SELECT
r.pkid,r.name,r.servings,r.so like utasítással megkeressük a következő megoldást használja,
felhasználni az imént megírt
ami azt mondja:
megjelenítési metódust és létre urce,i.ingredients FROM hozzávalónkat, majd végül az
Recipes r Left Join
kell hoznunk egy személyresza- ingredients i on (r.pkid = eredményeket csoportosítjuk a searchin = raw_input('Enter
bott kiíratási rutint. Az első két i.recipeid) WHERE recepttáblabeli pkID szerint, ez- Search Type -> ')
opció egyszerű SELECT utasítá- i.ingredients like '%%%s%%' zel elkerülve, hogy a többszö-
GROUP BY r.pkid" %response rös adatok megjelenjenek. if searchin != '4':
sokat használ - egy kis csavar-
ral megtoldva: a "like" Emlékezzünk arra, hogy két pap-
Mindent kiválasztunk a reci- Ha a searchin (a felhasználó ál-
minősítőt használjuk. Ha egy rika van a második receptünk-
pe táblából és a hozzávalókat tal begépelt érték) NEM egyen-
full circle magazine #34 tartalom ^
def SearchForRecipe(self):
# print the search menu
print '-------------------------------'
print ' Search in'
print '-------------------------------'
print ' 1 - Recipe Name'
print ' 2 - Recipe Source'
print ' 3 - Ingredients'
print ' 4 - Exit'
searchin = raw_input('Enter Search Type -> ')
if searchin != '4':
if searchin == '1':
search = 'Recipe Name'
elif searchin == '2':
search = 'Recipe Source'
elif searchin == '3':
search = 'Ingredients'
parm = searchin
response = raw_input('Search for what in %s (blank to exit) -> ' % search)
if parm == '1': # Recipe Name
sql = "SELECT pkid,name,source,servings FROM Recipes WHERE name like '%%%s%%'" %response
elif parm == '2': # Recipe Source
sql = "SELECT pkid,name,source,servings FROM Recipes WHERE source like '%%%s%%'" %response
elif parm == '3': # Ingredients
sql = "SELECT r.pkid,r.name,r.servings,r.source,i.ingredients FROM Recipes r Left Join ingredients i
on (r.pkid = i.recipeid) WHERE i.ingredients like '%%%s%%' GROUP BY r.pkid" %response
try:
if parm == '3':
print '%s %s %s %s %s'
%('Item'.ljust(5),'Name'.ljust(30),'Serves'.ljust(20),'Source'.ljust(30),'Ingredient'.ljust(30))
print '--------------------------------------------------------------------------------------'
else:
print '%s %s %s %s' %('Item'.ljust(5),'Name'.ljust(30),'Serves'.ljust(20),'Source'.ljust(30))
print '--------------------------------------------------------------------------------------'
for x in cursor.execute(sql):
if parm == '3':
print '%s %s %s %s %s'
%(str(x[0]).rjust(5),x[1].ljust(30),x[2].ljust(20),x[3].ljust(30),x[4].ljust(30))
else:
print '%s %s %s %s' %(str(x[0]).rjust(5),x[1].ljust(30),x[3].ljust(20),x[2].ljust(30))
except:
print 'An Error Occured'
print '--------------------------------------------------------------------------------------'
inkey = raw_input('Press a key')
A
A főmenüben írd be: ; ez Az ISPConfig 3 legutóbbi
SquirrelMail webes D. Set pre-defined settings
elmenti a beállításokat: kiadásának telepítéséhez
levelezőkliens for specific IMAP servers
C Turn color on csináld ezt (az ISPConfig-
telepítéséhez futtasd S Save data Data saved in config.php 3.0.1.6.tar.gz-t cseréld ki a
az alábbi parancsot: Q Quit Press enter to continue legfrissebb verzióra):
aptitude install squirrelmail Command >> A főmenüben írj be -t a cd /tmp
kilépéshez.
Ezután készítsd el a Írd be: wget
következő szimbolikus linket: Ezután a SquirrelMailt a http://downloads.sourceforge.
net/ispconfig/ISPConfig-
Látni fogod az IMAP következő címen éred el: 3.0.1.6.tar.gz?use_mirror=
ln -s
szerver beállítási lehetőségeit: http://server1.example.com/we
/usr/share/squirrelmail/
/var/www/webmail bmail tar xvfz ISPConfig-
Please select your IMAP 3.0.1.6.tar.gz
server:.
... és konfiguráld a SquirrelMailt: vagy:
Írd be: cd
Aztán futtasd a
php -q install.php
parancsot. Ez indítja az
ISPConfig 3 telepítőt. Minden
opcióra nyomj , kivéve
a MySQL root jelszavára.
A telepítő automatikusan
beállítja az összes szolgálta-
tást, így nem kell manuálisan
beállítgatni azokat.
Ezután az ISPConfig
elérhető itt:
http://server1.example.com:80
80/
vagy itt:
http://192.168.0.100:8080/
Lépj be az
felhasználóval és jelszóval,
majd utóbbit változtasd meg
az első belépés után.
Ubuntu User is the first print magazine created specifically for Ubuntu users. Ease into
Ubuntu with the helpful Discovery Guide included in each issue, or advance your skills
with in-depth technical articles, HOW-TOs, reviews, tutorials, and community reports.
p e r y e a r for only
4 issues . 9 0 / U S $ 39. 95
EUR 2 9
£ 24. 90 /
A A
zzal kapcsolatban, z új Gateway SX2800
A FCM 31. számának 26. oldalával
hogy az Ubuntu terve- ($400) gépemen a kapcsolatban nem tudom megállni, A legjobb módja az ellenőrzés-
zi a GIMP leváltását, Windows 7 egy kicsit hogy ne válaszoljak, hiszen tudom nek, ha összehasonlítjuk egy Ubun-
adódik a kérdés: mi- gyorsabban bootol, a választ! Íme, mit kell tenni ahhoz, tu telepítőlemezzel (vagy Ubuntu
vel fogják helyettesíteni? Bizto-mint az Ubuntu 9.10. Ebben hogy egy DVD-t ily módon felismer- Alternate lemezzel). Keresd meg a
jen az Ubuntu. A könyvtáron belül különbségeket és szerkeszd a fenti
san helyettesítik valamivel, benne van az AVG ingyenes an- létrehozunk egy 'pool' nevű könyvtá- három fájlt. Természetesen, ellen-
hiszen az Ubuntu nem marad- tivírus program, a Windows tűz- rat. Ebben lesznek a .deb fájljaink, őrizd, hogy minden információ he-
hat valamiféle grafikai alkalma- fal, stb. A Firefox betölti a amire szükségünk van. lyes-e ezekben a fájlokban, hogy
zás nélkül. Elfogadom, hogy a honlapom 2 másodperc alatt, a elkerüld a meglepetéseket. Jelenleg
Nyissunk egy terminált és ebben a tehát ott járunk, hogy a './'-ben ez
GIMP túl sok a magunkfajta Thundebird 3 elindul 3 másod- könyvtárban adjuk ki: (feltételezve, található:
nem-grafikusoknak, szóval ta- perc alatt. Igen, a tartalom be- hogy az apt-ftparchive parancs tele-
lán a Photoshop Elements nyílt- töltése időbe telik, de nem pítve van) ./pool (.deb fájlokat tartalmazó
forrású megfelelője kellene? olyan lassan, mint ahogy Ubun- könyvtár)
apt-ftparchive packages ./Packages
tu 9.10 alatt. Az OO Writer és pool/ > Packages ./Packages.gz
Ha már itt járunk, nagyon Calc is megnyílik kevesebb, ./Packages.bz2
jó volna, ha az Ubuntu automati- mint 4 másodperc alatt. Ó, és apt-ftparchive packages ./.disk/info
kusan felajánlaná a fotók mére- ha szabad megemlítenem, Win- pool/ | gzip > Packages.gz ./aptoncd.info
./README.diskdefines
tének csökkentését email dos 7 alatt készenlétbe lehet apt-ftparchive packages
küldéskor, ahogy a Windows te- tenni és onnan vissza is hozni pool/ | bzip2 > Itt az ideje kiírni a CD-t vagy DVD-t,
szi. Jelenleg, ha fotókat akarsz a rendszert. Packages.bz2 minden úgy lesz, mint az Ubuntu tá-
emailezni, mindegyiket egyen- rolókban. Braseroval hibát fog jelez-
Fontos, hogy eme három fájl rend- ni kiíráskor, így szükség lesz egy
ként meg kell nyitni a GIMP- Az a kijelentés, hogy a Win- ben létrejöjjön, hiszen ezek tartal- ISO létrehozására, amit kiírhatunk.
pel, csökkenteni a méretét és dows 7 nem futtatja a régebbi mazzák azt az adatbázist, ami az A CD vagy DVD kiírása után ideje
aztán csatolni az üzenethez. Ez alkalmazásokat egyszerűen apt-getnek (vagy a Synapticnak) tesztelni, hogy telepíthetőként jele-
egy kicsit kellemetlen, mikor nem igaz. Nálam fut a FreeBA- kell. Még három fájlra lesz szüksé- nik-e meg, mint egy alternate vagy
günk: extra Ubuntu CD vagy DVD.
több fotót akarunk küldeni. SIC és a FBIde, mindkettő vi-
szonylag régi 32 bites ./.disk/info
alkalmazás. Az Ancestral Quest ./aptoncd.info
12 ugyanazon változata fut XP- ./README.diskdefines
n, Vista-n, 7-en gond nélkül.
Full Circle
tot, amibe sokan rengeteg időt lult kérdéskör, úgy érzem, hogy
és energiát öltek. egyedül hagytak egy süllyedő
hajón. Próbálok rájönni miképp
PS: Az Ubuntun kívül vállalsz
szerepet más hölgyekkel és a
nyílt forráskóddal összefüggő
projektekben?
is állok bizonyos dolgokkal.
Egyelőre az Ubuntu Women
projektet szeretném folytatni,
nagyon fontos része a közös-
Podcast
ségnek, még ha valaki más-
MD: A LinuxChix projekt tagja képp is látja.
vagyok, illetve a helyi Linux-fel- A visszatért és jobb, mint
használók találkozóinak szerve- Szeretném, ha a szabad szoft- valaha!
zésében is részt vállalok. Ezen veres közösség példát mutat-
felül a helyi LUG titkára va- na, hogyan kell egy online A mostani rész tartalmából:
gyok, továbbá az ausztráliai Li- közösségnek működnie. • átszervezés a Canonicalnél
nux tanácsban (ez a tanács • a Canonical online zeneáruháza
szervezi évente a linux.conf.au- PS: Van még valami, amiről sze- • Google Buzz
t, illetve segíti, támogatja, akár retnél nekünk beszélni? • Régi jó játékok
pénzügyileg is a FOSS-hoz kap- és az Acer Aspire Revo.
csolódó csoportokat) is benne MD: Jelenleg egyre inkább pre-
voltam két évig, de a harmadik ferálom a toll és papír kombiná-
évet kihagytam, úgy éreztem, ciót a digitális világgal
szükségem van egy kis szünet- szemben. Úgy gondolom, a kéz-
re. Ezeken kívül van még egy ki- zel írás egy olyan dolog, amit
sebb webes boltom mindenképpen meg kell őriz-
Sydneyben, Everything Linux nünk. A Podcastot és a hozzátartozó jegyzeteket itt
néven. találod: http://url.fullcirclemagazine.org/88a985
A
kódtörőkkel kell majd gyengén gyon jó a cselekménysorozata,
z Introversion Soft- védett gépekre betörnünk né- folyamatosan vezet minket elő-
ware mindig nagysze- hány adatért, melyeket el kell re. Bár jó pár óra játék és jó pár
rű támogatást küldenünk a megrendelőnek. Ké- küldetés után kissé unalmas
nyújtott Linuxhoz. lesz. Minden feladat valamennyi- * Lehetőséged van a
sőbb már komolyabb feladatok
Már foglalkoztunk egy játékuk- re hasonló, a munka megkezdé- legjobb hackerré válni
fognak ránk várni: betörni egy
kal, a Defconnal, most se és a teendők nagyjából * Egyedülálló játék
bankba, egy riválist börtönbe
ránézünk egy másikra, az Up- juttatni vagy feltörni a tőzsde megegyeznek.
linkre. számítógépes rendszerét. Ezek-
A játék hangulata kiváló, a * Elsőre nehézkes kezelés
hez már sokkal erősebb számító-
Az Uplink eléggé különbö- sötét képernyő valóban azt a ha- * Túl sok ismétlődő dolog
gépre és bonyolultabb
zik a többi megszokott játékok- rendszerre lesz szükségünk. Be- tást kelti, mintha egy sötét szo- a játékmenetben
tól. Egy szabadúszó hackert törni egy gépre azért nem bában, mindenki elől elrejtőzve
kell alakítanunk benne. Külön- olyan egyszerű, folyamatosan fi- kellene hackelnünk. A zene a
böző munkákat kapunk, hogy gyelnünk kell a hátunk mögé is. 90-es évek retro számait idézi,
törjünk be vállalatok számítógé- Minden kapcsolatunkat próbál- hasonló az év játékánál beállí-
pes rendszereibe és onnan lop- ják visszakövetni, szóval több totthoz. A játék kezelése nem
junk vagy módosítsunk gépet kell a cél és saját gépünk túl bonyolult, bár a számítógép
adatokat. Az elvégzett munkák közé iktatni a nehezebb és to- rendszerekhez csatlakozás, fáj-
után kapott pénzből pedig új vábbtartó visszakövetés lok törlése és mozgatás elsőre
eszközöket és szoftvereket ve- érdekében. Az Uplinknek na- nehézkes lehet.
hetünk a későbbi nagyobb kihí-
full circle magazine #34 tartalom ^
K
: Ahányszor csak belé- si időt, és jobban zárolni az álta- lakat is hozzá tudsz adni a zá- telepítsd ezt az Ubuntun, aztán
pek a Linuxba, automa- luk megtekinthető tartalmakat, rolt oldalak listájához. A telepítsd a Java-t a Bluetooth-
tikusan létrejön két új,valamint szeretnék hozzáférni Windows-os gépekkel való meg- os telefonra és már készen is
tartalom nélküli fájl a zenei fájljaimhoz és a képeim- osztásra leginkább a Samba állsz a számítógép irányítására.
(New Document.ott és New hez a házban található mind- használatos. Ez az oldal segít,
Spreadsheet.ots). Ha törlöm eze- egyik számítógépről, mint hogyan kezdj hozzá és a továb-
K
ket a fájlokat, és újra belépek, például a PC-mről, amin Win- biakban is:
akkor ezek a fájlok megint auto- dows 7 Home Premium 64bit https://help.ubuntu.com/commu- : Van egy gondom:
matikusan létrejönnek. Mi okoz- van. Kérlek, segíts, vagy adj nity/SettingUpSamba megkaptam az Ubun-
za ezt? meg olyan linkeket, ahol ezzel tu 9.10 telepítő CD-t
és szeretném a Wubi
V
kapcsolatos információkat talál-
K
: Valószínűleg van vala- hatok! Ubuntu 9.04 desktopot frissíte-
V
mi az indítási listá- : Szeretném a laptopo- ni. Hogyan tegyem ezt?
V
don. Keress valami : Az elérési idő korláto- mat (Lenovo R61i,
szokatlant itt: zásához legjobb az IP- Ubuntu Karmic Koala) : Sajnos az Ubunu Li-
tables, ami a kliensek irányítani Bluetooth-t ve CD-n nincs rajta a
IP címe alapján korlá- használó mobillal (Motorola frissítéshez szükséges
toz. Beletanulni elég sok időbe Q9H) és / vagy wifit használó eszköz, így vagy az
online frissítőt kell futtatnod,
K
telik, de van hozzá -- bodhiza- PDA-val (Palm Tungsten C) pél-
: Még teljesen új va- zennek köszönhetően -- egy dául bemutatók esetén (OpenOf- vagy le kell töltened az alterna-
gyok a szerver és a Li- igen átfogó útmutató, amiben fice Presentation) és tív telepítő CD-t, amin már raj-
nux használatában, megtalálhatsz minden téged multimédiás használatra (Rhy- ta vannak azok a fájlok, amikre
szükségem van a segít- érdkelő információt: thmbox / VLC). Milyen alkalma- szükséged van a frissítéshez.
ségedre. Szeretnék egy gépet http://bodhizazen.net/Tutori- zásokat kellene telepítenem a Ezen az oldalon megtalálhatsz
szerverként beüzemelni két als/iptables/. A megtekinthető laptopra és a mobilra/PDA-ra? minden szükséges dolgot:
V
NIC-kártyával a DSL-modem mö- tartalmak zárolásához az http://www.ubuntu.com/getu-
gött, és a wireless/4 port-os OpenDNS-t : Az anyremote pro- buntu/upgrading
switch-et emögé, amihez mind- (http://www.opendns.com/) aján- jekt (ganyremote és
egyik számítógép csatlakozik. lanám, ami kategóriák (adathal- kanyremote csomag
Szeretném, ha képes lennék ászat, pornográfia, az Ubuntu Szoftverköz-
így lezárni vagy lerövidíteni a időpocsékoló) alapján engedi a pontban) használható arra, ami-
gyermekeim számára az eléré- zárolást, valamint bizonyos olda- re szükséged van. Egyszerűen
* Packard Bell PC P4 2.93 GHz Mindez a Jaunty Jackalope alatt fut, egy hat éves Dell 4600
* Ati X300 grafikus kártya számítógépen, amely Pentium 4 (egymagos) processzor, Ra-
* 1GB RAM és 200GB HDD deon 7000 és 2,5 GB RAM van benne.
Minden tökéletesen működik, még a videókártyámhoz való Köszönöm a közösségnek, hogy ilyen döbbenetesen jó (a Föl-
zárt meghajtók nélkül is. dön a legjobb!) disztrót alkototta meg.
Dell Inspiron E1405 gépem van 1,6 GHz-es dual-core pro- Ubuntu 8.04-gyel kezdtem el a Linux használatát. Kipróbáltam
cesszorral és 2 GB RAM-mal. Ubuntu 9.10 Jaunty Jackalope- más Linux disztribúciókat is, de az Ubuntu lett a kedvencem.
ot futtatok rajta. Használom a Compizt. A screenletek a jobb Egy Gateway M-6309 típusú laptopot használok, amelyben Intel
oldalon (óra, a képkeret, az emlékeztető és a pidgin, amely Pentium Dual-Core T2330 GHz processzor, 2 GB memória, 320
az oldalsó panelhoz van rögzítve) és az Avant Window Navi- GB HDD és Ubuntu 8.10 működik. A háttérkép neve Ubuntu 2.0
gator (AWN), mint dokk. A Clearlooks témának a testre sza- és elérhető a http://www.gnome-look.org/ oldalon. Próbálkoztam
bott változatát használom Mist ikonkészlettel és Gilouche az Avant Window Managerrel, de jobban szeretem a
ablakkerettel. A terminálom átlátszó. A dokkon lévő alkalma- programokat a felső panelről, az Alkalmazások menüpontból
zások a következők: Firefox internetböngésző, Thunderbird e- indítani. Használok egy asztali PC-t is, amelyen Ubuntu 9.04 fut.
mail kliens, Drivel folyóirat/blog kliens, Leafpad szövegszer- Szeretem a nagyszerű alkalmazásokat, amelyek elérhetőek
kesztő, Pidgin üzenetküldő, Rythmbox zenelejátszó, GIMP és Ubuntu alatt. Soha nem akarok többé fizetni a szoftverekért.
Transmission bittorrent kliens, és a kuka a végén.
wikipediafs StarDict
http://wikipediafs.sourceforge.net/ http://stardict.sourceforge.net/
dict
https://sourceforge.net/projects/dict/
http://podcast.ubuntu-uk.org/
Néha a kevesebb több. A dict személyében egy terminál ala-
pú klienst ismerhetünk meg. Teljesen kompatibilis a Star-
Dicttel (valójában a StarDict alapja a dict), felhasználói felület
nélkül. Nem kapsz csillogó-villogó felületet, hanem egy letisz-
tult és produktív eszközt, ami rengeteg szolgáltatást támogat
utánozhatatlan sebességgel. Néha nincs jobb megoldás a régi
megoldásoknál.
Egy magazin, ahogy a Full Circle is, nem magazin cikkek nélkül. Osszátok meg velünk
véleményeiteket, desktopjaitok kinézetét és történeteiteket. Szükségünk van a
Fókuszban rovathoz játékok, programok és hardverek áttekintő leírására, a
Hogyanok rovatban szereplő cikkekre (K/X/Ubuntu témával); ezenkívül ha bármilyen
kérdés, javaslat merül fel bennetek, nyugodtan küldjétek a következő címre:
articles@fullcirclemagazine.org
full circle magazine #34 tartalom ^