Použijte Sambu.
Samba poskytuje službu sdílení souborů kompatibilní se systémem Windows.
Můžete sdílet adresář (například /srv/samba/sharename
) na vašem počítači se systémem Linux a přistupovat k němu ze systému Windows takto:\\linuxservername\sharename
. Nepotřebuje žádný další software na straně Windows.
Samba je součástí většiny distribucí Linuxu. Nainstalujte jej pomocí správce balíčků, například:
-
Ubuntu:
sudo apt-get install samba smbclient
-
SUSE:
zypper samba
-
CentOS/RedHat:
yum install samba
Chcete-li nakonfigurovat Sambu, viz:
-
Ubuntu:http://ubuntuforums.org/showthread.php?t=202605
-
SUSE:http://doc.opensuse.org/documentation/html/openSUSE/opensuse-reference/cha.samba.html
-
CentOS/RedHat:http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-samba-configuring.html
nebo vyhledejte na Googlu průvodce pro svou distribuci.
Všimněte si, že možná budete muset nakonfigurovat váš linuxový firewall, pokud jej používáte, aby přijímal připojení k portům 137/tcp, 138/tcp, 139/tcp a 445/tcp (viz toto a toto).
V popisu výše je počítač s Linuxem server Samba a Windows z něj připojí sdílenou složku.
Ve svém komentáři níže zmiňujete, že byste chtěli proces převodu automatizovat . Toho lze dosáhnout obrácením rolí tak, aby systém Windows fungoval jako server a Linux se k němu připojoval pomocí smbclient
.
S smbclient
nemusíte vůbec připojovat sdílenou složku Windows. Například pro načtení C:\Directory\file.txt
a zkopírujte jej do /tmp
na počítači se systémem Linux proveďte toto:
smbclient '//windowsserver/c$' -c 'lcd /tmp; cd Directory; get file.txt' -U administrator%password
-c
Příkaz k provedení. Viz man smbclient
pro podrobnosti.
-U
Uživatelské jméno a heslo pro přístup ke sdílené složce zadané jako username%password
Upravte jej podle svých potřeb a přidejte jej do svého skriptu.
Vím, že jste řekli, že nemůžete očekávat instalaci konkrétního softwaru, ale existují klienti SSH/SCP/SFTP pro Windows, kteří žádnou konkrétní instalaci nevyžadují; k dispozici je pouze spustitelný soubor. Jeden, ke kterému se stále obracím, je PuTTY s doprovodem pscp
a psftp
nástroje, ale jsem si jistý, že existují alternativy. pscp
a psftp
lze ovládat zcela z příkazového řádku, a proto se dobře hodí pro automatizační úlohy. Oba mají dokonce -batch
přepínač, který je popsán jako „vypnout všechny interaktivní výzvy“ a téměř jistě jej lze využít.
Vzhledem k tomu, že pravděpodobně již máte na serveru nainstalovaný a nakonfigurovaný server SSH/SCP/SFTP, nemusíte instalovat žádný software na oba hostitele pouze za účelem kopírování těchto souborů.
Další výhodou může být skutečnost, že PuTTY je open source pod povolenou licencí, takže pokud nedělá to, co chcete hned po vybalení z krabice, mělo by být relativně snadné nastavit jej tak, jak chcete.