Sunday, December 21, 2008

Mailing List για το Σύλλογο Φίλων ΕΛΛΑΚ Χανίων

Ο Σύλλογος Φίλων ΕΛΛΑΚ Χανίων (που ελπίζουμε σύντομα να αποκτήσει και νομική υπόσταση) δεν διέθετε μέχρι σήμερα κάποιο βολικό τρόπο για την επικοινωνία των μελών του. Αυτή γινόταν κατά βάση μέσω του site:

http://www.ellak.tuc.gr

το οποίο ανήκει στο Πολυτεχνείο Κρήτης (από το οποίο συμμετέχουν στο Σύλλογο αρκετοί φοιτητές), αλλά έχει εμφανίσει πολλά προβλήματα και η διαθεσιμότητα του δεν είναι καλή.

Για το σκοπό αυτό, χθες το βράδυ για πρώτη φορά ασχολήθηκα με το mailman, και δημιούργησα την λίστα που φιλοδοξεί να γίνει το μέσο επικοινωνίας των μελών μας.
Η λίστα φυσικά είναι ανοικτή για όλους, και μπορείτε να δείτε λεπτομέρειες και να γραφτείτε εδώ:

http://lists.freebsdgr.org

Σημείωση: Μη χρησιμοποιήσετε hotmail για την εγγραφή σας, θα έχετε προβλήματα στη λήψη email.

Θα χαρούμε να σας δούμε!

Wednesday, December 17, 2008

To FreeBSD δεν είναι Windows

Είναι εκπληκτικό πως πολλές φορές μπορεί κανείς να καταλήξει στα ίδια συμπεράσματα χωρίς να έχει δει ποτέ το αρχικό κείμενο. Το άρθρο που παραθέτω παρακάτω είναι μετάφραση ενός γνωστού Αγγλικού, την οποία είχα κάνει εδώ και καιρό (αλλά ήταν κάπου ξεχασμένη και αδημοσίευτη). Άφορμη για να το θυμηθώ, ήταν μια μεσημεριανή (over coffee) συζήτηση, στην οποία ο συνομιλητής μου, χωρίς να το έχει διαβάσει, είχε καταλήξει στα ίδια συμπεράσματα - για να μην πω και με τα ίδια παραδείγματα!

To FreeBSD δεν είναι Windows

Αν και το άρθρο αναφέρεται στο FreeBSD, μπορείτε να το χρησιμοποιήσετε πρακτικά αυτούσιο, αντικαθιστώντας το FreeBSD με Linux ή αλλό FOSS project της αρεσκείας σας. Το άρθρο είναι παράγωγο έργο, και διανέμεται με άδεια Creative Commons. Πληροφορίες για το αρχικό κείμενο αναφέρονται στο τέλος του άρθρου.

Thursday, December 4, 2008

Εγκατάσταση ΕΛΛΑΚ στο Α ΕΠΑ.Λ Χανίων

Σε εργαστήριο πληροφορικής του Α' ΕΠΑ.Λ Χανίων, πραγματοποιήθηκε σήμερα εγκατάσταση ΕΛΛΑΚ. Συγκεκριμένα, σε 6 υπολογιστές του εργαστηρίου εγκαταστάθηκε Ubuntu 8.10 σε dual boot με Windows XP.
Σύντομα θα γίνει και εγκατάσταση σε άλλους 4 υπολογιστές, σε δύο από τους οποίους θα χρησιμοποιηθεί πιο ελαφριά διανομή (πιθανόν Xubuntu) δεδομένης της... ηλικίας τους.

Συζητείται επίσης το ενδεχόμενο αγοράς υπολογιστή για χρήση ως LTSP server, σε συνδυασμό με τερματικά που θα χρησιμοποιηθούν στη βιβλιοθήκη του σχολείου. Προτάθηκε τέλος να γίνει παρουσίαση για το ΕΛΛΑΚ σε μαθητές που ενδιαφέρονται, από τα μέλη του Συλλόγου Φίλων ΕΛΛΑΚ Χανίων.

Monday, December 1, 2008

Παρουσίαση ΕΛΛΑΚ στους Καθηγητές Πληροφορικής Δ.Ε. Χανίων

Σήμερα το πρωί 1/12, στο ΕΠΑ.Λ. Ακρωτηρίου Χανίων, και στα πλαίσια μιας ημερίδας εκπαιδευτικών πληροφορικής δευτεροβάθμιας εκπαίδευσης όλων των βαθμίδων, έγινε και μια παρουασίαση ΕΛΛΑΚ.
Μπορείτε να κατεβάσετε τα σχετικά αρχεία από εδώ:



Συζητήθηκαν γενικότερα τα πλεονεκτήματα του ΕΛΛΑΚ, και ειδικότερα όσο αφορά τη χρήση του στα Σχολικά Εργαστήρια. Έμφαση επίσης δόθηκε στην αξιοποίηση του συστήματος LTSP σε εργαστήρια με παλιά μηχανήματα.
Έγινε επίδειξη λειτουργίας του LTSP στο εργαστήριο του σχολείου (το οποίο ήδη λειτουργεί έτσι) και φυσικά μοιράστηκαν φυλλάδια και CD με Ubuntu 8.04.1 Alternate και Οpendisc με ΕΛΛΑΚ για Windows.

Friday, November 28, 2008

Ανακοίνωση Κυκλοφορίας: FreeBSD 6.4-RELEASE


Σήμερα το απόγευμα, το FreeBSD Project ανακοίνωσε επίσημα την κυκλοφορία της έκδοσης 6.4-RELEASE. Το 6.4-RELEASE πιθανόν θα είναι το τελευταίο της legacy σειράς 6-STABLE. Αν και οι περισσότεροι περιμένουν (ενδεχομένως ανυπόμονα) την έκδοση 7.1-RELEASE (η οποία αναμένεται να περάσει από δύο Release Candidates, αν και δεν υπάρχουν σημαντικά προβλήματα), ωστόσο η 6.4 θα χρησιμοποιηθεί ειδικά σε servers που ήδη έχουν κάποια παλιότερη έκδοση της σειράς 6 και δεν μπορούν εύκολα να αναβαθμιστούν σε 7.Χ
Από άποψης νέων χαρακτηριστικών το 6.4 δεν έχει προφανώς και τόσο πολλά να προσφέρει, με δεδομένο ότι πρόκειται για legacy branch, όπου η έμφαση δίνεται σε διορθώσεις και βελτιώσεις. Ωστόσο μπορείτε να δείτε τα νέα χαρακτηριστικά στο

FreeBSD 6.4 Release Announcement

Αυτό που μπορώ να πω με σιγουριά, είναι ότι αν κατεβάσετε το docs CD ή και το DVD (η 6.4-RELEASE είναι η πρώτη έκδοση που κυκλοφορεί επίσημα και σε DVD) θα βρείτε και το Ελληνικό Εγχειρίδιο! Είναι η πρώτη φορά που κυκλοφορεί επίσημη έκδοση του FreeBSD με πλήρες το πρώτο μέρος του Ελληνικού Εγχειριδίου (User's Handbook) το οποίο είναι αποτέλεσμα επίπονης εργασίας του FreeBSD Greek Documentation Project. Ευελπιστούμε στην 7.2-RELEASE το Εγχειρίδιο να έχει ολοκληρωθεί πλήρως.

Στο DVD (και το docs CD) η ελληνική τεκμηρίωση βρίσκεται στον κατάλογο:

/usr/share/doc/el_GR.ISO8859-7

Για όσους το επιθυμούν, το Εγχειρίδιο είναι διαθέσιμο και σε μορφή PDF.

Μπορείτε να κατεβάσετε οποιαδήποτε διαθέσιμη έκδοση του FreeBSD από κάποιο από τα πολλά mirror sites. To 6.4-RELEASE αναμένεται επίσης να εμφανιστεί σύντομα στους FTP servers μεγάλων ελληνικών ISPs.

Καλή ανάγνωση και καλή εγκατάσταση!

Sunday, November 23, 2008

Εγκατάσταση Drupal 6 στο FreeBSD

Φαντάζομαι γνωρίζετε όλοι το drupal. Είναι ένα από τα πλέον γνωστά CMS (Content Management Systems) το οποίο φέτος διακρίθηκε ως το καλύτερο της χρονιάς. Μπορείτε να μάθετε περισσότερες λεπτομέρειες στο κεντρικό site:

http://www.drupal.org

Μπορείτε επίσης να δείτε και το γνωστό Ελληνικό site (Γεια σου Νεκτάριε!):

http://www.mydrupal.gr

Με αφορμή μια πρόσφατη εγκατάσταση επίδειξης για ένα φίλο, θα δούμε εδώ συνοπτικά τα βήματα για την εγκατάσταση του drupal σε ένα FreeBSD server.

Εγκατάσταση


Μπορείτε φυσικά να εγκαταστήσετε το drupal στο FreeBSD απευθείας από τα ports. Εδώ όμως θα δείξουμε την εγκατάσταση υποθέτοντας ότι έχετε κατεβάσει το tarball του drupal6 απευθείας από το drupal.org
Πριν ξεκινήσετε την εγκατάσταση των ports, ανανεώστε τη Συλλογή των Ports με κάποιο εργαλείο (π.χ. csup, portsnap)

Εγκατάσταση Προαπαιτούμενων Ports


Γενικά θα πρέπει να εγκαταστήσετε:

  • Apache Web server

  • MySQL server - client

  • php5 και κάποια extensions



Αν τρέχετε ήδη κάποιο CMS ή άλλα sites είναι πιθανόν να έχετε ήδη κάποια ή και όλα εγκατεστημένα. Εδώ υποθέτουμε ότι έχετε μια νέα εγκατάσταση FreeBSD.

Εγκατάσταση Apache


Είναι φυσικά αρκετά απλή:

# cd /usr/ports/www/apache22
# make install clean


Δεν χρειάζεται να κάνετε κάποια αλλαγή στις προεπιλεγμένες ρυθμίσεις. Με το τέλος της εγκατάστασης, προσθέστε τη γραμμή:

apache22_enable="YES"

στο αρχείο /etc/rc.conf. Ξεκινήστε τον apache άμεσα δίνοντας ως root:

# /usr/local/etc/rc.d/apache22 start

Μπορείτε να διαπιστώσετε αν λειτουργεί σωστά, βλέποντας τη default σελίδα. Σε ένα browser χρησιμοποιήστε την IP του server σας, π.χ. http://192.168.0.20
Θα δείτε τη σελίδα "It works"

Εγκατάσταση MySQL server/client


Ξανά από τη Συλλογή των Ports:

# cd /usr/ports/databases/mysql50-server
# make install clean


Μαζί με τον server θα εγκατασταθεί ως dependency και ο mysql50-client. Το συγκεκριμένο port δεν υποστηρίζει το options framework, και θα πρέπει να δώσετε τυχόν επιλογές απευθείας στη γραμμή εντολών. Ωστόσο, για την εγκατάσταση μας αυτό δεν είναι απαραίτητο.

Μετά την εγκατάσταση, ενεργοποιήστε τον server, προσθέτοντας στο /etc/rc.conf:

mysql_enable="YES"

Ξεκινήστε τον:

# /usr/local/etc/rc.d/mysql-server start

Δημιουργήστε ένα κωδικό για το χρήστη root της MySQL:

# mysqladmin -u root password 123456

Δημιουργήστε μια βάση δεδομένων για το drupal:

# mysqladmin -u root -p123456 create drupaldb

Δημιουργήστε ένα χρήστη drupaluser και δώστε του τα κατάλληλα δικαιώματα για την βάση drupaldb:

# mysql -u root -p123456 drupaldb
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 60
Server version: 5.0.67 FreeBSD port: mysql-server-5.0.67_1

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>GRANT SELECT, INSERT, UPDATE, DELETE,
CREATE, DROP, INDEX, ALTER ON drupaldb.*
TO 'drupaluser'@'localhost' IDENTIFIED BY '567890';


Query OK, 0 rows affected (0.02 sec)

mysql>flush privileges;

Query OK, 0 rows affected (0.02 sec)

mysql>exit;


Εννοείτε ότι θα βάλετε πιο σοβαρούς κωδικόυς από τα "123456" και "567890" !

Εγκατάσταση php και extensions


Πρόκειται για άλλη μια απλή εγκατάσταση:

# cd /usr/ports/lang/php5
# make install clean


Επιλέξτε οπωσδήποτε από το διάλογο options:

[X] APACHE Build Apache module

Δεν χρειάζεται να αλλάξετε τις υπόλοιπες επιλογές.

Προχωράμε στα extensions:

# cd /usr/ports/lang/php5-extensions
# make install clean


Στις επιλογές, επιλέξτε οπωσδήποτε τις παρακάτω:

[X] MBSTRING multibyte string support
[X] MYSQLI MySQLi database support
[X] GD GD library support
[X] PCRE Perl Compatible Regular Expression support
[X] SESSION session support
[X] XML XML support


Δεν χρειάζεται να αλλάξετε κάποια από τις υπόλοιπες επιλογές.

Εγκατάσταση drupal



Κατεβάστε το tarball του drupal από την κεντρική τοποθεσία. Π.χ.

# cd ~
# fetch http://ftp.drupal.org/files/projects/drupal-6.6.tar.gz


Αποσυμπιέστε τα αρχεία στον κατάλογο που επιθυμείτε. Στο παράδειγμα μας, χρησιμοποιείται ο κατάλογος /usr/vhosts αλλά μπορείτε να τον προσαρμόσετε όπως θέλετε.

# mkdir -p /usr/vhosts
# cd /usr/vhosts
# tar xvzf ~/drupal-6.6.tar.gz


Θα πρέπει τώρα να έχετε τον κατάλογο /usr/vhosts/drupal-6.6.
Δημιουργήστε ένα αντίγραφο του αρχείου ρυθμίσεων και αλλάξτε την ιδιοκτησία του καταλόγου:

# cd /usr/vhosts/drupal-6.6
# cd sites/default
# cp default.settings.php settings.php
# cd ..
# chown -R www:www default


Ιδιοκτήτης του καταλόγου default θα είναι πλέον ο χρήστης www ο οποίος είναι από προεπιλογή ο apache στο FreeBSD. Με το τέλος της εγκατάστασης, θα πρέπει να αλλάξετε ξανά τα δικαιώματα στο settings.php. Δεν χρειάζεται πλέον να μπορεί ο apache να γράψει σε αυτό το αρχείο.

Πριν ξεκινήσουμε με το site, θα πρέπει να κάνουμε κατάλληλες ρυθμίσεις στον apache. Ανοίξτε το αρχείο /usr/local/etc/apache22/httpd.conf και προσθέστε τις γραμμές που σημειώνονται με έντονα γράμματα:

DefaultType text/plain
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps


Βεβαιωθείτε επίσης ότι υπάρχει η γραμμή:

LoadModule php5_module libexec/apache22/libphp5.so

και ότι δεν είναι σχόλιο (δεν έχει '#')
Τέλος, αλλάξτε τη γραμμή:

DirectoryIndex index.html

σε

DirectoryIndex index.html index.php

Για να δηλώσουμε το νέο site μας, θα δημιουργήσουμε ένα VirtualHost. Αυτό δεν είναι απαραίτητο αν θέλετε να έχετε ένα μόνο site. Στην περίπτωση αυτή, αρκεί να αλλάξετε το DocumentRoot στο httpd.conf ώστε να δείχνει στο /usr/vhosts/drupal-6.6. Για να δημιουργήσουμε όμως VirtualHost, θα πρέπει να βγάλουμε τη '#' από τη γραμμή:

Include etc/apache22/extra/httpd-vhosts.conf

Επεξεργαστείτε τώρα το αρχείο /usr/local/etc/apache22/extra/httpd-vhosts.conf. Θα πρέπει να μοιάζει με το παρακάτω:

NameVirtualHost *:80

<VirtualHost *:80>
  ServerAdmin drupaladmin@mail.com
  DocumentRoot /usr/vhosts/drupal-6.6
  Options -Indexes
  CheckSpelling on
  ServerName drupal.homedns.org
  LanguagePriority el en
  ErrorLog /var/log/drupal-error_log.txt
  CustomLog /var/log/drupal-access_log.txt combined
  <Directory /usr/vhosts/drupal-6.6>
    AllowOverride All
    Order Allow,Deny
    Allow from all
  </Directory>
</VirtualHost>


Επανεκκινήστε τον apache για να ισχύσουν οι αλλαγές:

# apachectl restart

Είμαστε σχεδόν έτοιμοι να εισέλθουμε στο site από κάποιο browser, και να ολοκληρώσουμε τις ρυθμίσεις. Πριν από αυτό, βεβαιωθείτε ότι το μηχάνημα που θα χρησιμοποιήσετε γνωρίζει σε τι αντιστοιχεί το drupal.homedns.org αν πρόκειται για όνομα που δεν έχετε καταχωρήσει στο DNS. Προσθέστε για παράδειγμα, την παρακάτω γραμμή στο /etc/hosts του μηχανήματος "πελάτη":

192.168.0.20 drupal.homedns.org

Σημείωση: Σε μηχάνημα Windows θα πρέπει να αλλάξετε το c:\windows\system32\drivers\etc\hosts

Στον μηχάνημα αυτό, ανοίξτε τώρα τον browser και γράψτε:

http://drupal.homedns.org

Ακολουθήστε τις οδηγίες δίνοντας το όνομα της βάσης (drupaldb), χρήστη (drupaluser) και κωδικού. Η διαδικασία τελειώνει σχεδόν αμέσως, και σύντομα θα βρεθείτε να προσθέτετε περιεχόμενο στο νέο σας drupal website!

Monday, November 17, 2008

CVSup ... πολυβόλο!

Με ξετρελαίνουν οι αυτόματες Ελληνικές μεταφράσεις. Γυρίστε αν χρειάζεται το encoding του browser σας σε iso-8859-7, διαβάστε και απολαύστε:

http://www.mydigitallife.info/2005/11/11/update-freebsd-ports-collection-up-to-date-and-latest/el/

Πότε μέχρι σήμερα δεν είχα καταλάβει πόση... ποίηση περιέχει ένας CVSup server ;)

Sunday, November 16, 2008

XFCE Menu + FreeBSD

Το XFCE είναι θαυμάσιο γραφικό περιβάλλον - γρήγορο στην εγκατάσταση ακόμα και αν το κάνει κάποιος compile από τα ports. Ωστόσο όποιος έχει συνηθίσει σε κάτι όπως το GNOME (ή ακόμα περισσότερο το KDE) μερικές φορές σταματάει σε λεπτομέρειες.

Θυμήθηκα χτες να εγκαταστήσω το evince. Θεωρώ ότι είναι αρκετά καλός document viewer. Η εγκατάσταση του είναι φυσικά αρκετά απλή:

# cd /usr/ports/graphics/evince
# make install clean

Μετά την εγκατάσταση, μπορούσα να εκτελέσω μια χαρά το evince από το Terminal, αλλά δεν υπήρχε πουθενά στο μενού του XFCE. Επέλεξα τη μέθοδο του "απλού χρήστη" και άνοιξα το menu editor από τα Settings του XFCE. Με καλοσώρισε το παρακάτω παράθυρο:



Ωραία, γιατί μάθαμε κάτι για τις ρυθμίσεις: Αν προσέξετε τον τίτλο θα δείτε ότι το αρχείο που αλλάζει ο editor είναι:

/home/sonic/.config/xfce4/desktop/menu.xml

Ωστόσο, δεν είναι αυτό που θέλουμε εδώ. Δεν βρίσκονται εδώ οι καταχωρήσεις προγραμμάτων που έχουμε εγκαταστήσει ως root. Λογικό, γιατί αυτές δεν ανήκουν στο προσωπικό μας μενού, αλλά σε όλους τους χρήστες του συστήματος. Ακόμα και αν βάζαμε και το GNOME στο μηχάνημα μας, θα έπρεπε να τις δείχνει στο δικό του μενού. Η παραπάνω σκέψη, πρέπει σίγουρα να μας οδηγήσει στο σωστό κατάλογο: τον share.

Για την ακρίβεια, θα χρειαστεί να πάμε στο:

/usr/local/share/applications


Όλα αυτά τα αρχεία με κατάληξη .desktop αντιπροσωπεύουν καταχωρήσεις στο μενού. Υπάρχει και το ύποπτο αρχείο:

evince.desktop

Ανοίγοντας το (ως root) και προσπερνώντας τις καταχωρήσεις που έχει σε 100 γλώσσες, βρισκόμαστε επιτέλους μπροστά στον ένοχο:

NoDisplay=True

το οποίο αλλάζουμε αμέσως σε:

NoDisplay=False

και είμαστε πλέον έτοιμοι:



Ηθικό δίδαγμα: Text configuration files rule ;)

Tuesday, November 11, 2008

XFCE + FreeBSD Tweaks


Μερικές ακόμα ρυθμίσεις που μπορεί να κάνει κάποιος στο XFCE περιβάλλον του στο FreeBSD:

Αν και τις περισσότερες φορές προτιμάω την εκκίνηση σε text mode και login από κονσόλα, ίσως είναι προτιμότερο για αρκετούς χρήστες το γραφικό login. Για παράδειγμα, στον www.freebsdgr.org έχω το login screen της φωτογραφίας.
Δεν χρειάζεται να βάλετε κανένα τεράστιο login manager για κάτι τόσο απλό. Υπάρχει το slim. Η εγκατάσταση είναι πολύ απλή:

# cd /usr/ports/x11/slim
# make install clean


Και φυσικά προσθέτουμε την παρακάτω γραμμή στο /etc/rc.conf:

slim_enable="YES"


Υπάρχει τρόπος η εκκίνηση του slim να γίνεται με τον κλασικό τρόπο, όπως το xdm, μέσα από το αρχείο /etc/ttys. Σχετικές οδηγίες δείχνει το port κατά την εγκατάσταση του. Αυτό εξασφαλίζει και ότι σε περίπτωση που τερματίσετε τον X server (ή μετά από κάποιο crash) το slim θα εκτελεστεί ξανά, αυτόματα. Με τη ρύθμιση του rc.conf, αν πιέσετε CTRL+ALT+BACKSPACE, το slim και ο X server θα τερματίσουν, και θα γυρίσετε στο console login. Αυτό μπορεί ωστόσο να είναι επιθυμητό μερικές φορές.
Αν σε μια τέτοια περίπτωση θέλετε να επανεκκινήσετε το slim, δώστε ως root (ή με sudo):

# /usr/local/etc/rc.d/slim start


To slim έχει μια σειρά από εύκολες ρυθμίσεις στο αρχείο:

/usr/local/etc/slim.conf


και είναι σίγουρο ότι δεν θα δυσκολευτείτε να το φέρετε στα μέτρα σας.

XFCE και Shutdown



Ώστε θέλετε να κάνετε shutdown το σύστημα σας μέσα από το XFCE...
Αυτό γενικά είναι δυνατόν, με τρεις τρόπους:


  • Αν έχετε sudo μπορείτε να κάνετε shutdown από το μενού του XFCE. Θα σας ζητηθεί ο κωδικός σας

  • Από το μενού του XFCE, χωρίς κωδικό, ρυθμίζοντας κατάλληλα τον παλιό μας φίλο, το PolicyKit

  • Χρησιμοποιώντας την εντολή shutdown από κάποιο terminal, αλλά αυτό το ξέρετε ήδη ;)



Η πρώτη μέθοδος είναι στην πραγματικότητα το fallback method, αφού το XFCE πρώτα δοκιμάζει το hal. Για να χρησιμοποιήσετε λοιπόν τη δεύτερη μέθοδο, θα χρειαστείτε κάποιες ρυθμίσεις στο αρχείο
/usr/local/etc/PolicyKit/PolicyKit.conf (ανάμεσα στα <config>...</config> tags):


<match action="org.freedesktop.hal.power-management.shutdown">
<match user="yourusername">
<return result="yes"/>
</match>
</match>
<match action="org.freedesktop.hal.power-management.reboot">
<match user="yourusername">
<return result="yes"/>
</match>
</match>


Αυτό ήταν! Μπορείτε τώρα να κάνετε shutdown και reboot το desktop FreeBSD σας, χωρίς να δίνετε κωδικό.

Monday, November 10, 2008

Παρουσίαση ΕΛΛΑΚ στο Λύκειο Νέας Χώρας Χανίων


Στο Λύκειο Νέας Χώρας Χανίων, πραγματοποιήθηκε με επιτυχία το Σάββατο 8/11 παρουσίαση του ΕΛΛΑΚ στους μαθητές.

Εξηγήθηκαν οι έννοιες του Ανοικτού και του Ελεύθερου Λογισμικού, του πηγαίου κώδικα και του εκτελέσιμου προγράμματος, των αδειών χρήσης κλπ.

Υπήρξε αρκετό ενδιαφέρον από τους μαθητές οι οποίοι είχαν αρκετές απορίες. Έγινε εγκατάσταση Ubuntu 8.10 σε μηχανήματα του εργαστηρίου αλλά και σε μηχανήματα που είχαν φέρει οι ίδιοι οι μαθητές για το σκοπό αυτό. Μπορείτε να βρείτε εδώ την παρουσίαση που χρησιμοποιήθηκε.

Ελπίζω αυτή να είναι η αρχή μιας σειράς παρουσιάσεων σε σχολεία ώστε να υπάρξει μια σχετική ευαισθητοποίηση συναδέλφων και μαθητών.

Wednesday, November 5, 2008

Κατάσταση Μεταφράσεων FreeBSD

Μπορείτε να ενημερωθείτε για την τρέχουσα κατάσταση μεταφράσεων της τεκμηρίωσης του FreeBSD, στην παρακάτω σελίδα:


Η σελίδα αυτή ανανεώνεται αυτόματα, καθώς δημιουργείται δυναμικά με την βοήθεια κάποιων scripts και με βάση στοιχεία που αποθηκεύονται σε κάθε αρχείο του repository των μεταφράσεων.

Αν θέλετε να βοηθήσετε στη μετάφραση της τεκμηρίωσης, μπορείτε να επιλέξετε ένα αρχείο από αυτή τη σελίδα. Όλα τα αρχεία που έχουν δίπλα τους ένα κόκκινο τετραγωνάκι είναι αμετάφραστα (εκτός από τον τίτλο και τη Σύνοψη). Κάνοντας κλικ στον σύνδεσμο που παρέχεται, θα κατεβάσετε στον υπολογιστή σας το αντίστοιχο αρχείο SGML και μπορείτε να ξεκινήσετε!

Στείλτε μας απλώς ένα μήνυμα στη λίστα των μεταφραστών:


και ενημέρωστε μας για το κεφάλαιο που προτίθεστε να μεταφράσετε. Θα χαρούμε επίσης να σας λύσουμε όποια απορία έχετε σχετικά με αυτό το έργο.

Μπορείτε να εγγραφείτε στη λίστα, χρησιμοποιώντας αυτή τη σελίδα:


Για περισσότερες λεπτομέρειες, επισκεφθείτε το wiki μας:

http://www.freebsdgr.org

όπου μεταξύ άλλων θα βρείτε το μεταφρασμένο τμήμα του Εγχειριδίου, του FAQ και διάφορων άρθρων.

Θα χαρούμε να σας δούμε να συμμετέχετε σε αυτή την προσπάθεια!

Sunday, October 26, 2008

XFCE Automounting & άλλα annoyances ;)

Το FreeBSD είναι γνωστό ότι χρειάζεται αρκετές "χειροκίνητες" ρυθμίσεις για να γίνει ένα συνηθισμένο desktop. Σε πολλούς αυτό φαίνεται ως χάσιμο χρόνου, όμως σε όσους ασχολούνται είναι απλώς μια ευκαιρία για μάθηση και βαθύτερη κατανόηση του συστήματος τους.
Οι περισσότεροι χρήστες θεωρούν δεδομένο ότι μόλις συνδέσουν το usb flash drive τους, θα προσαρτηθεί αυτόματα και θα εμφανιστεί το σχετικό εικονίδιο στην επιφάνεια εργασίας τους.
Το παραπάνω σχετίζεται με μια σειρά αυτοματισμών που θα πρέπει να ρυθμίσετε στο FreeBSD με τον παραδοσιακό τρόπο (ρύθμιση conf αρχείων). Εδώ εξετάζουμε πως μπορεί να γίνει στο γραφικό περιβάλλον του XFCE4, αν και αντίστοιχες ρυθμίσεις θα χρειαστούν και για άλλα γραφικά περιβάλλοντα.

Βήμα 1ο: Επιτρέψτε το mounting από κανονικούς χρήστες


Οι παρακάτω πληροφορίες υπάρχουν στο FreeBSD Handbook και το FAQ. Τις αναδημοσιεύουμε εδώ στα ελληνικά, καθώς η μετάφραση των κεφαλαίων αυτών δεν έχει ολοκληρωθεί ακόμα.
Για να μπορεί ένας απλός χρήστης να προσαρτήσει συστήματα αρχείων από CD/DVD και flash drives, θα πρέπει:
  • Να γίνει ρύθμιση του πυρήνα με ένα κατάλληλο sysctl

  • Να δοθούν τα κατάλληλα permissions στις αντίστοιχες συσκευές, στον κατάλογο /dev. Αυτό είναι αρκετά απλό για συσκευές που υπάρχουν στο σύστημα ήδη από την εκκίνηση (CD-ROM) αλλά είναι ελαφρά πιο σύνθετο για συσκευές που προσθαφαιρούνται δυναμικά (USB drives).

  • Το σημείο προσάρτησης πρέπει να έχει κατάλληλα δικαιώματα (ιδιοκτήτης πρέπει να είναι ο χρήστης)
Τα παραπάνω είναι οι ρυθμίσεις που πρέπει να γίνουν για το βασικό σύστημα, και δεν είναι για αυτόματη προσάρτηση: Απλώς εξασφαλίζουν ότι ένας κανονικός χρήστης μπορεί να προσαρτήσει κάποια συστήματα αρχείων χωρίς να χρειάζεται να γίνει root ή να χρησιμοποιήσει το sudo.

Ρύθμιση του Πυρήνα


Αρκετά εύκολο. Εκτελέστε την εντολή:

# sysctl vfs.usermount=1

Προσθέστε επίσης την παρακάτω γραμμή στο /etc/sysctl.conf ώστε να ενεργοποιείται σε κάθε εκκίνηση:

vfs.usermount=1

Η ρύθμιση του πυρήνα έχει ολοκληρωθεί.

Ρύθμιση των συσκευών (/dev)


Για να μπορεί κάποιος χρήστης να χρησιμοποιεί τις συσκευές που δημιουργούνται όταν συνδέουμε κάποιο usb flash drive, θα πρέπει να έχει δικαιώματα σε αυτές. Οι συσκευές αυτές στο FreeBSD φαίνονται ως scsi, με ονόματα του τύπου /dev/daX. Θα πρέπει λοιπόν να δώσουμε τις κατάλληλες οδηγίες στο devfs ώστε οι συσκευές να δημιουργούνται με τα κατάλληλα permissions. Προσθέτουμε την παρακάτω γραμμή στο /etc/devfs.rules:

[localrules=5]
add path 'da*' mode 0660 group operator


Θα πρέπει να ενεργοποιήσουμε αυτούς τους κανόνες, προσθέτοντας το παρακάτω στο /etc/rc.conf:

devfs_system_ruleset="localrules"


Μια και είμαστε εδώ, ας κάνουμε το ίδιο και για το CD-ROM drive. Τυπικά το CD-ROM δεν είναι αφαιρούμενη συσκευή σε ένα σύστημα (εκτός αν είναι USB, αλλά τότε καλύπτεται από τους παραπάνω κανόνες). Χρειάζεται να προσθέσουμε τις παρακάτω γραμμές στο /etc/devfs.conf το οποίο αφορά την εκκίνηση του συστήματος:

own /dev/acd0 root:operator
perm /dev/acd0 0660


Αν η συσκευή CD-ROM έχει άλλο όνομα, προσαρμόστε κατάλληλα τις παραπάνω γραμμές. Αν έχετε παραπάνω από μια συσκευή CD-ROM, θα έχετε και /dev/acd1. Τέλος αν χρησιμοποιείτε το atapicam module, θα έχετε και συσκευές τύπου /dev/cd0 (SCSI).

Αν προσέξετε τις παραπάνω οδηγίες, έχουμε δώσει δικαιώματα στο operator group. Αν ο λογαριασμός σας δεν ανήκει στο operator group, θα πρέπει να τον προσθέσετε:

# pw groupmod operator -m myusername


Προσάρτηση


Η ρύθμιση έχει ολοκληρωθεί. Αν δημιουργήσετε π.χ. τον κατάλογο mymount στο home σας (οπότε σίγουρα θα είστε ιδιοκτήτης) θα μπορείτε να προσαρτήσετε κάποιο CD-ROM γράφοντας:

$ mount -t cd9660 /dev/acd0 ~/mymount

και κάποιο USB flash drive, με κάτι σαν:

$ mount -t msdosfs /dev/da0s1 ~/mymount

Μην ξεχάσετε να αποπροσαρτήσετε το USB flash πριν το αφαιρέσετε! Αλλιώς θα έχετε πραγματικά δυσάρεστες συνέπειες...

Βήμα 2ο: Ρυθμίστε το XFCE


Εδώ οι ρυθμίσεις είναι πολύ απλές. Θα χρειαστεί να προσθέσετε τις παρακάτω γραμμές στο /usr/local/etc/PolicyKit/PolicyKit.conf:

<match action="org.freedesktop.hal.storage.mount-removable">
<return result="yes" />
</match>


Μπορείτε να κάνετε τους κανόνες πιο περιοριστικούς, βάζοντας γύρω από το παραπάνω ένα <match user="myusername"> ... </match> ώστε να περιρρίσετε τη δυνατότητα σε ένα συγκεκριμένο λογαριασμό.

Για να μπορείτε να ρυθμίσετε το automount του XFCE, εγκαταστήστε το πακέτο thunar-volman-plugin:

# cd /usr/ports/sysutils/thunar-volman-plugin
# make install clean


Στα XFCE settings θα έχετε πλέον και επιλογή "Removable Drives and Media" από την οποία μπορείτε να ορίσετε τι και αν θα γίνεται auto-mount.

Σημείωση: Από προεπιλογή ο Thunar (file manager) του XFCE στο FreeBSD δεν περιέχει στις ρυθμίσεις του το FAM (File Alteration Monitor). Αυτό σημαίνει π.χ. ότι αν δημιουργήσετε σε ένα terminal ένα κατάλογο στο Desktop, δεν θα εμφανιστεί μέχρι να πάτε στο Desktop και να πιέσετε το F5. Αυτό φυσικά είναι χαζό: εμείς θέλουμε το Desktop μας να ανανεώνεται αυτόματα. Μεταγλωττίστε λοιπόν ξανά το Thunar, αυτή τη φορά με FAM support:

# cd /usr/ports/x11-fm/thunar
# make deinstall
# make config
(επιλέξτε το FAM στο διάλογο)
# make install clean


Τελειώσατε! Τι; Φάγατε όλο το απόγευμα; Ήταν δημιουργικό όμως ;)

Περαιτέρω Διάβασμα: FreeBSD Handbook: Storage (Αγγλικά, για την ώρα :) )

Tuesday, October 21, 2008

Η χαρά του make release :)

"Ανακάλυψα" σήμερα το make release. Τα εισαγωγικά σημαίνουν ότι ήξερα την ύπαρξη του:

Οργάνωση Εκδόσεων του FreeBSD

αλλά δεν το είχα δοκιμάσει ποτέ.

Με απλά λόγια, το make release θα σας επιτρέψει να φτιάξετε το δικό σας FreeBSD release, από τα sources που έχετε ήδη στο δίσκο σας (ή που πρόκειται να κατεβάσετε). Θα σας φτιάξει μάλιστα και ένα ωραίο iso, έτοιμο για να το γράψετε σε CD και να το εγκαταστήσετε όπου θέλετε.

Δεν είναι καθόλου περίεργο που το documentation του FreeBSD περιέχει και man page σχετικό με το release:

$ man release

θα σας δώσει περισσότερες πληροφορίες από αυτές που πραγματικά θέλετε να ξέρετε σχετικά με την διαδικασία. Γενικά όμως, αυτό που μας ενδιαφέρει είναι μια εντολή:

# make release

Ωστόσο, πρέπει να διαβάσετε τι χρειάζεται από πριν:


  • Πρέπει να έχετε κάνει make buildworld στο σύστημα σας. Αυτό φυσικά προυποθέτει ότι έχετε όλα τα system sources. Αλλά σαν σωστός BSDer, πάντα τα έχετε, έτσι δεν είναι;

  • Χρειάζεστε αντίγραφο του CVS repository του FreeBSD. Προσοχή: δεν εννοούμε checkout μιας συγκεκριμένης έκδοσης / tag. Μιλάμε για πλήρες αντίγραφο του CVS (ναι αυτό με τα ",v" αρχεία) το οποίο φυσικά είναι τεράστιο. Αλλά παρακάτω θα σας πω πως να το αποφύγετε, αν το μόνο που θέλετε είναι να κάνετε release τα sources που έχετε ήδη εγκατεστημένα.

  • Ένα ευχάριστο βροχερό απόγευμα για να βλέπετε τον compiler να γεμίζει γραμμές το terminal...



Το σύστημα μου αυτή τη στιγμή έχει 7.1-PRERELEASE. Μετά από μια γρήγορη ματιά στο παράδειγμα του man page κατέληξα σε αυτό:

# cd /usr/src
# make buildworld
# cd release
# make release CHROOTDIR=/data/release \
BUILDNAME=7.1-PRERELEASE \
CVSROOT=/data/ncvs \
EXTSRCDIR=/usr/src \
-DNODOC -DNOPORTS \
-DNO_FLOPPIES \
-DMAKE_ISOS


To CVSROOT που βλέπετε είναι ψεύτικο! Στην πραγματικότητα τα sources για το build θα αντιγραφούν απευθείας από το EXTSRCDIR. Αν όμως δεν βάλετε το CVSROOT η make release αρχνείται να ξεκινήσει. Το make buildworld δεν είναι απαραίτητο αν έχετε ήδη κάνει τα sources buid στο παρελθόν. Στην πραγματικότητα το make release θα κάνει make installworld από το σύστημα σας σε ένα περιβάλλον chroot, και μέσα σε αυτό θα κάνει build τα sources που δώσατε (είτε μέσω του EXTSRCDIR, είτε μέσω του CVS). Όλα αυτά αναλύονται πολύ καλά στο man page του release. Έχετε τη δυνατότητα να περιλάβετε doc και ports στο δικό σας release, κάτι που απέφυγα αφού θέλω μόνο το βασικό σύστημα.

Αν επιλέξετε τη μέθοδο του CVS θα μπορείτε να κάνετε build όποια έκδοση του FreeBSD θέλετε - και φυσικά το CURRENT. Το μόνο κακό είναι ότι με τόσα χρόνια ιστορίας που έχει το CVS repository του FreeBSD και με την ταχύτητα της γραμμής μου, μέχρι να τελειώσει η cvsup, μάλλον θα έχει βγει και το 8.0-RELEASE...

Sunday, October 19, 2008

Ελληνικό Εγχειρίδιο του FreeBSD σε PDF!

Μετά από αρκετή ώρα επεξεργασίας (και κολλημάτων...) στο openoffice.org writer, για πρώτη φορά το Εγχειρίδιο του FreeBSD (Handbook) στα Ελληνικά σε PDF:

Περισσότερες πληροφορίες στην ιστοσελίδα της Ελληνικής Ομάδας Τεκμηρίωσης

Tuesday, October 14, 2008

Χρήση του FreeBSD ως Internet Gateway

Με αρχική έμπνευση αυτό το ποστ στη λίστα freebsd-questions, σκέφτηκα να εξερευνήσω πιθανούς τρόπους δημιουργίας ενός gateway μέσω του FreeBSD. Πρόκειται τελικά για μια απλή διαδικασία.

Προυποθέσεις


Χρειάζεστε δύο κάρτες δικτύου. Η πρώτη συνδέεται στο Internet (ενδεχομένως μέσω εκείνου του φτηνιάρικου ADSL router που πήρατε μαζί με τη σύνδεση σας). Η δεύτερη συνδέεται στο τοπικό σας δίκτυο. Κατά πάσα πιθανότητα συνδέεται σε μια θύρα ενός switch στο οποίο είναι συνδεμένο και το υπόλοιπο τοπικό σας δίκτυο. Παρακάτω φαίνεται ένα απόσπασμα (με σχόλια) από το γνωστό αρχείο ρυθμίσεων /etc/rc.conf:


# rl0 : Σύνδεση στο internet (μέσω ADSL router)
ifconfig_rl0="inet 192.168.0.100 netmask 255.255.255.0"
# rl1 : Σύνδεση στο τοπικό δίκτυο
ifconfig_rl1="inet 192.168.1.100 netmask 255.255.255.0"
# defaultrouter: Το IP του φτηνιάρικου ADSL router :)
defaultrouter="192.168.0.250"


Εννοείτε ότι στο /etc/resolv.conf θα υπάρχει ο σχετικός DNS server (συνήθως του παροχέα σας):

nameserver 195.170.0.1
nameserver 195.170.2.1


Με ρυθμίσεις αντίστοιχες με τις παραπάνω, το FreeBSD σύστημα σας θα έχει Internet μέσω της κάρτας δικτύου rl0.

Ενεργοποίηση του PF Firewall


Το FreeBSD έχει επιλογές στα Firewalls! Το PF firewall προέρχεται από το OpenBSD και είναι πολύ ισχυρό. Ενεργοποιήστε το με τις ακόλουθες καταχωρήσεις στο /etc/rc.conf:


pf_enable="YES"
pflog_logfile="/var/log/pflog"
pflog_flags=""
pf_rules="/etc/pf.conf"
pf_flags=""


Προφανώς μπορείτε να αλλάξετε τις σχετικές ρυθμίσεις flags διαβάζοντας τη σχετική σελίδα στο man. Το αρχείο /etc/pf.conf φυσιολογικά έχει τις ρυθμίσεις σας για το firewall.

Για να λειτουργήσει το FreeBSD ως gateway, θα πρέπει να προσθέσετε επίσης την παρακάτω γραμμή στο /etc/rc.conf:


gateway_enable="YES"


Για να λειτουργήσει αυτή η ρύθμιση (αν δεν θέλετε να κάνετε επανεκκίνηση), θα πρέπει να δώσετε τις εντολές:


# sysctl net.inet.ip.forwarding=1
# /etc/rc.d/routing restart


Προφανώς μπορείτε να αλλάξετε τις σχετικές ρυθμίσεις flags διαβάζοντας τη σχετική σελίδα στο man. Το αρχείο /etc/pf.conf φυσιολογικά έχει τις ρυθμίσεις σας για το firewall. Θα χρειαστεί να προσθέσετε τον παρακάτω κανόνα για να ενεργοποιήσετε το NAT:


nat pass on rl0 from rl1:network to any -> rl0


Ανάλογα με τις άλλες ρυθμίσεις που έχετε βάλει στο firewall, ενδεχομένως να χρειαστείτε και άλλους κανόνες (ώστε π.χ. να επιτρέπεται η κίνηση από την κάρτα για το τοπικό δίκτυο). Παράδειγμα:

pass in quick on rl1 proto { tcp, udp, icmp } from any to any keep state


Σημείωση: Στο αρχείο /etc/pf.conf, οι κανόνες για Translation (nat pass) τοποθετούνται ακριβώς πριν τους κανόνες για filtering. Συνήθως οι κανόνες filtering ξεκινάνε με κάποιο firewall policy, π.χ.:

# The default firewall policy is to block everything.
block in log all
block out log all


Έχοντας ολοκληρώσει τις παραπάνω ρυθμίσεις, μπορείτε να κάνετε επανεκκίνηση ή να ξεκινήσετε / επανεκκινήσετε χειροκίνητα τις αντίστοιχες υπηρεσίες:


# /etc/rc.d/netif restart
# /etc/rc.d/routing restart
# /etc/rc.d/pf restart


Η ρύθμιση έχει ολοκληρωθεί!
Φυσικά, αυτός δεν είναι ο μοναδικός τρόπος ρύθμισης. Αν για παράδειγμα χρησιμοποιείτε το IPFW firewall, θα βρείτε πολύ καλές οδηγίες στην αντίστοιχη ενότητα του FreeBSD Handbook.