Category Archives: Ελεύθερο Λογισμικό

Εγκατάσταση Wireshark σε Ubuntu GNU/Linux 16.04

Το wireshark είναι ένα δημοφιλές εργαλείο για σνιφάρισμά πακέτων δικτύου (εξίσου εθιστικά με κοκαϊνη, ειδικά για άτομα που θέλουν να αλώσουν την ασφάλεια του δικτύου σας ή να κλέψουν το password σας από το http://anime.gr ;p ). Αλλά ουκ ολίγες φορές ένα apt-get δεν αρκεί για να έχετε μια μη εκνευριστική εγκατάσταση ενός λογισμικού. Γι αυτό  πάρτε χαρτί και μολύβι ή αφήστε το καλύτερα έχουμε copy-paste :p .

Κατ’ αρχάς εγκαθιστούμε το wireshark με την εντολή apt-get , ξέρετε τα κλασικά:

sudo apt-get install wireshark

Η εντολή αυτή σε κάποια φάση θα σας βγάλει το εξής παράθυρο:Παράθυρο επιλογής κατά την εγκατάσταση του wireshark

Που επιλέγουμε ναι σε περίπτωση που επιλέξατε όχι ή είχατε εγκαταστήσει παλαιότερα το wireshark και έπρεπε να το εκτελέσετε σαν root μπορείτε να το επαναρυθμίσετε δίνοντας την εντολή και να ακολουθήσετε τα παρακάτω βήματα του άρθρου:

sudo dpkg-reconfigure wireshark-common

Μετά πρέπει να προσθέσετε το όνομα χρήστη σας στο group (ομάδα) wireshark, αυτό είναι εφικτό με την εντολή:


sudo groupadd wireshark
sudo usermod -aG wireshark ^όνομα_χρήστη^

Όπου το ^όνομα_χρήστη^ είναι το όνομα χρήστη που αντιστοιχεί.

Πλέον μένει να δώσετε τις παρακάτω εντολές 1 προς 1:


sudo chgrp wireshark /usr/bin/dumpcap
sudo chmod 750 /usr/bin/dumpcap
sudo setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap
sudo getcap /usr/bin/dumpcap

Πλέον μένει να αποσυνδεθείτε και να συνδεθείτε ξανά προκειμένου οι αλλαγές να έχουν ισχύ.

Advertisements
layout of a network having ubuntu as gateway

Ρύθμιση Ubuntu 16.04 σαν πύλη (gateway) δίκτυου.

Ας υποθέσουμε ότι έχουμε το εξής σενάριο έχουμε ένα μηχάνημα που τρέχει ubuntu 16.04 LTS server edition και θέλουμε αυτό να αποτελεί πύλη δικτύου για ένα τοπικό δίκτυο. Ουσιαστικά θέλουμε να πετύχουμε το εξής:

layout of a network having ubuntu as gateway

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

    1. Θα πρέπει να ορίζουμε ip δικτύου για την κάρτα μας η οποία αντιστοιχεί στο τοπικό δίκτυο, για να γίνει αυτό θα πρέπει να δώσουμε την εντολή:
      sudo nano /etc/network/interfaces
      

      Και να ορίσουμε μια στατική διεύθυνση για την κάρτα μας προσθέτοντας γραμμές σαν:

      auto enp0s8
      iface enp0s8 inet static
      address 10.0.6.1
      netmask 255.255.255.0
      broadcast 10.0.6.255
      dns-nameservers 8.8.8.8
      

      Η παραπάνω ρύθμιση αποτελεί ενδεικτική και θυμηθείτε να ορίσετε το κατάλληλο εύρος ip. Στην δικιά μας περίπτωση θα στήσουμε ένα ΝΑΤ δίκτυο έτσι θα έχουμε 255 διευθύνσεις με χρήσιμο εύρος 10.0.6.1 – 10.0.6.254. Ορίστε τις κατάλληλες ρυθμίσεις ανάλογα με τις ανάγκες σας.
      Μπορείτε να δείτε τα διαθέσιμα interface δικτύου με την εντολή:

      ifconfig -a 
    2. Μετά θα πρέπει να ενεργοποιήσουμε την προώθηση ipv4 που θα γίνει με την εντολή:
      sudo nano /etc/sysctl.conf

      Και να κάνουμε uncomment την γραμμή (αφαιρώντας το #):

      net.ipv4.ip_forward=1

      Μετά πρέπει να δώσουμε την εντολές:

      sudo sh -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
    3. Μετά μένει να ενεργοποιήσουμε την κάρτα δικτύου δίνοντας τις εντολές (1 προς 1):
      sudo ifdown enp0s8
      sudo ifup enp0s8
      sudo service networking restart
    4. Μετά θα πρέπει να ορίσουμε στο firewall να ανακατευθύνει σωστά την κίνηση (δίνοντας μια προς μια τις εντολές):
      EXT=enp0s3
      INT=enp0s8
      sudo iptables -t nat -A POSTROUTING -o $EXT -j MASQUERADE
      sudo iptables -A FORWARD -i $EXT -o $INT -m state --state RELATED,ESTABLISHED -j ACCEPT
      sudo iptables -A FORWARD -i $INT -o $EXT -j ACCEPT
      

      Ουσιαστικά ορίσαμε 2 enviromental variables:

      • EXT που εμπεριέχει την διεπαφή που κοιτά το διαδίκτυο
      • INT που εμπεριέχει την διεπαφή του εσωτερικού μας δικτύου

      Και βάση με αυτών ορίσαμε την προώθηση των πακέτων στο ενσωματωμένο firewall του GNU/Linux iptables.

    5. Τώρα μένει να αποθηκεύσουμε τις ρυθμίσεις του firewall με τις εντολές:
      sudo apt-get install iptables-persistent
      /etc/init.d/iptables-persistent save
      

Ακόμη εφόσον ορίσαμε το gateway μας θέλουμε να μπορούμε να διευθυνσιοδοτούμε αυτόματα μέσω dhcp έτσι θα εγκαταστήσουμε και θα ρυθμίσουμε το πρόγραμμα dnsmasq ο οποίος θα αποτελεί ο dhcp server μας. Για την εφκατάστασή του δίνουμε:

sudo apt-get install dnsmasq

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

sudo nano /etc/dnsmasq.conf

Και να ορίσουμε τις παρακάτω ρυθμίσεις (σημείωση ότι έχουν προσαρμοστεί στην περίπτωσή μου):

interface=enp0s8
dhcp-range=10.0.6.2,10.0.6.254,12h

Σε περίπτωση άλλων ip ορίστε διαφορετικά ranges εξαιρώντας την/τις ip του gateway και του μηχανήματος. Για επανεκκίνηση του δαίμονα δώστε:

sudo service dnsmasq restart

Σημείωση

Σε περίπτωση που παίζετε με εικονικές μηχανές Virtualbox παρακαλώ ΑΠΕΝΕΡΓΟΠΟΙΕΙΣΤΕ τον dchp server του VIRTUALBOX.

Μετάφραση custom wordpress θέματος με την χρήση του poedit.

Πολλές φορές θέλουμε πολυγλωσσική υποστήριξη από το υπάρχων wordpress θέμα μας. Ο ποιο ασφαλής τρόπος να γίνει αυτό είναι με την χρήση αρχείων .po ή .pot που υποστηρίζει το GNU gettext. Δε ο τρόπος αυτός ενδείκνυται και σε ανάπτυξη μη-wordpress σελίδων και εφαρμογών.  Στο άρθρο αυτό θα σας δείξουμε βήμα – βήμα πως να μεταφράσετε το το ήδη υπάρχων θέμα που μόλις δημιουργήσατε.

Κατ αρχάς θα πρέπει να εγκαταστήσουμε το poedit σε Ubuntu GNU/Linux γίνετε με την εντολή:

sudo apt-get install poedit

Για τις υπόλοιπες διανομές GNU/Linux κοιτάξτε στα εκάστοτε αποθετήρια εάν δεν υπάρχει η τρέχετε windows μπορείτε να το κατεβάσετε και να το εγκαταστήσετε από το https://poedit.net/download . Δε για wordpress παρόλο που ΔΕΝ είναι απαραίτητο υπάρχει η επί πληρωμή έκδοση του poedit που έχει καλύτερη υποστήριξη.

Εφόσον το εγκαταστήσετε θα πρέπει να εκτελέσετε τα εξής όπως φαίνεται στο παρακάτω παράδειγμα. Για τις ανάγκες του παραδείγματος θα σας δείξω πως μετέφρασα το testTheme θέμα που ανέπτυξα για εκπαιδευτικούς σκοπούς.

Κατ’ αρχάς θα πρέπει τα αρχικά προς μετάφραση strings στον php & html κώδικα του θέματος να είναι στα αγγλικά. Δε να περικλείονται από tags και να έχουν την εξής μορφή _e(‘Untranslated string’). Πχ. Ας πούμε πως κάπου στα php αρχεία του θέματός μας έχουμε:

<h1>Goodmorning</h1>

Θα πρέπει να γίνει:

<h1><?=_e('Goodmorning')? ></h1>

Εφόσον το κάνουμε αυτό ΓΙΑ ΟΛΑ τα string που θέλουμε να μεταφράσουμε τότε εκτελoύμε το poedit. Θα μας εμφανιστεί το εξής παράθυρο (περιβάλλον στα Ελληνικά)

Τότε από το μενού επιλέγουμε Αρχείο -> Νέο

Και στο παράθυρο που μας ανοίγετε επιλέγουμε την γλώσσα που επιθυμούμε για Ελληνικά επιλέγουμε «Ελληνικά (Ελλάδα)» όπως βλέπετε στην παρακάτω εικόνα.

Και μετά κάνουμε κλίκ στο «Αποθήκευση».  Στο παράθυρο που μας ανοίγετε επιλέγουμε την διαδρομη «^εκεί που είναι εγκατεστημένο το wordpress^/wp-content/languages/themes/όνομα_theme-el.po»  πχ στην περίπτωσή μου το wordpress είναι εγκατεστημένο στον φάκελο «/home/pcmagas/Kwdikas/php/htdocs/wordpress» έτσι η μετάφραση του θέματος μου θα είναι στην διαδρομή «/home/pcmagas/Kwdikas/php/htdocs/wordpress/wp-content/languages/themes/testTheme-el.po»

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

Αργότερα κάνουμε κλίκ στα εξής όπως δείχνει η παρακάτω εικόνα, το θέμα μας θα είναι σε έναν στον φάκελο «^εκεί που είναι εγκατεστημένο το wordpress^/wp-content/themes/^όνομα_θέματος^» πχ. στην περίπτωσή μου είναι το «/home/pcmagas/Kwdikas/php/htdocs/wordpress/wp-content/themes/testTheme» . Σημείωση να επιλέξουμε την καρτέλα «Λέξεις-κλειδιά των πηγών» μετά την επιλογή του φακέλου που είναι το θέμα μας:

Στην Καρτέλα «Λέξεις-κλειδιά των πηγών»  κάνουμε κλικ στο κουμπί που μας δείχνει η παρακάτω εικόνα και στο πεδίο που μας υποδεικνύει πληκτρολογούμε «_e» (χωρίς τα εισαγωγικά) Μετά πατάμε το κουμπί «Εντάξει». Πλέον το παράθυρό μας έχει την εξής μορφή, στην παρακάτω εικόνα σας επεξηγώ τα ποιο χρήσιμα πεδία και κουμπιά του UI:

Πλέον μπορείτε να ορίσετε μετάφραση για τα εκάστοτε κείμενα που θέλετε να εμφανίζονται πολυγγλωσικά.

Τα παραπάνω βήματα δοκιμάστικαν στην έκδοση Poedit 1.8.7.1 σε Ubuntu GNU\Linux 16.04.

Στήσιμο και ρύθμιση τοπικού DNS server για ορισμό τοπικών domain.

Στην εργασία που δουλεύω έχουμε κάποια ενδοεταιρικά domain names τα οποία δεν είναι προσβάσιμα εκτός του τοπικού δικτύου της εταιρείας έτσι ήθελα να δω πως μπορώ να εφαρμόσω αυτό σε ένα εικονικό δίκτυο από εικονικά μηχανήματα προσομοιάζοντας παρόμοια κατάσταση με αυτήν που έχω στην εργασία μου.

Έτσι λοιπόν στην προσομοίωση λέω ότι και καλά η εταιρεία μου έχει ένα website http://example.com το οποίο είναι public facing και hosted κάπου αλλού και στο «ενδοεταιρικό» μου δίκτυο έχω 2 «ενδοεταιρικές» web εφαρμογές την http://app1.intranet.example.com και την http://app2.intranet.example.com. Προκειμένου να λύσω αυτό το πρόβλημα ύστερα από αναζήτηση λέει ότι θα πρέπει να στήσω τον δικόν μου «ενδοεταιρικό» dns server.

Έτσι λοιπόν σε έναν server που χρησιμοποιώ στο εικονικό «ενδοεταιρικό» δίκτυο που τρέχει ubuntu εγκατέστησα τον bind9 με την δύσκολα-να-μαντέψεις εντολή:


sudo apt-get install bind9 

Εφόσον εγκατασταθεί θα πρέπει να:

  • Ρυθμίσουμε τον σέρβερ να προωθεί ότι domain δεν έχει σχέση με το intranet σε δημόσιους DNS servers
  • Να ορίσουμε DNS ζώνες για τα εσωτερικά domains.

Έτσι ύστερα από ώρες αναζήτησης βρήκα ότι έπρεπε να κάνω τα εξής: Στο /etc/bind/named.conf (για ubuntu 14.04) όρισα τα εξής:


options {
	directory "/var/cache/bind";
	querylog yes;

	// If there is a firewall between you and nameservers you want
	// to talk to, you may need to fix the firewall to allow multiple
	// ports to talk.  See http://www.kb.cert.org/vuls/id/800113

	// If your ISP provided one or more IP addresses for stable 
	// nameservers, you probably want to use them as forwarders.  
	// Uncomment the following block, and insert the addresses replacing 
	// the all-0's placeholder.

	 forwarders {
		8.8.8.8;
		8.8.4.4;
	 };

	//========================================================================
	// If BIND logs error messages about the root key being expired,
	// you will need to update your keys.  See https://www.isc.org/bind-keys
	//========================================================================
	dnssec-validation auto;

	auth-nxdomain no;    # conform to RFC1035
	listen-on-v6 { any; };
};

logging{
 channel default_file {
        file "/var/log/named/default.log" versions 3 size 5m;
        severity dynamic;
        print-time yes;
    };

    category default { default_file; };
    category general { default_file; };
    category database { default_file; };
    category security { default_file; };
    category config { default_file; };
    category resolver { default_file; };
    category xfer-in { default_file; };
    category xfer-out { default_file; };
    category notify { default_file; };
    category client { default_file; };
    category unmatched { default_file; };
    category queries { default_file; };
    category network { default_file; };
    category update { default_file; };
    category dispatch { default_file; };
    category dnssec { default_file; };
    category lame-servers { default_file; };
};

acl "intranet" { 10.42.0.0/24; };
view "intranetView" {
	match-clients { "intranet"; };
	recursion yes;
	zone "intranet.example.com" {
		type master;
		file "/etc/bind/db.intranet";
	};
	include "/etc/bind/named.conf.default-zones";
};

view "outside" {
	match-clients { any; };
	recursion no;	
	include "/etc/bind/named.conf.default-zones";
};

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

  1. Όσα είναι με αυτό το χρώμα υποδηλώνουν ποιους dns θα προωθεί τα requests για domains τα οποία δεν μπορεί να εξυπηρετήσει ο ίδιος ο bind. Προσωπικά προτείνω την χρήση αυτών των DNS.
  2. Όσα είναι με αυτό το χρώμα υποδηλώνει ρυθμίσεις για logging αυτές οι ρυθμίσεις μπορεί να παρθούν copy paste αλλά για να λειτουργήσουν θα πρέπει να εκτελέσετε τις εξής εντολές:
    sudo mkdir /var/log/named/
    sudo touch /var/log/named/default.log
    sudo chmod uag+w /var/log/named/default.log
    

     

  3. Τέλος όσα είναι με αυτό το χρώμα αποτελεί ρυθμίσεις οι οποίες:
    1. Ρυθμίζουν ποιο δίκτυο θα εξυπηρετεί τι. Εμείς ορίσαμε ότι το «εταιρικό» μας τοπικό δίκτυο (10.42.0.0/24) θα εξυπηρετείτε από το intranetView το οποίο εκεί έχουμε ορίσει τα «ενδοεταιρικά» μας domain που ορίζονται με εγγραφές zone οι οποίες έχουν την εξής μορφή:
      
      zone "^domain που εξυπηρετούν^" {
      		type master;
      		file "^αρχείο ρύθμισης ζώνης^";
      	};
      
    2. Ποιο network θα μπορεί εφόσον συνδεθεί στον σέρβερ να αναζητά για άλλα domain που δεν έχει ζώνη με την ρύθμιση recursion. Εμείς στην παραπάνω ρύθμιση επιτρέπουμε μόνο όσοι προέρχονται από το δίκτυο 10.42.0.0/24; να αναζητούν για άλλα domain.
    3. Και τέλος για να μην σπα σε κάθε view εγγραφή ορίσαμε εγγραφές για της προεγκατεστημένες ζώνες (include «/etc/bind/named.conf.default-zones»;)

Τώρα μας μένει πλέον να ορίσουμε την ζώνη μας για τον δικό μου σκοπό ύστερα από πειραματισμό βρήκα ότι είναι αυτή (αναμένετε εμπλουτισμός στο κομμάτι αυτό):

$TTL 604800
@ IN SOA intranet.example.com. root.example.com. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS root.example.com.
@ IN A 10.42.0.1
app1 IN A 10.42.0.1
app2 IN A 10.42.0.1

Όσο αφορά το κομμάτι της ζώνης ακόμα το ψάχνω αλλά προς το παρόν έχετε το παραπάνω σαν template.

Πλέον στον εκάστοτε υπολογιστή στον δίκτυο πρέπει να ορίσετε την Ιp που είναι εγκατεστημένος ο DNS server σαν DNS. Στις περισσότερες διανομές GNU/Linux αυτό γίνεται ως εξής:

  1. Κάνουμε δεξί κλικ στο εικονίδιο του δικτύου.
  2. Επιλέγουμε «Επεξεργασία συνδέσεων»/
  3. Επιλέγουμε την σύνδεσή μας και κάνουμε κλικ στο «Επεξεργασία».
  4. Μετά επιλέγουμε την καρτέλα DNS και ορίζουμε την Ip του μηχανήματος που εγκαταστήσαμε τον Bind server.

Ρύθμιση Virtualbox και Εικονικών Μηχανών που τρέχουν GNU/Linux για Μόνο-Οικοσεσπότη Σύνδεση (Host Only)

Πολλές φορές θα μας ήταν βολικό το να μπορούσαμε να επικοινωνούμε με τα εικονικά μας μηχανήματα από το Virtualbox με έναν τρόπο που να μας επιτρέπει να επικοινωνεί το μηχάνημα οικοδεσπότης (παρακάτω θα το διευκρινίζουμε σαν host) με το εικονικό μηχάνημα (παρακάτω θα το διευκρινίζουμε σαν guest) σαν να ήταν στο ίδιο δίκτυο χωρίς όμως απαραίτητα να μπορεί να το βλέπει κάποιο μηχάνημα εκτός οικοδεσπότη αλλά και χωρίς να πρέπει να ανοίξουμε θύρες μέσω Virtualbox προκειμένου να επικοινωνεί το host με το guest.

Αυτό μπορεί να μας χρειαστεί για περιπτώσεις όπως:

  • Μπορεί στο VM να τρέχει ένα υπό-ανάπτυξη λογισμικό και θέλουμε να προσομοιώνουμε καταστάσεις  που κάποιος μπορεί να επικοινωνεί απ’ ευθείας με το δίκτυο σε συγγεκριμένες θύρες.
  • Τα VM να τρέχουν να έχουν σαν host  laptop που συνδέετε σε δημόσια wi-fi έτσι το να έχουμε στα vm δίκτυο-γέφυρα να μην μας βολεύει. Έτσι θέτοντας μια ΝΑΤ εικονική κάρτα δικτύου και μία Host Only να μας είναι ποιο βολικό.
  • Οτιδήποτε άλλο ανάλογα με το σενάριο.

Ρύθμιση στο Virtualbox

Σημείωση: Υποθέτουμε ότι το περιβάλλον είναι στα Ελληνικά και το τρέχουμε σε Ubuntu Gnu/Linux 16.04.1.

  1. Πρώτα επιλέγετε Αρχείο -> Ρύθμιση -> Προτιμήσεις
  2. Στο παράθυρο που σαν ανοίγει επιλέγετε Δίκτυο
  3. Και μετά επιλέγετε την καρτέλα Μόνο-με-Οικοδεσπότη κάρτα και κάνετε κλικ στο εικονίδιοvirtualbox-%cf%80%cf%81%ce%bf%cf%84%ce%b9%ce%bc%ce%ae%cf%83%ce%b5%ce%b9%cf%82_002. Όπως βλέπετε στην παρακάτω εικόνα:
    What steps to follow when adding a host-omnly new network

Πλέον για να έχετε ενεργή την επιλογή αυτή κάντε τα εξής βήματα:

  1. Στο εικονικό μηχάνημα που επιθυμείτε επιλέξτε το και κάντε κλικ στο κουμπί Ρυθμίσεις (με την προϋπόθεση ότι το μηχάνημα θα είναι κλειστό):
  2. Μετέπειτα στο παράθυρο που σας έχει ανοίξει επιλέγετε Δίκτυο.
  3. Και στον εικονικό Κάρτα Δικτύου της αρεσκεία της επιθυμία σας επιλέγετε τα εξής (ή δείτε την εικόνα για καλύτερη διευκόλυνση)
    1. Στο checkbox «Ενεργοποίηση Κάρτας δικτύου» εάν δεν είναι τσεκαρισμένο
    2. Και στο dropwown «Συνδεδεμένη σε» επιλέξτε «Μόνο-με-οικοδεσπότη» κάρτα

Πλέον τώρα έχετε μια διεπαφή για το Guest και το Host μόνο.

Ρύθμιση δικτύου στο Εικονικό μηχάνημα

Όσα Gnu/Linux distros έχουν από προεπιλογή κάποιο GUI όπως KDE, XFCE, Unity κλπ κλπ θα σας την αναγνωρίσει αμέσως και θα επιτευχθεί σύνδεση ειδάλλως θα πρέπει να γίνουν κατάλληλες ρυθμίσεις πχ σε ένα VM που τρέχει Ubuntu Server Edition.

Σε Ubuntu Linux Server vms πρέπει να εκτελέσετε τα εξής βήματα:

  1. Με την παρακάτω εντολή εντοπίζουμε το μη συνδεδεμένο δίκτυο
    
    ifconfig -a
    

    Συνήθως αυτή που δεν έχει IPv4 είναι η μη συνδεδεμένη.

  2. Mετά δίνουμε στο μη συνδεδεμένο interface δίκτυο. Για να γίνει αυτό δίνουμε:
    
    sudo nano /etc/network/interfaces
    

    Και μετά τοποθετούμε τα στο τέλος του κειμένου τα εξής (υποθέτουμε πως η μη συνδεδεμένη διεπαφή είναι η eth1):

    
    auto eth1
    iface eth1 inet dhcp
    

    Και με τον συνδιασμό Ctrl+O και Ctrl+Χ αποθηκεύουμε.

  3. Κάντε restart για να λάβετε τις νέες ρυθμίσεις.

 

Xubuntu Unity Edition

Xunity

Ένα desktop screenshot που είναι Unity σε XFCE Desktop

Μια από τις δυνατότητες που προσφέρει το Ελεύθερο λογισμικό είναι να μπορείς να ορίζεις τον υπολογιστή σου όπως θες εσύ σαν χρήστης. Όπως πχ. να έχεις και XFCE και Unity ταυτόχρονα και μάλιστα το Unity στα χρώματα του XFCE. Οι παρακάτω εντολές προϋποθέτουν ότι έχετε εγκατεστημένο το Xubuntu στον υπολογιστή σας.

Για να γίνει αυτό πρέπει να εκτελέσετε τις ακόλουθες εντολές:


sudo apt-get install unity ubuntu-session

Μετά κάνετε logout και login και απολαύστε τον συνδυασμό του XFCE στο Unity όσο το δυνατόν μινιμαλίστικη.

Για μια ποιο μινιμαλιστική έκδοση του unity δώστε:

sudo apt-get install ubuntu-session
sudo apt-get install unity unity-lens-* --no-install-recomends

Και απολαύστε την νέα διανομή Xubuntu Unity Edition!!!

Συνιστώμενα προγράμματα για αύξηση παραγωγικότητας σε Ubuntu GNU/Linux (Για εργαζόμενους στην πληροφορική).

Δουλεύοντας σαν προγραμματιστής υπάρχουν κάποια προγράμματα τα οποία μου έκαναν τη ζωή ποιο εύκολη. Προκειμένου να διευκολύνω και την δικιά σας ζωή σας τα λέω και σε εσάς. Γι αυτό πάρτε μάσκα βατραχοπέδιλα και ας κάνουμε την βουτιά μας!!!!

Guake terminal

Πολλές φορές θέλετε μια κονσόλα άμεσα προσβάσιμη αλλά η εναλλαγή μεταξύ πολλά παράθυρων συμπεριλαμβανομένου και του τερματικού δεν είναι και ότι ποιο βολικό. Με το Guake Terminal μπορείτε με το πάτημα ενός πλήκτρου να έχετε άμεσα μια κονσόλα διαθέσιμη. Βολικό όποτε έχετε μια οθόνη αντί για 2 που μπορείτε να έχετε την κονσόλα άμεσα διαθέσιμη. Προσωπικά το βολεύτικα ειδικά στον οικιακό desktop. Έτσι πχ. μπορείτε να έχετε τον editor που γράφετε κώδικα η μια ρύθμιση και εύκολα να το δοκιμάζετε.

Ιστοσελίδα: http://guake.org/
Στο Ubuntu υπάρχει στα αποθετήρια

Terminator

Πολλές φορές ειδικά σε μεγάλες οθόνες βολεύει να έχετε πολλαπλά τερματικά ανοικτά. Ακόμη πολλές φορές μπορεί να χρειαστεί να γράψετε την ίδια εντολή σε πολλά διαφορετικά terminal sessions πχ. να κάνετε χειροκίνητα update τους σέρβερ σας. Το terminator έχει το χαρακτηριστικό που μπορείτε ταυτόχρονα να γράφετε σε πολλαπλά τερματικά, γλιτώνοντας σας από την χαμαλοδουλειά.

Στο Ubuntu υπάρχει στα αποθετήρια

Shutter

Πολλές φορές θέλουμε όταν τραβάμε ένα screenshot να επισημάνουμε κάποια σημεία με βελάκια κλπ κλπ η και ακόμη από μια εικόνα μπορούμε να θέλουμε να επισημάνουμε κάποια πράγματα πχ. από ένα screenshot μιας ιστοδελίδας – εφαρμογής να θέλουμε να δείξουμε ένα σημείο που θέλει φτιάξιμο το CSS στον developer που προσλάβαμε. Το shutter απλά just rocks!!!!

Ιστοσελίδα http://shutter-project.org/
Στο Ubuntu υπάρχει στα αποθετήρια

Atom text editor

Ο atom είναι ένας text editor με πάρα πολλά plugins. Προσωπικά το χρησιμοποιώ για να αναπτύσω Dockerfiles για docker images αλλά και σαν sidekick με το IDE όταν γράφω κώδικα για να κάνω prettyfy Json αλλά και base64 decoding χωρίς να γράφω πολλές εντολές. Πραγματικά για μένα είναι ένας ελβετικός σουγιάς ελευθέρου λογισμικού. Από τους δημιουργούς του github με αγάπη.

Ιστοσελίδα http://atom.io/
Στο Ubuntu ΔΕΝ υπάρχει στα αποθετήρια θα πρέπει να κατεβάσετε το .deb από την παραπάνω ιστοσελίδα και να το εγκαταστήσετε χειροκίνητα.