diff --git a/esxi/esxi-smctest.sh b/esxi/bin/smctest.sh similarity index 100% rename from esxi/esxi-smctest.sh rename to esxi/bin/smctest.sh diff --git a/esxi/esxi-build.sh b/esxi/esxi-build.sh index e1f5e1d..a081ce3 100755 --- a/esxi/esxi-build.sh +++ b/esxi/esxi-build.sh @@ -1,13 +1,3 @@ #!/bin/sh set -e -#set -x - -# Ensure we only use unmodified commands -export PATH=/bin:/sbin:/usr/bin:/usr/sbin - -# Copy patch to local.sh -rm -fv local.sh -cp local-prefix.sh local.sh -cat unlocker.py >> local.sh -cat local-suffix.sh >> local.sh -chmod +x local.sh +tar czvf unlocker-esxi-300.tgz unlocker.tgz esxi-install.sh esxi-uninstall.sh diff --git a/esxi/esxi-config.py b/esxi/esxi-config.py deleted file mode 100755 index 67634c2..0000000 --- a/esxi/esxi-config.py +++ /dev/null @@ -1,63 +0,0 @@ -#!/usr/bin/env python -""" -This is a simple method to modify the hostd XML file -Not using XML on ESXi Python as it does not preserve -formatting or comments. - -(This could be sed but cannot find a suitable regex.) - -""" -from __future__ import print_function -import sys - - -def testline(line, test): - sline = line.lstrip() - if sline == test: - return True - else: - return False - - -def main(): - vmsvc = '\n' - sandbox = 'false\n' - - with open('/etc/vmware/hostd/config.xml', 'r+') as f: - data = f.readlines() - - # Search for the relevant XML tags - i = 0 - vmsvcindex = 0 - sandboxindex = 0 - for line in data: - - if testline(line, vmsvc): - vmsvcindex = i - - if testline(line, sandbox): - sandboxindex = i - - # print(line, end='') - i += 1 - - # Simple toggle on or off depending if found - if sandboxindex != 0 and sys.argv[1] == 'off': - print('Removing useVmxSandbox') - del data[sandboxindex] - elif sandboxindex == 0 and sys.argv[1] == 'on': - print('Adding useVmxSandbox') - pad = len(data[vmsvcindex + 1]) - len(data[vmsvcindex + 1].lstrip()) - data.insert(vmsvcindex + 1, (" " * pad) + sandbox) - else: - pass - - # Rewrite the config.xml file - f.seek(0) - f.write(''.join(data)) - f.truncate() - f.close() - - -if __name__ == '__main__': - main() diff --git a/esxi/esxi-install.sh b/esxi/esxi-install.sh index ac79756..356d926 100755 --- a/esxi/esxi-install.sh +++ b/esxi/esxi-install.sh @@ -2,24 +2,13 @@ set -e #set -x -echo VMware Unlocker 2.1.0 +echo VMware Unlocker 3.0.0 echo =============================== -echo Copyright: Dave Parsons 2011-17 +echo Copyright: Dave Parsons 2011-18 # Ensure we only use unmodified commands export PATH=/bin:/sbin:/usr/bin:/usr/sbin -VER=$(uname -r) -if [ "$VER" == "6.0.0" ]; then - echo "Error - ESXi 6.0.0 is not supported!" -elif [ "$VER" == "6.5.0" ]; then - # Copy patch to local.sh - echo Installing local.sh - chmod +x local.sh - cp local.sh /etc/rc.local.d/local.sh - python esxi-config.py on - backup.sh 0 - echo "Success - please now restart the server!" -else - echo "Unknown ESXi version" -fi +echo Installing unlocker.tgz +BootModuleConfig.sh --verbose --add=unlocker.tgz +echo Success - please now restart the server! diff --git a/esxi/esxi-uninstall.sh b/esxi/esxi-uninstall.sh index 753e1d2..bc0e02c 100755 --- a/esxi/esxi-uninstall.sh +++ b/esxi/esxi-uninstall.sh @@ -2,15 +2,13 @@ set -e #set -x -echo VMware Unlocker 2.1.0 +echo VMware Unlocker 3.0.0 echo =============================== -echo Copyright: Dave Parsons 2011-17 +echo Copyright: Dave Parsons 2011-18 # Ensure we only use unmodified commands export PATH=/bin:/sbin:/usr/bin:/usr/sbin -echo Uninstalling local.sh -cp /etc/rc.local.d/.#local.sh /etc/rc.local.d/local.sh -python esxiconfig.py off -backup.sh 0 +echo Uninstalling unlocker.tgz +BootModuleConfig.sh --verbose --remove=unlocker.tgz echo Success - please now restart the server! diff --git a/esxi/local-prefix.sh b/esxi/local-prefix.sh deleted file mode 100755 index 2476135..0000000 --- a/esxi/local-prefix.sh +++ /dev/null @@ -1,65 +0,0 @@ -#!/bin/sh -set -e -set -x - -echo VMware ESXi 6.x Unlocker 2.1.0 -echo =============================== -echo Copyright: Dave Parsons 2011-17 - -# Ensure we only use unmodified commands -export PATH=/bin:/sbin:/usr/bin:/usr/sbin - -# Exit if boot option specified -if bootOption -o | grep -q 'nounlocker'; then - logger -t unlocker disabled via nounlocker boot option - exit 0 -fi - -# Make sure working files are removed -if [ -d /unlocker ]; then - logger -t unlocker Removing current patches - rm -rfv /unlocker -fi - -# Create new RAM disk and map to /unlocker -logger -t unlocker Creating RAM disk -mkdir /unlocker -localcli system visorfs ramdisk add -m 200 -M 200 -n unlocker -p 0755 -t /unlocker -logger -t unlocker Stopping hostd daemon -/etc/init.d/hostd stop - -# Copy the vmx files -logger -t unlocker Copying vmx files -mkdir /unlocker/bin -cp /bin/vmx /unlocker/bin/ -cp /bin/vmx-debug /unlocker/bin/ -cp /bin/vmx-stats /unlocker/bin/ - -# Setup symlink from /bin -logger -t unlocker Setup vmx sym links -rm -fv /bin/vmx -ln -s /unlocker/bin/vmx /bin/vmx -rm -fv /bin/vmx-debug -ln -s /unlocker/bin/vmx-debug /bin/vmx-debug -rm -fv /bin/vmx-stats -ln -s /unlocker/bin/vmx-stats /bin/vmx-stats - -# Copy the libvmkctl.so files -logger -t unlocker Copying 32-bit lib files -mkdir /unlocker/lib -cp /lib/libvmkctl.so /unlocker/lib/ -logger -t unlocker Setup 32-bit lib sym links -rm -fv /lib/libvmkctl.so -ln -s /unlocker/lib/libvmkctl.so /lib/libvmkctl.so -if [ -f /lib64/libvmkctl.so ]; then - logger -t unlocker Copying 64-bit lib files - mkdir /unlocker/lib64 - cp /lib64/libvmkctl.so /unlocker/lib64/ - logger -t unlocker Setup 64-bit lib sym links - rm -fv /lib64/libvmkctl.so - ln -s /unlocker/lib64/libvmkctl.so /lib64/libvmkctl.so -fi - -# Patch the vmx files -logger -t unlocker Patching vmx files -python <