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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Linux

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

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Q&A

解決済

3回答

3028閲覧

LINUX ローカルデスクトップからサーバーへファイル転送方法について SCP

退会済みユーザー

退会済みユーザー

総合スコア0

Linux

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

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

0グッド

0クリップ

投稿2019/07/16 09:21

編集2019/07/16 10:16

ローカルからサーバーへアップロードしたいです。

win10のデスクトップにあるsample.txtをTERATERMを利用してubuntuのhomeディレクトリへサーバーへアップロードしたいです。

scp sample.txt ssh_admin@1.2.3.4:.

エラーが出ました。

sample.txt: No such file or directory

宜しくお願いいたします。
イメージ説明

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cateye

2019/07/16 11:09

・・・話が食い違っている気がするんですが・・・ えっと、サーバーへはSSHでログインできますか? IPまたはホスト名は合っていますか? あなたの環境(リモートとサーバ)の詳細を教えて下さい。
退会済みユーザー

退会済みユーザー

2019/07/16 11:13

そうでしょうか?私が通知している話は一貫しています。ローカルからサーバーへアップロードしたいです。win10のデスクトップにあるsample.txtをTERATERMを利用してubuntuのhomeディレクトリへサーバーへアップロードしたいです。 サーバはSSHでTERATERMでログインしてます。 IP間違えありません。
cateye

2019/07/16 11:35 編集

>サーバーへアップロードしたい・・・が、出来てないんですよね? なら、根本から見直さなきゃダメでしょう? 通常、SSHは"ssh xxxxx@svr.cateye.jp"のようにして使います。(名前は伏せました)それでサーバにログインできなかったらSSHが機能してないか、SSHを使える環境になってないのじゃないですか? ・・・ついでに、ssh_adminというユーザは有りますか?・・・わたしは自分の名前でSSH接続するので詳しくはないですが?
退会済みユーザー

退会済みユーザー

2019/07/16 11:40 編集

まず話は食い違っていません。それと本文と含めると3回目になり大変恐縮ですがローカルからサーバーへアップロードしたいです。win10のデスクトップにあるsample.txtをTERATERMを利用してubuntuのhomeディレクトリへサーバーへアップロードしたいです。重ねて上記記載により2回目で大変恐縮ですがSSHはログインしています。 私が間違えていたのはローカル上でコマンドを打つ場合の例です。Windowsだと、それがコマンドプロンプトとかPowershellです。私はLinux上でコマンドを打っています。Teratermで打っているので。それが大きな間違いです。https://qiita.com/ritukiii/items/c724f09fe66fedf2618b このコマンドと同様の事をサーバ側であるTERATERMから打てるのであれば教えてください。もちろんTERATERMのGUIではなく。
cateye

2019/07/16 11:48 編集

確認です。ssh_admin@1.2.3.4:. を見るとssh_adminのホームディレクトリに転送しているんですよね? とすると、/home/ssh_admin/に転送したいのですよね? また、示されたページには、/homeからのパスが書かれていますがいいのでしょうか? https://ttssh2.osdn.jp/manual/ja/usage/ssh.html の設定は済ましてあるということでいいですか?
退会済みユーザー

退会済みユーザー

2019/07/16 12:02 編集

以下回答いたします。 1点目 /home に転送したいです。 2点目 ssh_known_hosts ファイル SSH 接続時には SSH サーバのホスト鍵をチェックし、一致する鍵が ssh_known_hosts にない場合には警告を表示します。チェックの結果は以下のように分類されます。 scp C:\Users\xxx\Desktop\sample.txt ssh_admin@1.2.3.4:. ssh: Could not resolve hostname c: Name or service not known というエラーだったのでこれが未設定だったのかもしれません。ただTERATERM上はSSH2という指定でログインしていますが。。
guest

回答3

0

Windows ←→ UNIX/Linux でファイル転送するには、通常 WinSCP などのFTPクライアントソフトが使われることが多いです。

昔の職場でWindows側でマルチバイト文字や空白を含んだファイル名をデスクトップに置くことに固執して力尽きたメンバーを知っています。残ったメンバーで手つかずの開発を分け合わないと行けなかったので大変でした。

投稿2019/07/16 12:53

Orlofsky

総合スコア16415

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/07/16 13:10

回答ありがとうございます。仰れれる通りSFTP経由で無事導通しました。 >>固執して力尽きたメンバー wwwかわいそう。
Orlofsky

2019/07/16 13:14

Windowsはスタンダードではないことを理解できない、はた迷惑なだけです。
退会済みユーザー

退会済みユーザー

2019/07/16 13:16

>残ったメンバーで手つかずの開発を分け合わない 逆にこれは全然笑えませんね。メンバーの必死なリカバリお疲れ様でした。
guest

0

Windowsでやってるなら
~/C:\Users\xxx\Desktop/samplefile.txt
この~は使えないと思うんですが。(何のシェル使ってるのかによるけど)

あとパス区切り文字に\/が混在してるのもどうなんだろう。

(表示の都合で円マークに見えるかもだけど\はバックスラッシュ)

投稿2019/07/16 09:36

gentaro

総合スコア8949

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/07/16 09:39

回答頂きましてありがとうございます。 scp ~/Desktop/samplefile.txt ssh_admin@1.2.3.4:. /home/ssh_admin/Desktop/samplefile.txt: No such file or directory エラーがでてしまいました。
gentaro

2019/07/16 09:40

いやだから、~は使えないんじゃないかと。 Windows上のパスですよね?コマンドプロンプト?
退会済みユーザー

退会済みユーザー

2019/07/16 09:43 編集

teratermです。エラーでました。 scp C:\Users\xxx\Desktop\sample.txt ssh_admin@1.2.3.4:. ssh: Could not resolve hostname c: Name or service not known
退会済みユーザー

退会済みユーザー

2019/07/16 09:44 編集

win10のデスクトップのsample.txtをTERATERMでサーバのhomeディレクトリというかサーバ側はどこでもいいのでアップしたいです。
gentaro

2019/07/16 09:47

Linux上からWindowsマシンのファイルをコピーしたいなら、Windows側で共有割り当てるなりして \(ipアドレス)(共有名)(ファイルのパス) でアクセスせんとダメでは
退会済みユーザー

退会済みユーザー

2019/07/16 09:49

WIN10 の sample.txt を LINUX に アップロードしたいです。
gentaro

2019/07/16 09:51

とりあえず「Windowsからteratermでサーバー(Linux)にログインした状態でscpコマンドを使いたい」 ってことで良いんですか?
退会済みユーザー

退会済みユーザー

2019/07/16 09:55 編集

そうです。win10のデスクトップにあるsample.txtをTERATERMを利用してubuntuのhomeディレクトリへサーバーへアップロードしたいです。 ローカルからサーバーへアップロードしたいです。
退会済みユーザー

退会済みユーザー

2019/07/16 10:07

既に試してますがパーミッションエラーがでます。
退会済みユーザー

退会済みユーザー

2019/07/16 10:11

該当のキャプチャを添付しました
gentaro

2019/07/16 10:15

そういうことは最初から書いて欲しい。 書き込み権限が足りないんだろうから付与すればいいと思いますが、なんかもうこれ以上は面倒なので他の方にお任せします。
退会済みユーザー

退会済みユーザー

2019/07/16 10:28

sampleという777権限のフォルダをhome直下に作りました。 scp sample.txt ssh_admin@1.2.3.4:/home/sample/ エラーが出てますので書き込み権限を付与してもダメだと思います。 sample.txt: No such file or directory
退会済みユーザー

退会済みユーザー

2019/07/16 10:31

/home/ssh_admin/Desktop/sample.txt: No such file or directory というエラーなのですが、ローカルとサーバーが混ざっている気がします。 ローカル Desktop/sample.txt サーバー /home/ssh_admin/ どのように指定すればディレクトリを指定できるのでしょうか? scp sample.txt ssh_admin@1.2.3.4:/home/sample/ というかデスクトップならこれではと言われてsample.txtと打っているのですが違うのでしょうか
guest

0

ベストアンサー

sh

1scp ~/Desktop/samplefile.txt ssh_admin@1.2.3.4:.

ですかね。

パスの書き方が分からないのであれば、scpの前にlsとかしないんですかね?

投稿2019/07/16 09:29

otn

総合スコア84555

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/07/16 09:33

以下コマンドでエラーが出てしまいます。 sudo scp ~/Desktop/samplefile.txt ssh_admin@1.2.3.4:. /home/ssh_admin/Desktop/samplefile.txt: No such file or directory
退会済みユーザー

退会済みユーザー

2019/07/16 09:35

サーバ側はhomeにファイル格納出来れば良いのですが、クライアントはlsしても見えないんで意味がないと思いました。
otn

2019/07/16 09:51

そもそも、どこにあるファイルをコピーしたいのでしょうか? 現在のユーザーのDesktop直下にあるのかと思ったので、回答はそう書きました。 そのファイルのフルパスを書けばいいのですが。 だいたい、lsしても見えないものをコピーするのは無理です。存在しない訳なので。
退会済みユーザー

退会済みユーザー

2019/07/16 09:52

win10のデスクトップのsample.txtをTERATERMでサーバのhomeディレクトリというかサーバ側はどこでもいいのでアップしたいです。
退会済みユーザー

退会済みユーザー

2019/07/16 09:52

scp C:\Users\xxx\Desktop\sample.txt ssh_admin@1.2.3.4:. で ssh: Could not resolve hostname c: Name or service not known とエラーが出ました。
退会済みユーザー

退会済みユーザー

2019/07/16 09:54

win10のデスクトップにあるsample.txtをTERATERMを利用してubuntuのhomeディレクトリにアップ希望です。
退会済みユーザー

退会済みユーザー

2019/07/16 09:55

そうです。win10のデスクトップにあるsample.txtをTERATERMを利用してubuntuのhomeディレクトリへサーバーへアップロードしたいです。 ローカルからサーバーへアップロードしたいです。
t_obara

2019/07/16 09:55

sample.txtがあるフォルダに移動すれば、以下のコマンドでは? scp samplefile.txt ssh_admin@1.2.3.4:.
otn

2019/07/16 09:55

WSL側から、Windows側のファイルをさわるということですかね? /mnt/c/Users/ユーザ名/Desktop/sample.txt ですかね? 大文字小文字が合ってないかも知れないので、一階層ずつ、ls して確認してください。
gentaro

2019/07/16 10:01

なんかWSLとかそういう話じゃないっぽい(teraterm使ってるそうで)
退会済みユーザー

退会済みユーザー

2019/07/16 10:03 編集

t_obara scp sample.txt ssh_admin@1.2.3.4:. sample.txt: No such file or directory エラーが出ました。
退会済みユーザー

退会済みユーザー

2019/07/16 10:04

私が質問させて頂いた事 ローカルからサーバーへアップロードしたいです。 win10のデスクトップにあるsample.txtをTERATERMを利用してubuntuのhomeディレクトリへサーバーへアップロードしたいです。 scp sample.txt ssh_admin@1.2.3.4:. sample.txt: No such file or directory エラーが出ました。 宜しくお願いいたします。皆さん本当ありがとうございます(泣)
otn

2019/07/16 10:08

なんと、「ローカルデスクトップ」という表現が間違っていたと言うことですね。 scp ~~ ssh_admin@1.2.3.4:. を見る限り、WSLとしか思えない。 ご回答のように、Teratermのscp機能を使うのでしょうね。
退会済みユーザー

退会済みユーザー

2019/07/16 10:10

失礼しました。windowsというOSのデスクトップという場所がありますので、そこからファイルをサーバーへTERATERMを利用してアップロードしたいです。ファイル名はsample.txtです。scp機能はパーミッションエラーではじかれました。
otn

2019/07/16 10:20

あなたの打っているコマンドは、Windows上でscpを実行する場合のコマンドです。 サーバー側から直接はWindowsのファイルが見えないので、見えない物はコピーできない。 色々方法はありますが、 > scp機能はパーミッションエラーではじかれました。 ということであれば、パーミションがあるディレクトリにコピーしましょう。
退会済みユーザー

退会済みユーザー

2019/07/16 10:24

homeに移動してコマンドを打ちましたが xxxxxx:/home$ scp sample.txt ssh_admin@1.2.3.4:/home エラーがでます。 sample.txt: No such file or directory
退会済みユーザー

退会済みユーザー

2019/07/16 10:31

/home/ssh_admin/Desktop/sample.txt: No such file or directory というエラーなのですが、ローカルとサーバーが混ざっている気がします。 ローカル Desktop/sample.txt サーバー /home/ssh_admin/ どのように指定すればディレクトリを指定できるのでしょうか? scp sample.txt ssh_admin@1.2.3.4:/home/sample/ というかデスクトップならこれではと言われてsample.txtと打っているのですが違うのでしょうか
otn

2019/07/16 10:57

> あなたの打っているコマンドは、Windows上でscpを実行する場合のコマンドです。 と書いたとおりですが、具体的に書くと、 もしWindows側でsshdサーバーが動いていれば、サーバー側で、 scp win-username@win-hostname:/c/Users/win-username/Desktop/sample.txt . のように打ちます。 Windowsにscp.exeがあるのであれば、Windowsのコマンドプロンプトで、 cd /Users/win-username/Desktop scp.exe sample.txt ssh_admin@1.2.3.4:/home/sample/ と打ちます。 Windows側でsshdが動いておらず、scp.exeも無いので有れば、scpコマンドを使うのは無理です。 いずれにせよ、パーミッションが無い場所にはコピーできないので、Teratermのscp機能でパーミションがあるディレクトリにコピーしましょう。
退会済みユーザー

退会済みユーザー

2019/07/16 11:08

>Windows側でsshdが動いておらず、scp.exeも無いので有れば、scpコマンドを使うのは無理です TERATERM側でサーバーのSCPコマンドを動かしてるのですが。。コマンドプロンプトではありません。
退会済みユーザー

退会済みユーザー

2019/07/16 11:10

windowsのコマンドプロンプトを使うなどと説明した事はありません。 例えば以下の人も https://qiita.com/ritukiii/items/c724f09fe66fedf2618b ローカルのファイルをサーバに転送 - (リモートホストへの転送) Desktopにあるhoge.txtを自分のサーバ上のホームディレクトリに転送する例 scp ~/Desktop/hoge.txt riki@[サーバのIPアドレス]:/home/riki/ と書いてあります。
otn

2019/07/16 11:12

文章をもういちど、よく読み直しましょう。 意味のわからない表現があれば聞いて下さい。 とにかく、あなたのやっていることは、一歩目から間違っているので、そのつもりで、読み直して下さい。
otn

2019/07/16 11:14

> 例えば以下の人も それは、ローカル上でコマンドを打つ場合の例です。 Windowsだと、それがコマンドプロンプトとかPowershellです。 あなたは、Linux上でコマンドを打っています。それが大きな間違いです。
退会済みユーザー

退会済みユーザー

2019/07/16 11:17

よく理解できました。丁寧な説明ありがとうございます。
退会済みユーザー

退会済みユーザー

2019/07/16 11:20

以下調べました。 https://ittrip.xyz/soft/linux/tera-term-upload TERATERM上でローカルからサーバーへアップロードする場合は、コマンドでは実行できずに「ファイル」⇒ 「SSH SCP…」を選択 以外は出来ないという事でしょうか?
otn

2019/07/16 12:11

2019/07/16 19:57 のコメントに書いたとおりですが、scpコマンドでやるには、 案1:Windowsにsshパッケージをインストールして、sshdサーバーを動かす 案2:Windowsにscpコマンドをインストールする のどちらかが必要です。どちらかをしたければしても良いですよ。 Teratermだけで行うには、ファイルメニューのSSH SCPを使います。 他の案もいろいろありますが、どの案も、WindowsあるいはLinuxに追加のインストールが必要です。
退会済みユーザー

退会済みユーザー

2019/07/16 12:29

非常に丁寧でわかりやすい説明でした。ありがとうございます。 整理するとローカル(クライアント)からサーバへファイルをアップロードする方法は2つあり 1:ローカル(クライアント)側コマンド  ・Windowsにsshパッケージをインストールして、sshdサーバーを動かす  ・Windowsにscpコマンドをインストールする  ・例) scp ~/Desktop/hoge.txt riki@[サーバのIPアドレス]:/home/riki/ 2:サーバ側(ツールは全てteraterm)  ・Teratermだけで行うには、ファイルメニューのSSH SCPを使う  ・コマンドはteraterm上で打てない!→いまだサーバ側コマンドは回答ないので」 という事でしょうか?追記あればお願いいたします。
otn

2019/07/16 13:09 編集

ちょっとちがいます。 1:クライアント側コマンド(サーバー側のsshdと通信する)  ・Windowsにscpコマンドをインストールする  ・例) scp ~/Desktop/hoge.txt riki@[サーバのIPアドレス]:/home/riki/  ・scpコマンドじゃなくて、WinSCPのようなscpクライアントをインストールしてもいいです  ・scpコマンドじゃなくて、Teratermのscpクライアント機能を使うのでも良いです 2:サーバー側コマンド(クライアント側のsshdと通信する)  ・Windowsにsshパッケージをインストールして、sshdサーバーを動かす  ・サーバー側で、scp winuser@winhost:/ファイルフルパス . を実行 ちょっとじゃなくて、かなりちがうか。 <以下、その他の方法> 3:ftpを使う方法 ・どっちでもいいので、片方にftpサーバー、他方にftpクライアントをインストールする 4:Windowsの共有フォルダー機能を使う方法  ・Windows側でフォルダーを共有設定して、Linux側でマウントなど
退会済みユーザー

退会済みユーザー

2019/07/16 12:52

非常にわかりやすい説明ですね。ありがとうございます。 今回は権限がなかった為home直下にsampleというフォルダを作り777に設定しました。そこでFilezillaクライアントをwin10にインストールしてローカルからサーバーへファイル転送できました。一点質問なのですが今回/homeにファイルをアップロードしようとした所権限がないと怒られました。通常/homeの権限はいくつなのでしょうか?
退会済みユーザー

退会済みユーザー

2019/07/16 12:52

なおSFTPで繋がりました。
otn

2019/07/16 13:10

/homeはrootしか書けません。 755 user=root group=root ですね。
otn

2019/07/16 13:12

scpコマンドを使うというこだわりを捨てれば、選択肢が広くなります。
退会済みユーザー

退会済みユーザー

2019/07/16 13:13

了解です。ありがとうございます。最初ん?と思いましたが読み返してみるとわかりやすく簡単に記載して頂いてるのがわかりました。他の方も含めて素敵なエンジニアの方々だなと感じました。質問して良かったなと思います。otnさんを初めみなさんありがとうございました。
退会済みユーザー

退会済みユーザー

2019/07/16 13:14

/homeはrootしか書けません。 なるほど。という事は皆さんも/homeではなく/home/tmpなどフォルダを作成して777とかにして一時的にファイルをアップロードしてるんですね。最後の最後まで参考になりました。
otn

2019/07/16 13:24

/homeは、/home/taro/、/home/jiro/ のようなユーザーのホームディレクトリの親です。 /homeに書くのは、普通はユーザーを新規に作る際にそのユーザーのホームディレクトリを作るときだけで、それはroot権限で行います。 「このユーザーのファイル」ということが無いので有れば、/tmp/sample.txt に書くというのも多いかと。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問