Οδηγός αντιμετώπισης προβλημάτων για συνηθισμένα ζητήματα διακομιστή RedM, συμπεριλαμβανομένων σφαλμάτων κλειδιού άδειας, ορατότητας στον περιηγητή διακομιστών, αποτυχιών πόρων, συνδέσεων πελατών, προβλημάτων βάσης δεδομένων και βελτιστοποίησης απόδοσης. Για οδηγίες αρχικής εγκατάστασης, δείτε τον οδηγό μας Οδηγός Εγκατάστασης Διακομιστή RedM.
Σφάλματα Κλειδιού Άδειας
Τα ζητήματα κλειδιού άδειας είναι το πιο συνηθισμένο πρόβλημα κατά την εκκίνηση ενός νέου διακομιστή RedM. Ακολουθούν τα τυπικά σφάλματα και οι λύσεις τους:
"Invalid license key" ή "Could not authenticate"
| Αιτία | Λύση |
|---|---|
| Το κλειδί άδειας έχει πληκτρολογηθεί λάθος ή έχει επιπλέον κενά | Αντιγράψτε το κλειδί απευθείας από το Keymaster. Αφαιρέστε τυχόν κενά στην αρχή/τέλος από τη μεταβλητή εκκίνησης CFX_LICENSE στο GPanel ή τη γραμμή sv_licenseKey στο server.cfg. |
| Αναντιστοιχία διεύθυνσης IP | Το κλειδί είναι καταχωρισμένο σε διαφορετική IP από την πραγματική IP του διακομιστή σας. Μεταβείτε στο Keymaster, ελέγξτε την καταχωρισμένη IP και ενημερώστε την ώστε να ταιριάζει με την IP του διακομιστή σας που εμφανίζεται στο GPanel. |
| Το κλειδί έχει οριστεί τόσο στο GPanel όσο και στο server.cfg με διαφορετικές τιμές | Βεβαιωθείτε ότι το κλειδί είναι συνεπές. Είναι καλύτερο να το ορίσετε στη μεταβλητή εκκίνησης του GPanel και να αφήσετε το egg να το μεταβιβάσει στον διακομιστή. Αφαιρέστε ή σχολιάστε (comment out) το sv_licenseKey από το server.cfg αν το διαχειρίζεται το GPanel. |
| Πρόβλημα λογαριασμού Cfx.re ή ανακληθέν κλειδί | Συνδεθείτε στο Keymaster και επιβεβαιώστε ότι το κλειδί είναι ακόμη ενεργό. Δημιουργήστε ένα νέο κλειδί αν το παλιό διαγράφηκε ή έληξε. |
| Η υπηρεσία Keymaster είναι προσωρινά εκτός λειτουργίας | Ελέγξτε τη σελίδα κατάστασης της Cfx.re για διακοπές. Περιμένετε και δοκιμάστε ξανά αργότερα. |
Ο Διακομιστής Δεν Εμφανίζεται στον Περιηγητή
Αν ο διακομιστής σας εκτελείται αλλά οι παίκτες δεν μπορούν να τον βρουν στον περιηγητή διακομιστών RedM:
Λίστα Ελέγχου
- Περιμένετε τουλάχιστον 5 λεπτά. Μετά την εκκίνηση, ο διακομιστής χρειάζεται χρόνο για να καταχωριστεί στη λίστα master διακομιστών της Cfx.re. Οι νέοι διακομιστές μπορεί να χρειαστούν αρκετά λεπτά για να εμφανιστούν.
- Επιβεβαιώστε ότι το κλειδί άδειας είναι έγκυρο. Ο διακομιστής δεν θα καταχωρηθεί χωρίς ένα λειτουργικό κλειδί άδειας. Ελέγξτε την κονσόλα του διακομιστή για σφάλματα που σχετίζονται με την άδεια.
- Ελέγξτε τη διαμόρφωση endpoint. Βεβαιωθείτε ότι τα
endpoint_add_tcpκαιendpoint_add_udpστοserver.cfgχρησιμοποιούν τη σωστή θύρα:
Η θύρα πρέπει να ταιριάζει με αυτήν που έχει αντιστοιχιστεί στο GPanel.endpoint_add_tcp "0.0.0.0:30120" endpoint_add_udp "0.0.0.0:30120" - Ελέγξτε για ρυθμίσεις "sv_master1" ή καταχώρισης. Βεβαιωθείτε ότι δεν έχετε κατά λάθος ρυθμίσει τον διακομιστή να μην καταχωρεί τον εαυτό του. Δεν πρέπει να υπάρχει
sv_master1 ""στη διαμόρφωσή σας (αυτό απενεργοποιεί την καταχώριση στη λίστα master). - Επιβεβαιώστε ότι ο διακομιστής εκτελείται όντως. Ελέγξτε την κονσόλα του GPanel. Αν ο διακομιστής κατέρρευσε ή σταμάτησε, δεν θα εμφανίζεται στον περιηγητή.
- Δοκιμάστε απευθείας σύνδεση. Ακόμη και αν ο διακομιστής δεν είναι στον περιηγητή, η απευθείας σύνδεση θα πρέπει να λειτουργεί. Ζητήστε από έναν παίκτη να πατήσει F8 στο RedM και να πληκτρολογήσει:
connect YOUR_SERVER_IP:PORT
http://YOUR_SERVER_IP:PORT/info.json σε έναν web browser. Αν ο διακομιστής εκτελείται και είναι προσβάσιμος, θα επιστρέψει μια απόκριση JSON με πληροφορίες διακομιστή.
Αποτυχίες Φόρτωσης Πόρων
Τα σφάλματα πόρων είναι συνηθισμένα κατά την προσθήκη νέων σεναρίων ή πλαισίων στον διακομιστή σας. Ακολουθούν τα πιο συχνά ζητήματα:
"Could not find resource [resource_name]"
- Ο φάκελος του πόρου δεν υπάρχει στον κατάλογο
resources/, ή βρίσκεται σε λάθος τοποθεσία. - Το όνομα του φακέλου δεν ταιριάζει με το όνομα που χρησιμοποιείται στο
ensure. Τα ονόματα πόρων είναι case-sensitive. - Διόρθωση: Επιβεβαιώστε ότι ο φάκελος του πόρου υπάρχει και ότι το όνομα στο
server.cfgταιριάζει ακριβώς. Χρησιμοποιήστε τον file manager του GPanel ή SFTP για να ελέγξετε.
"Failed to load resource [resource_name]: manifest error"
- Το
fxmanifest.luaή το__resource.luaτου πόρου έχει συντακτικό σφάλμα. - Το manifest αναφέρεται σε αρχεία που δεν υπάρχουν στον φάκελο του πόρου.
- Διόρθωση: Ανοίξτε το αρχείο manifest και ελέγξτε για τυπογραφικά λάθη, ελλείποντα κόμματα ή αναφορές σε ανύπαρκτα αρχεία. Ελέγξτε την κονσόλα του διακομιστή για τον συγκεκριμένο αριθμό γραμμής του σφάλματος.
"Error loading script [filename]: [error details]"
- Ένα αρχείο Lua, C# ή JavaScript εντός του πόρου έχει συντακτικό σφάλμα ή σφάλμα κατά την εκτέλεση.
- Διόρθωση: Διαβάστε το πλήρες μήνυμα σφάλματος στην κονσόλα. Θα περιλαμβάνει το όνομα του αρχείου και τον αριθμό γραμμής. Οι συνηθισμένες αιτίες περιλαμβάνουν:
- Ελλείπουσες εξαρτήσεις (έναν άλλο πόρο που πρέπει να φορτωθεί πρώτος)
- Παρωχημένο πόρο που δεν είναι συμβατός με την τρέχουσα έκδοση διακομιστή RedM
- Λανθασμένες τιμές διαμόρφωσης στο αρχείο config του πόρου
Ζητήματα Σειράς Φόρτωσης Πόρων
Οι πόροι στο server.cfg φορτώνονται με τη σειρά που εμφανίζονται. Αν ένας πόρος εξαρτάται από έναν άλλο (π.χ. το vorp_inventory εξαρτάται από το vorp_core), η εξάρτηση πρέπει να αναφέρεται πρώτη:
# Correct order - dependencies first
ensure oxmysql
ensure vorp_core
ensure vorp_inventory
ensure vorp_stores
# Wrong order - will cause errors
# ensure vorp_inventory <-- depends on vorp_core
# ensure vorp_core <-- loaded too late
Ζητήματα Σύνδεσης Πελάτη
Όταν οι παίκτες δεν μπορούν να συνδεθούν στον διακομιστή σας:
"Connection timed out" / "Failed to connect"
| Αιτία | Λύση |
|---|---|
| Ο διακομιστής δεν εκτελείται | Ελέγξτε την κονσόλα του GPanel για να επιβεβαιώσετε ότι ο διακομιστής είναι online και δεν έχει καταρρεύσει. |
| Λάθος IP ή θύρα | Επιβεβαιώστε ότι ο παίκτης χρησιμοποιεί τη σωστή IP και θύρα από το GPanel. Δείτε το Πώς να Βρείτε την IP και τη Θύρα του Διακομιστή σας. |
| Λανθασμένη διαμόρφωση endpoint | Βεβαιωθείτε ότι τα endpoint_add_tcp και endpoint_add_udp στο server.cfg χρησιμοποιούν τη θύρα 0.0.0.0:PORT όπου το PORT ταιριάζει με το GPanel. |
| Ο διακομιστής είναι γεμάτος | Ελέγξτε αν έχει συμπληρωθεί το sv_maxclients. Αυξήστε την τιμή αν το πακέτο φιλοξενίας σας το επιτρέπει. |
"Connection rejected by server"
- Κωδικός διακομιστή: Αν έχει οριστεί το
sv_password, ο παίκτης πρέπει να εισαγάγει τον σωστό κωδικό. - Πόρος whitelist/allowlist: Αν έχετε ενεργοποιημένο πόρο whitelist, ο παίκτης πρέπει να εγκριθεί πριν συνδεθεί.
- Ban: Ο παίκτης μπορεί να έχει αποκλειστεί. Ελέγξτε τη λίστα αποκλεισμού ή τη βάση δεδομένων σας για τα αναγνωριστικά του.
Ο πελάτης καταρρέει κατά τη σύνδεση
- Ένας πόρος στον διακομιστή στέλνει εσφαλμένα δεδομένα ή έχει σφάλμα σεναρίου από την πλευρά του πελάτη που προκαλεί την κατάρρευση του πελάτη.
- Διόρθωση: Απενεργοποιήστε τους πρόσφατα προστιθέμενους πόρους έναν προς έναν για να εντοπίσετε τον προβληματικό. Ελέγξτε την κονσόλα του διακομιστή για σφάλματα κατά τη σύνδεση πελάτη.
- Βεβαιωθείτε ότι ο πελάτης RedM του παίκτη είναι ενημερωμένος.
Σφάλματα "Could not download file"
- Ο διακομιστής προσπαθεί να στείλει ένα μεγάλο αρχείο (π.χ. ένα streaming asset) που υπερβαίνει τα όρια μεταφοράς ή η σύνδεση είναι ασταθής.
- Διόρθωση: Μειώστε το μέγεθος των streamed assets, χρησιμοποιήστε CDN/εξωτερική φιλοξενία για μεγάλα αρχεία αν υποστηρίζεται, ή ζητήστε από τον παίκτη να επαναλάβει τη σύνδεση.
Προβλήματα Βάσης Δεδομένων (MySQL / oxmysql)
Τα περισσότερα πλαίσια roleplay RedM χρησιμοποιούν MySQL για μόνιμη αποθήκευση δεδομένων. Ο πιο συνηθισμένος connector βάσης δεδομένων είναι το oxmysql.
Σφάλματα Αποτυχίας Σύνδεσης
Αν το oxmysql (ή άλλος connector MySQL) αποτύχει να συνδεθεί, ελέγξτε τα ακόλουθα:
# Typical oxmysql connection string in server.cfg
set mysql_connection_string "mysql://user:password@host:3306/database_name?charset=utf8mb4"
| Σφάλμα | Λύση |
|---|---|
ECONNREFUSED ή "Connection refused" |
Ο διακομιστής MySQL δεν εκτελείται, ο host/θύρα είναι λάθος, ή ο διακομιστής MySQL δεν δέχεται εξωτερικές συνδέσεις. Επιβεβαιώστε τον host, τη θύρα και ότι ο διακομιστής βάσης δεδομένων σας είναι online. |
ER_ACCESS_DENIED_ERROR |
Λάθος όνομα χρήστη ή κωδικός στο connection string. Ελέγξτε ξανά τα διαπιστευτήρια στο panel φιλοξενίας βάσης δεδομένων σας. |
ER_BAD_DB_ERROR |
Το όνομα της βάσης δεδομένων δεν υπάρχει. Δημιουργήστε πρώτα τη βάση δεδομένων μέσω του panel διαχείρισης βάσης δεδομένων σας (phpMyAdmin, κ.λπ.). |
ETIMEDOUT |
Ο διακομιστής βάσης δεδομένων είναι απρόσιτος. Ελέγξτε αν υπάρχουν κανόνες firewall που μπλοκάρουν τη σύνδεση, ή αν ο host της βάσης δεδομένων είναι σωστός. |
| "Too many connections" | Η βάση δεδομένων έφτασε στο μέγιστο όριο συνδέσεων. Αυτό μπορεί να συμβεί αν οι πόροι δεν κλείνουν σωστά τις συνδέσεις, ή αν το όριο είναι πολύ χαμηλό. Επανεκκινήστε τον διακομιστή και ελέγξτε τη ρύθμιση max_connections του MySQL σας. |
localhost ή 127.0.0.1 ως host. Αν βρίσκονται σε διαφορετικούς διακομιστές, χρησιμοποιήστε τη διεύθυνση IP του διακομιστή βάσης δεδομένων και βεβαιωθείτε ότι ο χρήστης MySQL έχει δικαιώματα απομακρυσμένης σύνδεσης.
Ελλείπουσες Πίνακες ή Σφάλματα Σχήματος
Τα πλαίσια roleplay συχνά απαιτούν τη ρύθμιση πινάκων βάσης δεδομένων πριν μπορέσουν να λειτουργήσουν:
- Ελέγξτε την τεκμηρίωση του πλαισίου ή το αποθετήριο GitHub για αρχεία εισαγωγής SQL (συχνά ονομάζονται
database.sql,schema.sql, ή παρόμοια). - Εισαγάγετε το αρχείο SQL στη βάση δεδομένων σας χρησιμοποιώντας το phpMyAdmin ή έναν πελάτη MySQL.
- Ορισμένα πλαίσια δημιουργούν αυτόματα πίνακες κατά την πρώτη εκκίνηση. Βεβαιωθείτε ότι ο χρήστης της βάσης δεδομένων έχει δικαιώματα
CREATE TABLE.
Ζητήματα Απόδοσης
Αν ο διακομιστής σας RedM παρουσιάζει lag, χαμηλό tick rate ή γενικά κακή απόδοση:
Εντοπισμός Προβλημάτων Απόδοσης
Ελέγξτε την κονσόλα του διακομιστή για προειδοποιήσεις απόδοσης. Οι διακομιστές RedM στοχεύουν σε tick rate περίπου 30-64 ticks ανά δευτερόλεπτο. Μπορείτε να το παρακολουθήσετε με:
- Πίνακας ελέγχου txAdmin: Αν το txAdmin είναι διαθέσιμο, εμφανίζει μετρήσεις απόδοσης διακομιστή σε πραγματικό χρόνο.
- Κονσόλα διακομιστή: Προσέξτε για προειδοποιήσεις "slow tick" ή "resource hitch".
- Εντολή resmon: Πληκτρολογήστε
resmon 1στην κονσόλα του διακομιστή (ή στην κονσόλα F8) για να ενεργοποιήσετε το resource monitor, το οποίο εμφανίζει τον χρόνο CPU ανά πόρο.
Συνηθισμένες Λύσεις Απόδοσης
| Ζήτημα | Λύση |
|---|---|
| Υψηλή χρήση CPU από συγκεκριμένο πόρο | Χρησιμοποιήστε resmon 1 για να εντοπίσετε τον πόρο. Εξετάστε την αντικατάστασή του με μια πιο βελτιστοποιημένη εναλλακτική, ή επικοινωνήστε με τον προγραμματιστή του πόρου. |
| Πάρα πολλοί φορτωμένοι πόροι | Κάθε πόρος καταναλώνει πόρους διακομιστή. Ελέγξτε τη λίστα πόρων σας και αφαιρέστε όσους είναι αχρησιμοποίητοι ή περιττοί. |
| Bottleneck ερωτημάτων βάσης δεδομένων | Αργά ή μη ευρετηριασμένα ερωτήματα βάσης δεδομένων μπορούν να προκαλέσουν hitches στον διακομιστή. Ελέγξτε τις προειδοποιήσεις αργών ερωτημάτων του oxmysql στην κονσόλα. Προσθέστε ευρετήρια (indexes) σε στήλες που ερωτώνται συχνά. |
| Υψηλός αριθμός παικτών που προκαλεί lag | Μειώστε το sv_maxclients σε ένα επίπεδο που μπορεί να διαχειριστεί το υλικό του διακομιστή σας. Εξετάστε την αναβάθμιση του πακέτου φιλοξενίας σας για περισσότερους πόρους. |
| Όρια οντοτήτων OneSync | Πάρα πολλές δημιουργημένες οντότητες (peds, οχήματα, αντικείμενα) μπορούν να υποβαθμίσουν την απόδοση. Χρησιμοποιήστε πόρους που καθαρίζουν τις αχρησιμοποίητες οντότητες. |
| Διαρροές μνήμης | Ορισμένοι κακογραμμένοι πόροι διαρρέουν μνήμη με την πάροδο του χρόνου. Παρακολουθήστε τη χρήση RAM του διακομιστή στο GPanel. Οι τακτικές επανεκκινήσεις διακομιστή (κάθε 6-12 ώρες) μπορούν να μετριάσουν αυτό το πρόβλημα. |
Συνιστώμενες Πρακτικές
- Προγραμματίστε αυτόματες επανεκκινήσεις κάθε 6-12 ώρες χρησιμοποιώντας τη λειτουργία προγραμματισμού του GPanel ή το txAdmin για να καθαρίζετε τα συσσωρευμένα ζητήματα μνήμης και οντοτήτων.
- Διατηρείτε τους πόρους ενημερωμένους για να επωφελείστε από διορθώσεις απόδοσης και βελτιστοποιήσεις.
- Αποφεύγετε την επανάληψη λειτουργικότητας — μην εκτελείτε δύο πόρους που κάνουν το ίδιο πράγμα (π.χ. δύο συστήματα καιρού).
- Δοκιμάζετε νέους πόρους σε έναν διακομιστή staging (ή με χαμηλό αριθμό παικτών) πριν τους αναπτύξετε στον κύριο διακομιστή σας.
- Παρακολουθείτε τις μετρήσεις διακομιστή τακτικά μέσω του GPanel ή του txAdmin για να εντοπίζετε προβλήματα έγκαιρα.
Γενικές Συμβουλές Αντιμετώπισης Προβλημάτων
- Διαβάζετε πάντα την έξοδο της κονσόλας του διακομιστή. Σχεδόν κάθε σφάλμα περιλαμβάνει ένα μήνυμα στην κονσόλα που σας λέει τι πήγε στραβά και πού.
- Επανεκκινήστε τον διακομιστή μετά από αλλαγές διαμόρφωσης. Οι περισσότερες αλλαγές στο
server.cfgαπαιτούν πλήρη επανεκκίνηση διακομιστή για να τεθούν σε ισχύ. - Απενεργοποιείτε τους πόρους έναν προς έναν για να απομονώσετε προβλήματα. Σχολιάστε (comment out) τις γραμμές
ensureστοserver.cfgμε#. - Κρατάτε αντίγραφα ασφαλείας των λειτουργικών διαμορφώσεων πριν κάνετε αλλαγές. Κατεβάστε το
server.cfgκαι τη βάση δεδομένων σας πριν από σημαντικές ενημερώσεις. - Ελέγξτε τα φόρουμ και την τεκμηρίωση της Cfx.re στο docs.fivem.net για επίσημη τεκμηρίωση που ισχύει τόσο για το FiveM όσο και για το RedM.
- Επιβεβαιώστε τη συμβατότητα πόρων με την έκδοση του διακομιστή σας. Οι πόροι που κατασκευάστηκαν για παλαιότερες εκδόσεις μπορεί να μην λειτουργούν με τα τρέχοντα builds του RedM.
Σχετικά Άρθρα
- Οδηγός Εγκατάστασης Διακομιστή RedM — Κλειδιά άδειας, διαμόρφωση server.cfg, διαχείριση πόρων και σύνδεση.
- Πώς να Βρείτε την IP και τη Θύρα του Διακομιστή σας
- Πώς να Ανεβάσετε Αρχεία μέσω SFTP
- Ξεκινώντας με τον Νέο σας Διακομιστή
Χρειάζεστε Βοήθεια;
Αντιμετωπίζετε ακόμη προβλήματα με τον διακομιστή σας RedM; Ανοίξτε ένα ticket υποστήριξης και συμπεριλάβετε τυχόν μηνύματα σφάλματος από την κονσόλα του διακομιστή σας. Η ομάδα μας θα σας βοηθήσει να διαγνώσετε και να επιλύσετε το πρόβλημα.