How to Fix ESXi 6.5 PSOD on HP Proliant G7 Servers

Problem commonly happens on G7 Servers.

It would appear that one driver is causing this in the 6.5 image,  “hpe-smx-provider” (650.03.11.00.17-4240417). Installing the standard ESXI 6.5 ISO does allow the server to boot, but is missing a lot of drivers and does not give the pretty all-inclusive system stats that the HPE ISO does.

Below is a quick instruction on how to build a custom ISO with an older drive to fix this.

Download PowerCLI for Windows.

Download

VMware-ESXi-6.5.0-Update1-6765664-HPE-650.U1.9.6.5.1-Nov2017-depot.zip

VMware-ESXi-6.0.0-Update3-5050593-HPE-600.9.7.0.17-Feb2017-depot.zip

Put Both into same directory I put mine in d:\esx

Power PowerCLI

Add-EsxSoftwareDepot .\VMware-ESXi-6.5.0-Update1-6765664-HPE-650.U1.9.6.5.1-Nov2017-depot.zip


New-EsxImageProfile -CloneProfile HPE-ESXi-6.5.0-Update1-650* -Name "ESXICUST"


Remove-EsxSoftwarePackage ESXICUST hpe-smx-provider


Add-EsxSoftwareDepot .\VMware-ESXi-6.0.0-Update3-5050593-HPE-600.9.7.0.17-Feb2017-depot.zip


Add-EsxSoftwarePackage -ImageProfile ESXICUST -SoftwarePackage "hpe-smx-provider 600.03.11.00.9-2768847"


Export-EsxImageProfile -ImageProfile ESXICUST -ExportToIso ESXI65.iso



Howto Install Zoneminder on Centos 7 Quick Summary

Quick guide to install Zoneminder on Centos 7

Install Centos Using minimal

yum install update

Add RPM Fusion REPO

yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm 

Install zoneminder

yum install zoneminder

Install MariaDB

yum install mariadb-server

Enable and start service

systemctl enable mariadb

systemctl start  mariadb.service

Create DB for Zoneminder

mysql -uroot -p < /usr/share/zoneminder/db/zm_create.sql

mysql -uroot -p -e "grant all on zm.* to \

                'zmuser'@localhost identified by 'zmpass';"

mysqladmin -uroot -p reload

Edit date.timezone in /etc/php.ini

Disable SELinux

setenforce 0

edit /etc/selinux/config

change "enforcing" to "disabled"

Install mod_ssl

yum install mod_ssl

Enable and start httpd service

systemctl enable httpd

systemctl start httpd

Enable and start zoneminder service

systemctl enable zoneminder

systemctl start zoneminder

Open https in firewalld

firewall-cmd --permanent --add-service=https

firewall-cmd --reload

Access Zoneminder via https://server-ip/zm

Can't install .net 3.5 on Windows 10

Please open a command prompt (cmd.exe) as admin and run the following command to install .Net 3.5:

DISM /Online /Enable-Feature /FeatureName:NetFx3 /Source:d:\sources\sxs /All /LimitAccess 

(replace D: with your mounted Win10 ISO)

In some environment, DISM fails to fetch the file (Proxy, network policies). The DISM command takes the files from the DVD and you're fine.

If you are MSDN subscriber you can also download the Windows 10 Features on Demand ISO, mount the ISO, copy the Microsoft-Windows-NetFx3-OnDemand-Package.cab to C:\Features (or a different folder) and those commands:

DISM.EXE /Online /Add-Capability /CapabilityName:NetFx3~~~~ /Source:C:\Features

If this fails, run this:

DISM.EXE /Online /Add-Package /PackagePath:C:\Features\Microsoft-Windows-NetFx3-OnDemand-Package.cab

WESTERN DIGITAL MYBOOK LIVE TWEAKS

The MyBook Live series is based around Linux, so you can fix some of WD’s design decisions and improve performance. You can do just about anything, but there are some simple performance improvements you can do.

Enable SSH

Assuming you are blocking port 22 from outside your network, enable SSH by logging in to the web dashboard, then switch to the page UI/SSH, and enable from there. If your NAS had the address 192.168.1.101, you would first go to

http://192.168.1.101

log in, then go to

http://192.168.1.101/UI/ssh

to enable SSH. At that point, you can ssh to your box; ssh is built into Mac and Linux boxes, but you’ll need to use Putty or some other client on Windows.

I got this from What are the steps to enable SSH from the WD Community forums.

Fix monitorio.sh

WD has a monitor script as a daemon. That in itself is fine, but it periodically does an ls of the entire drive to build up some simple statistics. Once your drive has a large number of files on it, this will cripple performance. Since I don’t ever look at their stats, I prefer to disable this part of monitorio.sh. I want to repeat this: if you do this, then the web front end will no longer show accurate disk space usage (it will show whatever you had up to the point where you nerf the file_tally function).

I suggest the following: ssh to your NAS, edit /usr/local/sbin/monitorio.sh, rename file_tally to file_tally_old, and insert an empty file_tally function. Your file will look like this:

file_tally() {}

file_tally_old() {
        if [ ! -p $TALLY_PIPE]; then

You’ll want to restart the monitorio daemon (or reboot the NAS, which is more dramatic).

/etc/init.d/monitorio restart

You can also use ps and kill to stop any existing ls process if you’re impatient.

I didn’t figure this out, I got it from Solving the MyBook Live insane load.

Change to CFQ scheduler

Some people think that performance is better if you switch to the CFQ scheduler. This will definitely depend on how you use the NAS. WD has defaulted to the Anticipatory scheduler. You can check to see what yours is set at.

cd /sys/block/sda/queue
cat scheduler

and if you see

noop [anticipatory] deadline cfq

then your NAS is currently using the Anticipatory scheduler. You can switch by writing CFQ to the scheduler file like this

echo cfq >scheduler

And, if you have multiple drives in your WD Live box (for example, a Live Duo), you’ll need to do this for sdb as well.

I got this from Performance problems? Read this first.

You can read more about the various scheduling algorithms in this Red Hat page: Choosing an I/O scheduler for Red Hat Enterprise Linux 4 and the 2.6 Kernel. At some point, this will be out of date, but it was valid as of late 2012.