realSysId=$realSysId";
$sysIdArr=explode('_',$realSysId);
$sysTypeNo=$sysIdArr[0];
$sysNo=$sysIdArr[1];
// echo "sysTypeNo=$sysTypeNo,sysNo=$sysNo";
}
if($DEBUG)echo "
sysTypeNo= $sysTypeNo";
// echo "
"; // echo print_r($ftpInfo); // echo ""; $nGetComm = 0; $nSetComm = 3; $nSubSysParam = 0; $nGlobalSubSysParam = 1; $nGlobalSysParam = 2; $omc_db = 'OMC_PUB'; $sysInfoTable = 'OMC_PUB.sysInfo'; $impObjId = '99.2.1.2'; $impFileName = 'system.ini'; $ftpDir = '/usr/local/subsManage/'; $ftpLoginName = 'subsManager'; $baseLogFileName = 'fib.txt'; $ftpLoginPwd = 'iammanager'; $paramType = $nGlobalSysParam; $maxImpFileSize = 4*1024; if($DEBUG)echo "
Back";
exit();
}
if($impFileSize <=0){
echo "
No import File";
@unlink ($impFile);
echo "
Back";
exit();
}
$submitStat = 'DISABLED';
for ($k=0; $k<$runningServerNum; $k++) {
$getSysIdRow=mysqli_fetch_array($getSysIdResult);
$dstSeverIp = $getSysIdRow[ip];
$dstSeverIpArr[$k] = $getSysIdRow[ip];
if($DEBUG) echo "
dstSeverIp = $dstSeverIp";
/* close ftp
$ftpCon=@ftp_connect($dstSeverIp);
if($ftpCon < 0){
echo "
Connect $dstSeverIp Failed!";
@unlink ($impFile);
echo "
Back";
exit();
}
*/
$connection=sftp_connect($dstSeverIp);
if(!$connection)
{
echo "
Connect $dstSeverIp Failed!";
@unlink ($impFile);
echo "
Back";
exit();
}
/* close ftp
if(!@ftp_login($ftpCon,$ftpLoginName,$ftpLoginPwd)){
echo "
Login $dstSeverIp Failed!";
@unlink ($impFile);
echo "
Back";
exit();
}
*/
$key=sftp_login($connection,$ftpLoginName,$ftpLoginPwd);
if(!$key)
{
echo "
Login $dstSeverIp Failed!";
@unlink ($impFile);
echo "
Back";
exit();
}
if($DEBUG) echo "
sysTypeNo= $sysTypeNo";
switch($sysTypeNo){
case '320':
$black='msc';
break;
case '330':
$black='hlr';
break;
case '350':
$black='smsc';
break;
case '360':
$black='ocs';
break;
default:
echo "Uknown sysTypeNo:$sysTypeNo";
exit(1);
}
// 针对 HLR 的特殊处理
if ($sysTypeNo === '330') {
$tempFilePath = $ftpDir.$impFileName;
$finalFilePath = '/usr/local/etc/udm/license/' . $impFileName;
// 1. 先用 subsManager 上传到 /usr/local/subsManage/
if(!sftp_put($key,$tempFilePath,$impFile,SFTP_ASCII))
{
echo "
Put file to $dstSeverIp Failed";
exit();
@unlink ($impFile);
echo "
Back";
exit();
}
// 2. 用 agtuser ssh 连接并执行 sudo mv
$agt_connection = ssh2_connect($dstSeverIp, 22);
if (!$agt_connection) {
echo "
Connect $dstSeverIp Failed!";
exit();
}
if (!ssh2_auth_password($agt_connection, $ftpInfo['UserName'], $ftpInfo['Password'])) {
echo "
Login $dstSeverIp Failed!";
exit();
}
$moveCommand = "sudo mv $tempFilePath $finalFilePath";
$moveResult = ssh_exec_command($agt_connection, $moveCommand);
if (strpos($moveResult, 'error') !== false || strpos($moveResult, 'Error') !== false || strpos($moveResult, 'cannot') !== false)
{
echo "
Failed to move file to $finalFilePath";
exit();
}
@unlink($impFile);
echo "
HLR License Upload Finished";
echo "
Back";
exit();
}
$impFileName="system.ini.".$black;
$remoteFileName=$ftpDir.$impFileName;
if($DEBUG)echo "$ftpCon,$remoteFileName,$impFile";
/* close ftp
if(!@ftp_put($ftpCon,$remoteFileName,$impFile,FTP_BINARY)){
echo "
Put file to $dstSeverIp Failed";
exit();
@unlink ($impFile);
echo "
Back";
exit();
}
ftp_quit($ftpCon);
*/
if(!sftp_put($key,$remoteFileName,$impFile,SFTP_ASCII))
{
echo "
Put file to $dstSeverIp Failed";
exit();
@unlink ($impFile);
echo "
Back";
exit();
}
}
@unlink ($impFile);
//$sysId=$sysTypeNo.'_99_99';
if($DEBUG) echo "
(2) sysId=$sysId";
//send set command
$chgResult = setSysParamValue($sysId,$impObjId,$instanceNo,'00');
$commIdArr = sysCommSend($sysId,$nSetComm,$impObjId);
if($DEBUG){
echo "setSysParamValue($sysId,$impObjId,$instanceNo,$newValue)
";
echo "sysCommSend($sysId,$nSetComm,$impObjId)";
}
CheckState($commIdArr);
echo "
Finished";
for($k=0;$k
Connect $dstSeverIp Failed!";
echo "
Back";
exit();
}
*/
$connection=sftp_connect($dstSeverIp);
if(!$connection){
echo "
Connect $dstSeverIp Failed!";
echo "
Back";
exit();
}
/* close ftp
if(!@ftp_login($ftpCon,$ftpLoginName,$ftpLoginPwd)){
echo "
Login $dstSeverIp Failed!";
echo "
Back";
exit();
}
*/
$key=sftp_login($connection,$ftpLoginName,$ftpLoginPwd);
if(!$key)
{
echo "
Login $dstSeverIp Failed!";
echo "
Back";
exit();
}
$remoteFileName =$ftpDir.$baseLogFileName;
//echo "remoteFileName=$remoteFileName";
$timestamp = time();
$nameArray = explode(".",$baseLogFileName);
$logFileName = $nameArray[0].$timestamp."_".$k.".log";
$localFileName ="/usr/local/apache/htdocs/ftpFile/$logFileName";
/*
//delete *.log
$handle=opendir('/usr/local/apache/htdocs/ftpFile/');
while($file=readdir($handle)){
$retval="";
$pt=strrpos($file,".");
if($pt) $retval=substr($file,$pt+1,strlen($file)-$pt);
$delFileName = "/usr/local/apache/htdocs/ftpFile/".$file;
if($retval=='log') unlink($delFileName);
}
*/
/* close ftp
if(!ftp_get($ftpCon,$localFileName,$remoteFileName,FTP_ASCII)){
echo "
Get log file from $dstSeverIp Failed";
echo "
Back";
exit();
}
ftp_quit($ftpCon);
*/
//if(!sftp_get($key,$localFileName,$remoteFileName,SFTP_ASCII))
if(!sftp_get($connection,$localFileName,$remoteFileName,SFTP_ASCII))
{
echo "
Get log file from $dstSeverIp Failed";
echo "
Back";
exit();
}
$logFileUrl="../../../ftpFile/$logFileName";
echo "
Click here to open the log ($dstSeverIp).";
}
echo "
Back";
exit();
}elseif(isset($impFile)){
echo "
Upload file failed, File isn't exist or file is empty!";
}
?>
";
echo "";
echo " ";
echo "";
adjust_title_tail();
adjust_content_head();
echo "";
echo "$strConfiguration > MSS License Control";
echo " ";
echo "";
$helpId="2.61";
showHelp($helpId);
echo " ";
echo "
";
?>