モバイルデバイスの大きな失敗の1つは、デバイスからコンピューターにデータを転送することがいかに難しいかということです。モバイルデバイスには、これについて長い歴史があります。 PilotやHandspringPDAデバイスなどの初期の携帯電話には、特別な同期ソフトウェアが必要でした(デバイスのバッテリーがなくなり、すべてのデータが永久に失われることを恐れて、これを忠実に行う必要がありました)。古いiPodには、プラットフォーム固有のインターフェイスが必要でした。最近のモバイルデバイスは、デフォルトでデータをオンラインアカウントに送信するため、コンピューターに再度ダウンロードできます。
その他のLinuxリソース
- Linuxコマンドのチートシート
- 高度なLinuxコマンドのチートシート
- 無料のオンラインコース:RHELの技術概要
- Linuxネットワーキングのチートシート
- SELinuxチートシート
- Linuxの一般的なコマンドのチートシート
- Linuxコンテナとは何ですか?
- 最新のLinux記事
朗報です。Linuxを実行している場合は、おそらくgphoto2
を使用してモバイルデバイスとやり取りできます。 指図。もともとは、デジタルカメラが単なるカメラであったときにデジタルカメラと通信する方法として開発されたgphoto2
現在、さまざまな種類のモバイルデバイスと通信できます。名前にだまされてはいけません。写真だけでなく、あらゆる種類のファイルを処理できます。さらに良いことに、スクリプト可能で柔軟性があり、ほとんどのGUIインターフェイスよりもはるかに強力です。
コンピュータとモバイルの間でデータを同期する快適な方法を見つけるのに苦労したことがある場合は、gphoto2
をご覧ください。 。
gPhoto2をインストールする
Linuxシステムにはすでにlibgphoto2がインストールされている可能性があります。これは、モバイルデバイスとのインターフェイス用の主要なライブラリであるためです。コマンドgphoto2
をインストールする必要がある場合があります ただし、これはおそらくリポジトリから入手できます。
FedoraまたはRHELの場合:
$ sudo dnf install gphoto2
DebianまたはUbuntuの場合:
$ sudo apt install gphoto2
互換性を確認する
モバイルデバイスがサポートされていることを確認するには、--list-cameras
を使用します less
を介してパイプ :
$ gPhoto2 --list-cameras | less
または、grep
を介してパイプすることもできます 用語を検索します。たとえば、Samsung Galaxyを使用している場合は、grep
を使用します -i
で大文字と小文字の区別をオフにします スイッチ:
$ gphoto2 --list-cameras | grep -i galaxy
"Samsung Galaxy models (MTP)"
"Samsung Galaxy models (MTP+ADB)"
"Samsung Galaxy models Kies mode"
これにより、SamsungGalaxyデバイスがMTPおよびADBを使用したMTPでサポートされていることが確認されます。
リストされているデバイスが見つからない場合でも、gphoto2
を使用して試すことができます お使いのデバイスが実際には別のブランドを装ったリストに載っている可能性があります。
モバイルデバイスを探す
gPhoto2を使用するには、まずモバイルデバイスをコンピュータに接続し、MTPモードに設定する必要があります。また、おそらくコンピュータにモバイルデバイスとの対話を許可する必要があります。これには通常、デバイスとの物理的な相互作用が必要です。具体的には、UIのボタンを押して、接続したばかりのコンピューターからファイルシステムにアクセスできるようにする必要があります。
コンピュータに携帯電話へのアクセスを許可しない場合、gPhoto2はデバイスを検出しますが、デバイスと対話することはできません。
接続したデバイスをコンピュータが確実に検出するには、--auto-detect
を使用します オプション:
$ gphoto2 --auto-detect
Model Port
---------------------------------------
Samsung Galaxy models (MTP) usb:002,010
デバイスが検出されない場合は、最初にケーブルを確認してから、--list-cameras
。
デバイスに機能を問い合わせる
最新のデバイスでは、通常、多数の潜在的な機能がありますが、すべての機能がサポートされているわけではありません。 --abilities
で確実に見つけることができます オプション、私はかなり直感的だと思います。
$ gphoto2 --abilities
Abilities for camera : Samsung Galaxy models (MTP)
Serial port support : no
USB support : yes
Capture choices : Capture not supported by driver
Configuration support : no
Delete selected files on camera : yes
Delete all files on camera : no
File preview (thumbnail) support: no
File upload support : yes
接続されているデバイスが1つしかない限り、クエリするデバイスを指定する必要はありません。ただし、gPhoto2が対話できる複数のデバイスを接続している場合は、ポート、カメラモデル、またはusbidでデバイスを指定できます。
デバイスとの対話
デバイスがキャプチャをサポートしている場合は、コンピューターからカメラを介してメディアを取得できます。たとえば、画像をキャプチャするには:
$ gphoto2 --capture-image
画像をキャプチャして、使用しているコンピュータにすぐに転送するには:
$ gphoto2 --capture-image-and-download
ビデオやサウンドをキャプチャすることもできます。複数のカメラを接続している場合は、使用するデバイスをポート、カメラモデル、またはusbidで指定できます。
$ gphoto2 --camera "Samsung Galaxy models (MTP)" \
--capture-image-and-download
ファイルとフォルダ
デバイス上のファイルをインテリジェントに操作するには、gPhoto2に公開されているファイルシステムの構造を理解する必要があります。
--get-folders
を使用して利用可能なフォルダを表示できます オプション:
$ gphoto2 --list-folders
There are 2 folders in folder '/'.
- store_00010001
- store_00020002
There are 0 folders in folder '/store_00010001'.
There are 0 folders in folder '/store_00020002'.
これらの各フォルダーは、デバイスの保存先を表します。この例では、store_00010001
は内部ストレージであり、store_00020002
SDカードです。デバイスの構造が異なる場合があります。
ファイルの取得
デバイスのフォルダレイアウトがわかったので、デバイスから写真を取り込むことができます。デバイスから何を取得するかに応じて、使用できるさまざまなオプションがあります。
フルパスがわかっていれば、特定のファイルを取得できます:
$ gphoto2 --get-file IMG_0001.jpg --folder /store_00010001/myphotos
すべてのファイルを一度に取得できます:
$ gphoto2 --get-all-files --folder /store_00010001/myfiles
オーディオファイルだけを取得できます:
gphoto2 --get-all-audio-data --folder /store_00010001/mysounds
他のオプションもありますが、それらのほとんどは、デバイスと使用しているプロトコルがサポートしているものによって異なります。
ファイルのアップロード
潜在的なターゲットフォルダがわかったので、コンピュータからデバイスにファイルをアップロードできます。たとえば、example.epub
というファイルがあるとします。 現在のディレクトリで、--upload-file
を使用してファイルをデバイスに送信できます。 --folder
と組み合わせたオプション アップロードする保存場所を指定するオプション:
$ gphoto2 --upload file example.epub \
--folder store_00010001
複数のファイルを統合された場所にアップロードする場合は、デバイス上にディレクトリを作成できます。
$ gphoto2 --mkdir books \
--folder store_00010001
$ gphoto2 --upload-file *.epub \
--folder store_00010001/books
ファイルの一覧表示
デバイスにアップロードされたファイルを表示するには、--list-files
を使用します オプション:
$ gphoto2 --list-files --folder /store_00010001
There is 1 file in folder '/store_00010001'
#1 example.epub 17713 KB application/x-unknown
$ gphoto2 --list-files --folder /store_00010001/books
There is 1 file in folder '/store_00010001'
#1 example0.epub 17713 KB application/x-unknown
#2 example1.epub 12264 KB application/x-unknown
[...]
オプションの調査
gPhoto2のパワーの多くはデバイスに依存するため、他の人とは異なるエクスペリエンスが得られます。 gphoto2 --help
にリストされている多くの操作があります あなたが探検するために。 gPhoto2を使用して、デバイスからコンピュータへのファイル転送に苦労することはもうありません!