fc2ブログ
備忘録
TOPフリーエリア
 ※この部分に好きな内容を記入してください
TOPフリーエリアの説明
 このフリーエリアはサイトトップにのみ表示されます。広告掲載やブログ紹介など、ご自由にどうぞ!
 不要な場合は、<!--index_area-->~<!--/index_area--> の部分を削除して下さい
 フリースペースについての詳細は、フリースペースの編集についてをご覧下さい

このエリアでは主な人気記事をまとめたものを置いています

詳細は続きよりご覧ください





雑多ですが、個人的備忘録を作りました。
作りかけではありますが、ipコマンドのところなんかは役に立つと思います。
https://docs.google.com/spreadsheets/d/1rD9pvEHf8DEvT5pjawRQC86WUnoMP5B0iEHRuRgd0Wg/edit?usp=drivesdk
モバイルディスプレイって高いですよね。中華のへんなやつを除くと、まともなのはIO-DATA、Acer、ASUSくらいしか選択肢がなく、どれもちょっとお高い(比較的Acerが安い。)

それよりもAmazon Fire HD 10(10インチタブレット)が定期的に1万円ほどになるので、これがサブディスプレイになるなら一番いいよね?という話。

対象はFireOS 5.6.1.0
(たぶん5.6.4.0以下なら大丈夫?)

Fireの恒久Root
http://digital-life.seesaa.net/article/467310868.html

XDAからmtk-suをダウンロードしてくると、WIndowsDefenderに怒られる。WIndowsDefender止めるしかない。

mtl-su実行時はSELinuxがenforcingになってるせいか、/system/配下にファイルコピーできず。
なんどかやり直すしかないのかも
shell@giza:/data/local/tmp $ ./mtk-su
UID: 0 cap: 3fffffffff selinux: enforcing


一回exitしてやり直したらこうなった。
255|shell@giza:/data/local/tmp $ ./mtk-su
UID: 0 cap: 3fffffffff selinux: permissive

Google PlayからSuperSUをインストールできなくなっているので、
apkを適当なサイトで落としてくる。

インストールの前に、Playプロテクトを外しておく

ggれば解決できるけど、罠が多かったなという所感です。

おまけ:

OTAアップデートを止める
mtk-suで一時rootをとっただけの状態でも大丈夫
https://demikko-no-bibouroku.hatenablog.com/entry/2018/02/09/170145
ファイルの転送はmtk-suだけでOK
転送が終わったら実行して、
pm disable com.amazon.device.software.ota
pm disable com.amazon.settings.systemupdates
今回の目的は、Androidに使っているSDカードを新しいものにしたのでタイムスタンプを保持したままサルベージすること。
一番簡単な解決方法は、ダイソーでカードリーダライタを二つ買ってきてcpコマンドかscpコマンドでコピーすることなのだが、
あいにく持ち合わせが一つだけだったのでいろいろ考えた。

考察した工夫を列挙しておく。

■cp
Linuxコマンドなので、Windowsには使えない。
あと、マウントする必要がある。LinuxホストでAndroidのストレージをマウントするか、その逆か。

マウントするの面倒だが、サーバを立てるのはさらに面倒。
・FTP
・SSH(scpやsftpが使える)
  ・Windows10だとわりと容易に立てられる
  ・Androidにも建てられるが、SDカードの領域に入れなかったので注意。
  ・AndroidのコマンドラインからSSH叩くためにはroot化必要かも?Xperiaならsshやscpは最初からはいっている。
・WebDAV
・NFS
・SMB
  ・Androidで立てるとなるとかなり面倒。デフォルトの445が強制的に閉じられているから。
  挑戦する場合は下記に留意すること。
    ・解除にはrootが必要。
    ・Windowsのエクスプローラからは445にしかアクセスできない。

ちなみにAndroidでCLIベースの操作となると、少々めんどくさいが
・キーボードを接続する
・SSHサーバをAndroidで立ててリモート操作する
・adb shellで操作する
くらいだろうか。面倒だが、どれかはやらざるを得ない。


■scp
これは、SSHサーバとのファイル転送に用いるものコマンドだが、結構柔軟に扱える。
通常はローカルからリモートへの転送か、リモートからローカルへの転送として用いられる。
が、別にローカルからローカルでも使えるし、リモートかあdbらリモートへの転送でも問題ない。
どれも書き方は一緒で、
scp -p コピー元 コピー先
マウントする必要もないので楽ちんだが、前述したようにAndroid側にSSHサーバを立てる方法は面倒なので避けたい。
ただし、2019年からscpは推奨からはずされたため、デフォルト状態でscpが使えないかもしれません。
代わりに推奨されているのは、rxyncとsftpです。
sftpはタイムスタンプ保持のオプションがなく論外(WinSCPとかFileZIilaなら大丈夫かも)
rsyncにはタイムスタンプ保持のオプション -t がありますが、XperiaにもWindowsにもプリインストールされていないので使えません、汎用Linuxには入っているでしょうから、WSLの活躍の出番はここかもしれません。
この辺は追って調査したいと思います。

■SDカードリーダライタ
Android本体ではなく、SDカードでいいのであれば話は簡単だ。
ダイソーでSDカードリーダライタを買ってくればいい。
SDカード同士でもタイムスタンプ保持したままコピーできる。(もちろんリーダライタは二つに)
Windows10ならscpコマンドをつかえばいいし、Linuxならcpコマンドをつかえばよい。

■USB接続
メディアファイル転送用昨日を用いて、USB経由でファイルを転送できる。
ただ、これではWindowsのエクスプローラ上でしか操作できるなくなる。
タイムスタンプを保持させるのは難しいだろう。

■WinSCP
Windows用のファイル転送クライアント。FTP、SCP、SFTP、WebDAVに対応する。
SPC接続やSSH接続でローカル・リモート間のコピーであれば「たぶん」保持される「気がする」
AndroidにSSHサーバをたてて挑戦してみたいと思っているが、SDカードにアクセスできなかったので今回は断念。
AndroidにFTPを立てた場合は、リモートからローカルへはタイムスタンプが保持されたものの、
ローカルからリモートへは保持されなかったので注意してほしい。もしかしたらほかのプロトコルでもそうなのかも。
WinSCPでFTPを扱う場合、ファイル数が多すぎるとWinSCP側が全容を把握しきれず勝手にタイムアウトしてしまう(デフォルト15秒)
環境に合わせてにはなるが、長めに調整しておいたほうが良いと思う。私は100秒に設定した。

■adb pull/adb push
adbコマンドをつかったファイル転送方法。
どうやら、これらはタイムスタンプが保持される。
転送速度が若干遅い。
いつの間にか転送がとまっていることがあるので注意。
→これはWindows10のターミナル(PowerShellもコマンドプロンプトも)がアホなのが原因で、
 動作中に何かの拍子に誤ってターミナルをクリックをしてしまうと、
 次にEnterを押すまで動きが止まった状態となる。ナンデヤネン。
 であるからして、動かしたら即最小化しよう。
 設定変更で対応できるが、そうすると今度はマウスでなぞって選択する機能ごと無効にしてしまう。
 これはこれで不便なので避けたい。

大量に転送する場合は、誤操作しなくても止まるときがある。
自分の環境だと、15GBくらい転送したところで止まった。
単純にadbが死んでいるのだと思う。
100GBほど転送したかったので、この方法は断念した。

ディレクトリのコピーができないのも難点だが、一応回避策はある。
あらかじめ、コピー先に同名のディレクトリを作っておいて、コピー元側のパスにピリオドを付け加えるとよい。
例えばCCCというディレクトリをコピーしたい場合は、
adb shell mkdir /storage/XXX/CCC
adb push D:\AAA/BBB/CCC/. /storage/XXX/CCC/
とすれば、再帰的にコピーしてくれる。CCC配下にあるディレクトリも問題なくコピーされる。
ちなみに、何のファイルもない空のディレクトリはコピーされないが、使ってないから空なのだし大した問題ではないと思う。

■スマホにSDを二枚刺し
挑戦はしてないが、できると思う。
追加のスロットは、ダイソーでカードリーダライタとTypeAーTypeC変換コネクタを買ってくれば200円(税抜き)で作れる。
(ドライバの関係もあるので、どのリーダライタを買うかは下調べしたほうが良いと思うが)
これがクリアできればあとはcpコマンドでいけそう。

■結論
いろんな障害があるが、環境に合った組み合わせでがんばりましょう。
今回は、コピー元をAndroidスマホ刺してFTPサーバを立ち上げ、コピー先をPCのリーダライタに刺してWinSCPでコピーしました、
感想としては、リーダライタをもう一つ買ってさえいればこんなに苦労しなかったんだなというところでしょうか

最後に今回試したツール類を紹介しておきます。
Windows10 OpenSSHサーバ
Windwos10 OpenSSHクライアント
Android-Tools(adbを叩くためのもの)
WinSCP
Android用FTPサーバ:ファイルマネージャ (もともとファイルマネージャアプリですが、FTPサーバ機能も付いています。)
Android用SSHサーバ:U;timate Server Pro(Proとつくだけあって、ほとんどのサーバと機能がそろってますが、初心者には使いづらいと思います。使いこなせれば便利さは抜群)