Ich schreibe ein Bash-Skript zur Analyse der E-Mail-Protokolle in unserem Netzwerk, bei dem es sich hauptsächlich um Postfix- Boxen handelt, möchte aber nach Möglichkeit MS Exchange-Protokolle in die Analyse einbeziehen.
Gibt es eine Möglichkeit, eine Datei von einem Windows-Computer aus remote über die Befehlszeile unter Linux zu kopieren? (Hinweis: Ich habe Administratorrechte auf der Windows-Box)
Ich verwende,
cwRsync
um meine Windows-Box auf meinem Linux-Server zu sichern. Es wird als Dienst unter Windows installiert.Sie können auch verwenden,
smbclient
was möglicherweise einfacher zu verwenden ist, als das Remote-Laufwerk tatsächlich im Dateisystem des Linux-Servers zu mounten.quelle
Einige Optionen:
Geben Sie das Verzeichnis unter Windows frei und verwenden Sie smbmount, um es unter Linux zu mounten (dann können Sie einfaches cp verwenden).
Installieren Sie einen SSH-Server auf dem Windows-Computer (möglicherweise mit Cygwin), und dann können Sie die Datei scp über
Richten Sie den FTP-Server auf einem Windows-Computer ein und übertragen Sie ihn über FTP (mit wget / ncftpget oder ähnlichem).
quelle
Verwenden Sie den Samba-Client, um die Administratorfreigabe bereitzustellen. Anstatt einen bestimmten Ordner mit in Windows freizugeben, müssen Sie ihn nur bereitstellen
quelle
Wenn Sie aus irgendeinem Grund keine Freigabe über CIFS bereitstellen können, verfügt Core FTP über einen sehr nützlichen kostenlosen SSH / SFTP-Server:
http://www.coreftp.com/
quelle
Das Mounten einer Freigabe ist die beste Lösung. Vergessen Sie nicht, das Kommad 'dos2unix' zu verwenden, um Zeilenumbrüche zu verbergen.
quelle
Wenn das Windows-System über einen SSH-Server verfügt, würde dies funktionieren. Wenn nicht, können Sie eine SMB / CIFS-Bereitstellung des Laufwerks auf dem Windows-System durchführen und die Datei dann auf Ihr lokales Linux-Laufwerk kopieren.
quelle
Einige Optionen.
Sie können eine Windows-Freigabe mithilfe von SMB bereitstellen und dann das Kopieren / Verschieben / usw. nach Bedarf ausführen. Sie können die Datei in einem Webspace platzieren und
wget
zum Abrufen verwenden. Sie können einen SSH-Server auf dem Windows-Computer installieren und ascp
. Sie können NFS verwenden, um auf das Windows-Laufwerk zuzugreifen. Sie können auch Exchange-Protokolle an einen Syslog-Server senden (oder Splunk verwenden ).quelle
Sie können auch versuchen, den WS-Management-Standard zu verwenden. Dafür gibt es ein Projekt namens Openwsman , aber ich habe keine Ahnung, ob es sich um den aktuellen Status oder die Kompatibilität der Client-Tools mit der Windows Vista / Server 2008-Implementierung handelt. Siehe auch winrm / winrs .
quelle