Я хочу знать, что есть способ, благодаря которому мы можем генерировать уникальный аппаратный хэш конкретной машины? Хэш должен быть уникальным для машины, а хэш должен быть разным, даже две машины имеют одинаковую конфигурацию. Возможно ли это?
Самое простое решение, о котором я мог подумать, это:
sudo dmidecode -s system-uuid
Согласно странице руководства dmidecode, эти данные извлекаются из интерфейса управления рабочим столом, который имеет какое-то отношение к BIOS. Это невозможно изменить.
Я проверил эту команду на двух машинах с одним и тем же оборудованием, и результат отличается от ожидаемого от имени system-uuid, поэтому он может быть использован как уникальный аппаратный хеш.
Вы можете использовать MAC-адрес eth0 (при условии, что это существует на каждой машине). Вы можете получить это самостоятельно (может быть, проще) с этим:
ifconfig eth0 | grep HWaddr | awk '{ print $NF}' | sed 's/://g'
Это даст вам что-то вроде 6cf04954aaaa.
Предполагается, что они будут но они не всегда. Если все ваше сетевое оборудование принадлежит одному и тому же производителю, вы можете найти кроссовер, поэтому будьте осторожны с ним.
В противном случае вы можете создать свою собственную уникальную строку и сохранить ее в /etc/computer-id (или другой путь по вашему выбору).
uuidgen -r
Сгенерирует как можно более случайное, например: 52a85807-35fe-409e-8983-87eb58c02ece
uuidgen -t
Использует время и eth0, чтобы сделать что-то вроде: eb8280dc-b5ec-11e0-90dd-6cf04954aaaa
Оба являются довольно уникальными, но, как и в случае любого случайного, всегда есть возможность столкновения. Храните центральный список, чтобы избежать таких проблем.
Самое простое решение, о котором я мог подумать, это:
sudo dmidecode -s system-uuid
Согласно странице руководства dmidecode, эти данные извлекаются из интерфейса управления рабочим столом, который имеет какое-то отношение к BIOS. Это невозможно изменить.
Я проверил эту команду на двух машинах с одним и тем же оборудованием, и результат отличается от ожидаемого от имени system-uuid, поэтому он может быть использован как уникальный аппаратный хеш.
Вы можете использовать MAC-адрес eth0 (при условии, что это существует на каждой машине). Вы можете получить это самостоятельно (может быть, проще) с этим:
ifconfig eth0 | grep HWaddr | awk '{ print $NF}' | sed 's/://g'
Это даст вам что-то вроде 6cf04954aaaa.
Предполагается, что они будут но они не всегда. Если все ваше сетевое оборудование принадлежит одному и тому же производителю, вы можете найти кроссовер, поэтому будьте осторожны с ним.
В противном случае вы можете создать свою собственную уникальную строку и сохранить ее в /etc/computer-id (или другой путь по вашему выбору).
uuidgen -r
Сгенерирует как можно более случайное, например: 52a85807-35fe-409e-8983-87eb58c02ece
uuidgen -t
Использует время и eth0, чтобы сделать что-то вроде: eb8280dc-b5ec-11e0-90dd-6cf04954aaaa
Оба являются довольно уникальными, но, как и в случае любого случайного, всегда есть возможность столкновения. Храните центральный список, чтобы избежать таких проблем.
Самое простое решение, о котором я мог подумать, это:
sudo dmidecode -s system-uuid
Согласно странице руководства dmidecode, эти данные извлекаются из интерфейса управления рабочим столом, который имеет какое-то отношение к BIOS. Это невозможно изменить.
Я проверил эту команду на двух машинах с одним и тем же оборудованием, и результат отличается от ожидаемого от имени system-uuid, поэтому он может быть использован как уникальный аппаратный хеш.
Вы можете использовать MAC-адрес eth0 (при условии, что это существует на каждой машине). Вы можете получить это самостоятельно (может быть, проще) с этим:
ifconfig eth0 | grep HWaddr | awk '{ print $NF}' | sed 's/://g'
Это даст вам что-то вроде 6cf04954aaaa.
Предполагается, что они будут но они не всегда. Если все ваше сетевое оборудование принадлежит одному и тому же производителю, вы можете найти кроссовер, поэтому будьте осторожны с ним.
В противном случае вы можете создать свою собственную уникальную строку и сохранить ее в /etc/computer-id (или другой путь по вашему выбору).
uuidgen -r
Сгенерирует как можно более случайное, например: 52a85807-35fe-409e-8983-87eb58c02ece
uuidgen -t
Использует время и eth0, чтобы сделать что-то вроде: eb8280dc-b5ec-11e0-90dd-6cf04954aaaa
Оба являются довольно уникальными, но, как и в случае любого случайного, всегда есть возможность столкновения. Храните центральный список, чтобы избежать таких проблем.
Самое простое решение, о котором я мог подумать, это:
sudo dmidecode -s system-uuid
Согласно странице руководства dmidecode, эти данные извлекаются из интерфейса управления рабочим столом, который имеет какое-то отношение к BIOS. Это невозможно изменить.
Я проверил эту команду на двух машинах с одним и тем же оборудованием, и результат отличается от ожидаемого от имени system-uuid, поэтому он может быть использован как уникальный аппаратный хеш.
Вы можете использовать MAC-адрес eth0 (при условии, что это существует на каждой машине). Вы можете получить это самостоятельно (может быть, проще) с этим:
ifconfig eth0 | grep HWaddr | awk '{ print $NF}' | sed 's/://g'
Это даст вам что-то вроде 6cf04954aaaa.
Предполагается, что они будут но они не всегда. Если все ваше сетевое оборудование принадлежит одному и тому же производителю, вы можете найти кроссовер, поэтому будьте осторожны с ним.
В противном случае вы можете создать свою собственную уникальную строку и сохранить ее в /etc/computer-id (или другой путь по вашему выбору).
uuidgen -r
Сгенерирует как можно более случайное, например: 52a85807-35fe-409e-8983-87eb58c02ece
uuidgen -t
Использует время и eth0, чтобы сделать что-то вроде: eb8280dc-b5ec-11e0-90dd-6cf04954aaaa
Оба являются довольно уникальными, но, как и в случае любого случайного, всегда есть возможность столкновения. Храните центральный список, чтобы избежать таких проблем.
Самое простое решение, о котором я мог подумать, это:
sudo dmidecode -s system-uuid
Согласно странице руководства dmidecode, эти данные извлекаются из интерфейса управления рабочим столом, который имеет какое-то отношение к BIOS. Это невозможно изменить.
Я проверил эту команду на двух машинах с одним и тем же оборудованием, и результат отличается от ожидаемого от имени system-uuid, поэтому он может быть использован как уникальный аппаратный хеш.
Вы можете использовать MAC-адрес eth0 (при условии, что это существует на каждой машине). Вы можете получить это самостоятельно (может быть, проще) с этим:
ifconfig eth0 | grep HWaddr | awk '{ print $NF}' | sed 's/://g'
Это даст вам что-то вроде 6cf04954aaaa.
Предполагается, что они будут но они не всегда. Если все ваше сетевое оборудование принадлежит одному и тому же производителю, вы можете найти кроссовер, поэтому будьте осторожны с ним.
В противном случае вы можете создать свою собственную уникальную строку и сохранить ее в /etc/computer-id (или другой путь по вашему выбору).
uuidgen -r
Сгенерирует как можно более случайное, например: 52a85807-35fe-409e-8983-87eb58c02ece
uuidgen -t
Использует время и eth0, чтобы сделать что-то вроде: eb8280dc-b5ec-11e0-90dd-6cf04954aaaa
Оба являются довольно уникальными, но, как и в случае любого случайного, всегда есть возможность столкновения. Храните центральный список, чтобы избежать таких проблем.
Самое простое решение, о котором я мог подумать, это:
sudo dmidecode -s system-uuid
Согласно странице руководства dmidecode, эти данные извлекаются из интерфейса управления рабочим столом, который имеет какое-то отношение к BIOS. Это невозможно изменить.
Я проверил эту команду на двух машинах с одним и тем же оборудованием, и результат отличается от ожидаемого от имени system-uuid, поэтому он может быть использован как уникальный аппаратный хеш.
Вы можете использовать MAC-адрес eth0 (при условии, что это существует на каждой машине). Вы можете получить это самостоятельно (может быть, проще) с этим:
ifconfig eth0 | grep HWaddr | awk '{ print $NF}' | sed 's/://g'
Это даст вам что-то вроде 6cf04954aaaa.
Предполагается, что они будут но они не всегда. Если все ваше сетевое оборудование принадлежит одному и тому же производителю, вы можете найти кроссовер, поэтому будьте осторожны с ним.
В противном случае вы можете создать свою собственную уникальную строку и сохранить ее в /etc/computer-id (или другой путь по вашему выбору).
uuidgen -r
Сгенерирует как можно более случайное, например: 52a85807-35fe-409e-8983-87eb58c02ece
uuidgen -t
Использует время и eth0, чтобы сделать что-то вроде: eb8280dc-b5ec-11e0-90dd-6cf04954aaaa
Оба являются довольно уникальными, но, как и в случае любого случайного, всегда есть возможность столкновения. Храните центральный список, чтобы избежать таких проблем.