Τετάρτη 17 Ιουλίου 2019

Προσπαθώντας να συνδέσω μια εφαρμογή γραμμένη σε .net compact framework 3.5 για PDA με Windows Mobile 5 σε SQL Server, διαπίστωσα ότι ήταν αδύνατο να συνδεθεί σε Named Instance του SQL Server. Το ίδιο πρόγραμμα όταν έτρεχε από PC λειτουργούσε κανονικά.

Η μορφή που είχε το connection string, ως προς το datasource,  ήταν X.X.X.X\InstanceName (όπου X.X.X.X η IP διεύθυνση του SQL Server).

Μετά από αρκετή προσπάθεια διαπίστωσα ότι το πρόβλημα ήταν ότι ο Server δεν διέθεται Pointer Record στο DNS Server.

Μόλις προσέθεσα το Pointer Record, η εφαρμογή συνδέθηκε κανονικά.

Παρασκευή 27 Ιανουαρίου 2017

Υπάρχουν φορές που τα αρχεία που έχουμε σε μία διανομή Linux και έχουν ελληνικό όνομα δεν απεικονίζονται σωστά στη λίστα αρχείων όπως φαίνεται στην παρακάτω εικόνα:

-rwxrwxr-x 1 mpd  audio  9877558 Aug  1  2013 ????? ?????????????- ???????? ????????- ?????? ?????????? - ?? ??????? ??? ????.mp3
-rwxrwxr-x 1 mpd  audio  3279931 Aug  1  2013 ?????_[???????? ???????].mp3
-rwxrwxr-x 1 mpd  audio  7285595 Aug  1  2013 ?????? - ???? ??? ??????? ???? ?????????.mp3
-rwxrwxr-x 1 mpd  audio  3897257 Aug  1  2013 ?????? - ??????_[?????????? ????????].mp3
-rwxrwxr-x 1 mpd  audio  4180368 Aug  1  2013 ?????? - ???????? .mp3
-rwxrwxr-x 1 mpd  audio  2905440 Aug  1  2013 ?????? ? ?????_[?????????? ?????????_???????? ?????].mp3
-rwxrwxr-x 1 mpd  audio  2856539 Aug  1  2013 ?????? ??? ???_[?????????? ?????????].mp3

-rwxrwxr-x 1 mpd  audio  2930517 Aug  1  2013 ?????? ???_[??????? ?.].mp3

Αυτό ωφείλεται στο ότι η κωδικοποίηση των ονομάτων των αρχείων είναι διαφορετική από αυτή που υποστηρίζει το σύστημα μια και οι νεότερες διανομές Linux υποστηρίζουν εξ ορισμού κωδικοποίηση UTF-8 ενώ οι παλιότερες διανομές υποστήριζαν ISO (π.χ. ISO8859-7 για ελληνικά).

Ένας γρήγορος τρόπος για να μετατρέψουμε τα ονόματα των αρχείων ώστε να απεικονίζονται σωστά είναι με τη χρήση του προγράμματος convmv.

Για να μετατρέψουμε ένα αρχείο με το convmv του δίνουμε ώς παράμετρους την τρέχουσα κωδικοποίηση του αρχείου με το διακόπτη -f (π.χ. -f iso8859-7 για ελληνικά), την επιθυμητή κωδικοποίηση στην οποία θέλουμε να μετατρέψουμε το όνομα του αρχείου, το όνομα του αρχείου και το διακόπτη --notest για να εκτελεστεί κανονικά και να γίνει η αντικατάσταση.

Σε κάθε περίπτωση πρωτού κάνουμε μια μετατροπή είναι καλό να έχουμε εκτελέσει το convmv χωρίς τον διακόπτη --notest ώστε να ελέγξουμε εκ των προτέρων τη μετατροπή πρωτού αυτή εκτελεστεί ουσιαστικά και τροποποιήσει το αρχείο στο δίσκο μας.

Αν επιθυμούμε να μετατρέψουμε ένα σύνολο αρχείων τότε στη θέση του ονόματος αρχείου βάζουμε τον αστερίσκο (*) που δρα ως μπαλαντέρ στην επιλογή των αρχείων ενώ αν τα αρχεία αυτά βρίσκονται σε μια ιεραρχική δομή φακέλων και θέλουμε να μετατραπούν τόσο τα αρχεία που βρίσκονται στον αρχικό φάκελο όσο και τα αρχεία που βρίσκονται στους υποφακέλους χρησιμοποιούμε ως όνομα αρχείο τη σχετική ή απόλυτη διαδρομή του φακέλου και τον διακόπτη -r.

Στην περίπτωση αυτή η εντολή που θα εκτελέσουμε παίρνει την ακόλουθη μορφή:

convmv -f iso8859-7 -t utf8 -r /path/to/files/* --notest

Τέλος αν το convmv δεν υπάρχει ήδη στη διανομή σας θα πρέπει να το εγκαταστήσετε με τον ανάλογο package manager. Στην περίπτωση του Ubuntu από την κονσόλα εκτελέιτε

sudo apt-get install convmv




Πέμπτη 19 Ιανουαρίου 2017

Πρόσφατα διαπίστωσα ότι ένας Server με Windows 2008 R2 Standard 64bit καθυστερούσε αδικαιολόγητα μετά από επανεκκίνηση στη διαδικασία εφαρμογής ρυθμήσεων υπολογιστή, το γνωστό "Applying Windows Settings", αυξάνοντας το συνολικό χρόνο εκκίνησης σε περίπου 1 ώρα.

Μετά από αρκετό ψάξιμο έπεσα σε αυτό το άρθρο Server 2008 R2 Slow startup while applying computer settings στο ιστολόγιο 33KB available high memory.

Το άρθρο αυτό πρότεινε 2 λύσεις από τις οποίες δοκίμασα την πρώτη που παρέπεμπε στο άρθρο της Microsoft με τίτλο Unexpectedly slow startup or logon process in Windows Server 2008 R2 or in Windows 7 μια και δεν είχα ενεργοποιήσει την πολιτική "Do not automatically make redirected folders available offline" στο δίκτυό μου.

Το Hotfix δεν είναι άμεσα διαθέσιμο αλλά αποστέλλεται σύνδεσμος στο χρήστη μετά από τη συμπλήρωση αίτησης στη σελίδα του. Έκανα την αίτηση αργά το απόγευμα και την επόμενη ημέρα είχα το link στο email μου.

Μετά την εφαρμογή του εν λόγω Hotfix ο χρόνος εκκίνησης του Server μου επανήλθε στα φυσιολογικά επίπεδα.


Δευτέρα 24 Αυγούστου 2015

Πρόβλημα εκκίνησης Windows Server 2003 μετά από Updates στα Windows STOP: c000021a (Fatal System Error) The windows Logon Process System process terminated unexpectedly with a status of 0x00000080



Μετά από μια αναβάθμιση στα Windows 2003 Server R2 x64 εμφάνισε το ακόλουθο μήνυμα:

STOP: c000021a (Fatal System Error)
The windows Logon Process System process terminated unexpectedly with a status of 0x00000080 (0x00000000 0x00000000).
The system has been shut down.

Η διαδικασία για την εύρεση του "ενόχου" πακέτου αναβάθμισης είναι συνήθως η απεγκατάσταση όλων των αναβαθμίσεων που περάστηκαν αμέσως πριν δημιουργηθεί το πρόβλημα. Πρέπει να αφαιρείται κάθε μία ξεχωριστά και στη συνέχεια να γίνεται επανεκκίνηση και προσπάθεια κανονικής εκκίνησης του Server. Όταν ο Server εκκινήσει κανονικά η τελευταία αναβάθμιση που απεγκαταστήσαμε είναι προφανώς και αυτή που ευθύνεται για το πρόβλημα. Ευτυχώς κάποιος άλλος είχε ήδη κάνει αυτή τη δουλειά και είχε βρει το προβληματικό update και γνωστοποίησε σχόλιό του στο Ghacks.net.

Στην προκειμένη περίπτωση το πρόβλημα ωφειλώταν στο Update με αριθμό KB3067505 το οποίο έπρεπε να αφαιρεθεί για να επανέλθει το σύστημα. 

Η διαδικασία αφαίρεσης πραγματοποιείται μέσω του Recovery Console (που αν δεν είναι προεγκατεστημένο στο Server εκτελείται από το CD εγκατάστασης των Windows 2003) και είναι πραγματοποιείται με τις ακόλουθες δύο εντολές:

CHDIR C:\WINDOWS\$NTUNINSTALLKB3067505$\SPUNINST

BATCH SPUNINST.TXT

Αν η εγκατάσταση του Update έχει γίνει μέσω του Windows Server Update Services είναι καλό να γίνει decline το Update και να εκτελεστεί η εντολή wuauclt /detectnow /reportnow ώστε να ενημερωθούν και οι υπόλοιποι servers να μην προχωρήσουν σε εγκατάσταση του update.



Τρίτη 5 Μαΐου 2015

Υπάρχουν πάρα πολλά tutorials για να μετατρέψεις ένα Access Point AP1131ag της Cisco από Stand Alone σε ελεγχόμενο από Controller LWAPP. Το αντίστροφο είναι αρκετά πιο σπάνιο. Όταν όμως πρόσφατα ήρθε στα χέρια μου μια παρτίδα μεταχειρισμένα AP1131ag κάποια από αυτά ήταν προγραμματισμένα για LWAPP ενώ εγώ ήθελα να τα λειτουργήσω ως Stand Alone.

Μετά από αρκετό ψάξιμο βρέθηκα στο ιστολόγιο του Paul Beyer στο οποίο περιγράφει τη διαδικασία Converting a Cisco AP From Lwapp to autonomous-mode το οποίο σε γενικές γραμμές εξηγούσε τη διαδικασία.

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

Τι γίνεται όμως αν δεν έχεις ήδη το εν λόγω αρχείο; Αν βρίσκονται στα χέρια σου αντίστοιχα AP1131ag τα οποία λειτουργούν ως Stand Alone τα πράγματα είναι απλά. Αρχειοθετείς το σύνολο της flash σε ένα TAR αρχείο πάνω σε έναν tftp server στο τοπικό σου δίκτυο και το κατεβάζεις από εκεί.

Η διαδικασία συνολικά είναι η εξής

1) Δημιουργείς ένα κενό αρχείο με την ονομασία του αρχείου που θα ανεβάσεις στο φάκελο που χρησιμοποεί ο tftp server που χρησιμοποιείς (μια και προυπόθεση για να επιτρέψει ο tftp server το να ανεβάσεις κάτι είναι να υπάρχει ήδη - κάτι που γίνεται για λόγους ασφαλείας) και του δίνεις μια ονομασία κατάλληλη κατά προτίμηση που να να περιλαμβάνει το version ώστε να μπορείς να βρεις πιο εύκολα άκρη στο μέλλον και με επέκταση tar (π.χ. c1130-k9w7-mx.124-10b.JA3.tar).

2) Αρχειοθετείς πάνω στον tftp server τα περιεχόμενα της flash ενός AP που είναι ήδη σε λειτουργία Stand Alone  με την εντολη archive upload-sw ως ακολούθως

archive upload-sw tftp://XXX.XXX.XXX.XXX/filename.tar

όπου XXX.XXX.XXX.XXX η IP διεύθυνση του tftp server και filename.tar το όνομα του αρχείου που δημιουργήσαμε στο βήμα 1.  Αν δηλαδή η διεύθυνση μας είναι 192.168.0.101 και το όνομα του αρχείου c1130-k9w7-mx.124-10b.JA3.tar τότε εκτελούμε ως ακολούθως

archive upload-sw tftp://192.168.0.101/c1130-k9w7-mx.124-10b.JA3.tar

Αν όλα πήγαν καλά έχουμε ανεβάσει στον tftp server το αρχείο που μας ενδιαφέρει και μπορούμε να προγραμματίσουμε πλέον τα AP1131ag που είναι σε λειτουργία LWAPP ώστε να γίνουν κι αυτά Stand Alone με τα ακόλουθα βήματα:

1) Μπαίνουμε σε λειτουργία Enable ώστε να μπορούμε να δίνουμε εντολές αυξημένων προνομίων (privileged) στο AP με την εντολή:

enable

Στη συνέχεια για να ενεργοποιήσουμε τη διαδικασία διαμόρφωσης (configuration mode) πρέπει να τρέξουμε την ακόλουθη εντολή:

debug lwapp con cli

για να λάβουμε απάντηση (αν όλα πήγαν καλά):

LWAPP console CLI allow/disallow debugging is on

Σε νεότερα Images όπου το πρωτόκολο lwapp έχει αντικατασταθεί από το πρωτοκολο capwap η αντίστοιχη εντολή είναι:

debug capwap console cli


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

archive download-sw /overwrite /force-reload tftp://192.168.0.101/c1130-k9w7-mx.124-10b.JA3.tar

Η εντολή αυτή θα ανοίξει το αρχείο από τον tftp server, θα αντικαταστήσει τα αρχεία και θα επαναφορτώσει το λειτουργικό του AP1131ag χωρίς απαραίτητα να είναι αποθηκευμένο το configuration.

Αν όλα πάνε καλά, το AP1131ag θα επανεκκινήσει σε λειτουργία Stand Alone με ένα minimal configuration και θα είναι έτοιμο να δεχτεί τον προγραμματισμό του σύμφωνα με τις ανάγκες σας.

Πέμπτη 29 Μαΐου 2014

Υπάρχουν φορές που θέλουμε να δούμε την πραγματική ταχύτητα μιας σύνδεσης στο Internet χωρίς να θέλουμε ή να μπορούμε να χρησιμοποιήσουμε το Browser μας ή και γενικά το GUI. Για το λειτουργικό Linux υπάρχει μια πληθώρα εφαρμογών που κάνουν αυτή τη δουλειά, τι γίνεται όμως όταν θέλουμε να χρησιμοποιήσουμε μια CLI εφαρμογή στα Windows για το σκοπό αυτό;

Ευτυχώς κάποιος άλλος είχε την ανάγκη αυτή πριν από μας και δημιούργησε για το σκοπό αυτό το πρόγραμμα speedtest σε εκδόσεις για Linux και Windows (32bit και 64bit) και μπορούμε να το μεταφορτώσουμε από εδώ: http://thehelpfulhacker.net/projects/speedtest/

Τρίτη 15 Απριλίου 2014

Εγκατάσταση Windows 7 x64 σε MBR Partition

Τα Windows 7 x64 εγκαθιστούνται εξ ορισμού σε GPT Partition όταν η εγκατάσταση γίνεται από υπολογιστή με UEFI αντί για BIOS.

Υπάρχουν όμως περιπτώσεις που η χρήση GPT Partition δεν είναι εφικτή (π.χ. στις περιπτώσεις όπου χρησιμοποιείται RAID Controller μη συμβατός με UEFI). Στις περιπτώσεις αυτές υπάρχει ένα τρικ που μπορούμε να χρησιμοποιήσουμε ώστε να γίνει εγκατάσταση σε partition με Master Boot Record. Στις ρυθμίσεις του UEFI, κι εφόσον αυτό υποστηρίζεται από τον Η/Υ μας, επιλέγουμε να απενεργοποιήσουμε τα UEFI boot sources και να κάνουμε boot από Legacy boot sources. (το DVD ROM για παράδειγμα μπορεί να είναι τόσο EUFI boot source όσο και Legacy boot source).

Έτσι η εγκατάσταση των Windows 7 x64 θεωρεί ότι ο υπολογιστής δεν είναι συμβατός με UEFI και επιτρέπει την εγκατάσταση σε partition με MBR.