file_exists-Problem

Hallo Leute,

perr SSH greife ich auf einen entfernetes Linux-System zu.
Ich möchte prüfen, ob ein bestimmtes Verzeichnis existiert.
Aber: Obwohl ich das Verzeichnis „sehen“ kann, gibt die Funktion false zurück.

$filename = '/usr/share';
			if (file_exists($filename)) {
			    echo "Die Datei $filename existiert";
			} else {
			    echo "Die Datei $filename existiert nicht";
			}

Da gibt es ein true zurück.

$filename = '/usr/share/enigma2';
			if (file_exists($filename)) {
			    echo "Die Datei $filename existiert";
			} else {
			    echo "Die Datei $filename existiert nicht";
			}

Gibt false zurück, obwohl es existiert. Ersetze ich enigma2 durch einen anderen Ordnernamen auf der Ebene bekomme ich auch ein true zurück. Die sichtbaren Ordnerrechte sind aber gleich gesetzt…

Warum funktioniert es bei dem einen, aber nicht bei diesem bestimmten Ordner?

Wo liegt der Fehler?

Joachim

…ist selbstverständlich Blödsinn das per SSH zu machen!
Muss da wohl SFTP verwenden![emoji6]

…habe da doch noch eine Herausforderung…

Hier mal das Testskript:

SFTP_Connect();
return;

function SFTP_Connect()
	{
			set_include_path(__DIR__);
			require_once (__DIR__ . '/Net/SFTP.php');
			
			$sftp = new Net_SFTP('192.168.178.50');
			if (!$sftp->login('user', 'pw')) {
			    exit('Login Failed');
			}

			else {
					echo 'Verbindung';
			}
			$sftp->disconnect();
	return;
	}

return;

…klappt bei allen Raspberry Pi hier im Netz…

Aber: Wenn ich die Enigma2-Image versuche funtioniert das nicht. Zunächst hatte ich vermutet, dass es wegen des standardmäßig fehlenden Passwortes beim root-Zugang liegt und die Gelegenheit beim Schöpfe gepackt und ein Passwort vergeben.
Fehlermeldung: Notice: Expected SSH_FXP_VERSION in /var/lib/symcon/scripts/Net/SFTP.php on line 526
Per WinSCP funktioniert es hingegen mit SFTP, User und PW…

Was habe ich übersehen?

Joachim

…mit SFTP geht es bei der Enigma2 offenbar nicht, was zu funktionieren scheint ist die gute alte FTP-Verbindung.
Vom Prinzip her:

$ftp_server="IP";
   $ftp_user_name="user";
   $ftp_user_pass="pw";
   // set up basic connection
   $conn_id = ftp_connect($ftp_server);
   // login with username and password
   $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
   If ($login_result == true) {
    ftp_chdir($conn_id, '/usr/share/);
    $contents = ftp_nlist($conn_id, ".");
    print_r($contents);
    
   }
   else {
    echo "Fehler bei der Verbindung";
   }
   // close the connection
   ftp_close($conn_id);