Files
LibreELEC.tv/packages/sysutils/systemd/scripts/systemd-machine-id-setup
Stefan Saraev 260069cca7 systemd: rework machine-idd service
- always set a *valid* machine-id
- start machine-id.service before journald
2013-10-08 18:40:48 +03:00

40 lines
1.8 KiB
Bash
Executable File

#!/bin/sh
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
# Attempts to generate a unique machine ID based on one local MAC address
# MACHINEID SHOULD be the same between upgrades/reinstalls
# MAC is hashed so that it cant be reversed making it anonymous
# Used to help with global usage statistics, also used for dbus and systemd
# creating machine-id, systemd otherwise does this automatically if not present.
# this we want to avoid to have the same machine-id over reboot, fallback
# to systemd's solution if this dont work here
if [ -e "/sys/class/net/eth0/address" ]; then
MAC_ADRESS=`cat /sys/class/net/eth0/address`
elif [ -e "/sys/class/net/wlan0/address" ]; then
MAC_ADRESS=`cat /sys/class/net/wlan0/address`
fi
MACHINEID=`echo $MAC_ADRESS | md5sum | cut -f1 -d" "`
echo "$MACHINEID" > /run/machine-id