Posts for the month of December 2015

coins的イタズラ

なぁにこれ

coinsの人がcoinsっぽいことを書いていくアドベントカレンダーです。

coinsの人とは

  • coinsに所属している人
  • coinsに所属していた人(老害はほどほどにな)
  • これからcoinsの人(若さを分けてくれ)
  • 心がcoinsの人
  • 不埒なcoinsを評したい人

を指します

内容

  • 書けば官軍書かねば賊軍
  • 同じ阿呆なら書かねば損損

coins Advent Calendar 2015


そんなわけで、coins Advent Calendar 2015 12月18日付の記事はくりすが担当させていただきます。


まえがき

COINS*1 とは筑波大学における「情報科学類」の公式略称であり、当該学類やそこに所属する学生のことを指します。端的に言えばcoinsは変人の集団です。よく「恋人にしたくない学類No.1」にノミネートされています。しかしそんな学類を居心地良いと感じる人も多く、独特の雰囲気の中で皆、日々学問や趣味からくだらない遊びまで幅広く研鑽に励んでいます。 わたしもcoinsの2010年度生として現在卒業論文の執筆を進めております。6年次4年生です。いろいろあったんです。でもとうとう卒業が目前になり、coins生として様々な活動に励むのもあと3ヶ月程であると思うと感慨深いです。

今日はcoins界隈で嗜まれる「くだらない遊び」に焦点を当てた記事を、わたしのcoins生活最後となるアドベントカレンダー記事としてお届けします。


さて、coinsで嗜まれる遊びに「イタズラ」が挙げられます。一般常識に決して縛られないcoinsACの得意とする分野です。「計算機室のiMacを一斉に笑い出させる」程度の比較的無害なものから「学内の池にスワンボートを浮かべる」という一大プロジェクトまで様々な規模のものが実行された歴史があり、MITの「ハック」に相通ずるものがあります。そんなイタズラをひとつばかりピックアップしてみたいと思います。

計算機室のiMacで

coinsが保有する計算機室には、全部で100台を超えるiMacが設置されており、学生がいつでも自由に利用できる環境が整備されています。深夜にも利用している学生がちらほらおり、彼らの学習意欲の高さ(またはカリキュラムの厳しさ)を物語っています。そして、彼らは暇を持て余したcoins生のイタズラの格好のターゲットになります。

計算機室のiMacで稼働するすべてのOS X上ではSSHが稼働しており、アカウントを持っている学生はどこからでも自由にリモートログインできます。これを使わない手はありません。 SSHを用いてたくさんのホストにいっぺんにコマンドを送信するのに便利なのがansibleです。管理対象のホストではSSHさえ動いていればあとは何も要らないのが大きな利点です。 ansibleを用いて、計算機室のiMacで(怒られない範囲で)遊んでみましょう。

ターゲットとなる計算機室iMacのホストを設定*2したら、echoコマンドで試し撃ちしてみましょう。

$ ansible coins -i hosts -u <username> -a "echo uhihi"
foobar04.coins.tsukuba.ac.jp | success | rc=0 >>
uhihi

foobar03.coins.tsukuba.ac.jp | success | rc=0 >>
uhihi

foobar05.coins.tsukuba.ac.jp | success | rc=0 >>
uhihi

foobar01.coins.tsukuba.ac.jp | success | rc=0 >>
uhihi

foobar02.coins.tsukuba.ac.jp | success | rc=0 >>
uhihi

etc...

こんな感じで一度に複数のホストに簡単にコマンドを送信でき、その結果を確認できます。 あとはこれをsayコマンドで応用してMacに喋らせてみたり、afplayでwavやaiffを流してみたり、whoでどのマシンを誰が使っているか監視したり、カメラを起動してみたり*3、無限大の可能性が広がります。深夜にホラーじみた音声がそこかしこのiMacから発されたらたまったもんじゃありませんね。もちろんansibleのパワーはこれだけにとどまりませんので、みなさんのほうでガンガン開拓していけると意外な発見があるかもしれません。そして、学生生活中にこうして無駄遣いした技術力は、必ずや将来役立つ戦力となるでしょう。みなさんの今後に大いに期待しております。

おわりに

かならず おとなのひとといっしょに あそんでね!


*1 case insensitive
*2 ansibleの使い方を説明する記事ではないので省略。ここではホストグループをcoinsと設定した場合を想定して記述しています。
*3 このような盗撮行為が可能であることが判明したため、内蔵カメラにシールを貼る対策が今年実施されました。