Posted by superuser
Thu, 04 Nov 2010 09:19:00 GMT
I tried to update my FreeBSD system to current using csup and i got the following error:
TreeList failed: Error in
"/var/db/sup/ports-all/checkouts.cvs:.": 44453: File is
truncated. Delete it and try again.
checkouts.cvs:. is a cvs bookkeeping file and when is missing or corrupted cvsup (csup) falls back.
Instead of deleting the entire ports tree i find this solution :
# cd /var/db/sup/ports-all/
# sed -i~ -e '44453d' checkouts.cvs:.
Note that the 44453 indicates the number of corrupted line of checkouts.cvs:. Put the number of line reported in your case (and note the ending d).
Run again csup. and the missing line will be replaced with the correct data. In my case this solved the problem.
Source
Posted in FreeBSD | Tags ., checkouts.cvs, TreeList | no comments
Posted by superuser
Thu, 31 Dec 2009 12:25:00 GMT
This is a collection of my working environment preferences including nearly everything: OS, Window Manager, Software, Editors, Mailserver, …
The idea for the creation of this list has been adopted from a Pistos’ gist
Environment
Software, Desktop
Software, Server
Programming
Posted in Unix, FreeBSD, Ruby | Tags preferences | no comments
Posted by superuser
Fri, 06 Nov 2009 04:37:00 GMT
Please NOTE that now the port x11-wm/wmii-devel is updated on vers.3.9b1 , so what it follows is not needed !!!
# cd /usr/ports/x11-wm/wmii-devel && make install clean
Yesterday i spent a lot of hours to experiment with wmii window manager in FreeBSD. wmii is a small, dynamic window manager for X11. Offers tiling and classic modes to manage X11 windows, is higlhy scriptable and very well documented.
In FreeBSD ports collection, at the time of this writing, there are available two ports for wmii, the x11-wm/wmii and the newer x11-wm/wmii-devel. x11-wm/wmii port points to the latest stable version of 3..6, but it's reported as deprecated in the official website . On the other side x11-wm/wmii-devel targets to the s20090703 snapshot. In my case i wanted to install the latest recommended (beta) wmii 3.9b1. I have to say that FreeBSD port collection is one of the best packaging system and is updating in a fast and secure way by the ports engineers, but wmii is not the top famous window manager, so it's perfectly normal to not see a beta release here.
I'm not an expert FreeBSD porter but i made small changes on the Makefile of x11-wm/wmii-devel port to update at the latested 3.9b1 and it seems to work fine. You can download here my patch.
Take note that i considered the guidelines from this post, so i removed the dmenu and 9base dependencies of v.3.6 from the Makefile.
Tip for newbies: After applying the changes on wmii-devel's Makefile, do the following
# cd /usr/ports/x11-wm/wmii-devel
# make makesum
to automatically generate the updated distinfo file of the port, and
make install clean as usually
Posted in FreeBSD | Tags FreeBSD, window_manager, wmii | no comments
Posted by superuser
Mon, 05 Oct 2009 13:46:00 GMT
Το περασμένο Σαββατοκύριακο ο πάροχος του vps μου δέχθηκε μεγάλη επίθεση με σκοπό την εσκεμμένη αδρανοποίηση των υπηρεσιών των συστημάτων. Επιθέσεις αυτού του τύπου ονομάζονται και DoS attacks (Denial Of Service). Ο πάροχος αναγκάστηκε να μπλοκάρει την προεπιλεγμένη πόρτα ssh, μιας που οι επιθέσεις (14 ώρες !) αφορούσαν ως επί το πλείστον στην κλασσική πόρτα 22, και προέτρεψε όλους τους πελάτες να αλλάξουν πόρτα ssh. Το σύστημα μου είναι FreeBSD 7.1 vps
Η αλλαγή έπρεπε να γίνει μέσω VNC, μιας που η πόρτα 22 ήταν απενεργοποιημένη.
Εγκατέστησα το tsclient με υποστήριξη για vncviewer.
# cd /usr/ports/net/tsclient && make install clean
Για να συνδεθώ συμπλήρωσα τα απαραίτητα πεδία:

Παρατηρήστε ότι αν η θύρα (5129) είναι διαφορετική από την προκαθορισμένη 5800, τότε θα πρέπει να την προσθέσετε στο πεδίο Computer (όλα τα στοιχεία του παραδείγματος στη φωτογραφία είναι προφανώς ψεύτικα!)
O.K. Τώρα έχω εισέλθει στο σύστημα μου μέσω VNC και θέλω να αλλάξω την θύρα ssh.
Το μόνο που χρειάζεται να κάνετε είναι να ορίσετε την τιμή του Port στο /etc/ssh/sshd_config . Προσθέστε την νέα πόρτα (ή αφαιρέστε τον σχολιασμό από την ήδη υπάρχουσα καταχώρηση). Στην πείπτωση μου π.χ.
Port 1234
Αρκεί να ξαναφορτώσετε τη διεργασία sshd και είστε έτοιμοι!
# /etc/rc.d/sshd reload
Συνδεθείτε τώρα μέσω ssh αναφέροντας την νέα πόρτα:
$ ssh myusername@my.vps.net -p 1234
Posted in Unix, FreeBSD | Tags αλλαγή_πόρτας, ssh, tsclient, vnc, vps | no comments
Posted by superuser
Sat, 09 May 2009 06:55:00 GMT
Scite is my favorite text editor the last two years. It’s simple, lightweight and let me execute my scripts just pressing the F5 button (appends the results in the same window). Good indentation and supports a large list of programming languages. Scite is built upon the Scintilla and can be downloaded from here
[updated on 02/10/2009] The following informations are valid only for versions up to 1.79. From version-2, SciTE is using by default gtk20
In order to complete the installation of Scite on FreeBSD (with all 6/7 version) you have to take note of the followings:
Firstly, install Scintilla from the Ports Collection with the option WITH_GTK=yes . By default the port is set up to be built with gtk1.2 and if you do so, the Scite installation will fail.
# cd /usr/ports/x11-toolkits/scintilla
- make WITH_GTK2=yes install clean
If you are wondering why this happen, take a look at the
Makefile of Scintilla port.
.if defined(WITH_GTK2)
USE_GNOME= gtk20
PKGNAMESUFFIX:= -gtk2
.else
USE_GNOME= gtk12
MAKE_ARGS+= GTK1=yes
.endif
Now you’re ready to visit the Scite port
# cd /usr/ports/editors/scite
- make install clean
and the installation is completed!
Posted in FreeBSD | 6 comments
Posted by superuser
Sat, 26 Jul 2008 08:58:00 GMT
Το FreeBSD Documentation Project είναι υπεύθυνο για την τεκμηρίωση του FreeBSD και χωρίζεται σε διάφορους τομείς, όπως το website, άρθρα, το εγχειρίδιο χρήσης(handbook), τις σελίδες βοηθείας (man pages), τις συχνές ερωτήσεις(FAQ) κ.α.
Πριν από ένα χρόνο, τον Μάη του 2007, και ξεκινώντας από μηδενική βάση, δημιουργήθηκε μια ομάδα εθελοντών με στόχο την απόδοση της τεκμηρίωσης(documentation) του FreeBSD στην ελληνική γλώσσα. Σήμερα στην ελληνική ομάδα τεκμηρίωσης συμμετέχουν οι :
- Γιώργος Ιορδάνου
- Γιώργος Κεραμίδας
- Μανώλης Κιαγιάς
- Νίκος Κόκκαλης
- Παναγιώτης Κρητικάκος
- Στυλιανός Σιδερίδης
- Αριστοτέλης Σταματόπουλος
- Λεωνίδας Τσαμπρός
- Βαγγέλης Τυπάλδος
Μέχρι τον Δεκέμβριο του 2007 η επικοινωνία μεταξύ των μελών γινότανε μέσω email με πολλές κοινοποιήσεις. Καθώς η ομάδα και η εργασία είχε εξελιχθεί ήταν ώρα για τη δικιά μας mailing list : freebsd-doc-el . Αν επιθυμείτε να λάβετε μέρος στο project, η λίστα είναι το πρώτο μέρος που θα πρέπει να επισκεφτείτε. Γραφτείτε και στείλτε ένα post.
Στο project έχουμε τη τιμή και τη χαρά να συμμετέχουν ο Γιώργος Κεραμίδας (μέλος της Core Team του FreeBSD) και ο Μανώλης Κιαγιάς (doc/www committer του FreeBSD). Συντονίζουν, διορθώνουν και τελειοποιούν την δουλειά των υπολοίπων. Το project επεκτείνεται πέραν της δουλειάς των μεταφράσεων, καθότι συχνά λαμβάνουμε μέρος σε παρουσιάσεις (π.χ. Πανεπιστήμιο Πειραιώς, Fosscomm).
Αν θέλετε μπορείτε να γράψετε δικά σας πρωτότυπα άρθρα, και να διατηρείτε το δικό σας repository με την δικιά σας εργασία μεταφράσεων. Στο hg.hellug.gr μπορείτε να δείτε τα διάφορα mercurial repositories που διατηρούν μέλη της ομάδας για την εργασία τεκμηρίωσης.
Χάρις στο freebsdgr.org του Μανώλη Κιαγιά μπορείτε να δείτε την εργασία τεκμηρίωσης σε html. Πιο συγκεκριμένα:
-
Το Εγχειρίδιο του FreeBSD (Η κύρια πηγή τεκμηρίωσης του FreeBSD. Δεν πρόκειται για ένα απλό εγχειρίδιο. Είναι ένα πραγματικό βιβλίο. Η ομάδα έχει καταφέρει να ολοκληρώσει το πρώτο μέρος (10+ κεφάλαια) και συνεχίζει ακάθεκτη. Ελέγξτε την υψηλή ποιότητα μεταφράσεων και τη καθαρότητα του λόγου. Αυτό είναι αποτέλεσμα των διαδικασιών εργασίας. Μετά την μετάφραση από τα μέλη ακολουθεί μία ή και περισσότερες διορθώσεις, και ελέγχονται σχεδόν τα πάντα (τεχνική ορολογία, σύνταξη, ορθογραφία, ...) πριν φτάσει να ενσωματωθεί με τον υπόλοιπο κορμό.)
- Συχνές Ερωτήσεις για το FreeBSD 5.X και 6.X(το FAQ του FreeBSD)
Η ομάδα έχει και ένα κανάλι IRC (#bsddocs) που χρησιμοποιεί για chat. Θα βρείτε σχεδόν πάντα κάποια άτομα εκεί για να σας κατοπίσουν σχετικά.
IRC: Server: eu.irc.gr, us.irc.gr, Channel: #bsddocs
Για τη συμμετοχή στο project δεν χρειάζονται ιδιαίτερες γνώσεις ή ικανότητες. Αντιθέτως, νομίζω πως συμμετέχοντας είναι μια καλή ευκαιρία να εμπλουτίσετε τις γνώσεις σας και να συμμετέχετε ενεργά σε μια ομάδα open source. Σας δίνεται η δυνατότητα να συνεργαστείτε σε μία ομάδα εργασίας, και τέλος είναι ένα επιπλέον εφόδιο που μπορείτε να προσθέσετε στο βιογραφικό σας. Στο FreeBSD Documentation Project Primer μπορείτε να πάρετε μια γεύση για το πως θα δουλέψετε με την τεκμηρίωση, αν και δεν είναι αναγκαίο να γνωρίζετε καν τι είναι SGML.
Posted in FreeBSD | Tags ομάδα, τεκμηρίωση, FAQ, FreeBSD, handbook | no comments
Posted by superuser
Thu, 10 Apr 2008 20:25:00 GMT
Αν επιχειρήσετε να ξεκινήσετε την MySQL-5 στο FreeBSD - ή κάποιο άλλο πακέτο (Joomla, Drupal, ...) που εξαρτάται από αυτήν - πιθανώς να συναντήσετε κάποια δυσκολία στην εκκίνηση της διεργασίας 'mysqld'.Μερικά συνήθη σφάλματα που πιθανώς να δείτε είναι:
localhost# Starting mysqld daemon with databases from /var/db/mysql
STOPPING server from pid file /var/db/mysql/localhost.pid
080410 21:14:27 mysqld ended
ή
080410 21:10:52 mysqld started
080410 21:10:52 InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name ./ibdata1
InnoDB: File operation call: 'create'.
InnoDB: Cannot continue operation.
080410 21:10:52 mysqld ended
ή
/usr/local/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)'
Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists!
Καταρχήν, αν δεν έχετε εγκαταστήσει ακόμη τον σέρβερ MySQL-5 αρκεί να ακολουθήσετε την διαδικασία εγκατάστασης από τις "Πόρτες" του FreeBSD {
# cd /usr/ports/databases/mysql50-server
Πιθανώς να επιθυμείτε να εγκαταστήσετε την MySQL με υποστήριξη για χαρακτήρες UTF-8 (συνήθες για την ελληνική γλώσσα, αλλά και για εφαρμογές που δουλεύουν UTF) . Σε αυτή την περίπτωση χρησιμποιήστε την εντολή :
make WITH_CHARSET=utf8 install clean
στον κατάλογο /usr/ports/databases/mysql50-server (η προσθήκη "WITH_CHARSET=utf8" κάνει τη διαφορά). Αν αντιθέτως δεν θέλετε προεπιλεγμένα κωδικοποίηση utf-8, αγνοήστε αυτή την παράγραφο. Δώστε μόνο
# make install clean
}
Αμέσως μετά την εγκατάσταση πρέπει να δημιουργήσουμε τον κατάλογο όπου θα αποθηκεύονται οι βάσεις δεδομένων μας.
# /usr/local/bin/mysql_install_db
Ελέγξτε ότι έχει δημιουργηθεί ο κατάλογος
/var/db/mysql. Σε αυτό ακριβώς το σημείο οφείλονται και τα προαναφερθέντα μηνύματος σφάλματος. Ο κατάλογος
/var/db/mysql δεν έχει τα κατάλληλα δικαιώματα χρήσης για τους χρήστες της ομάδας mysql και ο ιδιοκτήτης του καταλόγου είναι ο root. Με τις ακόλουθες δύο εντολές γραμμής θα αλλάξω τον ιδιοκτήτη και την ομάδα προς αποφυγήν των σφαλμάτων.
# chown -R mysql /var/db/mysql/
# chgrp -R mysql /var/db/mysql/
Ας ξεκινήσουμε τώρα την διεργασία mysqld
/usr/local/bin/mysqld_safe -user=mysql &
[1] 2783
localhost# Starting mysqld daemon with databases from /var/db/mysql
Μμμ, όλα εντάξει. Από δω και πέρα δεν χρειάζεται να ενεργούμε σαν root, επομένως κάνουμε logon σαν απλός χρήστης.
Το τελευταίο βήμα μας, πριν ξεκινήσουμε να δουλεύουμε με την MySQL, είναι να εισάγουμε τον κωδικό πρόσβασης του root της MySQL(ουδεμία σχέση έχει με τον root του συστήματος).
$ /usr/local/bin/mysqladmin -u root password newpassword
(όπου newpassword βάλτε τον δικό σας κωδικό πρόσβασης του root για την MySQL).
Είμαστε έτοιμοι για να τρέξουμε mysql:
$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.0.51a FreeBSD port: mysql-server-5.0.51a
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
Η διαδικασία εγκατάστασης καθώς και της επίλυσης των σφαλμάτων κατά την έναρξη της διεργασίας mysqld αναφέρεται εκτενώς σε διάφορα blog/τεκμηριώσεις/... Η αναφορά στο παρόν blog γίνεται για προσωπική διευκόλυνση,και για κάποιους πιθανώς που απλά προσπαθούν να εγκαταστήστουν κάποιον web application server που χρειάζεται MySQL.
Posted in FreeBSD | Tags 8, db, MySQL, MySQL, mysql_install_db, mysqladmin, mysqld, mysqld_safe, utf, var | 2 comments
Posted by superuser
Sun, 02 Dec 2007 08:38:00 GMT
Πως να συνδέσετε επιτυχώς το σαρωτή σας στο FreeBSD
Μόλις έκανα την πρώτη μου σάρωση στο FreeBSD!!! Είναι Κυριακή πρωί και έτσι είπα να μοιραστώ μαζί σας την εμπειρία μου. Ο σαρωτής μου είναι ένας usb AGFA SnapScan e25. Η διαδικασία που ακολούθησα βασίζεται σε μεγάλο μέρος στην σελίδα Image Scanners του εγχειριδίου της FreeBSD.
Ο πυρήνας GENERIC στο FreeBSD 6.2 περιέχει τους απαραίτητους οδηγούς (drivers) για σαρωτές usb. Συνδέστε τον σαρωτή σας στη θύρα usb. Αν ο σαρωτής αναγνωρίζεται από το σύστημα θα το δείτε στο αρχείο αναφοράς dmesg. Μόλις συνδέσετε το καλώδιο usb ελέγξτε το αρχείο αναφοράς:
# dmesg | grep uscanner0
uscanner0: AGFA SNAPSCAN, rev 1.00/1.00, addr 2
Ο σαρωτής μου αναγνωρίστηκε από το σύστημα. Δεν χρειάζεται να φορτώσω κάποιους άλλους οδηγούς.
Το SANE (Scanner Access Now Easy) είναι το εργαλείο διασύνδεσης με τον σαρωτή σας. Περιέχεται στα Ports του FreeBSD και αποτελείται από 2 κομμάτια. Εγκαταστούμε πρώτα το sane-backends (usr/ports/graphics/sane-backends) που είναι απαραίτητο.
# cd /usr/ports/graphics/sane-backends
# make install clean
Ελέγξτε αν όλα είναι εντάξει:
# sane-find-scanner -q
found USB scanner (vendor=0x06bd, product=0x2095) at /dev/uscanner0
και
# scanimage -L
device `snapscan:/dev/uscanner0' is a AGFA SNAPSCAN e25 flatbed scanner
Δοκιμάστε τώρα να σαρώσετε ένα έγγραφο/εικόνα (θα ονομάσω το αρχείο μου test.pnm):
# scanimage >/home/user/Desktop/test.pnm
[snapscan] Cannot open firmware file /usr/local/share/sane/snapscan/your-firmwarefile.bin.
[snapscan] Edit the firmware file entry in snapscan.conf.
Δεν ήμουν τυχερός. Αρκετοί σαρωτές usb χρειάζονται ένα αρχείο .bin (ονομάζεται firmware file) για να λειτουργήσουν. Το αρχείο θα το βρείτε στο CD που παρέχει ο κατασκευαστής για τα Windows. Στην περίπτωση μου έβαλα το CD του σαρωτή AGFA SnapScan e25, και βρήκα στον φάκελο DRIVERS το κατάλληλο αρχείο Snape25.bin . Για μια μεγάλη γκάμα σαρωτών Acer, BenQ, Agfa, Epson, Guillemot / Hercules και Mitsubishi μπορείτε να συμβουλευτείτε τη σελίδα
SnapScan Backend for SANE για να βρείτε τον ακριβή τύπο του αρχείου .bin που κάνει στην περίπτωση σας. Αφού βρείτε το αρχείο (στην περίπτωση μου ήταν το Snape25.bin), το αντιγράφετε στον κοινό φάκελο του sane:
# cp Snape25.bin /usr/local/share/sane/snapscan/
και το δηλώνουμε στο σχετικό αρχείο ρυθμίσεων του sane:
# cd /usr/local/etc/sane.d/
# vi snapscan.conf
#------------------------------ General -----------------------------------
# Change to the fully qualified filename of your firmware file, if
# firmware upload is needed by the scanner
firmware /usr/local/share/sane/snapscan/Snape25.bin
Στην περίπτωση σας δείτε στον φάκελο /usr/local/etc/sane.d/ για τον δικό σας σαρωτή (υπάρχουν ρυθμιστικά αρχείων διαφόρων κατασκευαστών:
# cd /usr/local/etc/sane.d/
# ls
abaton.conf genesys.conf ricoh.conf
agfafocus.conf gt68xx.conf s9036.conf
apple.conf hp.conf saned.conf
artec.conf hp4200.conf sceptre.conf
artec_eplus48u.conf hp5400.conf sharp.conf
avision.conf ibm.conf sm3840.conf
bh.conf leo.conf snapscan.conf
canon.conf lexmark.conf sp15c.conf
canon630u.conf ma1509.conf st400.conf
coolscan.conf matsushita.conf stv680.conf
coolscan2.conf microtek.conf tamarack.conf
dc210.conf microtek2.conf teco1.conf
dc240.conf mustek.conf teco2.conf
dc25.conf mustek_usb.conf teco3.conf
dist nec.conf test.conf
dll.conf net.conf u12.conf
dmc.conf pie.conf umax.conf
epson.conf plustek.conf umax1220u.conf
fujitsu.conf plustek_pp.conf umax_pp.conf
Ας ξαναπροσπαθήσω τώρα να κάνω τη σάρωση:
# scanimage >/home/vag/Desktop/test.pnm
[snapscan] Scanner warming up - waiting 30 seconds.
Τα καταφέραμε! Το σκάνερ ζεσταίνεται και σαρώνει κανονικά!
Όπως είπα και παραπάνω το SANE αποτελείται και από ένα άλλο κομμάτι, το οποίο είναι το sane-frontend (usr/ports/graphics/sane-frontend) - ένα γραφικό περιβάλλον που προσφέρει προχωρημένες δυνατότητες σάρωσης (φωτοτυπίες, fax, κλπ) διόρθωση χρωμάτων, πολλαπλή σάρωση κ.α. Δεν είναι αναγκαίο για τη λειτουργία σάρωσης - με την γραμμή εντολών τα καταφέραμε πρωτίτερα, αλλά βοηθάει πολύ. Σύμφωνα με το εγχειρίδιο του FreeBSD, μια διάσημη εναλλακτική λύση στο frontend είναι το Xsane (usr/ports/graphics/xsane). Δυστυχώς δεν τα έχω δοκιμάσει ακόμα. Αν κάποιος έχει εμπειρία με κάποιο γραφικό περιβάλλον σάρωσης ας αφήσει το σχόλιο του....
Σαρώστε με FREEBSD!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Posted in FreeBSD | Tags Σαρωτές, backends, frontend, Image, SANE, SANE, sane.d, scanimage, Scanners, USB | no comments
Posted by superuser
Sun, 23 Sep 2007 20:53:00 GMT
Επικοινωνία μεταξύ Bluetooth συσκευών και FreeBSD
Στις ακόλουθες παραγράφους περιγράφεται πως να ρυθμίσετε το
FreeBSD σύστημα σας ώστε να επικοινωνεί με συσκευές που υποστηρίζουν
το πρωτόκολλο επικοινωνίας Bluetooth
Το Bluetooth είναι μια ασύρματη τεχνολογία ραδιοσυχνοτήτων για την
δημιουργία ατομικών δικτύων με εμβέλεια 1,10 ή 100 μέτρων που εκπέμπουν
στην ελεύθερη ζώνη των 2,4GHz. Για να μπορεί να επιτευχθεί επικοινωνία
κάθε συσκευή θα πρέπει να έχει μικροτσιπ πομποδέκτη που θα εκπέμπει και
θα λαμβάνει ραδιοσυχνότητες. Κινητά τηλέφωνα, μερικοί φορητοί υπολογιστές
και πολλές μικροσυσκευές έχουν ενσωματωμένο το τσιπ. Αν δεν υπάρχει το
τσιπ, θα πρέπει να χρησιμοποιήσουμε usb αντάπτορα (Bluetooth USB dongle).
Η εμβέλεια εξαρτάται από την κλάση του τσιπ. Κλάση1: 100μ., Κλαση 2:10μ.
Κλάση3:1μ.
Κατ' αρχήν φορτώστε τους οδηγούς (drivers) στον πυρήνα (kernel).
# kldload ng_ubt
( ή προσθέστε την ακόλουθη γραμμή στο /boot/loader.conf
# ng_ubt_load="YES"
και θα φορτωθούν κατά την εκκίνηση. )
Τοποθετήστε τον αντάπτορα bluetooth (usb-dongle) στον υπολογιστή
σας και ελέξτε ότι αναγνωρίζεται ο αντάπτορας από το σύστημα:
# dmesg | grep ubt0
Για την εκκίνηση της στοίβας Bluetooth (Bluetooth stack):
# cp /usr/share/examples/netgraph/bluetooth/rc.bluetooth /etc/rc.bluetooth
και ξεκινήστε με:
# /etc/rc.bluetooth start ubt0
Αναζήτηση νέων συσκευών:
# hccontrol -n ubt0hci inquiry
Inquiry result, num_responses=1
Inquiry result #0
BD_ADDR: 00:0e:6d:87:73:2a
Page Scan Rep. Mode: 0x1
Page Scan Period Mode: 00
Page Scan Mode: 00
Class: 50:02:04
Clock offset: 0x5255
Inquiry complete. Status: No error [00]
Παρατηρήστε πως η διεύθυνση BD_ADDR είναι η διεύθυνση του
απομακρυσμένου πομποδέκτη bluetooth. Είναι σαν την MAC διεύθυνση των
καρτών δικτύου. Στην ουσία πρόκειται για ένα δίκτυο, αλλά η μόνη διαφορά
έγκυται στο ότι το δίκτυο δημιουργείται στιγμιαία (AD HOC) από την παρουσία
δύο ή περισσοτέρων συσκευών Bluetooth. Κάθε φορά που θα θέλουμε να
αναφερθούμε από τον υπολογιστή μας στην συγκεκριμένη συσκευή θα
χρησιμοποιούμε αυτήν την διεύθυνση (στην περίπτωση της δικής σας
συσκευής, θα έχετε διαφορετικό BD_ADDR).
Όνομα συγκεκριμένης συσκευής Bluetooth: Στο κινητό σας τηλέφωνο
, για παράδειγμα, θα πρέπει να έχετε θέσει κάποιο αναγνωριστικό όνομα
για την επικοινωνία Bluetooth. Αυτό μπορούμε να το βρούμε με:
# hccontrol -n ubt0hci remote_name_request 00:0e:6d:87:73:2a
BD_ADDR: 00:0e:6d:87:73:2a
Name: Nokia6600
Επειδή θα πρέπει να αναφερόμαστε συχνά στη συσκευή Bluetooth για να
μην αναφέρουμε συνέχεια την BD_ADDR καλό είναι να απομνημνεύσουμε το
συμβατικό όνομα με αυτήν την διεύθυνση. Πηγαίνουμε στο
/etc/bluetooth/hosts και προσθέτουμε την αντιστοιχία της BD_ADDR με το
όνομα που επιθυμούμε.
# $Id: hosts,v 1.1 2003/05/21 17:48:40 max Exp $
# $FreeBSD: src/etc/bluetooth/hosts,v 1.1.10.1 2005/11/23 18:03:32 emax Exp $
#
# Bluetooth Host Database
#
# This file should contain the Bluetooth addresses and aliases for hosts.
#
# BD_ADDR Name [ alias0 alias1 ... ]
# 00:11:22:33:44:55 phone
00:0e:6d:87:73:2a Nokia6600
Έπειτα θα πρέπει να θέσουμε τον κωδικό αναγνώρισης (pair) μεταξύ των
δύο συσκευών. Προσθέτουμε στο /etc/bluetooth/hcsecd.conf τη συσκευή
μας. Το pin είναι της επιλογής σας.
device {
bdaddr 00:0e:6d:87:73:2a;
name "Nokia6600";
key nokey;
pin "1234";
}
Μπορεί να επιτευχθεί σύνδεση σε επίπεδο πρωτοκόλλου
μεταξύ του υπολογιστή και της απομακρυσμένης συσκευής bluetooth:
# hccontrol -n ubt0hci create_connection 00:0e:6d:87:73:2a
όπως επίσης να κάνετε
PING στην απομακρυσμένη συσκευή:
# l2ping -a 00:0e:6d:87:73:2a
0 bytes from 00:0e:6d:87:73:2a seq_no=0 time=48.633 ms result=0
0 bytes from 00:0e:6d:87:73:2a seq_no=1 time=37.551 ms result=0
0 bytes from 00:0e:6d:87:73:2a seq_no=2 time=28.324 ms result=0
0 bytes from 00:0e:6d:87:73:2a seq_no=3 time=46.150 ms result=0
Όλα πλέον αρχίζουν να μοιάζουν με το κλασσικό ενσύρματο δίκτυο.
Ξεκινάμε τον δαίμονα Service Discovery Protocol (SDP). Στην ουσία
ανιχνεύουμε τις υπηρεσίες που προσφέρει η απομακρυσμενη συσκευή
Bluetooth:
# sdpd
Οι προσφερόμενες υπηρεσίες είναι:
# sdpcontrol -a 00:0e:6d:87:73:2a browse
Όταν απλά θέλουμε να μεταφέρουμε αρχεία, φωτογραφίες, μουσική,
βίντεο ή επαφές, τότε χρειάζεται από τα παραπάνω να έχουμε απλά
ξεκινήσει την στοίβα bluetooth και το sdpd. Για την μεταφορά των δεδομένων
θα πρέπει να χρησιμοποιήσουμε την εφαρμογή obexapp (από τις πόρτες
/usr/ports/comms/obexapp).
Για να ανεβάσουμε αρχεία στην απομακρυσμένη συσκευή Bluetooth
δίνουμε:
# obexapp -a 6600 -C OPUSH
obex>
Για να ανεβάσουμε το αρχείο /home/user/test δίνουμε:
obex> put /home/user/test
Για να κατεβάσουμε ένα αρχείο από την απομακρυσμένη
συσκευή στον υπολογιστή μας, φτιάχνουμε κατ'αρχήν έναν φάκελο bluetooth
στον /home/user κατάλογο μας. Π.χ. φτιάχνω τον φάκελο
/home/user/bluetooth και δίνω την εντολή:
#obexapp -s -S -C 10 -u user -r /home/user/bluetooth
Στην θέση του
user πρέπει να βάλετε το username σας. Τώρα
μπορείτε να μεταφέρετε τα αρχεία από το κινητό σαε επιλέγοντας ως
προορισμό τον υπολογιστή σας (στην περίπτωση μου το κινητό Nokia 6660
βρίσκει τον υπολογιστή σαν localhost(ubt0).
Το κεφάλαιο Bluetooth είναι μια πολύ έξυπνη και νέα τεχνολογία που έχει
ακόμη πολλές δυνατότητες. Νομίζω πως το Unix προσφέρει πολλούς τρόπους
εξερεύνησης και πειραματισμών με την εν λόγω τεχνολογία.
Posted in FreeBSD | Tags ραδιοσυχνότητες, AD, Bluetooth, FreeBSD, HOC, ng_ubt, ubt0, ubt0hci | no comments