Це досить спантеличено. Хтось знає, звідки hostname
зберігається команда та читає ім’я хоста?
Я думав, що це / etc / hostname, але в цій системі Linux немає такого файлу, який я використовую. Я спробував за допомогою strace знайти місце, де він знаходився, але жодна прочитана розмова не повернула цю інформацію:
$ strace hostname 2>&1 | grep read
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340^\0\0\0\0\0\0"..., 832) = 832
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340\30\2\0\0\0\0\0"..., 832) = 832
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\16\0\0\0\0\0\0"..., 832) = 832
read(3, "nodev\tsysfs\nnodev\trootfs\nnodev\tr"..., 1024) = 248
read(3, "", 1024) = 0
Потім я помітив, що це робило невідомий системний виклик, який повертав цю інформацію:
uname({sys="Linux", node="server-name", ...}) = 0
Рекурсивна помилка в / etc / нічого не повертає:
grep "server-name" -r /etc
Де унме зберігає цю інформацію? Просто на пам’ять?