新しいブログに移動しました。
9ensanのLifeHack
こちらの記事も必要に応じて新しいブログに移動させる予定です。
今後ともよろしくお願い致します。

HOME > 

2009年03月

.vimrcの設定

  • 2009.03.06 (金) 17:25
  • 設定

Ubuntuを使っていてそろそろ、.vimrcもちゃんとしないとと思いいつもお世話になっているサイトずんwikiさんからvimrcを拝借しました

いつもここの設定をいじくって使っています。

.vimrcの設定で困っている方がいたらここのサイトの設定を参考にしたらだと思います。

 

一応、自分が使ってる内容です。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
" vim: set ts=4 sw=4 sts=0:
"-----------------------------------------------------------------------------
" 文字コード関連
"
if &encoding !=# 'utf-8'
	set encoding=japan
	set fileencoding=japan
endif
if has('iconv')
	let s:enc_euc = 'euc-jp'
	let s:enc_jis = 'iso-2022-jp'
	" iconvがeucJP-msに対応しているかをチェック
	if iconv("\x87\x64\x87\x6a", 'cp932', 'eucjp-ms') ==# "\xad\xc5\xad\xcb"
		let s:enc_euc = 'eucjp-ms'
		let s:enc_jis = 'iso-2022-jp-3'
	" iconvがJISX0213に対応しているかをチェック
	elseif iconv("\x87\x64\x87\x6a", 'cp932', 'euc-jisx0213') ==# "\xad\xc5\xad\xcb"
		let s:enc_euc = 'euc-jisx0213'
		let s:enc_jis = 'iso-2022-jp-3'
	endif
	" fileencodingsを構築
	if &encoding ==# 'utf-8'
		let s:fileencodings_default = &fileencodings
		let &fileencodings = s:enc_jis .','. s:enc_euc .',cp932'
		let &fileencodings = &fileencodings .','. s:fileencodings_default
		unlet s:fileencodings_default
	else
		let &fileencodings = &fileencodings .','. s:enc_jis
		set fileencodings+=utf-8,ucs-2le,ucs-2
		if &encoding =~# '^\(euc-jp\|euc-jisx0213\|eucjp-ms\)$'
			set fileencodings+=cp932
			set fileencodings-=euc-jp
			set fileencodings-=euc-jisx0213
			set fileencodings-=eucjp-ms
			let &encoding = s:enc_euc
			let &fileencoding = s:enc_euc
		else
			let &fileencodings = &fileencodings .','. s:enc_euc
		endif
	endif
	" 定数を処分
	unlet s:enc_euc
	unlet s:enc_jis
endif
" 日本語を含まない場合は fileencoding に encoding を使うようにする
if has('autocmd')
	function! AU_ReCheck_FENC()
		if &fileencoding =~# 'iso-2022-jp' && search("[^\x01-\x7e]", 'n') == 0
			let &fileencoding=&encoding
		endif
	endfunction
	autocmd BufReadPost * call AU_ReCheck_FENC()
endif
" 改行コードの自動認識
set fileformats=unix,dos,mac
" □とか○の文字があってもカーソル位置がずれないようにする
if exists('&ambiwidth')
	set ambiwidth=double
endif
 
"-----------------------------------------------------------------------------
" 編集関連
"
"オートインデントする
set autoindent
"バイナリ編集(xxd)モード(vim -b での起動、もしくは *.bin で発動します)
"augroup BinaryXXD
"	autocmd!
"	autocmd BufReadPre  *.bin let &binary =1
"	autocmd BufReadPost * if &binary | silent %!xxd -g 1
"	autocmd BufReadPost * set ft=xxd | endif
"	autocmd BufWritePre * if &binary | %!xxd -r | endif
"	autocmd BufWritePost * if &binary | silent %!xxd -g 1
"	autocmd BufWritePost * set nomod | endif
"augroup END
 
"-----------------------------------------------------------------------------
" 検索関連
"
"検索文字列が小文字の場合は大文字小文字を区別なく検索する
set ignorecase
"検索文字列に大文字が含まれている場合は区別して検索する
set smartcase
"検索時に最後まで行ったら最初に戻る
set wrapscan
"検索文字列入力時に順次対象文字列にヒットさせない
set noincsearch
 
"-----------------------------------------------------------------------------
" 装飾関連
"
"シンタックスハイライトを有効にする
if has("syntax")
	syntax on
endif
"行番号を表示しない
set number
"タブの左側にカーソル表示
set listchars=tab:\ \
set list
"タブ幅を設定する
set tabstop=4
set shiftwidth=4
"入力中のコマンドをステータスに表示する
set showcmd
"括弧入力時の対応する括弧を表示
set showmatch
"検索結果文字列のハイライトを有効にする
set hlsearch
"ステータスラインを常に表示
set laststatus=2
"ステータスラインに文字コードと改行文字を表示する
set statusline=%<%f\ %m%r%h%w%{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'}%=%l,%c%V%8P
 
 
"-----------------------------------------------------------------------------
" マップ定義
"
"バッファ移動用キーマップ
" F2: 前のバッファ
" F3: 次のバッファ
" F4: バッファ削除
map <F2> <ESC>:bp<CR>
map <F3> <ESC>:bn<CR>
map <F4> <ESC>:bw<CR>
"表示行単位で行移動する
nnoremap j gj
nnoremap k gk
"フレームサイズを怠惰に変更する
map <kPlus> <C-W>+
map <kMinus> <C-W>-

 

 

最強のシェル zshの設定

  • 2009.03.03 (火) 21:09
  • 設定

UNIXでShellというと、「bash」や「tcsh」を使っている人が多いかと思いますが、俺がおススメするのは、最強のシェルその名も「zsh」です。

zshの設定内容をまとめておきますばい勉強したばいzsh最高ばい

 

と思ったけど・・・難しい勉強中です

 

.zshenv

1
2
# 文字コードの設定
export LANG=ja_JP.UTF-8

.zshrc

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
###############################################
# キーバインド                                #
###############################################
# viライクキーバインド
bindkey -v
# Emacsライクキーバインド
#bindkey -e
 
###############################################
# 補完関係                                    #
###############################################
# 標準の補完設定
autoload -U compinit
compinit
 
# ディレクトリ名を入力するだけでカレントディレクトリを変更
setopt auto_cd
 
# タブキー連打で補完候補を順に表示
setopt auto_menu
 
# 自動修正機能(候補を表示)
#setopt correct
 
# 補完候補を詰めて表示
setopt list_packed
 
# 補完候補一覧でファイルの種別を識別マーク表示(ls -F の記号)
setopt list_types
 
# パスの最後に付くスラッシュを自動的に削除しない
setopt noautoremoveslash
 
# = 以降でも補完できるようにする( --prefix=/usr 等の場合)
setopt magic_equal_subst
 
# 補完候補リストの日本語を正しく表示
setopt print_eight_bit
 
# 補完の時に大文字小文字を区別しない(但し、大文字を打った場合は小文字に変換しない)
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
 
# lsコマンドの補完候補にも色付き表示
eval `dircolors`
zstyle ':completion:*:default' list-colors ${LS_COLORS}
# kill の候補にも色付き表示
zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([%0-9]#)*=0=01;31'
 
###############################################
# 履歴関係                                    #
###############################################
# ヒストリー機能
HISTFILE=~/.zsh_history      # ヒストリファイルを指定
HISTSIZE=10000               # ヒストリに保存するコマンド数
SAVEHIST=10000               # ヒストリファイルに保存するコマンド数
setopt hist_ignore_all_dups  # 重複するコマンド行は古い方を削除
setopt hist_ignore_dups      # 直前と同じコマンドラインはヒストリに追加しない
setopt share_history         # コマンド履歴ファイルを共有する
setopt append_history        # 履歴を追加 (毎回 .zsh_history を作るのではなく)
setopt inc_append_history    # 履歴をインクリメンタルに追加
setopt hist_no_store         # historyコマンドは履歴に登録しない
setopt hist_reduce_blanks    # 余分な空白は詰めて記録
#setopt hist_ignore_space    # 先頭がスペースの場合、ヒストリに追加しない
 
# cd - と入力してTabキーで今までに移動したディレクトリを一覧表示
setopt auto_pushd
 
# ディレクトリスタックに重複する物は古い方を削除
setopt pushd_ignore_dups
 
# コマンド履歴の検索機能の設定
# ^[  は「エスケープ」
# viなら    Ctrl-v ESC
# Emacsなら Ctrl-q ESC
# viで編集する場合
# 上2行は Ctrl-v を押下した後、希望のキーを押下
# 下2行は「エスケープ」の後にキーの端末コードを入力
autoload history-search-end
zle -N history-beginning-search-backward-end history-search-end
zle -N history-beginning-search-forward-end history-search-end
bindkey "^[OA" history-beginning-search-backward-end
bindkey "^[OB" history-beginning-search-forward-end
bindkey "^[[A" history-beginning-search-backward-end
bindkey "^[[B" history-beginning-search-forward-end
# 複数行コマンドの場合、上記の設定だと少々不都合
# tcshの様にする場合は以下のようにする
#bindkey "^P" history-beginning-search-backward-end
#bindkey "^N" history-beginning-search-forward-end
 
# インクリメンタルサーチの設定
bindkey "^R" history-incremental-search-backward
bindkey "^S" history-incremental-search-forward
 
# 全履歴の一覧を出力する
function history-all { history -E 1 }
 
###############################################
# プロンプト関係                              #
###############################################
# プロンプトに escape sequence (環境変数) を通す
setopt prompt_subst
 
# プロンプトの設定
PROMPT='%m%# '
RPROMPT=' %~'
 
# ターミナルのタイトル
case "${TERM}" in
kterm*|xterm)
    precmd() {
        echo -ne "\033]0;${USER}@${HOST%%.*}:${PWD}\007"
    }
    ;;
esac
 
###############################################
# その他                                      #
###############################################
# ファイル作成時のパーミッション
umask 022
 
setopt no_beep               # ビープ音を消す
#setopt nolistbeep           # 補完候補表示時などにビープ音を鳴らさない
 
#setopt interactive_comments # コマンドラインで # 以降をコメントとする
 
setopt numeric_glob_sort     # 辞書順ではなく数値順でソート
 
setopt no_multios            # zshのリダイレクト機能を制限する
 
unsetopt promptcr            # 改行コードで終らない出力もちゃんと出力する
#setopt ignore_eof           # Ctrl-dでログアウトしない
 
setopt no_hup                # ログアウト時にバックグラウンドジョブをkillしない
setopt no_checkjobs          # ログアウト時にバックグラウンドジョブを確認しない
setopt notify                # バックグラウンドジョブが終了したら(プロンプトの表示を待たずに)すぐに知らせる
 
#setopt rm_star_wait         # rm * を実行する前に確認
setopt rm_star_silent        # rm * を実行する前に確認しない
#setopt no_clobber           # リダイレクトで上書きを禁止
unsetopt no_clobber          # リダイレクトで上書きを許可
 
#setopt chase_links          # シンボリックリンクはリンク先のパスに変換してから実行
#setopt print_exit_value     # 戻り値が 0 以外の場合終了コードを表示
#setopt single_line_zle      # デフォルトの複数行コマンドライン編集ではなく、1行編集モードになる
 
# カーソル位置から前方削除(Ctrl-u)
bindkey '^U' backward-kill-line
 
# Ctrl-h で単語ごとに削除
bindkey "^h" backward-kill-word
# / を単語の一部とみなさない記号の環境変数から削除
WORDCHARS='*?_-.[]~=&;!#$%^(){}<>'
 
#function chpwd() { ls }     # cd の後 ls も実行
 
###############################################
# エイリアス                                  #
###############################################
# 補完される前にオリジナルのコマンドまで展開してチェックする
setopt complete_aliases
 
# エイリアス
alias ls='ls --color=auto'
alias h='history -E -32'
alias ll='ls -laF --color | more'

 

 

情報処理試験の勉強 番外編 ~1~

  • 2009.03.03 (火) 14:53
  • 資格

内部割込みとは、プログラムの命令を実行した結果として発生する割込み

内部割込みの例)

 0による除算、演算結果のあふれ、権限のないメモリ領域へのアクセス、オペランド語境界制限違反、割込み発生命令(スーパーバイザーコール)の実行

外部割込みとは、実行中のプログラムの命令とは関係なく発生する割込み

外部割込みの例)

 商用電源が瞬時停電した場合の電源異常、入出力の完了、メモリパリティエラーが原因で発生する割込み

 

水平パリティチェック

データ転送での誤り制御に用いられる。
伝送単位のブロックごとに、その水平方向にそれぞれパリティビットを1個ずつ付加する方式

チェックサム

パソコン通信などで使われる方式。
一定のビット数に分割されたブロックのデータを数値として計算し、検査用の文字を作り、データに付加する。

チェックディジット

コードの入力チェックなどに用いる。
誤りチェックの対象となるデータに対して、ある計算を施し、得られた文字(数字)をそのデータに付加する。

ハミング符号

1ビット誤りの児童訂正が行われ、2ビット誤りの検出を行う。
この方式では、誤り訂正に用いるチェックビットをあらかじめデータの中に含ませておく。

 

メモリインターブ方式

1サイクルで同時に数番地のデータを読み書きすることで、CPUが主記憶装置を高速に読み書きする方式

ディスクミラーリング

2台のディスク装置に同一データを重複して書き込むことで信頼性を高める方式である。
しかし、チャンネルを共用するため、チャンネルが故障すると2台とも使えなくなる。

ディスク最適化

ハードディスクでファイルのデータが書き込まれている位置を物理的に配置し直すことによって、読み書きを高速化すること

ディスクストライピング

データをバイト単位やブロック単位に分割して、複数の配列状態に並べたディスク装置に分散し、ディスクの並列アクセスを行う高速化手法で、RAIDの基本的な手法

情報セキュリティスペシャリスト試験勉強 2日目

  • 2009.03.03 (火) 13:34
  • 資格

脅威と脆弱性

情報セキュリティ対策とは、「守るべき情報資産の価値へ悪影響を及ぼす脅威」と「脆弱性」を明確にし、対処すること

保護すべき資産を洗い出し、「資産に関する脅威」と「脅威に関する脆弱性」を識別・評価することによって、セキュリティ対策の整理ができる。

 

資産(asset)

  • 「組織にとって価値のあるもの」
    管理の対象は、組織が保有する情報全般に渡ります。

脅威(threat)

  • 「資産又は組織になんらかの損失・損害を発生させるインシデントの存在的な原因となるもの」

インシデントとは、事業運営や、組織の情報セキュリティを脅かす可能性の高い単独もしくは、一連の「好ましくない事件・事故」、又は「予期せぬ事件・事故」のことです。

脆弱性(vulnerability)

  • 「資産が保有する脅威に対する弱さ」

脆弱性と脅威が組み合わさり、初めてインシデントにつながります。

 

 

情報セキュリティスペシャリスト試験勉強 1日目

  • 2009.03.02 (月) 17:57
  • 資格

情報セキュリティの定義

情報セキュリティとは、1992年 OECD(経済開発協力機構)より発行された「OECD Guidelines for the Security of Information Systems, 1992」の中で
情報の機密性、完全性、可用性を保護すること」と定義されている。

「ISO/IEC 27001:2005」では、情報セキュリティとは、「情報の機密性、完全性及び可用性を維持すること。
さらに、真正性、責任追跡性、否認防止及び信頼性のような特性を維持することを含めても良い
」と定義されている。

機密性(confidentiality)
  • 認可されていない個人、エンティティ(団体等)又はプロセスに対して、情報を使用不可又は非公開にする特性

許可されてい第三者へ漏洩した場合に個人又は、組織に悪影響が発生する情報を保護するために、許可されたもののみ情報にアクセスさせるように制限することが要求される。
機密情報保護する対策としては、サーバーやアプリケーションによるアクセス制御を行うことが該当します。

完全性(integrity)
  • 資産の正確さ及び完全さを保護する特性

情報が不正確または、不完全であった場合に、個人または組織に悪影響が発生する情報を保護するために、故意又は、過失による改ざん・書き換え・消失を防ぐことが要求される。
完全性を保護する対策としては、アプリケーションによる入力チェックやアクセス制御を行うことが該当します。

可用性(availability)
  • 認可されたエンティティ(団体など)が要求したときに、アクセス及び使用が可能である特性。

必要なときにいつでも利用可能な状態が要求される情報を保護するために、情報を利用できる環境を維持することが要求される。
可用性を保護する対策としては、システムやネットワークを冗長化するなどして、システムダウン等を防ぐことが該当します。

真正性(authenticity)
  • 対象またはリソースが要求されているものと同一であることを主張する特性。
    真正性は、ユーザー、プロセス、システム、情報などのエンティティに対して適用する。

電子署名やタイムスタンプなどで改ざん・書き換え・混同などがないことを保証することが要求される。
信頼できる第三者機関が運営している認証局のPKIの仕組みを用いることで、真正性が確保できます。

責任追跡性(accountability)
  • あるエンティティの動作が、そのエンティティに対して一意に追跡できることを確保する特性。

匿名性の高いインターネット上でも、行為に責任を取るべきユーザーを追跡し特定できることを要求される。
アクセス権保持者の情報へのアクセスログを取得し、行動追跡を行います。

否認防止(non-repudiation)
  • セキュリティサービスの1つ。
    これは、通信における偽りの関与の否認に対する防護を提供する。

ユーザーの利用を事後になって否認されることを防止するために、デジタル署名などで証拠を残すことが要求されます。

信頼性(reliability)
  • 矛盾のない計画どおりの動作及び結果を確保する特性

指定された条件下で要求された機能を行う能力のことです。
可用性や生存可能性と密接な関係があります。

お薦めのレンタルサーバー
広告
お薦めの書籍
HOME > 

2009年03月