タグ

ブックマーク / zariganitosh.hatenablog.jp (18)

  • GitHubからのSSH脆弱性メールにどのように対応すればいいのか? - ザリガニが見ていた...。

    2012/3/8 3:28に、GitHubから一通のメールが届いた。 タイトルは「Action Required - SSH Key Vulnerability」 自分なりに適当に訳すと「行動を求めます - SSHキーの脆弱性」 何だか結構重要なことが書いてあるようなことは分かる。 しかし、内容が全部英語なので、ネイティブジャパニーズな自分には正確に意味がとらえられず、不安が...。 A security vulnerability was recently discovered that made it possible for an attacker to add new SSH keys to arbitrary GitHub user accounts. 最近、セキュリティ上の脆弱性が発見されました。それは、攻撃者が任意のGitHubユーザーアカウントに新規のSSHキーを追加可能と

    GitHubからのSSH脆弱性メールにどのように対応すればいいのか? - ザリガニが見ていた...。
  • なるべく覚えないviエディタの使い方 - ザリガニが見ていた...。

    viというエディタがある。長い歴史のあるエディタである。ユーザー視点で見ると、コマンドモード・入力モードという二つのモードがあって、モードを切り替えながらテキスト編集するスタイルである。GUI全盛のモードレスなエディタに慣れきってしまった自分には、かなり面らったエディタであった。初めて起動した時、文字も入力できず、終了の仕方も分からない...。何じゃこれは? そう思って調べてみると、viには非常に多くのショートカット的コマンドがある。その多さにまず面らう。とても覚えきれないと。以下は、自分で調べて理解できた使い方である。軽く100以上の操作がある。(これでもなるべく行を節約して書いたのに)しかも、以下の表でもすべてを網羅できている訳ではない。 どうにか、これらのコマンドをなるべく覚えないで、そこそこ使えるようになりたい。何を覚えて、何を覚えなくていいのか、探ってみた。 viエディタの使

    なるべく覚えないviエディタの使い方 - ザリガニが見ていた...。
    odawara
    odawara 2012/02/29
  • Insomnia.kextはどのようにMacBookを不眠症にしているのか? - ザリガニが見ていた...。

    MacBookを不眠症にするInsomnia.kext。その実体は、カーネル機能拡張である。「カーネル」という響きが含まれると、非常に高度、かつ複雑、そして神秘的な感じがする。OSの深層部なんてどうせ自分には理解できない、という諦めもあって、今まで遠ざけていた。だから自分にとって、その中身は完全なブラックボックス。 ところが、Insomnia.kextはカーネルに組み込まれるが、カーネル体ではなく、カーネル機能拡張なのである。そして、Insomnia.kextのソースコードも公開されている。ちょっと見た限り、コードは短く、そしてシンプル。これなら自分にも理解できるかもしれない、そんな思いから、Insomnia.kextの追跡が始まったのである。 ソースコードの在処 ソースコードは、複数箇所で様々なバージョンが見つかった。 Insomnia.kext、InsomniaX.appのソースコー

    Insomnia.kextはどのようにMacBookを不眠症にしているのか? - ザリガニが見ていた...。
    odawara
    odawara 2011/12/27
    スリープしないMacbookのデバッグ
  • アリスとボブのコラボレーション、gitをちゃんと理解したい! - ザリガニが見ていた...。

    アリスとボブのGitシリーズがになりました! アリスとボブのGit入門レッスン 前回からの続き。ひたすらアリスとボブの操作の記録。 ボブがアリスのプロジェクトを手伝う アリスは自分のプロジェクトが全く進んでいないことに気付いて、愕然とした...。そこで同僚のボブにも手伝ってもらうことにした。 「ボブ、お願い!」アリスはボブに頼んでおきながら、今までの作業に相当疲れたので、すぐに休憩に出てしまった。 アリスとボブは同じマシン上にホームディレクトリを持っている。ボブは早速以下の操作をした。(ボブは優しい。) まずはgitに自分の名前とメールアドレスを設定 bob$ git config --global user.name "bob" bob$ git config --global user.email bob@example.com アリスに教えてもらったパスを指定して、アリスのプロジェ

    アリスとボブのコラボレーション、gitをちゃんと理解したい! - ザリガニが見ていた...。
    odawara
    odawara 2011/11/03
  • アリスがチャレンジなコードを書く時、git branchをちゃんと理解したい! - ザリガニが見ていた...。

    アリスとボブのGitシリーズがになりました! アリスとボブのGit入門レッスン アリスは迷っていた。現状のshowメソッドは固定されたメッセージしか出力しないが、理想的にはユーザーの条件によって変化させたいと。 しかし、その機能を実装するためには結構な大改修になってしまう。果たして今の自分の技術でちゃんと完了させることが出来るだろうか?この機能追加をやるべきか、このままにするか...。 アリスはこの修正が失敗に終わった時のことを考えて、ボブに連絡しておくことにした。「失敗したらごめんね。」と。(なんて無責任なアリス...。) 連絡を受けたボブは、アリスの機能追加には大賛成。ボブ:「ただし、新しいブランチを追加して、そこで作業くれ。」と。アリス:「ブランチ???」 アリスはブランチを理解できていないが、とりあえず、ボブに説明された手順をそのままやってみることにした。アリス:「習うより、慣れ

    アリスがチャレンジなコードを書く時、git branchをちゃんと理解したい! - ザリガニが見ていた...。
    odawara
    odawara 2011/11/02
  • アリスとボブのサーバー、git pushをちゃんと理解したい! - ザリガニが見ていた...。

    アリスとボブのGitシリーズがになりました! アリスとボブのGit入門レッスン アリスとボブになりきってgitをちゃんと理解したい! アリスとボブのコラボレーション、gitをちゃんと理解したい! 上記の日記から続く、アリスとボブの記録。 前提条件 アリスとボブは同じマシンにログインする異なるユーザー。 ファイルシステムからアクセスする分には、サーバーの設定は不要になるので、これで話がシンプルになる。 共通gitリポジトリの準備 最近、アリスにはちょっとした悩みがあった。 現在、このプロジェクトはアリスとボブの二人で、修正したら連絡を取り合って、お互いの変更をダウンロードする(git pullする)ことで同期をとっていた。 しかし、プロジェクトメンバーが増えた場合、このやり方では同期する手間が煩雑になってしまう...。 理想は、サーバーとなるgitリポジトリを決めて、作業前にそこからダウン

    アリスとボブのサーバー、git pushをちゃんと理解したい! - ザリガニが見ていた...。
    odawara
    odawara 2011/11/02
  • MacBookが起動するまで何が起こっているのか? - ザリガニが見ていた...。

    すべてはMacBookの電源ボタンを押した瞬間に、始まる。フラッシュ ストレージ搭載のAirにおいては、その僅か15秒後には起動が完了して、美しいGUIがユーザーの操作を待ち構える。その15秒間に一体何が起こっているのか? 前回は、プロセスID 0 まで遡ってみた。しかし、それより前の世界がまだ全然見えていない。今回は、電源オンから時系列に辿ってみようと思う。 概要・基礎知識 CPUCPUは複雑怪奇なスイッチの集合体だけど、できることは非常にシンプル。メモリの内容を読み込んで、読み込んだ命令に従って演算して、結果をまたメモリへ出力するだけ。 つまり、メモリにプログラムとして実行可能な意味のある数列が展開されていないと、CPUは無意味な動作を永遠と続けるだけなのだ。 だから、電源オンでCPUが稼働した瞬間から、何らかの意味のあるプログラムが用意されていて、それが忠実に実行され、美しい

    MacBookが起動するまで何が起こっているのか? - ザリガニが見ていた...。
    odawara
    odawara 2011/08/09
    ブートプロセス
  • MacBookを閉じたまま運用するカーネル機能拡張 - ザリガニが見ていた...。

    今まで、InsomniaXをAppleScript(GUIスクリプティング)で操作しようとしたり、kernel.logを監視してスリープ状態を検出したり、カーネル機能拡張の作り方・使い方を調べたりと、試行錯誤を続けていた。その根底には、たった1つの欲求があった。それは... MacBookのディスプレイが閉じた状態でも、Wake on Demandなネットワークアクセスを可能な状態にしておきたい!*1 そして、実際にアップルのIOKitチュートリアルでサンプルMyDriverを作ってみて、シンプルなカーネル機能拡張だけで、それが実現できそうだと実感した。 ...ということで、さっそくClamshellWakeプロジェクト zarigani/ClamshellWake - GitHub の開始。 仕様 MacBookでディスプレイを閉じた瞬間のスリープだけを無効にする。 ディスプレイを閉じて

    MacBookを閉じたまま運用するカーネル機能拡張 - ザリガニが見ていた...。
  • 徹底的にMacBookをソフトウェアで冷却する - ザリガニが見ていた...。

    夏場のMacBookは熱い!少なくとも自分のマシン--初代MacBook--は相当な熱さになる...。ブログを一回更新するだけで、左手の小指と薬指はもうほとんど低温火傷初期の感覚だ。ピリピリする。去年までは我慢していた。が、今年はもう我慢したくない。これを口実に、ワイヤレスキーボードを買ってしまおうか、または最新のマシンに交換してしまおうかとも考えた。 そんなことを考えていると、そういえば以前、MacBookの冷却ファンをコントロールするソフトウェアを試したことを思い出した。ちょうどその時は冬場だったため、その恩恵をそれほど感じなかったので、その後すっかり忘れていたのだった。今一度試してみたくなった。「MacBook ファン コントロール」で検索すると、早速二つのソフトウェアが見つかった。 Fan Control 1.2 システム環境設定から冷却ファンをコントロールできるようになる。 ベー

    徹底的にMacBookをソフトウェアで冷却する - ザリガニが見ていた...。
    odawara
    odawara 2011/07/20
    ファンの回転数を手動で調整
  • メモリを解放してスワップ発生を抑える方法 - ザリガニが見ていた...。

    OSX 10.6 Snow Leopardは、極めて安定した、信頼性の高い、快適なOSとなった。但し、ハードディスクから起動する環境において、その快適さを保つためたった一つ気を付けておくべきことがある。それは、スワップ使用領域の増加を極力抑えること。 スワップへのアクセスが頻繁に発生している時は、あのレインボーカーソルがぐるぐる回っている時である。どうしようもない操作レスポンスの低下に悩まされる。そんな状態に極力陥らないように、使っていないメモリを素早く解放する方法を模索してみた。 その1 フォルダ容量を計算する フォルダ容量を計算する過程でメモリが解放されることがある。それを利用した方法は、3つある。どれも仕組みは同じなので、どれか一つの方法を実行するだけで十分。 Finderを利用する方法 Finderで起動ディスクのルートを開いて、リスト表示にする。(command-2) 表示オプシ

    メモリを解放してスワップ発生を抑える方法 - ザリガニが見ていた...。
  • iPadで快適にブログを書く方法を模索する - ザリガニが見ていた...。

    今回の試みは、マルチタスク用ジェスチャの存在を知ったのと、カーソルキーのあるエディタの存在を知ったことに端を発する。さらに、ブックマークレットでも文字カーソルを移動できないかと思い調べてみると、はてなダイアリー(id="textarea-edit")限定なら、自分の知識でも作成できてしまった。 自分の中で今まで懸念事項だった問題(素早いアプリ切り替えと、カーソルキーによる移動)が解決してしまったのである。 この日記は、All iPadで編集した。 操作 テキストエリアのスクロールは二指で上下にフリックするよ。 テキスト入力時、ダブルタップで単語が選択されるよ。 テキスト入力時、二指タップで段落が選択されるよ。(段落 = 改行で区切られた文字の集合) iPadを揺さぶると、undo(直前の操作の取り消し)ができるよ。 [.?123]ボタン で、undo・取り消す が表示されるよ。 [#+

    iPadで快適にブログを書く方法を模索する - ザリガニが見ていた...。
    odawara
    odawara 2011/05/28
  • 標準電波を追跡する - ザリガニが見ていた...。

    標準電波 日標準時を乗せて発信している電波を標準電波と呼ぶらしい。 日では2箇所で発信されていた。 福島県 おおたかどや山標準電波送信所(40 KHz) 大きな地図で見る 佐賀県 はがね山標準電波送信所(60 KHz) 大きな地図で見る 停波 首都圏の電波時計にとって重要なリソースである、福島県 おおたかどや山標準電波送信所が停波中らしい。 NICT 日標準時プロジェクト 3/11より、地震・原発・落雷の影響を受けて、断続的な停波を繰り返し、現在停波中なのだ...。 JJY TX Log 標準電波の受信範囲は、腕時計で半径500Km、置き時計で半径1000Kmと言われている。 首都圏では... 置き時計なら佐賀県 はがね山標準電波のほぼ受信範囲になるが、 腕時計では受信できない状況になってしまうのだ。 シミュレーター ここにJJY SimulatorというiPhoneアプリがある。i

    標準電波を追跡する - ザリガニが見ていた...。
  • Time Machineは過去をどのように記憶しているのか? - ザリガニが見ていた...。

    Time MachineとTime Capsuleによるバックアップ環境は、面倒な手順なしで、今までにない絶大な安心感を与えてくれる。 バックアップ対象を詳細に選別する必要もなく、起動ディスク丸ごと、つまりマシン環境そのまんまが保存できる。 そして、過去のバックアップ時点の状態はルールに従って*1残され、任意の過去のマシン環境にいつでも戻すことができる。(もちろん、任意のファイルやフォルダだけを復元することも可能) しかも、ディスク容量をそれほど浪費する訳でもなく、おそらく変化した差分のみがバックアップされている様子。なのに、Finderでバックアップファイルに直接アクセスすることも出来て、見た目は起動ディスク以下の一般的なファイルやフォルダが並んでいるだけ。 これまでもバックアップにはいろいろな方法を試してみたが、Time Machineと比較すると、以下のような悩みを抱えていた。 起動

    Time Machineは過去をどのように記憶しているのか? - ザリガニが見ていた...。
  • MacBookで64ビットカーネルの使い心地 - ザリガニが見ていた...。

    OSX 10.6(SnowLeopard)では、標準添付されるほぼすべてのソフトウェアが64ビットに対応した。アクティビティモニタ(/Applications/Utilities/Activity Monitor.app) で確認してみると、「種類」の列項目がほとんど「Intel(64ビット)」となっている。(でも、iPhoto・iTunesは未だ32ビットなんだけど) さらに、SnowLeopardではOSの核であるカーネルまでも64ビットに対応したらしい。アクティビティモニタでPIDが常に0で表示されるkernel_taskさえも、64ビットに対応したのだ。しかし、デフォルトでは多くのマシンが未だ32ビットカーネルで起動するらしい。64ビットカーネルで起動するには「6」と「4」のキーを押しながら起動する必要があるそうだ。 Mac OS X v10.6:32 ビットまたは 64 ビットカ

    MacBookで64ビットカーネルの使い心地 - ザリガニが見ていた...。
    odawara
    odawara 2011/04/05
  • 特定のユーザーのtweetを通知する設定 - ザリガニが見ていた...。

    前回、東京電力のtweetを素早く察知したくて(最新の計画停電情報が欲しい)、AppleScriptで監視してメールするアプリを作ってしまったのだが...。それ、Twitterの標準設定にあるじゃん!という、いつもながらの突っ走りになってしまった。(無駄な努力...。) 経緯 最初、そんな設定がきっとあるだろうな、という予想のもと、 アカウント名(zariganitosh) >> 設定 >> モバイル タブ を開き、 MacBookから、verify@twtr.jpに空メールを送るも、反応がない...。 以下のページを見ると、日でも携帯メール経由で出来るようになったと読めるのになぜだろう?と怪訝な思いだった。 Twitterブログ: 新機能: メール通知 〜 携帯メールでツイート受信が可能に その時は、海外でSMSベースの機能だったから日ではうまく実装できてないのかも、と勝手に思い込ん

    特定のユーザーのtweetを通知する設定 - ザリガニが見ていた...。
  • Xcode3.0でプロジェクト名を変更する方法 - ザリガニが見ていた...。

    最新のXcodeでは、メニューから プロジェクト >> 名称変更... で簡単に変更できてしまう。(だいぶ前から?) 但し、アプリケーションの名称由来のフォルダ名・ファイル名・クラス名までは変更されない。 もちろん、そのままでもOKだし、気持ちが許さなければ自分好みに手作業で変更するのもあり。 例:ABCプロジェクトを作ると、ABCフォルダが生成される。 その中に、ABCAppDelegate.h・ABCAppDelegate.mが生成される。 上記ファイル中にはABCAppDelegateクラスの定義が書かれている。 ちなみに、XcodeでCocoaアプリケーションプロジェクトを作成すると... クラスごとにクラス名称のファイルに分かれる。 ヘッダーと実行ソースもファイルが分かれる。 しかし、それらは仕様ではなく慣例なので、ヘッダーと実行ソースが1ファイルでもOKだし、クラス名称と無関係

  • QuickDrawが素早く楕円を描く手順を追う - ザリガニが見ていた...。

    2010年7月20日、QuickDrawのソースコードがダウンロード可能になったらしい。 MacPaint と QuickDraw のソースコード、公開される - スラッシュドット・ジャパン yebo blog: AppleMacPaintとQuickDrawのソースコードを寄贈 QuickDrawは、Lisaや初代MacintoshからOS9の時代まで、Macの画面に見えるもの(ほとんど)すべてを描いていたGUIなOSの核となる描画プログラムだ。25年以上も昔から、角の丸い四角形を当然のように高速に描画していた。そのQuickDrawがどのように円を描いていたのか?以前の日記で思いを馳せたことがある。 QuickDrawはどのように素早く円を描いていたのか? - ザリガニが見ていた...。 奇数の数列の和が、二乗の数列になる(1 + 3 = 2^2、1 + 3 + 5 = 3^2、1

    QuickDrawが素早く楕円を描く手順を追う - ザリガニが見ていた...。
  • シャッターの作動回数(総レリーズ回数)を調べる

    D40*1は、写真のExif情報にそれまでのシャッターの作動回数も記録されるそうである。つまり最新の写真を調べれば、今までに何回、シャッターが作動したかが分かるのである。 Shirouto D40・D90 ブログ 撮影枚数 早速、iPhotoやPreviewでExif情報を漁ってみたが、それらしき項目は見当たらない...。Apertureでも見つからず...。こうなったら、exiftoolコマンドだ。 そのファイルには何が記録されているのか? あった!121行目に「Shutter Count」なる項目が見つかる。 $ exiftool ~/Pictures/iPhoto\ Library/Originals/2011/ローパスフィルタの清掃後/DSC_1737.NEF ...(中略)... Shutter Count : 6874 ...(中略)... つまり、このD40は、これまでに68

    シャッターの作動回数(総レリーズ回数)を調べる
    odawara
    odawara 2011/01/21
  • 1