When customer is trying to migrate SUSE Linux 11 ENT server 32 bit to VM by Rainbow, below error occurred.
Rainbow version is 1.2.12.
In the process of getting the OS version of source server, Rainbow server will transfer a script getOsInfo.sh to the source server and execute it.
So when this error occured, it probably caused by script not executed or script not sent to source server.
firstly, we chech if it is caused by the script not be excuted. So asked customer to execute the script directly on the source server assuming that the script has already transfered as sh getOsInfo.sh in directory /root.
As per customer, system reported there was no such script in /root.
In this case, we can be sure that the issue was caused by that the script was failed to be transfered to source server.
But why failed?
By checking the log of rainbow, we found that there are a lot of errors as in below picture.
This error indicated that when the source server starting sftp to transfer the script, the directory was wrong.
This configuration is in /etc/ssh/sshd_config file. As we checked the file, there is an configuration as:
Subsystem sftp /usr/lib64/ssh/sftp-server
Normally, the sftp-server file should be in /usr/lib/ssh. By checking the directory: /usr/lib/ssh instead of /usr/lib64/ssh, sftp-server file has been found.
So reconfigure the sshd_config file as followed.
After restarting the sshd service, Source OS checking passed.
The sshd_config file was modified in which the directory of sftp-server file was not correct.
Editing /etc/ssh/sshd_config file, make sure there is a configuration as:
Subsystem sftp /usr/libexec/openssh/sftp-server
and the directory of sftp-server file is correct.
For such issue of Rainbow, checking points should includes:
1. Does getOsInfo.sh exist in source server?
2. Is Sftp service running fine?