趣味の電子工作などの記録。時にLinuxへ行ったり、ガジェットに浮気したりするので、なかなかまとまらない。
RSS icon
  • LinuxMint17.2でUSBメモリ環境を構築

    投稿日 2015年 8月 29日 コメントはありません

    久々にUSBメモリにLinux環境を構築しました。作業的には慣れたもののはず・・・と思ったのですが、すっかり忘れてました。なので、作業ついでにメモを作り直します。

    1.環境

    PCはCore2Duo E7400(VT-x未対応版。E7400はVT-xは途中から対応しているので、初期のものはVT-xがOFFになっていて仮想化支援機能が動かないんです。)で、メモリは4GB、HDDにはWindows8.1が入ってますが、全然使ってない。
    LinuxMint17.2をインストールするUSBメモリはSanDisk Cruzer Fit 16GB。遅いUSBメモリですが、小さいので邪魔になりません。

    2.インストールイメージの準備

    とりあえず、LinuxMint17.2の32bit版をダウンロード。UNetBootinで別の4GBのUSBメモリにインストールイメージを書き込みました。(ライブCDの代わりとして使うならこのままでもいいんでしょうが・・・)
    他の環境ではUSBイメージライタを使ってUSBメモリに書き込む、あるいはDVD-Rにイメージを焼いて・・・でも構わないでしょう。ただ、SATAを禁止する関係で内蔵DVDROMドライブは使えないので、DVDROMに焼いて起動する場合には外付けのUSB-DVDドライブが必要になります。

    3.インストール環境のブート

    4GBのUSBメモリを接続して、電源ON。BIOSを起動して

    • SATAインタフェースをDisable(内蔵HDDを見えなくする)
    • 起動順序をUSB-HDDを最初にする(しなくてもいいと思うけど、癖で設定)

    とします。CTRL-ALT-DELでリブートさせて、USBメモリからブートさせます。ブート時にUNetBootinのメッセージが出ますが、DefaultのままでLinuxMint17.2のライブイメージを起動します。

    4.インストーラの起動

    ライブ環境起動後にターゲットのSanDisk Cruzer Fit 16GBを接続して、インストーラをダブルクリックして起動。

    5.パーティションの設定とOSインストール

    パーティションの設定はカスタムにしました。メモリ4GBあるのでSWAPパーティションがなくても問題ありません。なので、パーティションテーブルを初期化して、1パーティションをext4で作成、マウントポイントは / にします。インストールを継続しようとすると、「スワップパーティションがないよ」と警告されますが、そのまま継続。あとはインストーラの指示通りにインストール。ブートローダーは /dev/sdb (HDDが認識されていなければ、これがSanDisk Cruzer Fit 16GBのはず)に書き込みます。

    6.再起動とアップデート

    インストールが完了したら、インストーラの指示に沿って再起動する方を選択します。再起動したら、アップデートマネージャを起動して、ひたすらアップデートします。

    7.設定ファイル編集による追加設定

    1)内蔵HDDを見えなくする

    SATAドライバを禁止して内蔵HDDを見えないようにします。SATAで接続されているDVDROMドライブも見えなくなってしまいますが、代わりに内蔵HDDを誤って書き換えてしまったりする可能性が大幅に減少します。作業としては、 /etc/default/grub を開いて、 「GRUB_CMDLINE_LINUX_DEFAULT」の起動時オプションに「libata.force=disable」を追加します。
    修正後は、

    $ sudo grub-mkconfig -o /boot/grub/grub.cfg

    としてgrub.cfgファイルを自動生成させて反映させます。
    この後、BIOSのSATA禁止を解除して再起動して、PCの内蔵HDDが見えないことを確認します。

    2)USBメモリへのアクセス高速化

    HDDアクセス時のアクセス時刻の記録を停止してアクセスを減らすとともに、/tmpをtmpfsにより確保してHDDへのアクセスをなくします。/etc/fstab をのもとからある行にnoatimeオプションを追加し、さらにtmpfsで始まる行を追加します。

    # / was on /dev/sda1 during installation
    UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx / ext4 noatime,errors=remount-ro 0 1
    # tmpfs
    tmpfs /tmp tmpfs defaults,noatime 0 0

    3)システム時計が狂うのを直す

    /etc/default/rcS の中の「UTC=yes」を「UTC=no」に修正します。

    ここで一旦再起動します。

    8.その他、追加設定

    1. 背景の変更
      明るい背景が苦手なので、適当な暗めの背景に変更しました。
    2. テーマの変更
      青系の色が好きなので、Mint-X-Tealにテーマを変更しました。
    3. FireFoxの設定変更
      ・起動時のホームページを自分の設定に修正
      ・履歴の記憶を「一切記憶させない」に変更
    4. Chromeブラウザのインストール・設定
      Chromeのダウンロードページへ行ってDebian32bit版をダウンロード、Package Installerでインストール。インストール後、「アプリケーション」⇒「インターネット」⇒「Google Chrome」で起動できますが、自分はまずは右クリックして「プロパティ」を表示し、コマンドの部分に「–incognito」のオプションを追加して、常にプライベートモードで起動するようにしています。
    5. 日本語設定
      日本語の設定を忘れていました。「設定」⇒「言語」でLanguage/RegionともにJapanese,Japan UTF-8になっていることを確認して、System localeのところで「システム全体に適用する」を押します。
      上のほうにある「Input Method」を押して、「Add support for IBus」を押してIBusをインストールします。インストール完了後、上の方にある「Input Method」をNoneからIBusに変更します。
      変更したら一旦ログアウトしてログインし直すと、右下にキーボードのアイコンが出てくるので、これを左クリックしてMozcを選択します。テキストエディタなどを開いてみると日本語入力できるはずです。

    こんなところでしょうか。

    あとは、好きなアプリをインストールするなり、何なりすればと思います。


  • SanDisk Ultra Fitを買ってみた

    投稿日 2015年 3月 7日 コメントはありません

    秋葉原でUSB3.0の小さなSanDiskブランドのUSBメモリを見かけたので買ってみました。

    購入したのはSanDisk Ultra Fit 64GBで4000円弱だったでしょうか。

    早速、ベンチマークしてみました。

    まずは、USB2.0ポートに接続した場合です。

    SanDiskUltraFit-HighSpeed

    読み込みはHiSpeedの上限と思われるところに張り付いていますが、書き込みは不規則にスピードが変わるようです。

    次に、USB3.0で接続した場合です。都合により、USB3.0のHUB経由での接続になります。

    SanDiskUltraFit-SuperSpeed

    読込速度は速くなりましたが、書き込みは相変わらずで、平均ではかえって遅くなってしまっています。

    OSをこれからインストールしてみますが、気になるのはこのUSBメモリはかなり発熱することです。この小ささですので、熱で故障するんじゃないかと思います。5年保証とパッケージには書いてありますが、本当に5年も持つのか怪しい気がします。


  • Ubuntu MATE 32bitをUSBメモリにインストール

    投稿日 2015年 1月 11日 コメントはありません

    Ubuntu MATE 32bitをUSBメモリにインストールしてみました。

    なぜMATEかというと、通常のデスクトップ環境ではやはり重いので、なるべく軽いものにしたかったためです。

    今回も32bit版をインストールしました。ダウンロードはこちらから。

    いつものように、まずVMware上で一度インストーラISOイメージで仮想マシンを作って起動します。その後、一旦シャットダウンして、仮想マシンからHDDを取り除きます。一度起動するのは、仮想マシン作成直後はHDDを取り除けないからです。

    次に、再度、インストーラISOイメージで仮想マシンを起動します。
    起動して試すだけかインストールするかの選択画面がでたところでUSBメモリを取り付けます。今回は、新たにSanDiskのExtreme USB3.0 64GBを使ってみました。USBメモリを取り付けたら仮想マシン側に認識させ、その後でインストーラで「Ubuntuをインストール」をクリックします。

    あとは普通にHDDにインストールするのと変わりませんが、データ領域を多めに取りたかったのでパーティションは手動で分けました。

    インストールが終わったら、仮想マシンを終了し、PCを再起動します。この時にBIOSで内蔵SATAを禁止します。

    再起動したら、過去の記事同様にいろいろ設定します。

    • SATAの禁止(内蔵HDDへのアクセス禁止)
    • /etc/fstabの設定(tmpfsの設定、マウントオプションにnoatimeを追加など)
    • 内蔵時計のUTC設定をローカルタイム設定に変更

    など。

    SATAを禁止したら、再起動後に内蔵HDDが見えない状態になっているのを確認します。あとは内蔵HDDのつもりで作業すれば大丈夫。

    引き続き、いろいろやりますが、こちらが参考になります。

    それにしてもSanDisk Extreme USB3.0 64GBは速いです。

     


  • Chromium OSを試してみる

    投稿日 2014年 11月 16日 コメントはありません

    余っているUSBメモリ(っていっぱいあるんですけど)があったのと、Chromium OSがUSBメモリから起動できる、という話を見かけたので試してみることにしました。

    こちらのatmarkITの記事を参考にしてやってみます。

    1.p7zipのインストール

    atmarkITの記事によると、デイリービルドされたChromiumOSのイメージがこちらのサイトで公開されているということなのですが、なぜかイメージは7z形式なのです。

    Windows環境であれば7-zipをインストールすればいいのですが、Linux環境なので7zを展開する方法を用意しなければなりません。(まあ、Windowsマシン立ち上げてもいいのだけど、ここはやはりLinuxで、ということで)

    そこで、SourceForge.jpからp7zipをソースコードパッケージをダウンロードしてきてビルド・インストールします。

    余談ですが、SourceForgeの偽ダウンロードリンク(広告)、何とかならないんですかね。
    おそらくリンク先はマルウェアだらけのような気がするんですが。なかには何の説明もなく「ダウンロード」ボタンを模したものもあって、よーく見ないと本物の正しいダウンロードリンクがわからないんですよね。はっきりいって酷すぎです。

    余談はさておき、展開してインストールします。

    $ tar xvfj p7zip_9.20.1_src_all.tar.bz2
    $ cd p7zip_9.20.1
    $ cp makefile.linux_any_cpu_gcc_4.X makefile.linux
    $ make -j 2 all_test 
    $ sudo ./install.sh

    これでインストール完了です。

    2.ChromiumOSのバイナリイメージダウンロード

    こちらの Chromium OS Builds の daily ビルドの中から32bit版のCx86OS-2014mmddhhmmss.img.7zをダウンロードしてきます。

    3.イメージの展開

    ダウンロードしたイメージを展開します。

    $ 7za x Cx86OS-20141115110454.img.7z
    7-Zip (A) [64] 9.20 Copyright (c) 1999-2010 Igor Pavlov 2010-11-18
    p7zip Version 9.20 (locale=ja_JP.UTF-8,Utf16=on,HugeFiles=on,2 CPUs)
    Processing archive: Cx86OS-20141115110454.img.7z
    Extracting Cx86OS-20141115110454.img
    Everything is Ok
    Size: 2589949952
    Compressed: 313970318
    $

    4.USBメモリへの書き込み

    USBメモリを挿入し、適当な方法(ディスクユーティリティなど)でUSBメモリのデバイスファイル名を調べます。USBメモリをアンマウントした状態で、

    $ sudo dd if=Cx86OS-20141115110454.img of=/dev/sdx bs=16M

    としてUSBメモリにイメージを書き込みます。

    書き込みが完了したところでsyncして、USBメモリを差し直してみました。ディスクユーティリティでみてみると、

    Screenshot

    となっていて、大量にパーティションができていました。
    (ちなみに、いくつかのパーティションが勝手にマウントされてしまうので、抜くにはたくさんアンマウントしなければなりません)

    5.起動してみる

    IdeaPad S10-2に挿入して起動してみます。挿入してUSBブートさせてしばらく(15~20秒くらいか?)待つと、Welcome画面がでてきました。

    言語およびキーボードで日本語を選んだ所まではよかったのですが、残念ながら内蔵の無線LANは認識していないようです。しかたがないのでイーサネット接続します。(2回目の起動の際に、手元にあったBUFFALO WLI-UC-GNMを挿しておいたら認識して暗号化キーをいれてやると使うことができました)

    とりあえず、起動して使うことはできましたが、AtomN270では荷が重いのか、それともUSBメモリがそもそも遅いからなのかわかりませんが、結構もっさりです。LinuxMint17上でChromeで動かした時よりも遅いのはUSBメモリのせいでしょうね。

    ChromiumOSでは本来ローカルディスクは見える必要はないのではないかと思っているのですが、残念ながらローカルディスクが見えてしまうようです。見えなければいつでもどこでも心配なく使えるかと思ったのですが・・・。


  • Linuxで有線LANを禁止する

    投稿日 2014年 10月 22日 コメントはありません

    USBメモリにインストールすることでPC本体環境に影響を与えることなくLinuxを使うことができますが、そのままではPC本体のHDDにが見えているので、誤操作や悪意のあるプログラムが動作したりするとHDDに影響する可能性が残っています。そこで、この記事で紹介したようにHDDを見えないようにすることで、そのリスクをさらに抑えることができます。

    しかしながら、ここまでではネットワークは既存の環境のものをそのまま使うので、万が一のことがあるとローカルネットワーク上に影響を与えてしまいます。今回はその対策を考えてみました。

    物理的に線があるLANでは接続先を変える=線をつなぎ直す、ということなので面倒です。しかし、無線LANならばESSIDを変えてやれば、ハードウェアをまったく変えることなく接続するネットワークを変えることが可能です。しかも、幸いな事にたいていのコンシューマ向け無線ルータではPC等を接続するネットワークとゲーム機等を接続するためのネットワークをESSIDで分ける機能をもっていることが多いです。これをうまく使えれば、USBメモリ起動のLinux使用時には既存の環境(HDD、LAN)への影響をさらに抑えられます。そこで、有線LANを禁止し、接続は無線LANのみで行うようにしてやります。

    具体的な方法ですが、有線LANのインタフェースの物理層を制御しているmiiモジュールのロードを阻止してやります。/etc/modprobe.d/blacklist.conf に以下の行を書き加えます。

    # disable wired ethernet
    install mii /bin/false

    単純に「blacklist mii」としたのでは論理層のドライバがmiiモジュールに依存していて、論理層ドライバをロードするときにmiiモジュールをロードしてしまいますので、結局miiモジュールが読み込まれてしまいます。かといって、論理層ドライバを blacklist 指定していくのは個々のデバイス(LANコントローラ)を指定していくことになりとても面倒です。ここでは、ArchLinuxのKernel_moduleのドキュメントを参考にして、mii モジュールのロードを常時失敗するように設定しました。この記述を追加した後、「# sudo update-initramfs -u」として反映させます。

    これで再起動してやると有線ネットワークが表示されなくなったはずです。無線LANアダプタは必要ですが、安心してネットサーフィンができる環境になったはず・・・です。


  • USBメモリにLinuxMintとLubuntuをインストール

    投稿日 2014年 10月 11日 コメントはありません

    再びUSBメモリのLinuxMintとLubuntuをインストールしてみました。

    LinuxMintの方はLinuxMint17を16GBのSanDiskの小さな16GBのUSBメモリに、Lubuntuの方は同じく8GBのUSBメモリにインストールしました。

    1.インストール

    インストール自体は難しくありません。

    1. それぞれISOイメージをダウンロードしてDVD/CDROMを作成
    2. デスクトップPCでSATAを禁止してHDDを見えない状態にしてから、USB-CDROMでインストーラ起動
    3. USBメモリを挿入して手動でパーティション作成
      手動でパーティション作成するのはPCの搭載メモリが多いのでSWAP領域が大きくとられてしまう対策です。
    4. あとは普通にインストール

    2.チューニング

    1)USBメモリへのアクセス速度向上のため、/etc/fstab を修正

    ルートファイルシステムのオプションに「noatime」を追加して、アクセスタイムの記録をやめさせます。また、tmpfsを追加して、テンポラリファイルの書き込みをやめさせます。

    2)起動後に内蔵HDDを見えないようにする

    起動時のカーネルパラメータでlibataを禁止して内蔵HDDを見えないようにします。
    /etc/defaults/grub を開いて、 「GRUB_CMDLINE_LINUX_DEFAULT」の起動時オプションに「libata.force=disable」を追加します。ついでに同じ箇所のオプションの「quiet」を取って起動時のメッセージを表示させるようにしました。

    修正後は、

    $ sudo grub-mkconfig -o /boot/grub/grub.cfg

    としてgrub.cfgファイルを自動生成させて反映させます。

    この後、BIOSのSATA禁止を解除して再起動して、PCの内蔵HDDが見えないことを確認します。

    3)ひたすらアップデートをインストール

    大量のアップデートがあるので、ひたすら適用していきます。

    4)アプリケーションのインストール

    • Google Chrome
    • clamtk
    • その他、必要なアプリケーション

    5)その他の設定

    • システム時計が狂うのを直す
      /etc/defaults/rcS の中の「UTC=yes」を「UTC=no」に修正

    こんなところでしょうか。カーネルパラメータで指定するだけでSATAを禁止できるので、カーネルのバージョンアップなどがあってもカーネル再構築などをせずに済むので楽ちん(のはず)です。

     


  • SanDisk Ultra USB3.0のベンチマーク

    投稿日 2013年 8月 27日 コメントはありません

    先日秋葉原に行ったら、SanDiskの新しいUSB3.0メモリを見かけたので買ってきました。しばらく放置してあったのですが、例によってOSインストールに使うとどうなるか、ということで簡単なベンチマークをしてみました。

    ブツは、SDCZ48-032G-U46です。型番からわかる通り32GB品です。値段は馬鹿っ早のExtreme SDCZ80-032G-X46より少し安い程度でした。(すみません、具体的な金額忘れました・・・)

    サイズはSDCZ80よりも2割くらい短い感じでしょうか。並べてみると2割くらいですが、実物では結構違いを感じます。コンパクトになっているので、このコンパクトさで性能が出ているのであれば・・・・と思って購入したわけです。

    ベンチマークの方法は前回と同じです。

    Screenshot-SanDisk SanDisk Ultra (SanDisk SanDisk Ultra) – ベンチマーク

    読み込みはパッケージの記載(80MB/s)にやや届かず、というところでしょうか。
    書き込みの方は例によって625MBのISOファイルを書き込んでみたところ、開放まで約30秒、LEDの点滅が収まるまで約1分なので、開放までで20MB/sくらい、LED点滅が収まるまでで10MB/sくらいで、USB3.0のUSBメモリとしては凡庸な結果となりました。

    価格差があまり大きくないことを考えると、やや大きくて嵩張りますが、Extremeを買った方がお得感は高そうです。


  • 昨日の戦利品

    投稿日 2013年 6月 22日 コメントはありません

    昨日は帰りに時間があったので秋葉原に寄ってみました。
    といっても、たいしたものは買ってないです。

    IMG_6350s

    まずはSanDiskのMicroSDHC 8GBを2個。RaspberryPi用にSDHCが欲しかったのですが、SDは色々ランク分けがあった上に、高かったのでMicroSDHCにしました。SanDiskにしたのは以前にベンチマークした際にSanDiskは実効で高い性能がでていたからです。やっぱり信頼のSanDiskですね。税別1個800円くらい。

    IMG_6351s

    こちらも以前ベンチマークで驚異的スピードを出したSanDisk製USB3.0メモリの16GB版。税別2093円。

    6349s

    最後はTranscendの無線LAN内蔵SDHCカード。スマートフォンからデジカメ内の画像にアクセスできる、というので衝動買いで購入したのですが、うちに帰って調べてみたらコイツを入れようと思っていたHX5Vには対応してないとのこと。税別4562円。


  • SynapticでインストールできるSATAなしカーネル

    投稿日 2013年 4月 21日 コメントはありません

    Basix用にSATA無しカーネルパッケージを作ってみました。
    前回はLinuxMint用に作ったカーネルをそのままBasixにインストールしてしまいましたが、ディストリビューションによって採用しているカーネルのバージョンが違うのでどうかな、とは思っていました。
    そこで今回は仮想マシン上のBasix自身でカーネルを作ってみました。

    追伸:LinuxMint13 MATEやXFCE用も作ってみました。ディレクトリ名などの「basix」を「mint13mate」や「mint13xfce」に読み替えれば大体作業OKです。

    <2014.1.12追記>再度カーネルバージョンアップする効率的な方法がいまひとつです。結局、ディスク容量に余裕を持たせた別のマシン(仮想マシン)でカーネルパッケージを作ってインストールしています。

    続きを読む »


  • eSATAカードを導入

    投稿日 2013年 3月 10日 コメントはありません

    元々Linuxを入れて常時電源ON端末として運用する予定だったNM70I-847が結果的にTV録画機になってしまったので、元々TV録画機だった『ASROCK H61M-ITXとCeleronG530』2号機をLinux実験くんPCにして、端末はこれまで通り『ASROCK H61M-ITXとCeleronG530』1号機のままで使わないときは電源OFF運用することにしました。(もっとも、消費電力自体はNM70I-847と極端に変わるわけではないのですが・・・)

    で、実験くんPCなので、普段入れているOSとは違うOSを入れてみたくなったりしそうです。そんな場合にはこれまでならUSB接続のHDD・・・となるのですが、さすがにUSB2.0のHDD接続では最近は遅く感じてきているので避けたいところです。また、背面のUSB3.0はブート不可なのでUSB3.0のHDDで、というわけにもいきません。

    そこで、eSATAカードを導入してみました。物はネットで格安だった GH-PEX-ESA2 です。Windowsで使う場合にはあまり評判がよくないようですが、Linuxなのでそんなことは関係ありません。重要なのは接続したHDDからブート可能かどうかです。
    製品写真をみると、SOJのフラッシュROMが載っていそうなので、行けると信じてポチりました。

    物が届いてから気がついたのですが、現品にもWebサイトにも「内部2ポート、外部2ポート」ということで合計4ポートっぽいロゴが付いているのですが、実際には写真に写っているジャンパで切り替える「合計2ポート動作」です。しかも、パターンを追っかけると、SATAの3Gbpsの信号を直接ジャンパで切り替えている大胆設計です。(動きゃいい、ってもんじゃないと思うんですが)
    なお、Webでは「ジャンパをどう挿せばいいのかわかりにくい」というのを見かけるのですが、確かに一般の素人の方にはわからないでしょうね。・・・が、どこにジャンパを挿せばいいのかは基板自体にシルクでちゃんと印刷(写真ではブラケットに一部隠されています)されていて、シルク印刷の表示内容が読めれば(理解できるスキルがあれば)とりあえずは問題ありません。(ただ、繰り返しになりますが、大胆過ぎる設計です)

    で、さっそくH61M-ITXに取り付けて、裸族のお立ち台eSATAプラスを接続して電源投入するとオンボードBIOSは認識できて、CTRL-SでBIOSに 入れました。このBIOSはRAID対応のものなので、RAIDの設定をそこで行うことができるのですが、ブートに関わるような設定はなさそうなので、今回はなにもしません。

    この後、マザーボードのBIOSでオンボードのSATAをDISABLEに設定しました。内蔵のDVDドライブはSATA接続のためつかえなくなるので、USB接続のDVDドライブを接続してLinuxMint13のDVDを入れて起動し、裸族のお立ち台につけたHDDに無事にインストールができました。もちろん、起動も無事にできました。この後、外付けで動かしたいCentOS6.3でも試してみましたが、特に問題はありませんでした。

    まずは内蔵HDDに「手堅いOS」としてLinuxMint13 MATE 32bitをインストールして、その後外付けHDDに試したいOSを入れて『まな板PC』として使っていこうと思います。