• ベストアンサー

SSHを使ったファイル取得方法について教えて下さい

初心的な質問ですみません。。 この度初めてSSHを使ってサイトを管理することとなりました。 そこでご質問がございます。 今まではFFFTPのような見た目で分かりやすいソフトを使っていたので現在使用しております、puttyというものなのですが最初は困惑したのですが何とか頑張って使用しています。 そこで、こちらのputtyを使ってといいますか、SSHを使って??サーバー上にある全てのデータをローカルにバックアップしたいのですが、そのようなことは可能でしょうか? というのが、rootから権限の異なるものも全てを一括でダウンロードを行いたいと考えていたので、もし出来るのであれば、ご存知の方いらっしゃいましたらアドバイスいただけると幸いです。 どうぞよろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

>まずsshについてですが、これ自体ではファイルのダウンロードなどは行えないのですか?というか行うものでは無いのでしょうか?? sshは、暗号化を行うプロトコルの名称であり、そのプロトコルでリモートホストに接続するターミナルツールの名称でもあります。ファイルのダウンロードとか何とかとは、基本的には全く関係有りません。が、sshプロトコル上で動作するファイルコピーツール(scpをベースにしたpscpとかWinSCPとか)やftpもどき(sftpとか)のツールが有ります。つまり、ファイルのダウンロードとかはsshプロトコル上で動作するツールは存在するだけでsshとイコールな訳では無いということです。 >例えば今回ご紹介していただいたWinSCPを使った場合はどのようにしてrootとれば宜しいのでしょうか? 使ってないので知りません。出来ないんじゃないかな。rootでないと読めないファイルをダウンロードしたいならNo2の人のアドバイスがまぁ、おすすめですね。後は、自分のPCにsshサーバを仕込むって手もあるけど、非常にややこしいですから(出来てしまえば簡単だけど) tarの使い方(http://iris.homeunix.net/yayoi/freebsd/archiver/tar.asp)が分からないのなら、PuTTYでログインして、自分のホームディレクトリにそのhttpdocsとやらをコピーしてから、WinSCPでも何でもいいから使ってダウンロードすればいいのでわ。 手順は 1. su - でrootになる 2. cp -ar httpdocsへのpath . とかする(最後の . が必要) 3. chown -R 自分のID * とかしてownerを変更 4. WinSCPでアクセス 5. 自分のhome directoryにある httpdocsをコピー 6. rm -rf httpdocs で削除 って感じかな。cpとかchownとかは"cp 使い方"とかでググればいっぱい出てきます。2の時にcpで無くてtarを使えばNo2の人のアドバイス通りになる。 でわでわ

404not_found
質問者

お礼

honeorizonさん有難うございました! 色々と調べながらなのでお礼が遅くなり申し訳ございませんでした。 調べてくるうちに、tarというのはコマンドだということに気が付きました・・・。遅いのですが・・・。 そこで、tarで任意の場所に全てをコピーしましてそれらの圧縮されたファイルをWinSCPにてダウンロードを行い完了いたしました。 こんな感じでした!^^v tar cvf /任意のパス/backup.gzip /バックアップファイルへのパス/httpdocs 今回の件で非常に理解が深まったように思います。本当に有難うございました。^^

その他の回答 (2)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

シェルログインしているならtarでデータをアーカイブして、 httpベースでダウンロードするのが手っ取り早いですね。 サイト管理というからにはWEBは動いているでしょうから。 ダウンロードが終わったらシェル上でデータは消しておいてください。

404not_found
質問者

お礼

アドバイスありがとうございます!! 本当に初歩的な質問ですみません・・・。 >>シェルログインしているならtarでデータをアーカイブして、 tarとは何かのツールなのですか? またデータをアーカイブするとはどういった作業なのでしょうか?? 少し調べて見たのですが、まとめるような感じなのでしょうか? >>ダウンロードが終わったらシェル上でデータは消しておいてください。 データの削除などはシェルから出来るようになりました。 ただ、何のデータを消せばよいのでしょうか? 度々すみませんが、よろしくお願いいたします。

回答No.1

データをコピーするだけなら、PSCP,PSFTPやWinSCPというキーワードで調べると必要な情報が出てくると思います。また、バックアップとして同期を取りたいなら、ssh経由でrsyncするWindowsクライアントもあるようだから、それを使うと便利かも。 http://www.itefix.no/phpws/index.php?module=pagemaster&PAGE_user_op=view_page&PAGE_id=6&MMN_position=23:23 rsyncって何?って場合は、自分で調べてください。

404not_found
質問者

お礼

ありがとう御座います。 少々私自身が勘違いをしているような気がいたします・・。 まずsshについてですが、これ自体ではファイルのダウンロードなどは行えないのですか?というか行うものでは無いのでしょうか?? 先ほど、WinSCPというものをダウンロードして設定をしました。 ただ、現状では私のサーバーは直接rootからのログインが禁止されており、他のアカウントで入るのですが、結局こちらのWinSCP上からは、suなどが行えないようでrootでのアクセスが出来ない状況となっております・・・。 ダウンロードはrootからでないとダウンロードできないファイルが多々御座います。 何度も申し訳ありませんが、例えば今回ご紹介していただいたWinSCPを使った場合はどのようにしてrootとれば宜しいのでしょうか? また、それが出来ない場合には同期とまでは行かなくとも結構なのですが、現状サーバー上のhttpdocs内にあるデータ全てをダウンロードできれば助かります・・・。 どうぞ引き続きよろしくお願いいたします。

関連するQ&A