====== Αλλαγές κώδικα Virtualmin ======
===== Logs και επιλογές =====
* Webmin logs :
* Ρύθμιση από : Webmin / Webmin Configuration / Logs
* Εύρεση από : Webmin / Webmin Actions Log
* Αρχεία καταγραφής : /var/webmin/miniserv.log και /var/webmin/webmin.log
Για καταγραφή και των ενεργειών ενεργοποιούμε και το Log changes made to files by each action? Καλό είναι να το απενεργοποιήσουμε ύστερα εάν δεν θέλουμε τα logs να είναι πολύ μεγάλα
===== Αλλαγές κώδικα virtualmin =====
==== cluster passwords - virtual server ====
Εάν έχει ρυθμιστεί η δυνατότητα [[el:linux:debian:server:webmin:clustering]] μπορούμε να χρησιμοποιήσουμε το module αυτό για αλλαγή κωδικών (cluster-passwd) αντί για το module passwd που κάνει την αλλαγή μόνο τοπικά. Θα πρέπει να γραφτούν στον φάκελο /etc/webmin/cluster-passwd τα αρχεία .acl αντί για τον φάκελο /etc/webmin/passwd. Για να το πετύχουμε αυτό μπορούμε να αλλάξουμε λίγο τον κώδικα τπυ αρχείου /usr/share/webmin/virtual-server/feature-webmin.pl ως εξής (αλλάζουμε σε 4 γραμμές το passwd σε cluster-passwd) :
if ($_[0]->{'unix'}) {
if ($extramods{'passwd'} == 1 && !$isextra) {
# Can only change domain owners password
local %acl = ( 'noconfig' => 1,
'mode' => 1,
'users' => $_[0]->{'user'},
'repeat' => 1,
'old' => 1,
'expire' => 0,
'others' => 1 );
&save_module_acl_logged(\%acl, $_[1]->{'name'}, "cluster-passwd")
if (!$hasmods{'passwd'});
push(@mods, "cluster-passwd");
}
elsif ($extramods{'passwd'} == 2) {
# Can change all mailbox passwords (except for the domain
# owner, if this is an extra admin)
local %acl = ( 'noconfig' => 1,
'mode' => 5,
'users' => $_[0]->{'group'},
'notusers' => $_[0]->{'user'},
'repeat' => 1,
'old' => 0,
'expire' => 0,
'others' => 1 );
&save_module_acl_logged(\%acl, $_[1]->{'name'}, "cluster-passwd")
if (!$hasmods{'passwd'});
push(@mods, "cluster-passwd");
}
}
==== Script Installations ====
Μήνυμα σφάλματος PHP module mysql is required σταματάει την εγκατάσταση όλων των script που χρειάζονται βάση mysql.
**Λύση :**
aptitude install aptitude install php5-cli
Για να παρακαμφεί το λάθος στο αρχείο /usr/share/webmin/virtual-server/scripts-lib.pl τροποποιούμε στο παρακάτω κομμάτι κώδικα
# Finally re-check to make sure it worked (but this is only possible
# CGI mode)
&$outdent_print();
undef(%php_modules);
if (&check_php_module($m, $phpver, $d) != 1) {
&$second_print($text{'scripts_einstallmod'});
if ($opt) { next; }
else { return 0; }
την γραμμή της επιστροφής σε
else { return 1; }
ώστε να προχωρήσει το script
Στον s2 προχώρησε η διαδικασία τελικά σε νέο domain, χωρίς σφάλματα.
Πιθανός λόγος του bug η χρήση της etch διανομής που έχει php και mysql σε λίγο προγενέστερες εκδόσεις. Κάτι που εμφανίζεται και στην αρχική σελίδα του virtualmin χωρίς να μπορεί βεβαίως να γίνει εγκατάσταση της τελευταίας έκδοσης.
=== Πηγές ===
*http://www.virtualmin.com/index.php?Itemid=82&do=details&option=com_flyspray&task_id=4007
===== Αλλαγές κώδικα webmin =====
==== Είσοδος κουμπί Καθαρισμός ====
Για να κρύψουμε το κουμπάκι καθαρισμός της εισόδου τροποποιούμε το αρχείο /usr/share/webmin/session_login.cgi βάζωντας σε σχόλια την γραμμή
#print " \n";
Προσθέτωντας όμως την αλλαγή γραμμής που σχολιάσαμε
print " \n";
===== Αλλαγές κώδικα usermin =====
==== mail charset problems ====
Το πρόβλημα είναι ότι κατά την εμφάνιση ενός e-mail αλλάζει αυτόματα το charset σε αυτό του e-mail. Αυτό όμως κάνει τα κουμπιά και τα links να μην μπορούν να διαβαστούν. Χαλάει ακόμα και σε περιπτώσεις που δεν πρέπει όπως σε e-mail τύπου iso8859-1
Για να βελτιωθεί λίγο η κατάσταση με τα charset τροποποιούμε το αρχείο /usr/share/usermin/mailbox/folders-lib.pl
από
if ( &get_charset() =~ /^EUC/i ) { # EUC-JP,EUC-KR
# use default charset output for HTML
} else {
$force_charset = $charset;
}
σε
if ( &get_charset() =~ /^UTF-8/i ) { # EUC-JP,EUC-KR
$force_charset = "UTF-8"# use default charset output for HTML
} else {
$force_charset = "iso-8859-7"
}
===== Αλλαγές κώδικα template=====