2020年3月8日日曜日

Bowline knot - もやい結び は、意図せず解けてしまうことがある

Figure 8 (フィギュアエイト, 8の字結び)とともに、loop - 輪 の大きさが固定できて、強い力がかかっても解きやすい紐やロープの結び方のひとつ、Bowline knot (ボウラインノット, ボーリンノット)、もやい結びは、最後のドレス(仕上げ成形)がうまくなかったり、何かに当たる、干渉してしまったり、あるいは力のかかる向きによっては結びが変化して絞れてしまったり、なんども繰り返し振動のような力がかかると、ゆるんでしまったり、最悪の場合、解けてしまう => 事故が起こってしまう ことがある。


WhyKnot 氏が投稿された YouTube の動画を見て確認してほしい。


ではどうすればよいのか?


対策1: Bowline with Yosemite Finish - ボウライン with ヨセミテフィニッシュ,  Yosemite Bowline - ヨセミテボウライン


 先の動画で解決策としてでてきたボウライン with ヨセミテフィニッシュ、ヨセミテボウラインという結び方を使う


対策2: Double Bowline - ダブルボウライン (2重もやい)


同じく WhyKnot 氏のYouTubeへの投稿から

Bowline knot - もやい結びのループをひとつ追加した結び方。


 対策3: Double Bowline + Stopper - ダブルボウライン + ストッパー


さらに万一の時に安全を担保するためにストッパーノットを追加する方法。

WheeliePete 氏のYouTubeへの投稿から



Figure 8 - フィギュアエイト - 8の字結びはダメなの?

 

安全なのはフィギュアエイトだ。意図せず解けてしまう心配はない。しかし、ロープにもよるが強い力で引かれた時、フィギュアエイトは固くしまってしまい解くことが困難になる。


最後にもう一度.. "Bowline Knot ボウラインノット - もやい結び は、意図せず解けてしまうことがある" 。

皆様、どうぞご安全に👍

2019年3月31日日曜日

STIHL M-Tronic carburator correction

for MS 201 TC-M, MS 261 C-M... (Not for MS 462 C-M...)

Why I wrote this..

当方の作業環境、標高 1,200m-1,600m あたりの高冷地。気温は冬季の最低気温が -20℃程度、夏期の最高気温+30℃未満。桜の開花は4月末~5月初頃。

2018年頃に購入した MS 201 TC-M、(M-Tronic version 1 ?)しばらく使用し、エンジン暖まってから休憩して少し冷えた状態になると始動ポジション(△)にしても運転ポジション(I)にしてもなかなかかからず再始動に苦戦する。最終的に右手でフルスロットルにして左手でスターターをかなりの回数引きつづけないとかからなくなる。

また、しばらく連続使用し、完全に暖まった状態のアイドリングで不意にエンジン停止することがある。

Low, High, Idle それぞれスクリューで 調整できる旧タイプのチェンソーでは手動で微調整することでこういう機嫌の悪い状態になるのを避けられるのだが、M-Tronic はそこをうまく学習してもらわないといけない。

取扱い説明書には、暖機後、完全負荷で5回連続で鋸断しろという記述があるがこれでは改善せず。最終的に、r3dpuma氏により2018-02-24に公開された MS 261 C-M 向けの以下の YouTube 動画を参照した。
https://www.youtube.com/watch?v=JtUkBqBkB-E

なぜこれが MS 201 TC-M にも使えるのか、というと、同時期の開発、初期設定の方法が他のところで紹介されていたのと同じ、高回転部分の設定方法(全負荷5回の切断)が同じ、取扱説明書の該当部分が同じ、などにより同等と判断した。

ここで紹介されている方法は、MS 462 C-M (M-Tronic version 3)など、異なる方法でより短時間(72秒)で更正できる新しい機械(取扱い説明書に更正方法の記載あり)には当てはまらないと思われるので注意されたし。当方の環境であっても取扱い説明書どおりに更正した MS 462 C-M はとっても機嫌良いです。

以下は動画の説明に書かれている内容を訳したものである。


 To set factory default..(工場出荷状態にリセット)

チェンブレーキをかける。
  1. トリガー、スロットルを握り、スイッチを始動ポジション(△)にセットする。
  2. スターターを引きエンジンを始動する。
  3. スロットルやスイッチには触れず、始動ポジション(△)のまま90秒間保持する。
  4. 90秒経過したらスロットルを開けてスイッチを運転ポジション(I)に移動させる。
  5. ただちにスイッチを停止ポジション(0)に動かしエンジンを停止する。

To set Low range

チェンブレーキをかける。
  1. トリガー、スロットルを握り、スイッチを始動ポジション(△)にセットする。
  2. スターターを引きエンジンを始動する。
  3. スロットルを開けて、スイッチを運転ポジション(I)に移動させる。
  4. そのままスロットルやスイッチを操作せずにアイドリング状態を90秒間保持する。
  5. 90秒経過したら、ただちにスイッチを停止ポジション(0)に動かしエンジンを停止する。

To set High range

チェンブレーキをかける。
  1. トリガー、スロットルを握り、スイッチを始動ポジション(△)にセットする。
  2. スターターを引きエンジンを始動する。
  3. スロットルを開けて、スイッチを運転ポジション(I)に移動させる。
  4. チェンブレーキを解除する。
  5. フルスロットルで15-20cm程度の木を連続5カットする。(オリジナルでは MS 261 C-M 用として 30cm程度と書かれているが MS 201TC-M ではバーにもよるが30cmだとちょっとつらいので.. 全負荷とのことなので、ほぼバー長いっぱい程度、フルスロットルでの鋸断で)

2016年9月29日木曜日

How to encode to m4a on Debian Jessie

車で音楽を聞くのに CD などから m4a を生成して USB メモリへ移している。車につけてる Pioneer のヘッドユニット DVH-P540 というは音楽ファイルとしては wma, mp3 もしくは aac (m4a) しか受け入れてくれなくて、wma を使う理由はない(windows持ってない)し、mp3 は音質的に許せないので m4a にしている。

今までは non-free の neroAacEnc というのを利用させてもらっていたのだが、手元が 64bit only な環境 (multiarch めんどくさくなってやめちゃった) ので neroAacEnc が動かなくなったのと、どうも本家でも公開止めたみたいなので、どうするかしばらく試行錯誤していた..

faac, ffmpeg やら libav-tools 試してみたけど、うまく m4a が作れなくて、試行錯誤の結果、次の方法を見つけた。

wav -> aac

まず cd などから音源を wav で取り出しておく。(この過程は割愛.. 個人的には jack コマンドで..)

aac に変換するには aac-enc コマンドを利用する。この aac-enc というのは


$ apt-cache show aac-enc
Package: aac-enc
Source: fdk-aac
Version: 0.1.3+20140816-2
Installed-Size: 705
Maintainer: Debian Multimedia Maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>
Architecture: amd64
Depends: libfdk-aac0 (= 0.1.3+20140816-2), libc6 (>= 2.4)
Description-en: Fraunhofer FDK AAC Codec Library - frontend binary
 The FDK AAC Codec Library For Android contains an encoder implementation
 of the Advanced Audio Coding (AAC) audio codec.
[...]
 Homepage: https://github.com/mstorsjo/fdk-aac
Section: non-free/sound
と言うもので、Android などで利用されるものを移植したもののようで高音質での aac 化が可能なようだ。

Section: non-free/sound なので、/etc/apt/sources.list で non-free セクションを明示的に許可してないと見つからないはず。

$ aac-enc -r 320000 examplemusic.wav examplemusic.aac

のように -r 320000 でビットレートを指定(車の DVH-P540の限界が 320k あるので)して aac へ変換する。

aac -> m4a

MP4Box というコマンドを利用する。これは gpac というパッケージに含まれている。section: graphics なので、キーワードがうまくハマらないと見つけにくいかもしれない。

$ MP4Box -add examplemusic.aac examplemusic.m4a -new

これで m4a ファイルが出来上がる。

2015年7月9日木曜日

IPv6 TempAddr - jessie - kde - network-manager

手元に Win7pro のインストールされたノートブック Toshiba R730 が、お下がりでやってきたので Debian jessie をインストールしてみた。

先日、d-u.jp で、IPv6 の tempaddr について話があったのでちょっと確認してみた。

今までの手元のマシン4台はサーバー系用途のために IPv6 も固定で設定してあり、network-manager も使っていなかったため検証不能だった(後日 2015-08-23 検証してみた)ので..

なお、kernel レベルでの制御は sysctl (/etc/sysctl.conf, /etc/sysctl.d/*.conf, sysctl(8)コマンド) で可能であり、GUI ツールからの設定も最終的にはここの net.ipv6.conf.IFname.use_tempaddr の値を設定する。

Gnome は好みでないのと、Win7pro を残しデュアルブートにしたため、残り半分のディスクスペースしかなく、Gnome導入する余裕がなかったので KDE 環境のみで検証した。

おそらく、Gnome 環境でもほぼ同様に設定、利用できると思う。(未確認)

 

network-manager

KDE環境では network-manager (nm) はタスクバーに表示されるアイコン(あるいは追加ウィジェット)からアクセスするようになっている。(デフォルトではタスクバーは画面下に横たわっている..)


ここでは wireless 環境なので wifi アイコンになってる。wired 環境だと RJ-45コネクタのアイコンになったと思う。

初期では MAC から生成された EUI-64 な IPv6 アドレスが使われる設定になっていたので、これを変更してみる。

タスクバーの電波アイコン(1.)をクリックすると network-manager によるネットワークの概要が表示され、さらにその右上のスパナアイコン(2.)をクリックすると次のスクリーンショットのような Connection editor というタイトルのウィンドウが表示される。


ここで、1. 目的のネットワークを選択し、2. 編集をクリック すると、さらに次の Edit Connection [connection name] の画面が表示される。


この画面のタブの中から右端にある IPv6 のタブを選択すると、Privacy という項目があり、プルダウンタブをクリックすると Enabled (prefer temporary address) という選択肢が現れるので、これを選択する。

タスクバーのアイコンから一度コネクションを 切断(disconnect)-> 接続(connect) すると、次のスクリーンショットのように ip addr コマンドの出力には、 wlan0 の IPv6 アドレス (inet6 で始まる行) が3つ現れる。(ここでは無線LAN環境なので wlan0 になってる)


一番下のアドレス先頭が fe80 で始まるものは scope link であり、いわゆる link-local と呼ばれるもので、グローバルに使用されるものではない。

残りの2つの上の方、(末尾が :f39e/64 の方)は、scope global temporary となっており、これが 上の設定によって追加された temporary address である。

もう一つは MAC を元にした EUI-64 なアドレス(mngtmpaddrの方)である。

IPv6 は1つのインターフェイスに複数割りあてられるのでこういう状態でも両方のアドレスで通信は可能である。



モバイル機器やクライアント機においては、固定アドレス、EUI-64 なアドレスでは、個人が特定されプライバシーが侵害されるおそれがあるので、IPv6 tempaddr (temporary address) の利用が推奨される。

あちこちのネットワークを渡り歩くような機器の場合は tempaddr を使うように設定しておこう。

sysctl - 後日の検証

上記のように NetworkManager から wlan0 に対して tempaddr を利用するように設定した場合、
sysctl -a | grep "tempaddr"
の結果は、 
net.ipv6.conf.wlan0.use_tempaddr = 2 
のように "2" がセットされている。 

この値については、kernel 付属のドキュメントの networking/ip-sysctl.txt.gz (jessie の標準では linux-doc-3.16) につぎのような記述がある。


use_tempaddr - INTEGER
   Preference for Privacy Extensions (RFC3041).         
   <= 0 : disable Privacy Extensions
   == 1 : enable Privacy Extensions, but prefer
          public addresses over temporary addresses.
   >  1 : enable Privacy Extensions and prefer
          temporary addresses over public addresses.
  
Default:  0 (for most devices)                
         -1 (for point-to-point devices and loopback
             devices)

訳すと..


use_tempaddr (一時アドレスを使用)  整数値
       プライバシー拡張(RFC3041)の設定 
                      <= 0 (0以下) : プライバシー拡張 無効
                      == 1 (1)    : プライバシー拡張 有効、ただし
                                    一時アドレスよりパブリックアドレスを
                                    優先
                      >  1 (1より大) : プライバシー拡張 有効、
                                      パブリックアドレスより一時アドレス
                                      を優先使用する
       デフォルト  : 0 (ほとんどのデバイス用途)
               -1 (point-to-point デバイスと
                           ループバックデバイス用途)

となる。

  • tempaddr : 一時アドレス。ブートごとにカーネルにより自動生成されるランダムな IPv6 アドレス

  • public address : 管理者により設定された固定 IPv6 アドレスか、それがない場合はには、EUI-64 という方式によりネットワークインターフェイスの MAC アドレスより自動的に算出される固定 IPv6 アドレス。

なお、文中では RFC3041 と書かれているが、これはすでに古くなっており現時点(2015-08-23)では、より新しい RFC4941 によって置き換えられている。

ちょっと事情があり、jessie 環境をクリーンインストールしたデスクトップ機でも検証してみた。こちらは wireless 環境がないため、インターフェイスは eth0 になる。

また、固定 IPv6 を利用するにあたって network-manager や avahi-daemon をアンインストールし、インターフェイスのブリングアップを従来の ifupdown から systemd の systemd-networkd を利用する方式に変更してある。

クリーンインストール直後は net.ipv6.conf.eth0.use_tempaddr = 2 の状態であったが、network-manager の削除により、net.ipv6.conf.eth0.use_tempaddr は "0" に変化した。

これを /etc/sysctl.d/use_tempaddr.conf ファイルを作成し、次のように記述、net.ipv6.conf.eth0.use_tempaddr=1
再起動すると、eth0 に tempaddr が割り振られた。

しかし、ssh やブラウザで確認すると、tempaddr では接続していないことが確認された。

さらに、net.ipv6.conf.eth0.use_tempaddr=2 として再起動してみた。

すると、ip addr の結果は次の通り。

ブラウザのプロキシ設定を外して ipv6-test.com へ接続すると..

 
ssh で別マシンへ接続してみると..



 と、このように、eth0 に割り振られた 3つ(linklocal も含めると 4つ)の IPv6 アドレスのうち、ランダムに生成された tempaddr を使用して接続していることが確認された。

付記

さらに、MAC アドレスをランダムに生成するという方法もあり、windows10 で対応されたようで一部で話題になっているが、linux でも systemd-networkd を使用すると可能なようだ。

cf. man(5) systemd.link の [LINK] SECTION OPTION 参照。

[LINK] SECTION OPTIONS
       The "[Link]" section accepts the following keys:

       Description=
           A description of the device.

       Alias=
           The "ifalias" is set to this value.

       MACAddressPolicy=
           The policy by which the MAC address
           should be set.
           The available policies are:

           "persistent"
               If the hardware has a persistent MAC
               address, as most hardware should, and
               if it is used by the kernel, nothing
               is done.
               Otherwise, a new MAC address is
               generated which is guaranteed to be
               the same on every boot for the given
               machine and the given device, but
               which is otherwise random.

           "random"
               If the kernel is using a random MAC
               address, nothing is done.
               Otherwise, a new address is randomly
               generated each time the device appears,
               typically at boot.


この "random" の部分を見てみると、つぎの意味だと思われる。

"random"
  カーネルがランダムMACアドレスを使用する場合はなにもしない。そうでなければ一般的にはブート時に新しいアドレスがランダムに生成される。

ちなみに、kernel が random MAC を使うようにする設定方法についてはまだ調べていない..


2015年6月1日月曜日

## jessie - systemd - poweroff - acpid ##

Debian jessie では systemd の導入によって shutdown の動作は systemd の
コマンド systemctl が管理するようになった。

 $ ls -l /sbin | grep systemctl
 lrwxrwxrwx 1 root root  14  4月 17 00:53 halt -> /bin/systemctl
 lrwxrwxrwx 1 root root  14  4月 17 00:53 poweroff -> /bin/systemctl
 lrwxrwxrwx 1 root root  14  4月 17 00:53 reboot -> /bin/systemctl
 lrwxrwxrwx 1 root root  14  4月 17 00:53 runlevel -> /bin/systemctl
 lrwxrwxrwx 1 root root  14  4月 17 00:53 shutdown -> /bin/systemctl
 lrwxrwxrwx 1 root root  14  4月 17 00:53 telinit -> /bin/systemctl


うっかりマシンの電源ボタンに触れてしまい、
/sbin/poweroff が呼ばれて runlevel 0 に入って電源が切れた。

wheezy までの 'sudo shutdown -h now' では、BIOS でセットした キーボー
ドにより wake や ethernet インターフェイスによる wake (いわゆる
wakeonlan=wol) が有効な状態、つまりマザーボードへの電源が部分的に供給され
ている状態へ遷移していたのだが、jessie の poweroff ではマザーボードへ
の電源供給が完全に断たれた状態 hardoff へと遷移してしまう。

こうなると、ケースの電源ボタンを押しても起動しない。ケース裏の電源の
on/off スイッチを一度OFFにして再度ONにしてから電源ボタン押すという操作
が必要になってしまった。

なんでや..

キーボードでの wake や wol は便利で良く利用していて、jessie の
poweroff の状態はとても不便なので調べてみた。

マシンの電源管理は旧来、 BIOS の APM で制御していたのが、現在では ACPI
という OS から制御可能な仕組みになっている。(すでに BIOS 自体が EFI
(UEFI) と置き換えられている)

jessie の systemctl [halt, poweroff, reboot] では ACPI の制御はまだな
いようなので、acpid を動かすようにした。

もともと wheezy の前から acpid 入れてた 'はず' なんだけど..
dist-upgrade で消えたのかな? dist-upgrade 時のスクリプトを見てみたら
置き換える場面が記録されているが、先日 sudo apt-get install acpid して
るので.. たぶん、apt-get autoremove したかなんかの拍子に引きずられて消
えたの可能性が... why???


もうちょっと追いかけて正確に書くべきと思うのだが.. すんません..

ときになんか変なことが起こっていたら必要なパッケージが remove されてないかどうか確認してみるのがよい。

dpkg-query -l acpid
sudo apt-get install acpid

2015年5月28日木曜日

wanderlust: use gnutls insted of starttls

wanderlust: use gnutls insted of starttls

Created: Thu, May 28 10:55:42 JST 2015
Last modified: Thu, May 28 17:31:49 JST 2015

もしも F1 v starttls-use-gnutls あるいは M-x customize-valiable starttls-use-gnutls して、すでに "nil" ではなく "t" になっているならここから先はまったく必要ない。


手元では emacs24.5, wl, starttls についてはソースからインストール、gnutls-bin は deb パッケージをインストールしてある。

最近、TLS まわりにインシデントが出てきていろいろと調整していた。いろいろとログを見ていたら手元の wanderlust が LAN 内にある cyrus-imapd に接続に行くときに
 starttls: TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits new) no authentication
で接続していることに気づいた。

これ、そろそろ TLSv1.2 にしたほうが良いだろう、ということでうろうろしてみた。

starttls.el 自体は Gnus の一部として Emacs 本体に含まれている(emacs-*/lisp/gnus/starttls.el)。そこから先、実際にサーバーとコネクトする部分についてはカスタマイズ可能な変数として starttls.el で定義されている。

starttls.c (ftp://ftp.opaopa.org/elisp/starttls-0.10.tar.gz) を読んでみると TLSv1 の記述は見つかるが TLSv1.2 の記述は見つからない。

そこで starttls.el から starttls.c(のコンパイルされたもの) を呼ぶのではなく gnutls-cli を使って TLS 接続してみる。

 ;; wl だけで有効にしたいなら~/.wl に記述。
 (setq starttls-use-gnutls t)
 (setq starttls-gnutls-program "gnutls-cli")
 (setq starttls-extra-arguments '("--insecure"))


(M-x customize-variable でもいいかも)
自己署名証明書を使っている場合に検証 (validate) で弾かれるような場合は "--insecure" オプションを有効にする。これ、本来は MITHM があるので良くない。サーバーによって "--insecure" つけるかどうかフラッグで切り替えた方がよさそう..

詳細は man gnutls-cli して確認。

wl + gnutls-cli で cyrus-imapd へ接続した場合の cyrus-imapd のログは、
 starttls: TLSv1.2 with cipher ECDHE-RSA-AES128-SHA (128/128 bits new) no authentication
のようになった。

ひょっとすると deb パッケージなどで emacs + wl な環境とかだと、すでにこのあたり有効になってる可能性高いので、必ず
 M-x describe-valiable starttls-use-gnutls
とかして t か nil かをまず確認してみること。

2015年5月18日月曜日

jessie - systemd - journalctl - ANSI escape

jessie - systemd - journalctl - ANSI escape

wheezy から jessie に dist-upgrade したマシンで、sudo journalctl -l とかすると、systemd は bold 表示する目的で ANSI エスケープシーケンス使っているのがうまく解釈されずに生で見えてしまう。


これ、読みづらいので何とかすべく調べてみた。

$ sudo journalctl -l
だと上記画像の状態。調べてみると SYSTEMD_PAGER という環境変数に "less -j4aR" 設定するとかあったので、ためしに設定してみる

$ sudo -s
# env SYSTEMD_PAGER='less -j4aR' journalctl -l


じゃぁ、"lv -c" でもいけるよね.. ということで試したら問題ない。

そこで、一般ユーザーの.bachrc に export SYSTEMD_PAGER='lv -c' と書いて(ターミナル起動しなおして)みて、sudo journalctl -l すると、だめ..

なぜだかしばらく悩んで.. この SYSTEMD_PAGER 環境変数が引き継がれてないことに気づいた..

これ.. sudo だ..

sudo, sudoers

/etc/sudoers を読んでみると、冒頭に、

Defaults env_reset

という記述がある。そこで、man sudoers してみると、env_keep オプションが見つかる。現状の sudo の状況を確認するには、root ユーザで sudo -V してみろという記述も見つかったので、やってみる。

$ sudo -s
# sudo -V
[...]

状況確認ができたので、SYSTEMD_PAGER 環境変数を保護するようにしてみる。ちなみに、まずい環境変数設定されてぼこぼこにされるのはみんな嫌だと思うので、冒頭の Defaults env_reset を無効にするようなことはやってはいけない。

visudo

/etc/sudoers ファイルは visudo というコマンドで編集する。これはロックがかかったり、万一、記述ミスがあったりすると、sudo できなくなってしまうので、こういう状況を避けるためにチェッカーが動いてくれる優れものだ。

$ sudo visudo

してみると、vi じゃなくて nano が起動してしまった..





nano を使い慣れている方はそのまま編集されるといいと思うのだが、僕はなれてないので、これを vim に替えたい。

そのまま nano を終了するには、末尾の案内にしたがって  Ctrl - X をタイプする。



変更保存するか聞かれるので "N" で保存しないを選択..

以前の Debian だと、環境変数 EDITOR とかで切り替えられたのだが、jessie だと、EDITOR 読んでもらえないみたいなので、update-alternatives で /usr/bin/editor を切り替えないとだめみたい。

まず状況確認..


$ update-alternatives --display editor
editor - 自動モード
  リンクは現在 /bin/nano を指しています
/bin/ed - 優先度 -100
  スレーブ editor.1.gz: /usr/share/man/man1/ed.1.gz
/bin/nano - 優先度 40
  スレーブ editor.1.gz: /usr/share/man/man1/nano.1.gz
/usr/bin/vim.basic - 優先度 30
  スレーブ editor.1.gz: /usr/share/man/man1/vim.1.gz



$ sudo update-alternatives --config editor
alternative editor (/usr/bin/editor を提供) には 4 個の選択肢があります。

  選択肢    パス              優先度  状態
------------------------------------------------------------
* 0            /bin/nano            40        自動モード
  1            /bin/ed             -100       手動モード
  2            /bin/nano            40        手動モード
  3            /usr/bin/vim.basic   30        手動モード
  4            /usr/bin/vim.tiny    10        手動モード

現在の選択 [*] を保持するには Enter、さもなければ選択肢の番号のキーを押してください: 3
 
update-alternatives: /usr/bin/editor (editor) を提供するためにマニュアルモードで /usr/bin/vim.basic を使います


これで visudo を呼ぶと vim で編集できるようになる。

$ sudo visudo





OK.
man sudoers して、env_keep を使って SYSTEMD_PAGER をリセット対象から外すように指定してみる。





$ env SYSTEMD_PAGER='lv -c' sudo journalctl -l



OK.

これで一般ユーザ の(rootじゃないよ) ~/.bashrc に

exports SYSTEMD_PAGER='lv -c'

と 書いておくと次からはなにも考えずに sudo journalctl -l しても ANSIエスケープシーケンス見えてしまうことはない && bold (フォントの関係などで bold できないばあいは一段明るい色で強調表示される)表示される。はず。

------

PS.


vim をカラフルにするには、(ここの画像のは jellybeans.vim)カラー設定を書くかいただいてきて、~/.vim/colors に *.vim ファイルを保存するか ln -s しておく。

jellybeans の場合、
https://github.com/nanotech/jellybeans.vim から git clone するか http で zip をもらってきて unzip する。

で、 ~/.vimrc に
set background=dark
colorscheme jellybeans
syntax on
filetype on

みたいにかいておくとできる。