Причина это не использует Ваш фактический MAC-адрес, состоит в том, потому что код плохо написан. mac_address
функция в uuid_mac.c
имеет этот блок кода:
if ((s = socket(PF_INET, SOCK_DGRAM, 0)) < 0)
return FALSE;
sprintf(ifr.ifr_name, "eth0");
if (ioctl(s, SIOCGIFHWADDR, &ifr) < 0) {
close(s);
return FALSE;
}
Это ищет MAC-адрес eth0
интерфейс, и тихо отступающий к случайным образом сгенерированному локальному групповому адресу, если это не может найти его. Если Ваш сетевой интерфейс называют eth1
или wlan0
или что-либо еще, этому не удается найти его.
Я считал бы это ошибкой в программном обеспечении. Это должно использовать MAC-адрес аппаратного интерфейса, соответствующего текущему маршруту по умолчанию, и позволить пользователю указать альтернативный интерфейс при желании. Я рекомендовал бы сообщить о том восходящем потоке.
Относительно часового пояса: UUID не хранит часовой пояс. Информация времени в UUID хранится как время UTC, и таким образом, это то, как uuid -d
дисплеи это. Улучшение к uuid
программа могла бы быть должна предоставить возможность отображать времена согласно локальному часовому поясу при декодировании - но так или иначе, та информация не становится сохраненной в самом UUID.
sudo
пароль является Вашим паролем; Вам только нужно root
пароль, если Вы используете su
как не -root
.
Как упоминает DopeGhoti, sudo
запрашивает ваш пароль пользователя, а не пароль root.
Если у вас нет ни пароля root, ни пароля учетной записи, имеющей права sudo
, то вашим следующим лучшим вариантом будет перезагрузка сервера в режим обслуживания, или, если это не сработает правильно, загрузитесь с помощью init=/bin/sh
в составе командной строки ядра для смены пароля root.
sudo
доступ, мой ответ все еще стоит. – DopeGhoti 31.01.2014, 06:29