Зачем хранить пароль в коде? В статье какой-то лютый пример приведён из серии "как не надо делать вообще никогда". В качестве самого минимального варианта пароль по меньшей мере выносится в конфиг, который в кодовую базу не входит и прикладывается к приложению только при выкатывании в прод (речь, конечно, о сетевых приложениях на своём сервере). А дальше можно делать разные другие усложняющие вещи: передавать пароль при запуске приложения через переменные окружения или даже прямым запросом с консоли, использовать разного рода шифрованные key store с мастер-паролем. который также передавать через окружение или ещё каким-то небанальным способом... Очень много зависит от уровня рисков и от предполагаемых угроз. От чего защищаемся-то?
acwartz, знакомый работал в Huawei, программировал какие-то контроллеры. У них была ферма из этих контроллеров, которые можно было использовать удалённо.
Никита Андреевич, разницу udp/tcp программисту надо понимать обязательно! Он же должен знать, что и почему выбрать для решения конкретной задачи, а без понимания не получится.
by_EL, смотрим man shutdown на тему того, что умеет shutdown, и man halt на тему того, что умеет halt.
То, что все они представляют из себя ссылки на systemctl (проверяется командами типа ls -l /sbin/halt), это всего лишь особенности реализации. Любая программа может через argv[0] узнать, по какому имени её запустили, и systemctl при вызове с именем типа halt или shutdown просто изменяет своё поведение.