lpic303 操作のセキュリティ RCS

操作のセキュリティってーといまいちパッとしないけれど、更新履歴の管理の事で、本書で取り上げているのはRCSとPuppet。

更新履歴ってーと、何があるか、ざーっと上げると RCS CVS SVN GIT などなど。

調べてみると一番古いのがRCSのようですね。ではRCSを簡単に使ってみようと思います。

RCS

rcs_test.txt というテキストデータを作って色々やってみます。

$ mkdir RCS
$ cd RCS
$ vim rcs_test.txt
$ cat rcs_test.txt
いつまで続ける~?
$ ls -l rcs_test.txt
-rw-rw-r--. 1 take take 28 11月  1 19:26 2014 rcs_test.txt

ci というコマンドでチェックイン(登録)します。. だけの入力でコメント終了らしく sendmail みたい。

$ ci rcs_test.txt
rcs_test.txt,v  <--  rcs_test.txt
enter description, terminated with single '.' or end of file:
NOTE: This is NOT the log message!
>> first
>> .
initial revision: 1.1
done

チェックインしたファイルはパーミッションが444となります。

編集したい時はチェックアウトしますが、-l オプションでロック。そうすると他のユーザーは編集ができないようにロックされるようです。

$ co -l rcs_test.txt,v
 rcs_test.txt,v  -->  rcs_test.txt
 revision 1.1 (locked)
 done

では再びチェックイン。変更を加えたのでリビジョンがver 1.2 になっています。

$ ci rcs_test.txt
 rcs_test.txt,v  <--  rcs_test.txt
 new revision: 1.2; previous revision: 1.1
 enter log message, terminated with single '.' or end of file:
 >> 更新
 >> .
 done

ではここでチェックイン時、チェックアウト時の主なオプションを

ciのオプション

-f 強制的にチェックインする
-l 指定したリビジョンがロックされる
-r 指定したリビジョンでチェックインする
-u 編集したファイルを残しておきたい時に使う

coのオプション

-f 強制的にチェックアウトする
-l ロックしてチェックアウトする
-r 指定したバージョン > 最新のリビジョンをチェックアウトする
-u 同じユーザーに限ってロック解除

 

幾つか試してみましょう

-f 強制チェックアウトすると、444でした。

$ co -f rcs_test.txt,v
rcs_test.txt,v  -->  rcs_test.txt
revision 1.2
done
$ ls -l
合計 8
-r--r--r--. 1 take take  44 11月  1 19:53 2014 rcs_test.txt
-r--r--r--. 1 take take 335 11月  1 19:44 2014 rcs_test.txt,v

-l の場合は644です。

$ co -l rcs_test.txt
rcs_test.txt,v  -->  rcs_test.txt
revision 1.2 (locked)
done
$
$ ls -l
合計 8
-rw-r--r--. 1 take take  44 11月  1 19:55 2014 rcs_test.txt
-r--r--r--. 1 take take 345 11月  1 19:55 2014 rcs_test.txt,v

差分の確認。

$ rcsdiff -r rcs_test.txt
===================================================================
RCS file: rcs_test.txt,v
retrieving revision 1.3
diff -r1.3 rcs_test.txt

$ rcsdiff -r1.2 rcs_test.txt
===================================================================
RCS file: rcs_test.txt,v
retrieving revision 1.2
diff -r1.2 rcs_test.txt
2a3
> いつまでもー

$ rcsdiff -r1.1 rcs_test.txt
===================================================================
RCS file: rcs_test.txt,v
retrieving revision 1.1
diff -r1.1 rcs_test.txt
1a2,3
> 祝3周年。
> いつまでもー

RCSのオプション

-b リビジョン 分岐を作ります。指定したリビジョンを分岐の枝とします。b木のbかな。
-i 新しくRCSファイルを作成します。
-l リビジョン 指定してリビジョンロックします。
-L ファイルの所有者でもチェックインができなくなる。
-U RCSファイルの所有者はロックしなくても、チェックイン可能になる。

 

チェックイン、チェックアウトを何度か繰り返しやってると、感じが掴めてきた。
こんなとこでいいかなと思えてくる。
目的は資格ではなくて勉強することなのだ!

 

このままPuppetに入るとちょっと長くなりそうなので、今回はこれで終了にします。

 

Similar Posts:


Leave a Reply

Your email address will not be published. Required fields are marked *