質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

91.36%

  • Linux

    2691questions

    Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

  • Windows

    1008questions

    Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

  • ファイル

    121questions

    ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

linuxサーバーからWindowsクライアントへのファイル転送

受付中

回答 4

投稿 2017/11/30 08:59 ・編集 2017/11/30 17:02

  • 評価
  • クリップ 0
  • VIEW 127

mashima0037

score 0

前提・実現したいこと

linuxサーバーの中のテキストデータファイルを、会社で使用しているWindowsのフォルダに転送しようとしていますが上手くいきません。
linuxサーバー側でバッチプログラムを作って、WindowsPCに毎日自動転送できるようにしたいのですが、どうすればいいでしょうか?
TeratermやwinSCPを使って手動では転送できています。
linuxサーバーからWindowsPCへテキストデータを送信するコマンドがあれば教えてください。

発生している問題・エラーメッセージ

smbclientコマンドを使った場合
[mashima@stg ~]$ smbclient '\\192.222.111.000\share' -U User01-PC%
Connection to 192.222.111.000 failed (Error NT_STATUS_UNSUCCESSFUL)

ftpコマンドを使った場合
[mashima@stg ~]$ ftp 192.222.111.000
※何も表示されませんでした。Ctrl+Cで解除

該当のソースコード

smbclient '\\192.222.111.000\share' -U User01-PC%
smbclient '\\192.222.111.000\share' -U User01-PC
smbclient '\\192.222.111.000\share'
※細かい書き方を変えて試してみました。

[mashima@stg ~]$ ftp
ftp> open 192.222.111.000
^C
ftp> open -n 192.222.111.
ftp: -n 192.168.100.118: サーバ名は ai_socktype に対してサポートしていません
ftp> ftp -n 192.168.100.118
?Invalid command

試したこと

windowsPCに共有ファイルを作成してsmbclientコマンドを使ってみましたが、
Error NT_STATUS_UNSUCCESSFUL
が出るため、アクセスできていない状況です。
ftpコマンドも使おうとしましたが、どのようにコマンドを書けばファイルを転送できるかわかりません。

補足情報(言語/FW/ツール等のバージョンなど)

teratermを使ってlinuxサーバーにアクセスしています。
シェルスクリプト(bash)を使っています。

より詳細な情報

自社開発した在庫管理システムを、グループ会社で使用しています。
そのグループ会社での販売管理システムの入替を検討しています。
在庫管理システムはLinuxサーバーで構築したシステムで、マスター・トランのデータもそのサーバー内にあります。
在庫管理システムで作成した納品や入荷のデータを、販売管理システムを使っている経理担当者のWindowsPCに自動転送したいと考えています。
同じグループ会社ですが、私の使用しているPCと経理担当者のPCはネットワークが違います。
上記で試してみたことは、私のWindowsPCでLinuxサーバーにアクセスし、私のWindowsPCに対してファイル転送をした結果です。これができればグループ会社のPCにも転送できるのではないかと思っています。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • otn

    2017/11/30 11:38

    Linux機はインターネットの向こうにあると言う事ですか?であれば、いわゆるポート開放的な事が必要です。可否含めネットワーク管理者に相談してください。

    キャンセル

  • mashima0037

    2017/11/30 16:25

    WindowsPCは社内LANにあり、LinuxサーバーはさくらインターネットのVPSにあります。ポート解放が可能かどうかは相談してみます。ありがとうございました

    キャンセル

  • otn

    2017/11/30 17:04 編集

    VPN接続でないのであれば、あまり現実的ではないと思います。 今まで通り、内側から外側に取りに行くのが現実的です。

    キャンセル

回答 4

0

Windows側のタスク スケジューラ等で起動して取得する方法では、だめなのでしょうか。
Windows PC → Linux サーバへの接続、ファイル取得はできているようですので、あえて逆方向で構築する必要はなさそうに思います。

投稿 2017/11/30 09:07

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/11/30 09:17

    suyamaさんの案で良いかと思います。
    この辺りを参考にすれば簡単に出来るかと思います。(WinSCPをコマンド実行)
    https://qiita.com/mono_cat/items/83cd307a77bf0437c4b7
    https://ja.osdn.net/projects/winscp/wiki/commandline

    キャンセル

  • 2017/11/30 09:43

    >suyama様
    ありがとうございます。
    この件の詳細を説明したいと思います。
    自社開発した在庫管理システムを自社内で使用しています。
    その在庫管理システムはlinuxサーバー上で稼働しており、それとは別に販売管理システムが社内にあります。在庫管理システムでは納品や入荷情報を作成できるようになっており、その集計データを販売管理システムに渡すことで打ち込みの時間とミスを削減しようと考えております。しかし、社内とは言え物理的距離が離れており、サーバーから販売管理システム使用者(経理担当者)のWindowsPCにデータを飛ばせれば楽だと思っています。
    販売管理システム使用者(経理担当者)のPCにlinuxサーバーへアクセスしてもらう方法も考えてはいますが、別のシステムも稼働しているサーバーなので、SE以外がアクセスできる体制は極力避けたいと個人的には思っております。やるとしても集計データ用に別サーバーを立てるなど、事故が起こらない配慮が必要だと思います。それならタスクスケジューラ等も使えるかと

    また回答していただければ幸いです。

    キャンセル

  • 2017/11/30 09:46 編集

    それならば、ファイルサーバ等に配置するようにすればよいのではないでしょうか。
    個別のPCに配布する必要性はないように感じます。

    キャンセル

  • 2017/11/30 09:56

    その理由であれば担当者のみに送付するというのはシステム上問題があると思います。
    担当の休暇、人事による変更変更、PC入れ替え時等々で都度対応が発生するかと。

    なので、suyamaさんがおっしゃる通りファイルサーバに配置したり、メーリングリスト宛てにメールで飛ばすなどした方が良いのではないでしょうか。

    キャンセル

  • 2017/11/30 17:15

    >suyama様、gitya107様
    回答ありがとうございます。
    経理側もシステム側もそれぞれ担当者が一人なので、休暇やPCの入替は考慮する必要があります。
    販売管理システム用のデータはバッチ処理で自動生成できるので、別サーバーまたはファイルサーバに置いて経理担当者に都度ダウンロード等してもらうのが安全な気がします。
    現状、WinSCPでのファイル転送は可能なので、その手法が一番現実的です。
    ただ、もう少し自動転送がどうにかできないか頑張ってみます。

    キャンセル

0

サーバーからクライアントへのデータ転送は、クライアントからの要求がなければ無理ですね。
逆に考えればlinuxをクライアントとしてwindowsをサーバーとする仕組みをつくればいいだけです。
windowsになにか適当なftpdを入れて、linuxからはftpクライアントで接続するのが
簡単かとおもいます。
またもし可能であればwindows側がnfsやrcpのサーバーになる手もあるでしょう。

投稿 2017/11/30 09:32

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

Windows側で共有の設定が正しくできている前提で、
smbclient '\\192.222.111.000\share' -U User01-PC
で間違ってないので、ファイアーウォールが邪魔をしているとかじゃないでしょうか。Linux側か、Windows側か、両方か。

ftpコマンドを使うためには、Windows側にftpサーバーが必要です。

投稿 2017/11/30 10:18

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/11/30 17:08

    Linux側とWindows側の両方でファイアウォールを切ってsmbclientをしたのですが、
    (Error NT_STATUS_CONNECTION_REFUSED)が出てしまいました。

    >ftpコマンドを使うためには、Windows側にftpサーバーが必要です。
    これを知らなかったので、Windows側にftpサーバーを作ってみましたが、Linux側からはアクセスできませんでした。

    キャンセル

  • 2017/11/30 17:11

    質問にコメントした通り、そもそもどんなコマンドを使うか以前に、ネットワーク的に不可能な状態です。
    ネットワーク管理者に相談してください。

    キャンセル

0

windows側から取る方法で他の方法があります。

OpenSSHをWindowsにインストールし、インストールフォルダ内にscp.exeがありますので、そちらを使ってLinuxサーバ側からファイルをコピーできます。

https://dev.classmethod.jp/cloud/aws/aws-windows-sshd/

OpenSSHは下記から入手が可能です。
https://github.com/PowerShell/Win32-OpenSSH

投稿 2017/11/30 17:33

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

ただいまの回答率

91.36%

関連した質問

  • 解決済

    サーバの引っ越し(Linux)手順について

    旧専用サーバ(Red Hat Linux)にてWebサーバを稼働させており、 新専用サーバ(CentOS6.6)への移転を検討しています。 移転は (1) 旧サーバのホームディ

  • 解決済

    特定ユーザのデフォルトパーミッションの変更

    FTPツールでファイルをあげた際にグループ権限に読み書き権限がないため編集できず、毎回chmodしてるのですが、このデフォルトパーミッションを変更する方法を教えてください。

  • 解決済

    windowsのcmdでLinuxコマンドを入力できるようにしたい

    「Oracle VM VirtualBox」と「centos」をインストールし、VirtualBoxの仮想環境でLinuxが使える状態になりました。しかし、Windowsのコマンド

  • 解決済

    サーバー同士のローカル接続とは一体何ですか?

    ローカル接続とは一体どのようなこと・状態のことを指すのでしょうか? 調べても、はっきりした説明がなく、ご教授いただけばと思い質問致しました。 webページを置くサーバーと、

  • 解決済

    /etc/network/interfacesをコマンドで編集する

    前提・実現したいこと 組み込みLinux環境でNICに固定IPを割り当て、割り当てた固定IPを再起動した後も保持したいと思っています。 /etc/network/interfa

  • 解決済

    L2TP/IPsecでVPN接続のトラブルシューティングについて。

    前提・実現したいこと L2TP/IPsec方式でVPN接続を行いたいです。 yamahaルーター側とmac/win/iphoneなど接続機器側での認証方式・鍵の間違いはないと思

  • 解決済

    SFTPのプロキシについて

    やりたいこととしては、以下のようなサーバーがあります。 サーバーA = 中継用(踏み台) サーバーB = 開発用 サーバーBではIP制限をかけてあり、サーバーAからのみア

  • 解決済

    Linuxの共有グループ設定

    Linuxマシンを3人で共有しており、以下のようにPermissionを設定したいと思っています。 Linuxでのファイル共有をしたことがないので、基本的なことかもしれませんがやり

同じタグがついた質問を見る

  • Linux

    2691questions

    Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

  • Windows

    1008questions

    Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

  • ファイル

    121questions

    ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。