Περισσότερα
Πώς να επανεκκινήσετε με επιτυχία ένα δίκτυο χωρίς επανεκκίνηση μέσω SSH;
Στο Ubuntu 14.04 ούτε το sudo service networking restart
ούτε το sudo /etc/init.d/networking restart
κάνουν τίποτα πια. Επίσης, και οι δύο τερματίζουν με τον κωδικό 1. Κάτι έχει προφανώς αλλάξει (ή έχει αλλάξει κατά το ήμισυ), αλλά δεν μπορώ να βρω τι. Αυτό προφανώς προκαλεί προβλήματα με την απομακρυσμένη αναδιαμόρφωση του δικτύου και εργαλεία όπως το Ansible.
$ sudo bash -x /usr/sbin/service networking restart
[sudo] password for wirehive:
++ basename /usr/sbin/service
+ VERSION='service ver. 0.91-ubuntu1'
++ basename /usr/sbin/service
+ USAGE='Usage: service < option > | --status-all | [ service_name [ command | --full-restart ] ]'
+ SERVICE=
+ ACTION=
+ SERVICEDIR=/etc/init.d
+ OPTIONS=
+ '[' 2 -eq 0 ']'
+ cd /
+ '[' 2 -gt 0 ']'
+ case "${1}" in
+ '[' -z '' -a 2 -eq 1 -a networking = --status-all ']'
+ '[' 2 -eq 2 -a restart = --full-restart ']'
+ '[' -z '' ']'
+ SERVICE=networking
+ shift
+ '[' 1 -gt 0 ']'
+ case "${1}" in
+ '[' -z networking -a 1 -eq 1 -a restart = --status-all ']'
+ '[' 1 -eq 2 -a '' = --full-restart ']'
+ '[' -z networking ']'
+ '[' -z '' ']'
+ ACTION=restart
+ shift
+ '[' 0 -gt 0 ']'
+ '[' -r /etc/init/networking.conf ']'
+ which initctl
+ grep -q upstart
+ initctl version
+ case "${ACTION}" in
+ stop networking
stop: Job failed while stopping
+ :
+ exec start networking
start: Job is already running: networking
Ποιος είναι ο σωστός τρόπος για την επανεκκίνηση της δικτύωσης στον Ubuntu 14.04 Server από απόσταση;
98
3
Αποδεικνύεται ότι αυτό είναι ένα "χαρακτηριστικό". Ο μόνος υποστηριζόμενος τρόπος επανεκκίνησης μιας διασύνδεσης στο Ubuntu Server είναι
sudo ifdown eth0 &&& sudo ifup eth0
https://bugs.launchpad.net/ubuntu/+source/ifupdown/+bug/1301015
Αυτό που άλλαξε είναι ότι δεν θέλουν να κάνετε "bouncing" το δίκτυο πια.Το σταμάτημα και η εκκίνηση εξακολουθούν να λειτουργούν.Η επανεκκίνηση δεν λειτουργεί πλέον. Μόλις "έλυσα" αυτό το "πρόβλημα", δηλαδή πήρα πίσω την παλιά συμπεριφορά. Για να επιστρέψω στην προηγούμενη συμπεριφορά: Πάρτε ένα αρχείο 13.10 /etc/init/networking.conf και αντικαταστήστε το αρχείο 14.04 με αυτό. (επεξεργασία: διευκρινίστηκε ποιο αντικαθιστά ποιο)
Η διαδικασία μοιάζει ως εξής:
Κάντε το ίδιο για το σενάριο /etc/init.d/networking, το οποίο είναι αυτό που αναφέρεται/καλεί το αρχείο /etc/init/networking.conf.
Προφανώς υπάρχει'ένας λόγος που έβαλαν μια αμυντική έξοδο εκεί, αλλά δεν'μπαίνουν στον κόπο να εξάγουν πραγματικά τι'συμβαίνει πολύ καλά.
Μια καταχώρηση πηγαίνει στο /var/log/upstart/networking.log όταν προσπαθείτε, που μοιάζει με:
Αλλά πραγματικά θα μπορούσαν/πρέπει να έχουν βγάλει αυτό ως μήνυμα διαλόγου όταν προσπαθείτε να κάνετε επανεκκίνηση της υπηρεσίας networking. αχ καλά. το βρήκαμε και μάλιστα με έναν παλιό τρόπο να το παρακάμψουμε.
EDIT: Διαπίστωσα ότι αυτό προκαλεί μια ακούσια ενεργοποίηση του script που ελέγχεται από το /etc/init/failsafe.conf το οποίο είναι ανεπιθύμητο καθώς προκαλεί μια καθυστέρηση 120 δευτερολέπτων timeout σε κάθε εκκίνηση... καθώς και ίσως να καλύπτει πραγματικές λανθασμένες ρυθμίσεις/προβλήματα δικτύου τα οποία αυτή η καθυστέρηση'η εμφάνιση θα υποδείκνυε, αλλά ήδη εμφανίζεται συνέχεια. (π.χ. Ένα αποσυνδεδεμένο καλώδιο, το οποίο επέτρεπε την πρόσβαση σε ένα κοινόχρηστο αρχείο δικτύου που αντιστοιχίζεται στο /etc/fstab, για παράδειγμα)
Σε κάθε περίπτωση, θα βρω τι προκαλεί αυτό το συνεχές χτύπημα του timeout και θα δημοσιεύσω μια λύση όταν τη βρω.
Σε σχέση με την απάντηση του kvm-user420's, έχω προχωρήσει και έχω ρυθμίσει ένα σενάριο για να αντικαταστήσω τα σενάρια δικτύωσης του Ubuntu 14.04's με αυτά του Ubuntu 13.10
Μπορείτε να το βρείτε εδώ: https://github.com/metral/restore_networking
Καλή διασκέδαση!