USB Flash Memory

PortableApps icon PortableApps.com

~好きなアプリを持ち歩く~


【この記事は、2016年9月時点です。Flashメモリの値段は急激に安くなってるので、現在の値段の相場等は調べて下さい。】

はじめに

  • 共用PCで作業を行う場合、いつも使ってるアプリが入ってなかったり、自分なりにカスタマイズして使いたかったり、自宅で使ってる Google Chrome のブックマークが使いたい場合などがあると思います。解決策は、 USBフラッシュメモリでアプリを持ち歩くこと。最近はフラッシュメモリの価格が安くなってますし、持ち歩き用にカスタマイズしたアプリを配布してるサイトもあり便利です。
  • 現在の相場:価格.com - USBメモリー | 通販・価格比較・製品情報
  • 今は、 ポータブルSSD という選択肢もあります。2017年3月で、120GB が 消費税込で6千円程度です。
  • 速度より容量重視なら、 USB 2.5inch HDD (価格.com - タイプ:ポータブルHDDの外付け ハードディスク 価格の安い順) を選んでも良いと思います。ただ、安すぎるものはトラブルが多いようなので、信頼性を調べてから購入すること。500GB で 5千円あたりがボリュームゾーンです。
flash memory

フラッシュメモリの注意点

  • 【基本】 フラッシュメモリは書き込み回数に制限があります。 数千回程度の書き込みが限界です。なので、寿命に達することを前提に使用しましょう。バックアップは必須です。また、読み出し速度は高速ですが、データの書き込みには読み出しの10倍程度の時間がかかります。物理的な衝撃や水には比較的強いですが、静電気やマイクロウェーブ(電子レンジ)には弱いです。

  • 【購入時】 USB フラッシュメモリの値段は、Class10、USB3 対応の 32GB で千円くらいです。(2016年4月時点) USB3 は最近のPCには対応した接続口が数個ついてます。対応したPCが無ければ、安い USB2 で十分です。安いものもありますが、速度の遅い Class 4 や USB 2 の場合があります。アプリを起動する場合は高速なメモリの方が適してます。データの持ち歩きなら、遅くてもそれほど不快ではありませんが。

  • 【紛失に備える】 フラッシュメモリはサイズが小さいし、PCに刺したまま忘れてしまうこともあります。なので、 暗号化されてない個人情報などは、持ち歩かないこと。常に バックアップを取ることを心掛けてください。見た目は悪いですが、名前を書いておくのも効果的だと思います。

  • 【フォーマット】 購入したフラッシュメモリは、汎用なFAT32 でフォーマットされてる場合が多いです。これは、Windows・Linux・Mac でも読み書きできます。Windows だけで使用する場合は、Vista 以降で使える、より高速な exFAT でフォーマットし直すという選択肢もあります。エクスプローラのフラッシュ上で右クリック→フォーマットです。内容は全消去されるので、買ったばかりの時点でフォーマットします。
  • exFAT は、FAT32 と互換性はありません。FAT32 は クラスタサイズ16KBだと、32GBまで対応。それ以上は、クラスタサイズを大きくする必要があります。ファイルサイズも 4GB まで。exFAT では、256TB まで対応、ファイルサイズも制限なし。ただし、クラスタサイズが デフォルでは 128KB に拡大されてるの、小さなファイルが大量にある場合は容量を使いすぎる。 クラスタサイズを 16KB でフォーマットしなおせば解決する。(追加: 2018/6/17)
  • Format as exFAT

  • 【転送速度】 規格上は、USB2 で 480Mbps = 60MB/s、 USB3 で 5Gbps = 625MB/s(USB3.1ではこの倍)。flashメモリの「class 10」の表記は、書き込み速度が最低 10MB/s という意味です。USB3なら、読み出し速度は 100MB/s 程度と HDDに近い速度が出ます。
  • 実際の転送速度を計測するには、CrystalDiskMark を使って計測することができます。これは、 PortableApps.com のアプリにもあります。
  • crystaldiskmark

  • 【取り外し】 Windows では、 以下の操作のいずれかを行ってから取り外します。これは、遅延書き込みがまだ終了してない場合や、Windowsが何らかの操作をしてる場合があるためです。
    • エクスプローラのドライブを右クリック。「取り出し」を選択。
    • タスクバーの右側インジケーター部分の「隠れてるインジケータを表示」からUSBマークの「メディアを取り出す」をクリックして、該当するドライブの「Flash Drive の取り出し」を選ぶ。
    • PortableApps.com のメニュー下のバツの左側の取り出しアイコン をクリックする。


PortableApps icon PortableApps.com

  • PortableApps.com というサイトで、フリーウェアを300本以上、フラッシュメモリで持ち歩けるようにアレンジして配布しています。また、これらのソフトはメニューから起動でき、更にメニューから新規ソフトウェアをフラッシュメモリにインストールすることが出来ます。更に、メニューソフトも含めて、アップデートがある場合は自動でアップデートをしてくれる機能があります。このように、 アプリの管理機能が優秀です。

  • 【起動】 フラッシュメモリをエクスプローラで開き、 Start.exe をダブルクリックするとメニューが起動します。以前は、Autorun.inf というファイルで、起動プログラムを指定できたのですが、ウイルスの温床となったので現在は機能しません。
  • menu menu2

  • 【フォント】 メニュー起動時に、プログラム用フォントなどを一時的にインストールすることが出来ます。F:\PortableApps\PortableApps.com\Data\Fonts にフォントファイルを配置するだけです。各エディタで、このインストールされたフォントを指定すればOKです。
  • プログラマ向けフォント

    プログラマが誤認しやすい文字を区別しやすくしたり、扱いにくい全角空白を見えるようにしてくれたりしてるフォントです。 プログラマの視認性が高まります



フラッシュで動作するアプリの条件

  • 通常のアプリは、インストールする必要があります。インストールによりアプリの起動に必要なファイルを、通常は C:/Program Files にコピーします。それ以外に、レジストリに必要な設定を追加したり、作業用のファイルを C:\Users\ユーザ名\AppData に置いたり、アプリに必要な環境設定を行ったりという作業を行います。フラッシュで動作するアプリは、ウィンドウズに改変を行わず、 フラッシュメモリ上のファイルで完結するように作らています。これが不可能な場合は、PortableApps は、そのアプリを搭載しません。
  • 従って、カスタマイズすればその情報はフラッシュに記憶され、別のPCに移っても同じアプリとして起動してくれる訳です。また、例えばクリップボード履歴や定型文を記憶してくれる Clipboard History というソフトは履歴・定型文データをフラッシュに持つため、ウィンドウズのハードディスク等に個人情報が流出する危険もありません。もっとも、席を離れる時にはアプリを終了しておく必要がありますが。

PortableApps.com アプリの概要

  • 7-Zip : 圧縮解凍を行うアーカイバアプリ。
  • GIMP (GNU Image Manipulation Program) : オープンソースの高機能グラフィックエディタ・アプリ。
  • Google Chrome Portable : プラウザを持ち歩けるメリットは、パスワードを記録しても安心、セキュリティの心配がない、ブックマークを持ち歩ける、カスマイズが保存されるなど。
  • Inkscape : ベクター形式の画像エディタアプリ。保存形式が SVG なので、ウェブ画像として便利。
  • IrfanView : 画像表示ソフト。多くの画像形式に対応していて、簡単な編集もできる。
  • KeePass : URLやパスワードなどを記録するアプリ。起動にパスワードが必要で、データファイルは暗号化されているので、フラッシュメモリを紛失しても安心。
  • Maxima : 数式処理ソフト。定番の mathematica は20万円以上するが、こちらはフリー。
  • Notepad++ : 最初から各種のコンピュータ言語の色分け表示に対応したエディタ。
  • PuTTY : SSH対応の Telnet client。Linuxサーバにログインして、コンソール操作を行うアプリ。
  • Skype : チャット、電話、テレビ電話、テレビ会議が出来るソフト。海外との連絡には定番。
  • Vlc : フリーの動画再生ソフト。
  • WinSCP : MS-Windows上で動く オープンソースでグラフィカルなFTP、FTPS、SFTPクライアントプログラム。Linuxサーバにファイルをアップロードする時に使う。
  • XAMPP : xampp を持ち歩くメリットは、自分のファイルを置いたサーバをすぐに立ち上げられること。
  • Mozilla Firefox : ウェブブラウザ
  • Mozilla Thunderbird : メール・クライアント・アプリ。
  • LibreOffice : 統合オフィス環境。MSオフィスとの互換性は低め。
  • Audacity : 音声の録音、音声ファイルの編集。
  • ゲーム・アプリ : 試してないけど数は多い。

エディタ

brackets は実行すればインストールできる。vscode と atom は、PortableApp.com Installer をインストール後、展開した中のフォルダを PortableAppsフォルダにコピー後に、PortableApp.com Installer を起動し、コピーしたフォルダーを指定すればインストールできる。

  • Sublime Text は、ポータブル版をダウンロードして、SublimeText3 というフォルダに展開。フラッシュの PortableApps/SublimeText3/SublimeText3 にコピー。PrtableApps/SublimeText3/App/appinfo に appicon.ico と appinfo.ini を以下の内容で置けばOK。
  • [Format]
    Type=PortableApps.comFormat
    Version=0.9.8
    [Details]
    Name=Sublime Text 3
    Description=Text Editor (Shareware)
    [Control]
    Icons=1
    Start=.\SublimeText3\sublime_text.exe
    [Codyssey]
    CommandLine=
    Group=
    
  • gVim と NotePad++ は、ランチャーからインストールできる。


Portableapps.com 以外のポータブルアプリ

  • PortableApps のアプリ条件は厳格なため、作業用にハードディスクを使う程度なら許容するとか、無理にでも動かしたい場合には、以下のうような手順で試してみる価値はある。ただし、ハードディスクに痕跡を残してしまい情報漏洩の危険性があるなどのことは自覚すること。
  • 例えば、applicaton というフォルダにポータブルアプリが入っていて、applicalion/app.exe が実行ファイルの場合、以下のようなフォルダを PortableApps フォルダに作成して、application をコピーする。
  • PortableApps+application+apprication
                            +App+Appinfo+appinfo.ini
                                        +appicon.ico
    
  • appinfo.ini (\PortableApps\application\App\Appinfo\appinfo.ini)
  • [Format]
    Type=PortableApps.comFormat
    Version=0.9.8
    [Details]
    Name=[Application名]
    Description=[Application の説明]
    [Control]
    Icons=1
    Start=[.\application\app.exe (実行ファイルの位置)]
    [Codyssey]
    CommandLine=
    Group=
    
  • appicon.ico は、Greenfish Icon Editor Pro が便利。exeファイルを開いて、上のツールバーの「抽出と編集」を選んで。メニューのアイコン→イメージからWindows用のアイコンを作成。名前を付けて保存で、ファイルの種類で ico を選び、App\Appinfo\appicon.ico で保存する。


【導入例】Clipboard History

  • Clipboard History は、クリップボード履歴管理、定型文入力アプリ。個人的には、ペースターというシェアウエアを使っていたんだが、サポートが終了して、似た感じの使い勝手だったので採用。同様の人が多かったみたい。動作はフォルダ内で完結してるようなので、導入して、今のところ問題ない。
  • 実行ファイルを起動するだけなので、設定は簡単。
  • ディレクトリ構成:
  • \PortableApps\ClipboardHistroy
      + App
      |  + AppInfo
      |    + appicon.ico
      |    + appinfo.ini
      + ClipboardHistroy.exe など、関連ファイルを置く
    
  • appinfo.ini
  • [Format]
    Type=PortableApps.comFormat
    Version=0.9.8
    [Details]
    Name=Clipboard History
    Description=Clipboard History
    [Control]
    Icons=1
    Start=.\ClipboardHistory_x64.exe ←32bit環境なら ClipboardHistory.exe
    [Codyssey]
    CommandLine=
    Group=
    

【導入例】Emacs

  • Emacs は、GNU製の昔からあるプログラマ向けテキストエディタ。起動には環境変数を設定したり、見やすいフォントを導入したりが必要なんだけど、Emacs はレジストリやローカルディスクを使用しないため、PortableApps.com で対応できる。
  • アプリに合わせてフォントを導入する機能はランチャーが持ってるため、 Data/Fonts に Ricty Diminished の ttf ファイルを置くだけでOK。init.el で以下を指定。
  • (set-face-attribute 'default nil :family "Ricty Diminished" :height 130)
    
  • 環境変数は 起動をバッチファイルで行うことにして解決。Flashメモリが どのドライブに設定されるかは環境依存なんだけど、バッチファイルでは %0 に、そのバッチファイル自体のフルパスが入るので、%~d0 でドライブ名を取得できる。 参考:%~dp0 とは - [コマンドプロンプト・バッチ/Windows] ぺんたん info
  • appicon.ico は、Greenfish Icon Editor Pro 3.5 で、実行ファイルから抽出。
  • /home/omorita を作って、環境変数 HOME でホームディレクトリに設定。ここに、設定関係の .emacs.d を置く。
  • ディレクトリ構成:
  • \PortableApps\Emacs
      + App
      |  + AppInfo
      |    + appicon.ico
      |    + appinfo.ini
      + Data
      |  + Fonts
      |    + RictyDiminished-Regular.ttf
      + emacs-24.5 (プログラム本体)
      emacs.bat
    
  • appinfo.ini
  • [Format]
    Type=PortableApps.comFormat
    Version=0.9.8
    [Details]
    Name=Emacs 24.5
    Description=GNU Emacs ver24.5
    [Control]
    Icons=1
    Start=.\emacs.bat
    [Codyssey]
    CommandLine=
    Group=
    
  • emacs.bat
  • set PATH=%PATH%;%~dp0\emacs-24.5\bin\
    set HOME=%~d0\home\omorita
    .\emacs-24.5\bin\runemacs.exe
    




追記 (2017.5.14)

USBフラッシュ アイコン

コンソールの立ち上げ

  • Windows10 で、作業フォルダを作って、コンソール立ち上げて、iPython 起動とか、地味に面倒。エクスプローラで、作業フォルダ作って、アドレスバーに cmd[Enter] でコンソール起動。jupyter qtconsole[Enter] みたいな段取り。
  • PortableApps のメニューが便利なので、USBメモリを作業フォルダにして、以下の start.bat を起動させると便利。
  • @echo off
    set HOME=%~d0\home\omorita
    doskey note=jupyter notebook
    doskey qt=jupyter qtconsole
    doskey pwd=cd
    C:\Windows\System32\cmd.exe /K cd \home\omorita
    
  • ただし、Anaconda インストール済み PC で、USBメモリの /home/omorita をHOMEディレクトリとして、作業フォルダで使う場合。コンソールが開いたら qt[Enter] で qtconsole 起動。
  • 以前は、Anaconda を USBメモリに入れて、上記バッチファイルに PATH設定をして持ち歩いてたんだが、8GBもあるし、学校のPCに Anaconda を導入してもらったので、今は起動だけの軽量アプリ。

Anaconda を持ち歩く - 追記 (2018.6.14)

  • 容量を数GB 食うけど、最近のUSBメモリが安いので、Anaconda も持ち歩く。ただし、Anaconda は小さなファイルが大量にあるので アロケーションユニットサイズを 16KB でフォーマットすること。
  • Windows上の Anaconda3 フォルダを、まるごと (USBdrive):\PortableApps\Anaconda\Anaconda3 にコピーする。巨大なので、zip に圧縮してからコピーして展開、あるいは FastCopy などを使うことをお薦めします。
  • Anaconda Prompt、Qtconsole と Anaconda Navigator を起動できるようにします。cmd.exe を使うので、2段階のバッチファイル起動になっている。start /min は、バッチファイルを最小化して起動する。
  • (USBdrive):\PortableApps\Anaconda + Anaconda3
                                      + App - Appinfo + appinfo.ini
                                                      + appinfo.ico
                                                      + appinfo1.ico
                                                      + appinfo2.ico
                                                      + appinfo3.ico
                                      + AnacondaPrompt.bat
                                      + prompt.bat
                                      + qtconsole.bat
                                      + jupyter_qtconsole.bat
                                      + start_nabigator.bat
                                      + navigator.bat
                
  • appinfo.ini
  • [Format]
    Type=PortableApps.comFormat
    Version=0.9.8
    [Details]
    Name=Anaconda Prompt
    Description=Anaconda
    [Control]
    Icons=3
    Start=.\prompt.bat
    Start1=.\prompt.bat
    Name1=Anaconda Prompt
    Start2=.\qtconsole.bat
    Name2=Jupyter Qtconsole
    Start3=.\start_navigator.bat
    Name3=Anaconda Navigator
                
  • prompt.bat
  • cmd /k %~dp0AnacondaPrompt.bat
                
  • AnacondaPrompt.bat
  • @echo off
    set PATH=%~dp0Anaconda3;%~dp0Anaconda3\Scripts;%~dp0Anaconda3\Library\bin;%~dp0Anaconda3;%~dp0Anaconda3\Library\mingw-w64\bin;%~dp0Anaconda3\Library\usr\bin;%~dp0Anaconda3\Library\bin;%~dp0Anaconda3\Scripts;%~dp0Anaconda3\bin;%PATH%
    set HOME=%~d0\home\omorita
                
  • qtconsole.bat - 最小化した cmd.exe から、バッチファイル(jupyter_qtconsole.bat)を起動。バッチファイルから、qtconsole を起動して、qtconsole が終了したら、exit で、最小化された cmd.exe も終了するようにする。
  • @echo off
    start /min %~dp0jupyter_qtconsole.bat
                
  • jupyter_qtconsole.bat
  • @echo off
    set PATH=%~dp0Anaconda3;%~dp0Anaconda3\Scripts;%~dp0Anaconda3\Library\bin;%~dp0Anaconda3;%~dp0Anaconda3\Library\mingw-w64\bin;%~dp0Anaconda3\Library\usr\bin;%~dp0Anaconda3\Library\bin;%~dp0Anaconda3\Scripts;%~dp0Anaconda3\bin;%PATH%
    set HOME=%~d0\home\omorita
    .\Anaconda3\Scripts\anaconda-navigator-script.pyw
    exit
                
  • start_navigator.bat
  • @echo off
    start /min %~dp0Navigator.bat
                
  • Navigator.bat
  • @echo off
    set PATH=%~dp0Anaconda3;%~dp0Anaconda3\Scripts;%~dp0Anaconda3\Library\bin;%~dp0Anaconda3;%~dp0Anaconda3\Library\mingw-w64\bin;%~dp0Anaconda3\Library\usr\bin;%~dp0Anaconda3\Library\bin;%~dp0Anaconda3\Scripts;%~dp0Anaconda3\bin;%PATH%
    set HOME=%~d0\home\omorita
    cd Anaconda3\Scripts
    pythonw anaconda-navigator-script.pyw
    exit