Blancco 7.15.1 upgrade: native kernel boot, BMC cloud licensing

- Switch to Blancco native kernel (vmlinuz-bde-linux) for hardware compat
- Config.img preferences with BMC connection (classic.eu-west-1.blancco.cloud)
- Disable wired LAN in preferences so WiFi takes default route to BMC
- WiFi SSID INTERNETACCESS configured in plaintext in config.img
- Slim GRUB EFI (1.3MB standalone with minimal modules)
- Fix Windows line endings in blancco-init.sh
- Add extra NIC drivers to switch_root initramfs
- SSH enabled in modified airootfs.sfs (root:blancco)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
cproudlock
2026-03-26 13:54:25 -04:00
parent 76165495ff
commit b7cd0974f1
2 changed files with 308 additions and 255 deletions

View File

@@ -1,162 +1,168 @@
#!/bin/sh #!/bin/sh
# Blancco PXE Loader - init script for custom initramfs # Blancco PXE Loader - init script for custom initramfs
# Boot chain: iPXE -> GRUB EFI -> Ubuntu kernel + this initramfs -> switch_root to Blancco # Boot chain: iPXE -> GRUB EFI -> Ubuntu kernel + this initramfs -> switch_root to Blancco
# #
# Blancco's own kernel freezes on Dell Precision towers during PXE boot. # Blancco's own kernel freezes on Dell Precision towers during PXE boot.
# Workaround: boot Ubuntu kernel, download Blancco rootfs (squashfs), mount # Workaround: boot Ubuntu kernel, download Blancco rootfs (squashfs), mount
# overlay filesystem, and switch_root into Blancco's userspace. # overlay filesystem, and switch_root into Blancco's userspace.
export PATH=/bin:/sbin export PATH=/bin:/sbin
echo "" echo ""
echo "============================================" echo "============================================"
echo " Blancco PXE loader" echo " Blancco PXE loader"
echo "============================================" echo "============================================"
echo "" echo ""
mount -t proc proc /proc mount -t proc proc /proc
mount -t sysfs sysfs /sys mount -t sysfs sysfs /sys
mount -t devtmpfs devtmpfs /dev 2>/dev/null mount -t devtmpfs devtmpfs /dev 2>/dev/null
mkdir -p /tmp /run mkdir -p /tmp /run
echo "[1/4] Loading NIC drivers..." echo "[1/4] Loading NIC drivers..."
for mod in /lib/modules/*.ko; do for mod in /lib/modules/*.ko; do
insmod $mod 2>/dev/null echo " insmod $(basename $mod)"
done insmod $mod 2>/dev/null || true
sleep 2 done
sleep 5
echo " Waiting for network interface..."
IFACE="" echo " Interfaces after driver load:"
COUNT=0 ls /sys/class/net/ 2>/dev/null
while [ $COUNT -lt 30 ]; do
for i in /sys/class/net/*; do echo " Waiting for network interface..."
ifname="${i##*/}" IFACE=""
if [ "$ifname" != "lo" ] && [ -d "$i" ]; then COUNT=0
IFACE=$ifname while [ $COUNT -lt 60 ]; do
break 2 for i in /sys/class/net/*; do
fi ifname="${i##*/}"
done if [ "$ifname" != "lo" ] && [ -d "$i" ]; then
COUNT=$((COUNT + 1)) IFACE=$ifname
sleep 1 break 2
echo -n "." fi
done done
echo "" COUNT=$((COUNT + 1))
sleep 1
if [ -z "$IFACE" ]; then echo -n "."
echo "ERROR: No network interface found!" done
exec sh echo ""
fi
if [ -z "$IFACE" ]; then
echo " Interface: $IFACE" echo "ERROR: No network interface found!"
ip link set $IFACE up echo "Available interfaces:"
sleep 2 ls /sys/class/net/ 2>/dev/null
exec sh
SERVER=10.9.100.1 fi
ifconfig $IFACE 10.9.100.250 netmask 255.255.255.0 up
sleep 1 echo " Interface: $IFACE"
echo " IP: 10.9.100.250" ip link set $IFACE up
sleep 2
echo "[2/4] Downloading Blancco rootfs (666MB)..."
wget -O /tmp/airootfs.sfs http://$SERVER/blancco/arch/x86_64/airootfs.sfs 2>&1 SERVER=10.9.100.1
if [ ! -s /tmp/airootfs.sfs ]; then ifconfig $IFACE 10.9.100.250 netmask 255.255.255.0 up
echo "ERROR: Failed to download rootfs!" sleep 1
exec sh echo " IP: 10.9.100.250"
fi
echo " OK ($(wc -c < /tmp/airootfs.sfs) bytes)" echo "[2/4] Downloading Blancco rootfs (666MB)..."
wget -O /tmp/airootfs.sfs http://$SERVER/blancco/arch/x86_64/airootfs.sfs 2>&1
echo "[3/4] Mounting rootfs..." if [ ! -s /tmp/airootfs.sfs ]; then
mkdir -p /run/lower /run/upper /run/work /run/newroot echo "ERROR: Failed to download rootfs!"
exec sh
losetup /dev/loop0 /tmp/airootfs.sfs fi
mount -t squashfs -o ro /dev/loop0 /run/lower echo " OK ($(wc -c < /tmp/airootfs.sfs) bytes)"
if [ $? -ne 0 ]; then
echo "ERROR: squashfs mount failed!" echo "[3/4] Mounting rootfs..."
exec sh mkdir -p /run/lower /run/upper /run/work /run/newroot
fi
losetup /dev/loop0 /tmp/airootfs.sfs
insmod /lib/modules/overlay.ko 2>/dev/null mount -t squashfs -o ro /dev/loop0 /run/lower
mount -t tmpfs -o size=50% tmpfs /run/upper if [ $? -ne 0 ]; then
mkdir -p /run/upper/upper /run/upper/work echo "ERROR: squashfs mount failed!"
exec sh
mount -t overlay overlay -o lowerdir=/run/lower,upperdir=/run/upper/upper,workdir=/run/upper/work /run/newroot fi
if [ $? -ne 0 ]; then
echo "ERROR: overlay mount failed!" insmod /lib/modules/overlay.ko 2>/dev/null
exec sh mount -t tmpfs -o size=50% tmpfs /run/upper
fi mkdir -p /run/upper/upper /run/upper/work
echo "[4/5] Installing kernel modules (132MB)..." mount -t overlay overlay -o lowerdir=/run/lower,upperdir=/run/upper/upper,workdir=/run/upper/work /run/newroot
wget -O /tmp/kmod.tar.gz http://$SERVER/blancco/kmod.tar.gz 2>&1 if [ $? -ne 0 ]; then
if [ -s /tmp/kmod.tar.gz ]; then echo "ERROR: overlay mount failed!"
cd /run/newroot exec sh
gunzip -c /tmp/kmod.tar.gz | tar xf - fi
rm -f /tmp/kmod.tar.gz
cd / echo "[4/5] Installing kernel modules (132MB)..."
echo " OK" wget -O /tmp/kmod.tar.gz http://$SERVER/blancco/kmod.tar.gz 2>&1
else if [ -s /tmp/kmod.tar.gz ]; then
echo " WARNING: Failed to download kernel modules" cd /run/newroot
fi gunzip -c /tmp/kmod.tar.gz | tar xf -
rm -f /tmp/kmod.tar.gz
echo "[5/6] Switching root to Blancco..." cd /
mkdir -p /run/newroot/run /run/newroot/proc /run/newroot/sys /run/newroot/dev /run/newroot/tmp echo " OK"
else
echo "[6/6] Downloading Blancco config..." echo " WARNING: Failed to download kernel modules"
wget -O /run/newroot/albus/config.xml http://$SERVER/blancco/config-clean.xml 2>&1 fi
wget -O /run/newroot/albus/preferences.xml http://$SERVER/blancco/preferences.xml 2>&1
if [ -s /run/newroot/albus/config.xml ]; then echo "[5/6] Switching root to Blancco..."
echo " config.xml: $(wc -c < /run/newroot/albus/config.xml) bytes" mkdir -p /run/newroot/run /run/newroot/proc /run/newroot/sys /run/newroot/dev /run/newroot/tmp
else
echo " WARNING: Failed to download config.xml" echo "[6/6] Downloading Blancco config..."
fi wget -O /run/newroot/albus/config.xml http://$SERVER/blancco/config-clean.xml 2>&1
if [ -s /run/newroot/albus/preferences.xml ]; then wget -O /run/newroot/albus/preferences.xml http://$SERVER/blancco/preferences.xml 2>&1
cp -f /run/newroot/albus/preferences.xml /run/newroot/albus/preferences.save if [ -s /run/newroot/albus/config.xml ]; then
echo " preferences.xml: $(wc -c < /run/newroot/albus/preferences.xml) bytes" echo " config.xml: $(wc -c < /run/newroot/albus/config.xml) bytes"
else else
echo " WARNING: Failed to download preferences.xml" echo " WARNING: Failed to download config.xml"
fi fi
if [ -s /run/newroot/albus/preferences.xml ]; then
# Pre-configure X.org to use modesetting driver (generic KMS, works with all GPUs) cp -f /run/newroot/albus/preferences.xml /run/newroot/albus/preferences.save
mkdir -p /run/newroot/etc/X11/xorg.conf.d echo " preferences.xml: $(wc -c < /run/newroot/albus/preferences.xml) bytes"
echo " X.org: forcing modesetting driver" else
cat > /run/newroot/etc/X11/xorg.conf.d/20-failsafeDriver.conf << 'XEOF' echo " WARNING: Failed to download preferences.xml"
Section "Device" fi
Identifier "Failsafe Video Device"
Driver "modesetting" # Pre-configure X.org to use modesetting driver (generic KMS, works with all GPUs)
EndSection mkdir -p /run/newroot/etc/X11/xorg.conf.d
XEOF echo " X.org: forcing modesetting driver"
cat > /run/newroot/etc/X11/xorg.conf.d/20-failsafeDriver.conf << 'XEOF'
# Enable SSH for remote debugging Section "Device"
echo " Enabling SSH (root:blancco)..." Identifier "Failsafe Video Device"
sed -i 's/^#*PermitRootLogin.*/PermitRootLogin yes/' /run/newroot/etc/ssh/sshd_config 2>/dev/null Driver "modesetting"
cat > /run/newroot/etc/rc.local << 'RCEOF' EndSection
#!/bin/bash XEOF
echo 'root:blancco' | chpasswd
ssh-keygen -A 2>/dev/null # Enable SSH for remote debugging
IFACE=$(ls /sys/class/net/ | grep -v lo | head -1) echo " Enabling SSH (root:blancco)..."
ip addr add 10.9.100.250/24 dev "$IFACE" 2>/dev/null if [ -f /run/newroot/etc/ssh/sshd_config ]; then
/usr/bin/sshd sed 's/^#*PermitRootLogin.*/PermitRootLogin yes/' /run/newroot/etc/ssh/sshd_config > /run/newroot/etc/ssh/sshd_config.new || true
RCEOF mv /run/newroot/etc/ssh/sshd_config.new /run/newroot/etc/ssh/sshd_config || true
chmod +x /run/newroot/etc/rc.local fi
ln -sf /usr/lib/systemd/system/rc-local.service /run/newroot/etc/systemd/system/multi-user.target.wants/rc-local.service 2>/dev/null cat > /run/newroot/etc/rc.local << 'RCEOF'
cat > /run/newroot/etc/systemd/system/pxe-debug.service << 'SVCEOF' #!/bin/bash
[Unit] echo 'root:blancco' | chpasswd
Description=PXE Debug SSH ssh-keygen -A 2>/dev/null
After=systemd-networkd.service /usr/bin/sshd 2>/dev/null
Wants=systemd-networkd.service RCEOF
chmod +x /run/newroot/etc/rc.local
[Service]
Type=oneshot cat > /run/newroot/etc/systemd/system/pxe-debug.service << 'SVCEOF'
RemainAfterExit=yes [Unit]
ExecStart=/etc/rc.local Description=PXE Debug SSH
After=network.target
[Install]
WantedBy=multi-user.target [Service]
SVCEOF Type=oneshot
ln -sf /etc/systemd/system/pxe-debug.service /run/newroot/etc/systemd/system/multi-user.target.wants/pxe-debug.service RemainAfterExit=yes
ExecStart=/etc/rc.local
mount --move /proc /run/newroot/proc
mount --move /sys /run/newroot/sys [Install]
mount --move /dev /run/newroot/dev WantedBy=multi-user.target
SVCEOF
echo " Starting Blancco..." ln -sf /etc/systemd/system/pxe-debug.service /run/newroot/etc/systemd/system/multi-user.target.wants/pxe-debug.service 2>/dev/null
exec switch_root /run/newroot /sbin/init
mount --move /proc /run/newroot/proc
mount --move /sys /run/newroot/sys
mount --move /dev /run/newroot/dev
echo " Starting Blancco..."
exec switch_root /run/newroot /sbin/init

View File

@@ -1,20 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!-- FASDHFOSGHSVASLGHASDLASDFUILEFHLKJDKLFJGKLXCJGHFKLJDGHKLFJ --> <!-- FASDHFOSGHSVASLGHASDLASDFUILEFHLKJDKLFJGKLXCJGHFKLJDGHKLFJ -->
<root> <root>
<blancco type="albus-preferences" version="4.14"/> <blancco type="albus-preferences" version="4.15"/>
<version> <version>
<generation>7</generation> <generation>7</generation>
<major>14</major> <major>15</major>
<minor>0</minor> <minor>1</minor>
</version> </version>
<integrity>WrE8qdGzoKMVy403SVha6O6JOdYlerKbbjyLSWo20NI=</integrity>
<configuration dect="3.14.0" imported="false"> <configuration>
<device_enrollment_detection>
<persistent_software>false</persistent_software>
</device_enrollment_detection>
<processes type="array" key="process"> <processes type="array" key="process">
<process>workflow</process> <process>workflow</process>
<process>auto</process> <process>auto</process>
<process>semi</process> <process>semi</process>
<process selected="true">manual</process> <process selected="true">manual</process>
</processes> </processes>
<hardware_tests type="array" key="test" enabled="false"> <hardware_tests type="array" key="test" enabled="false">
<test enabled="true" mandatory="false" auto="true" threshold="60">battery</test> <test enabled="true" mandatory="false" auto="true" threshold="60">battery</test>
<test enabled="true" mandatory="false" auto="true">cpu</test> <test enabled="true" mandatory="false" auto="true">cpu</test>
@@ -37,6 +43,7 @@
<test enabled="true" mandatory="false" auto="false">webcam</test> <test enabled="true" mandatory="false" auto="false">webcam</test>
<test enabled="true" mandatory="false" auto="false">wifi</test> <test enabled="true" mandatory="false" auto="false">wifi</test>
</hardware_tests> </hardware_tests>
<layouts type="array" key="layout"> <layouts type="array" key="layout">
<layout selected="true">us</layout> <layout selected="true">us</layout>
<layout>be</layout> <layout>be</layout>
@@ -64,6 +71,7 @@
<layout>se</layout> <layout>se</layout>
<layout>sk</layout> <layout>sk</layout>
</layouts> </layouts>
<locales type="array" key="locale"> <locales type="array" key="locale">
<locale selected="true">en_US</locale> <locale selected="true">en_US</locale>
<locale>de_DE</locale> <locale>de_DE</locale>
@@ -80,93 +88,104 @@
<locale>zh_CN</locale> <locale>zh_CN</locale>
<locale>zh_TW</locale> <locale>zh_TW</locale>
</locales> </locales>
<erasure_standards type="array" key="standard">
<erasure_standards key="standard" type="array">
<standard enabled="true" id="afssi_5020" name="Air Force System Security Instruction 5020"/> <standard enabled="true" id="afssi_5020" name="Air Force System Security Instruction 5020"/>
<standard enabled="true" id="aperiodic_random" name="Aperiodic random overwrite"/> <standard enabled="true" id="aperiodic_random" name="Aperiodic random overwrite"/>
<standard enabled="true" id="bl_ssd" name="Blancco SSD Erasure"/>
<standard enabled="true" id="bruce_schneier" name="Bruce Schneier's Algorithm"/>
<standard enabled="true" id="bsi_vs" name="BSI-2011-VS"/> <standard enabled="true" id="bsi_vs" name="BSI-2011-VS"/>
<standard enabled="true" id="bsi_gs" name="BSI-GS"/> <standard enabled="true" id="bsi_gs" name="BSI-GS"/>
<standard enabled="true" id="bsi_gse" name="BSI-GSE"/> <standard enabled="true" id="bsi_gse" name="BSI-GSE"/>
<standard enabled="true" id="bsi_gsk" name="BSI-GSK"/> <standard enabled="true" id="bsi_gsk" name="BSI-GSK"/>
<standard enabled="true" id="bl_ssd" name="Blancco SSD Erasure"/>
<standard enabled="true" id="bruce_schneier" name="Bruce Schneier's Algorithm"/>
<standard enabled="true" id="cesg_higher" name="CESG CPA - Higher Level"/> <standard enabled="true" id="cesg_higher" name="CESG CPA - Higher Level"/>
<standard enabled="true" id="crypto_erase" name="Sanitize Cryptographic Erasure"/>
<standard enabled="true" id="dod" name="DoD 5220.22-M"/> <standard enabled="true" id="dod" name="DoD 5220.22-M"/>
<standard enabled="true" id="dod_ece" name="DoD 5220.22-M ECE"/> <standard enabled="true" id="dod_ece" name="DoD 5220.22-M ECE"/>
<standard enabled="true" id="extended_firmware" name="Extended Firmware Based Erasure"/>
<standard enabled="true" id="firmware" name="Firmware Based Erasure"/>
<standard enabled="true" id="hmg_higher" name="HMG Infosec Standard 5, Higher Standard"/>
<standard enabled="true" id="hmg_lower" name="HMG Infosec Standard 5, Lower Standard"/>
<standard enabled="true" id="ieee_clear" name="IEEE 2883-2022 Clear"/>
<standard enabled="true" id="ieee_purge" name="IEEE 2883-2022 Purge"/>
<standard enabled="false" id="nist_pc" name="NIST 800-88" pattern="0x00" pattern_type="static"/>
<standard enabled="true" id="nist_clear" name="NIST 800-88 Clear" pattern="0x00" pattern_type="static"/> <standard enabled="true" id="nist_clear" name="NIST 800-88 Clear" pattern="0x00" pattern_type="static"/>
<standard selected="true" enabled="true" id="nist_purge" name="NIST 800-88 Purge"/> <standard selected="true" enabled="true" id="nist_purge" name="NIST 800-88 Purge"/>
<standard enabled="true" id="firmware" name="Firmware Based Erasure"/>
<standard enabled="true" id="extended_firmware" name="Extended Firmware Based Erasure"/>
<standard enabled="true" id="hmg_lower" name="HMG Infosec Standard 5, Lower Standard"/>
<standard enabled="true" id="hmg_higher" name="HMG Infosec Standard 5, Higher Standard"/>
<standard enabled="true" id="nsa" name="NSA 130-1"/> <standard enabled="true" id="nsa" name="NSA 130-1"/>
<standard enabled="true" id="ncsc" name="National Computer Security Center (NCSC-TG-025)"/> <standard enabled="true" id="ncsc" name="National Computer Security Center (NCSC-TG-025)"/>
<standard enabled="true" id="navso" name="Navy Staff Office Publication (NAVSO P-5239-26)"/> <standard enabled="true" id="navso" name="Navy Staff Office Publication (NAVSO P-5239-26)"/>
<standard enabled="true" id="tcg_crypto_erase" name="TCG Cryptographic Erasure"/>
<standard enabled="true" id="opnavinst" name="OPNAVINST 5239.1A"/> <standard enabled="true" id="opnavinst" name="OPNAVINST 5239.1A"/>
<standard enabled="true" id="peter_gutmann" name="Peter Gutmann's Algorithm"/> <standard enabled="true" id="peter_gutmann" name="Peter Gutmann's Algorithm"/>
<standard enabled="true" id="rcmp_tssit" name="RCMP TSSIT OPS-II"/>
<standard enabled="true" id="random_byte_3x" name="Random Byte Overwrite (3x)"/> <standard enabled="true" id="random_byte_3x" name="Random Byte Overwrite (3x)"/>
<standard enabled="true" id="crypto_erase" name="Sanitize Cryptographic Erasure"/> <standard enabled="true" id="rcmp_tssit" name="RCMP TSSIT OPS-II"/>
<standard enabled="true" id="tcg_crypto_erase" name="TCG Cryptographic Erasure"/>
<standard enabled="true" id="us_army" name="U.S. Army AR380-19"/> <standard enabled="true" id="us_army" name="U.S. Army AR380-19"/>
<standard enabled="true" id="ieee_clear" name="IEEE 2883-2022 Clear"/>
<standard enabled="true" id="ieee_purge" name="IEEE 2883-2022 Purge"/>
<standard enabled="false" id="nist_pc" name="NIST 800-88" pattern="0x00" pattern_type="static"/>
</erasure_standards> </erasure_standards>
<verification_standards type="array" key="standard">
<standard enabled="true" id="all_bytes_same" name="All bytes the same" pattern="0x00"/> <verification_standards key="standard" type="array">
<standard enabled="true" id="all_bytes_same" pattern="0x00" name="All bytes the same"/>
<standard enabled="true" id="all_ones" name="All ones"/> <standard enabled="true" id="all_ones" name="All ones"/>
<standard selected="true" enabled="true" id="all_sectors_same" name="All sectors the same"/> <standard enabled="true" id="all_sectors_same" selected="true" name="All sectors the same"/>
<standard enabled="true" id="all_zeros" name="All zeros"/> <standard enabled="true" id="all_zeros" name="All zeros"/>
</verification_standards> </verification_standards>
<adapters key="adapter" type="array"/>
<network> <network>
<enabled>true</enabled> <enabled>true</enabled>
<dhcp>true</dhcp> <dhcp>true</dhcp>
<sshd>false</sshd> <sshd>false</sshd>
<looping>false</looping> <looping>false</looping>
<address></address> <address/>
<mask></mask> <mask/>
<gateway></gateway> <gateway/>
<dns1></dns1> <dns1/>
<dns2></dns2> <dns2/>
<vlan></vlan> <vlan/>
</network> </network>
<network_security> <network_security>
<enabled>false</enabled> <enabled>false</enabled>
<certificate>false</certificate> <fallback>false</fallback>
<protocols type="array" key="protocol"> <protocols key="protocol" type="array">
<protocol selected="true">peap</protocol> <protocol selected="true">peap</protocol>
<protocol>tls</protocol> <protocol>tls</protocol>
</protocols> </protocols>
<identity encrypted="false"></identity> <certificate>false</certificate>
<password encrypted="false"></password> <identity encrypted="false"/>
<password encrypted="false"/>
</network_security> </network_security>
<network_share>
<username encrypted="false">blancco</username>
<password encrypted="false">blancco</password>
<domain></domain>
<hostname>10.9.100.1</hostname>
<path>blancco-reports</path>
<protocols type="array" key="protocol">
<protocol selected="true">smb</protocol>
</protocols>
</network_share>
<proxy> <proxy>
<proxy_address encrypted="false"></proxy_address> <proxy_address encrypted="false"/>
<proxy_port encrypted="false"></proxy_port> <proxy_port encrypted="false"/>
<proxy_username encrypted="false"></proxy_username> <proxy_username encrypted="false"/>
<proxy_password encrypted="false"></proxy_password> <proxy_password encrypted="false"/>
</proxy> </proxy>
<mc> <mc>
<username encrypted="false"></username> <username encrypted="false"/>
<password encrypted="false"></password> <password encrypted="false"/>
<hostname></hostname> <hostname/>
<port></port> <port/>
<timeout>20</timeout> <timeout>20</timeout>
<validate_remote_certificate>true</validate_remote_certificate> <validate_remote_certificate>true</validate_remote_certificate>
</mc> </mc>
<workflow offline="false" default="false"></workflow>
<network_share>
<username encrypted="false">blancco</username>
<password encrypted="false">blancco</password>
<domain/>
<hostname>10.9.100.1</hostname>
<path>blancco-reports</path>
<protocols key="protocol" type="array">
<protocol selected="true">smb</protocol>
</protocols>
</network_share>
<workflow default="false" offline="false"/>
<erasure> <erasure>
<drive_self_test type="short">false</drive_self_test>
<max_simultaneous_erasures>50</max_simultaneous_erasures> <max_simultaneous_erasures>50</max_simultaneous_erasures>
<remove_hidden_areas>false</remove_hidden_areas> <remove_hidden_areas>false</remove_hidden_areas>
<preserve_recovery_partition>false</preserve_recovery_partition> <preserve_recovery_partition>false</preserve_recovery_partition>
@@ -177,10 +196,11 @@
<fail_on_erasure_errors threshold="5">true</fail_on_erasure_errors> <fail_on_erasure_errors threshold="5">true</fail_on_erasure_errors>
<fail_on_read_errors threshold="5">true</fail_on_read_errors> <fail_on_read_errors threshold="5">true</fail_on_read_errors>
<verification>10</verification> <verification>10</verification>
<enforced_rules type="array" key="rule"> <enforced_rules key="rule" type="array">
<rule enabled="false" name="enforced_standard" standard_id="bl_ssd" target="ssd"/> <rule enabled="false" name="enforced_standard" standard_id="bl_ssd" target="ssd"/>
<rule enabled="true" name="fallback_nist_standard" standard_id="nist_purge" fallback_id="nist_clear"/> <rule enabled="true" name="fallback_nist_standard" standard_id="nist_purge" fallback_id="nist_clear"/>
</enforced_rules> </enforced_rules>
<drive_self_test type="short">false</drive_self_test>
<fail_on_failed_self_test>false</fail_on_failed_self_test> <fail_on_failed_self_test>false</fail_on_failed_self_test>
<fail_on_low_erasure_speed threshold="1">false</fail_on_low_erasure_speed> <fail_on_low_erasure_speed threshold="1">false</fail_on_low_erasure_speed>
<fail_on_timeout threshold="1">false</fail_on_timeout> <fail_on_timeout threshold="1">false</fail_on_timeout>
@@ -199,29 +219,36 @@
<allow_tcg_reset_write_pointers>true</allow_tcg_reset_write_pointers> <allow_tcg_reset_write_pointers>true</allow_tcg_reset_write_pointers>
<allow_tcg_unmap>true</allow_tcg_unmap> <allow_tcg_unmap>true</allow_tcg_unmap>
</erasure> </erasure>
<fingerprint> <fingerprint>
<enabled>false</enabled> <enabled>false</enabled>
<location>67000</location> <location>67000</location>
</fingerprint> </fingerprint>
<bootable_report> <bootable_report>
<enabled>true</enabled> <enabled>true</enabled>
</bootable_report> </bootable_report>
<format_disk> <format_disk>
<enabled>false</enabled> <enabled>false</enabled>
<type>ntfs</type> <type>ntfs</type>
</format_disk> </format_disk>
<spin_down_idle_disk> <spin_down_idle_disk>
<enabled>false</enabled> <enabled>false</enabled>
</spin_down_idle_disk> </spin_down_idle_disk>
<raid> <raid>
<show_logical_disks>false</show_logical_disks> <show_logical_disks>false</show_logical_disks>
<enable_passthrough>true</enable_passthrough> <enable_passthrough>true</enable_passthrough>
<kill_logical_disks>true</kill_logical_disks> <kill_logical_disks>true</kill_logical_disks>
</raid> </raid>
<hotplug> <hotplug>
<enabled>false</enabled> <enabled>false</enabled>
<timeout>30</timeout> <timeout>30</timeout>
</hotplug> </hotplug>
<external_device_service> <external_device_service>
<enabled>false</enabled> <enabled>false</enabled>
<port>80</port> <port>80</port>
@@ -237,24 +264,28 @@
<test enabled="true">webcam</test> <test enabled="true">webcam</test>
</hardware_tests> </hardware_tests>
</external_device_service> </external_device_service>
<license> <license>
<provider>bios</provider> <provider>bios</provider>
<provider_report>bios</provider_report> <provider_report>bios</provider_report>
<edition>Enterprise Volume Edition</edition> <edition>Enterprise Volume Edition</edition>
<offline></offline>
<mode>Drive Eraser</mode> <mode>Drive Eraser</mode>
<offline/>
</license> </license>
<image> <image>
<description></description> <description/>
<creation_date>2025-03-10</creation_date> <creation_date>2025-03-10</creation_date>
</image> </image>
<customer_data> <customer_data>
<business_location></business_location> <business_location/>
<customer_license>General Electric Company</customer_license> <customer_license>General Electric Company</customer_license>
<erasure_person></erasure_person> <erasure_person/>
<erasure_provider></erasure_provider> <erasure_provider/>
<business_name></business_name> <business_name/>
</customer_data> </customer_data>
<settings> <settings>
<gui> <gui>
<erasure_console>local</erasure_console> <erasure_console>local</erasure_console>
@@ -292,8 +323,8 @@
<accessibility> <accessibility>
<available>false</available> <available>false</available>
<enabled>true</enabled> <enabled>true</enabled>
<key_echo>true</key_echo>
<speaking_rate>80</speaking_rate> <speaking_rate>80</speaking_rate>
<key_echo>true</key_echo>
</accessibility> </accessibility>
<sound_level>70</sound_level> <sound_level>70</sound_level>
<input_method> <input_method>
@@ -303,29 +334,7 @@
</input_method> </input_method>
</gui> </gui>
</settings> </settings>
<custom_fields type="array" key="custom_field">
<custom_field type="input" mandatory="true" locked="false" per_drive="false" show_in_editor="false" pattern="" hint="">
<name>custom_field_1</name>
<title>GERITM Number</title>
<value></value>
</custom_field>
<custom_field type="input" mandatory="true" locked="false" per_drive="false" show_in_editor="false" pattern="" hint="">
<name>custom_field_2</name>
<title>Device Name</title>
<value></value>
</custom_field>
<custom_field type="input" mandatory="true" locked="false" per_drive="false" show_in_editor="false" pattern="" hint="">
<name>custom_field_3</name>
<title>Device Serial Number</title>
<value></value>
</custom_field>
<custom_field type="input" mandatory="false" locked="true" per_drive="false" show_in_editor="false" pattern="" hint="">
<name>custom_field_4</name>
<title>Version</title>
<value>EVE_20250310</value>
</custom_field>
</custom_fields>
<exclude_verification_ranges type="array" key="exclude_verification_range"/>
<report> <report>
<per_drive>false</per_drive> <per_drive>false</per_drive>
<auto_backup>true</auto_backup> <auto_backup>true</auto_backup>
@@ -336,43 +345,81 @@
<network_info>true</network_info> <network_info>true</network_info>
<custom_signature> <custom_signature>
<enabled>false</enabled> <enabled>false</enabled>
<label></label> <label/>
</custom_signature> </custom_signature>
<drive_life_estimation>false</drive_life_estimation> <drive_life_estimation>false</drive_life_estimation>
</report> </report>
<custom_fields type="array" key="custom_field">
<custom_field type="input" mandatory="true" locked="false" per_drive="false" show_in_editor="false" pattern="" hint="">
<name>custom_field_1</name>
<title>GERITM Number</title>
<value/>
</custom_field>
<custom_field type="input" mandatory="true" locked="false" per_drive="false" show_in_editor="false" pattern="" hint="">
<name>custom_field_2</name>
<title>Device Name</title>
<value/>
</custom_field>
<custom_field type="input" mandatory="true" locked="false" per_drive="false" show_in_editor="false" pattern="" hint="">
<name>custom_field_3</name>
<title>Device Serial Number</title>
<value/>
</custom_field>
<custom_field type="input" mandatory="false" locked="true" per_drive="false" show_in_editor="false" pattern="" hint="">
<name>custom_field_4</name>
<title>Version</title>
<value>EVE_20250310</value>
</custom_field>
</custom_fields>
<exclude_verification_ranges type="array" key="exclude_verification_range"/>
<wireless> <wireless>
<enabled>false</enabled> <enabled>true</enabled>
<ssid encrypted="false"></ssid> <ssid encrypted="false">INTERNETACCESS</ssid>
<password encrypted="false"></password> <password encrypted="false">Acc3ssGr@nted22</password>
<key_mgmt>WPA-PSK</key_mgmt> <key_mgmt>WPA-PSK</key_mgmt>
<scan_ssid>0</scan_ssid> <scan_ssid>0</scan_ssid>
</wireless> </wireless>
<cd_eject> <cd_eject>
<after_boot>true</after_boot> <after_boot>true</after_boot>
<after_erasure>false</after_erasure> <after_erasure>false</after_erasure>
<after_report>false</after_report> <after_report>false</after_report>
<at_shutdown>false</at_shutdown> <at_shutdown>false</at_shutdown>
</cd_eject> </cd_eject>
<system_shutdown> <system_shutdown>
<after_erasure>false</after_erasure> <after_erasure>false</after_erasure>
<after_successful_erasure>false</after_successful_erasure> <after_successful_erasure>false</after_successful_erasure>
</system_shutdown> </system_shutdown>
<system_restart> <system_restart>
<after_erasure>false</after_erasure> <after_erasure>false</after_erasure>
<after_successful_erasure>false</after_successful_erasure> <after_successful_erasure>false</after_successful_erasure>
</system_restart> </system_restart>
<device_enrollment_detection>
<persistent_software>false</persistent_software>
</device_enrollment_detection>
<vnc_remote> <vnc_remote>
<enabled>false</enabled> <enabled>false</enabled>
<mode>viewer</mode> <mode>viewer</mode>
<repeater_hostname></repeater_hostname> <repeater_hostname/>
<port>5900</port> <port>5900</port>
<password encrypted="false"></password> <password encrypted="false"/>
</vnc_remote> </vnc_remote>
<nvme_over_fabrics enabled="false" type="array" key="connection"/>
<adapters type="array" key="adapter"/> <nvme_over_fabrics type="array" key="connection" enabled="false"/>
<update>
<enabled>false</enabled>
<intervals type="array" key="interval">
<interval selected="true">daily</interval>
<interval>weekly</interval>
<interval>monthly</interval>
<interval>no automatic check</interval>
</intervals>
<url>https://cdn.blancco.com/products/drive_eraser/download/ota/drive_eraser.json</url>
</update>
</configuration> </configuration>
</root> </root>
<!-- JFLKHGDJLKFHGJCXLKGJFLKDJKLHFELIUFDSALDSAHGLSAVSHGSOFHDSAF --> <!-- JFLKHGDJLKFHGJCXLKGJFLKDJKLHFELIUFDSALDSAHGLSAVSHGSOFHDSAF -->