How To: Fix kernel panic-not syncing: VFS: unable to mount root fs on unknown block(0,0) on Azure VM

When booting an Azure VM, this error:

304.863321] —[ end Kernel panic – not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

Solution: remove old linux kernels, your /boot drive is out of space.

-boot to grub and click on “Advanced options”
-Select a previous kernel (should boot fine)
login and enter command

$ df

See if your /boot directory is 100% used
Remove old linux kernels

$ sudo apt-get autoremove

Also, there may be an issue with the storage drivers (that should be built into initramfs) needed for Hyper-V / Azure.
Other Information:

No PGP for Horde Mail in Plesk

When checking mail, I noticed the PGP option was not available. It should look like this:

So, I followed this:

But still missing.

MySQL shows warning: Using unique option is deprecated and will be removed in a future release

Error when exporting a dump in plesk databases (See:

Warning: Using unique option prefix database instead of databases is deprecated and will be removed in a future release. Please use the full name instead.


key_buffer and myisam-recover are deprecated in Mysql 5.5. myisam-recover option is renamed as of MySQL 5.5.3 to myisam-recover-options .

1. Log in to Plesk server via SSH

2. Correct /etc/my.cnf or /etc/mysql/my.cnf as below:
Change pass to password
See –

Use Path to PHP 7 to run a command vs OS PHP

When needing to run a command in a different version on php.
Where is the path to php 7 on cpanel?

# /opt/cpanel/ea-php70/root/usr/bin/php -v
PHP 7.0.32 (cli) (built: Sep 14 2018 20:36:03) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies

set the path –

How to install SSH2 extension for PHP on Plesk?

Check settings in plesk: Tools and Settings > General > PHP Settings. Click on a php version:

Through the OS vendor (CentOS 7 PHP 5.4.16 OS Vendor)

Connect to the server via SSH;

Install the pre-compiled extension packages: .rpm-based distribution (CloudLinux, CentOS, RHEL):

# yum install -y epel-release
# yum install -y php-pecl-ssh2

.deb-based distribution (Debian, Ubuntu):

# apt install -y php-ssh2

Restart apache:

# service httpd restart

Reload the handler

# plesk bin php_handler --reread

You can check with php -m

# php -m

Check with php info file:

Check command line:

# php -i | grep ssh2
Registered PHP Streams => https, ftps, compress.zlib, compress.bzip2, php, file, glob, data, http, ftp, phar,, ssh2.exec, ssh2.tunnel, ssh2.scp, ssh2.sftp, zip
PHP Warning:  Unknown: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in Unknown on line 0
libSSH Version => libssh2/1.4.3
libssh2 version => 1.4.3
banner => SSH-2.0-libssh2_1.4.3

Check in Plesk. Tools and Settings > General > PHP Settings > Click on 5.4.16 by OS vendor FPM application

Plesk PHP 5.6

Install Development packages:

# yum install plesk-php56-devel gcc libssh2-devel

Install all ssh2:

# /opt/plesk/php/5.6/bin/pecl install ssh2-0.13

Register extension in configuration file:

# echo "" > /opt/plesk/php/5.6/etc/php.d/ssh2.ini

Update PHP handlers information:
# plesk bin php_handler --reread
The information about PHP handlers was successfully updated.

Restart PHP-FPM:
Find the plesk version:

#  plesk bin php_handler --list | grep -E plesk.*fpm | awk -F" " '{ print $1 }'

Restart the applicable servie for your environment, In this case, plesk-php56-fpm

# service plesk-php56-fpm restart

You can check with a phpinfo file here:

Plesk PHP 7.0 and Above

Note: In following instructions ‘7.0’ should be replaced with ‘7.1’ to install the extension for PHP 7.1.
Connect to the server via SSH

Install all required packages: .rpm-based distribution (CloudLinux, CentOS, RHEL):

Note: Following steps describe the installation of developer packages for PHP 7.0. For PHP 7.2, for instance, plesk-php72-devel or plesk-php72-dev must be installed.

# yum install -y plesk-php70-devel gcc libssh2-devel

.deb-based distribution (Debian, Ubuntu):

# apt install -y plesk-php70-dev gcc libssh2-1-dev

Build the extension:
Install the extension:

# /opt/plesk/php/7.0/bin/pecl install ssh2-1.1.2
downloading ssh2-1.1.2.tgz ...
Starting to download ssh2-1.1.2.tgz (32,057 bytes)
.........done: 32,057 bytes
6 source files, building
running: phpize
Configuring for:
PHP Api Version:         20151012
Zend Module Api No:      20151012
Zend Extension Api No:   320151012
libssh2 prefix? [autodetect] :

Hit enter and you should see he the build successful

building in /tmp/pear-build-rootSbcR3r/ssh2-1.1.2
running: /tmp/ssh2/configure --with-php-config=/opt/plesk/php/7.0/bin/php-config --with-ssh2
checking for grep that handles long lines and -e... /usr/bin/grep

Build process completed successfully
Installing '/opt/plesk/php/7.0/lib64/php/modules/'
install ok: channel://
configuration option "php_ini" is not set to php.ini location
You should add "" to php.ini

Register extension in configuration file:

# echo "" > /opt/plesk/php/7.0/etc/php.d/ssh2.ini

Update PHP handlers information:

# plesk bin php_handler --reread
The information about PHP handlers was successfully updated.

Restart PHP-FPM:

# service plesk-php70-fpm restart

Now you can go to Tools and Settings > General > PHP Settings > 7.0.32 FPM application (or any of the activated 7.0.32 links). And you should see:

Other sources: