Я використовував би serviceкоманду, оскільки вона є більш послідовною у різних дистрибутивах. Отже, згаданих вами команд варіант, на який я б пішов:
service networking restart
І я б напевно запустив його всередині screenсеансу або іншим способом переконався, що він не завершиться, якщо ви втратили зв’язок із оболонкою, в яку ви ввели його. (Я спробував втратити підключення до машини, увійшовши в систему, sshа потім перезапустивши мережу лише для того, щоб ssh-з'єднання припинилося, поки мережа була відключена, і надіслати HUP serviceтаким чином, щоб воно не запускало мережу знову.)
У минулому існували системи, де serviceбула проста обгортка навколо сценаріїв, /etc/init.dі перші дві ваші команди виконували б точно те саме. Але сьогодні існують системи, де serviceіноді можна зробити щось інше, і взагалі serviceкраще знає, що робити у вашому конкретному розповсюдженні. І invoke-rc.dтакож залежить розподіл.
Хоча serviceце найбільш схоже в різних дистрибутивах, імена служб все ж можуть бути різними. Наприклад, є дистрибутиви, де служба названа networkта інші, де вона названа networking. І в деяких конфігураціях може бути доцільніше перезапустити, network-managerа не networking.