Sep
26
2009
Μπυροσυνάντηση 10 Οκτώβρη 2009

Μαρκάρετε την παρακάτω ημερομηνία στο ημερολόγιo σας:

10.10.09

Ημέρα Σάββατο στους 5 δρόμους στα εξάρχεια κανονίζουμε μία συνάντηση για μπύρες, (to know us better).

Το συζητάμε εδώ,
αλλά αφορμή ψάχνουμε για να μαζευτούμε παρέα και να πιούμε μια μπύρα.

Η πρόσκληση είναι ανοιχτή για όσους διαβάζουν αυτό το post
(εάν τυπώσετε αυτό το post - τα νερά θα είναι κερασμένα)

Sep
24
2009
Linux Gazette from greek mirror
Sep
22
2009
Dovecot LDA - Fatal: setgid

Κάτι το οποίο με ταλαιπώρησε αρκετά σήμερα ήταν το γεγονός ότι ο dovecot-lda: /usr/local/libexec/dovecot/deliver δεν είχε την δυνατότητα να παραδώσει τα emails που δεχόταν από τον smtp daemon.

Οπότε τροποποίησα το configuration αρχείο για να καταγράφει όσο το δυνατόν περισσότερα μηνύματα και τελικά βρήκα στα logs το εξής:

==> dovecot-local-deliver.log <==
deliver(dovecot): Sep 22 22:25:52 Fatal: setgid(1000(dovecot)) failed with euid=1000(dovecot), gid=12(mail), egid=12(mail): Operation not permitted

Μετά από μερικά λεπτά διαλογισμού ήρθε η θεία επιφοίτηση ως δια μαγείας:


chgrp mail /usr/local/libexec/dovecot/deliver
chmod 04750 !$

όλα τέλεια πλέον ;)

Αυτά τα μικρά πραγματάκια είναι που σε στέλνουν!

Sep
19
2009
Relay access denied

16:15 εγκατάσταση postfix από sources
17:35 1st log entry - attempt for spam (open relay)

1 ώρα και 20 λεπτά !

NOQUEUE: reject: RCPT from mout3.freenet.de[195.4.92.93]:

Sep
16
2009
DHCP 4.1.0p1 no-IPV6 no-installation

Τον τελευταίο καιρό προσπαθώ να θυμηθώ βασικές αρχές προγραμματισμού από τον καιρό που ήμουν φοιτητής. Δεν θεωρώ τον εαυτό του σε καμία περίπτωση προγραμματιστή. Μάλιστα οι κόποι μου αποτελούν μικρά patches (diffs) στην δουλειά που κάνουν ήδη άλλοι (hacks) και πιο ειδικά στο xfce.

Όμως απογοητεύτηκα αρκετά από τους προγραμματιστές της isc. Προσπαθώντας να εγκαταστήσω ένα dhcp server για τις ανάγκες ενός μικρού lan από τον πηγαίο κώδικα, διαπίστωσα ότι κατά το compilation που επέστρεφε ένα όχι και τόσο συνηθισμένο σφάλμα:

packet.c:139: error: ‘ip’ is used uninitialized in this function

Οκ προφανώς κάτι μου λείπει;
Αυτό δεν σκέφτεστε όλοι;

Κι όμως ….

Η έκδοση που χρησιμοποιώ είναι η current stable: DHCP 4.1.0p1 και μετά από αρκετό διάβασμα του κώδικα τελικά κατάφερα να βρω γιατί επιστρέφει το συγκεκριμένο μήνυμα.

Ο dhcp προσπαθεί by-default να υποστηρίξει IPV6. Οκ μέχρι εδώ όλα καλά.
Δυστυχώς όμως οι προγραμματιστές ΔΕΝ έχουν βάλει ένα IF-THEN-ELSE κατά την περίπτωση που το linux-box ΔΕΝ έχει ipv6!!! και για αυτό “σκάει” το compilation με το παραπάνω μήνυμα.

Η λύση είναι εξαιρετικά απλή: Πρέπει να απενεργοποιηθεί η υποστήριξη για IPV6

./configure --disable-dhcpv6; make; make install

Αλλά μέχρι να το βρεις από ξυρισμένος κόντρα, καταλήγεις σαν τον stallman

Sep
08
2009
Recursive search & replace with sed

Κατά καιρούς (και μέχρι να μάθω από regular expressions) ένα από τα προβλήματα που με έχει ταλαιπωρήσει αρκετά ήταν το εξής:

Ήθελα σε άπειρα εις το τετράγωνο αρχεία που βρίσκονται κάτω από άπειρους καταλόγους να τροποποιήσω ένα και μόνο αλφαριθμητικό. Στο google θα βρείτε αρκετά προγράμματα κ.λ.π. - κ.λ.π., αλλά μπορεί να γίνει πανεύκολα με μία και μόνο εντολή:

find ΑΡΧΙΚΟΣ_ΚΑΤΑΛΟΓΟΣ -type f -name “ΤΟ ΜΟΤΙΒΟ ΤΩΝ ΑΡΧΕΙΩΝ” -exec sed -r -i ’s/ΑΛΦΑΡΙΘΜΗΤΙΚΟ/ΤΟ_ΝΕΟ_ΑΛΦΑΡΙΘΜΗΤΙΚΟ’ {} \;

και δίνω ένα παράδειγμα για να γίνω πιο κατανοητός:


find /www -type f -name "*.php" -exec sed -r -i 's/ebal/Evaggelos Balaskas/' {} \;

Εάν για παράδειγμα θέλετε να αντικαταστήσετε παραπάνω από ένα αλφαριθμητικό τότε μπορεί κανείς να χρησιμοποιήσει κάτι τέτοιο (έστω ότι θέλω να αλλάξω τις λέξεις ebal ή ebalaskas με το Evaggelos Balaskas):


find /www -type f -name "*.php" -exec sed -r -i 's/(ebal|ebalaskas)/Evaggelos Balaskas/' {} \;

ΥΓ: Την 1η φορά που κατάφερα να κάνω μία υπερβολικά περίπλοκη εργασία σε μερικά δευτερόλεπτα ένιωσα έτσι: i know regular expressions !!!

Sep
08
2009
lvm sucks

Την προηγούμενη εβδομάδα εγκατέστησα ένα centos 5.3 μέσω netinstall.
Επέλεξα να κάνω μία minimal installation αλλά να ακολουθήσω τις προτάσεις του centos.

Μία από αυτές λοιπόν ήταν η χρήση lvm σε δύο δίσκους (η 1η επιλογή).
To centos δημιουργεί 3 partition: /boot / & swap.

Όλα καλά κι όλα ωραία, το μηχάνημα είχε ελάχιστο cpu load παραπάνω (ειδικά σε μεγάλα rsync > 65GB) αλλά φαινόταν οκ. Μέχρι εχθές.

Ένα προγραμματισμένο reboot για να ελέγξω ότι όλα τα services και τα iptables λειτουργούν άψογα για να μπορώ να εξασφαλίσω την εύρυθμη λειτουργία του συστήματος.

Και ξαφνικά το grub δεν βρίσκει τπτ απολύτως.
Διατηρώ ένα usb stick με SystemRescueCd και διαπιστώνω με μεγάλη μου θλίψη ότι ΔΕΝ μπορώ να διαβάσω καν τα lvm partitions !!!

lvm sucks

Ευτυχώς που είχα και δεύτερο server όπου ανέλαβε από passive να γίνει active

Sep
08
2009
paco 2.0.7

Στις 30 Αυγούστου 2009 ο David Rosal, δημοσίευσε την νέα έκδοση του paco: 2.0.7.

Αυτή η έκδοση δεν έχει να προσθέσει νέα χαρακτηριστικά, αλλά να βελτιστοποιήσει κυρίως το gpaco (gtk based GUI)

Βρήκα όμως σήμερα την αφορμή για να το εγκαταστήσω εκ νέου και να κάνω ένα review στο Paco Mini How To που διατηρώ για το paco (και έχει προσθέσει στα links και ο David στο project - είναι αυτό με την ελληνική σημαία: http://paco.sourceforge.net/doc.html)

Διαβάζοντας λοιπόν το man 8 paco, πρόσεξα το εξής option:

-o, --configure-options

το οποίο μου είχε διαφύγει στο παρελθόν. Μπορείς να δεις με τι options είχες εγκαταστήσει ένα πρόγραμμα:

paco -o pidgin
–disable-screensaver –disable-vv –disable-meanwhile –disable-nm –disable-tcl

Πολύ εντυπωσιακό έτσι;

Επίσης στα scripts, πρόσθεσε και ένα αρχείο για bash_completion.d:

cp scripts/paco_bash_completion /etc/bash_completion.d/paco

Για όσους ασχολούνται με source compilation ας μην το προσπεράσουν.
Το paco είναι από τα καλύτερα προγράμματα που έχω δουλέψει κι ελπίζω το παραπάνω mini how to που έχω γράψει να σας βοηθήσει.

Sep
01
2009
Xfce Translation easyness with Transifex

Σε προηγούμενο μου post είχα αναφέρει κάποια ενδιαφέροντα δρώμενα που συμβαίνουν γύρω από το xfce.

Πλέον η μεταφορά όλων των έργων σε git έχει ολοκληρωθεί, και πολύ σημαντικό είναι ότι ολοκληρώθηκε και η εγκατάσταση ενός instance του transifex για την διαδικασία των μεταφράσεων.

Τα στατιστικά μας για τα κύρια προγράμματα είναι τα εξής:

Xfce: 78% (2007/27/537)
Applications: 65% (2435/159/1151)
Panel Plugins: 42% (601/31/784)
Thunar Plugins: 19% (62/0/262)

Οι δύο (2) συνήθεις ύποπτοι είναι οι εξής:

Σταύρος Γιαννούρης κι εγώ (Ευάγγελος Μπαλάσκας).

Κατά την προσωπική μου άποψη χρειαζόμαστε τουλάχιστον τέσσερα (4) actions που πρέπει να γίνουν και σχετικά γρήγορα.

a. QA στις μεταφράσεις που έχουμε ανεβάσει (θέλει πολύ δουλίτσα αυτό)
b. Φυσικά να 100% τουλάχιστον το xfce (δεν είναι ΠΑΡΑ πολύ δύσκολο αυτό)
c. Να βρούμε ανθρώπους που χρησιμοποιούν το xfce στα ελληνικά και να μας προτείνουν διορθώσεις
d. Να βρούμε ανθρώπους που θα βοηθήσουν στις μεταφράσεις του xfce.

Το QA στις ήδη υπάρχουσες μεταφράσεις είναι σχετικά δύσκολο.
Όσο κι εάν προσπαθούμε με τον Σταύρο να έχουμε ένα “κοινό” μεταφραστικό στυλ, αυτό συνήθως χάνεται με τον καιρό ή γινόμαστε πιο έμπειροι (τουλάχιστον εγώ) και βλέπω λάθη στην απόδοση των όρων.

Δυστυχώς ο χρόνος μας (σίγουρα ο δικός μου - πιστεύω και του Σταύρου) μειώνεται μέρα με την μέρα και όσο περνάει ο καιρός κάποια πράγματα μένουν αρκετά πίσω. Για αυτό λοιπόν όπως ενδιαφέρεται να βοηθήσει με τις μεταφράσεις του xfce ας κάνει ένα βήμα μπροστά. Το μόνο που χρειάζεται είναι λίγο μεράκι παραπάνω και αρκετή υπομονή.