スキップしてメイン コンテンツに移動

投稿

2009の投稿を表示しています

RAIDの構築

概要   ソフトウェアRAIDの構築とディスク故障時の復帰方法を述べる.ソフトウェアRAIDの実現手法として,DM (Device Mapper) とmd (Multiple Devices) があるが,ここでは後者を利用した構築方法について説明する. RAID1 構築   以下では,/dev/sdaと/dev/sdbを組み合わせてRAID1を構築する場合を例に示す. デバイスファイルの作成 # mdadm --create /dev/md1 --Level=1 --raid-devices=2 /dev/sda /dev/sdb   上記コマンドで,/dev/md1にRAID1を構築する.RAID1の構築に,/dev/sdaと/dev/sdbを使用する.--raid-devicesオプションで使用するディスク数を指定する.   コマンド実行後,RAIDが構築されるが,これには少々時間が掛かる.以下のコマンドで進捗状況を確認できる. # cat /proc/mdstat 設定ファイルの記述   このままでは,マシン再起動後にはRAID情報が失われるので,再起動時にもディスクを認識できるよう,設定ファイルを記述する.   まず,以下のコマンドで現在のディスク構成情報を確認する. # mdadm --examine --scan ARRAY /dev/md1 Level=raid1 num-devices=2 \ UUID=397eb5bc:2b8efc23:14593eda:61f26147 # vi /etc/mdadm.conf -- DEVICE partitions ARRAY /dev/md1 Level=raid1 num-devices=2 \ UUID=397eb5bc:2b8efc23:14593eda:61f26147   DEVICE行に,RAID1を構成するディスクを記述する.「DEVICE /dev/sda /dev/sdb」とも書けるが,「DEVICE partitions」と書くと,/proc/partitionを参照し,ある程度自動に判別する. ファイルシステムの作成   以下のコマンドで,ファイルシステムを作成する(以下はext3の場合). # mke2fs -j /dev/md1

info

職歴 2010年 東京工業大学 大学院情報理工学研究科 計算工学専攻 修士過程修了 2010年 パナソニック株式会社 入社 2012年 schememonoに参画(プライベートグループ) 実績 大学 メニーコアプロセッサアーキテクチャ開発 CPUに数百コアが搭載される時代の到来に向け、最適なプロセッサアーキテクチャを、システムソフトウェアとハードウェアの両面から検討。加えて、性能評価システムも開発。 パナソニック TV/Blu-rayディスクレコーダ向け、基本ソフトウェア開発 (2.0年) Linuxカーネル開発 ドライバ開発 起動高速化 タスクスケジューリング最適化 デジタルカメラ向け、ネットワーク機能開発(1.5年間) Wi-Fiモジュール商品搭載 ネットワークミドルウェア開発 リモート撮影機能 スマートフォン/タブレット保存機能 PC保存機能 クラウド保存機能   通信プロトコル設計 デジタルカメラ/デジタルムービーカメラ向け、コーデック開発(1年間)  4K動画コーデック新規開発 360fpsハイスピード動画コーデック開発 全108動画モード画質チューニング ウェアラブルカメラ向けコーデック開発 ストリーム配信用QoS機能新規開発 エネマネ関連商品開発 (現在) schememono Webフロントエンドを中心に実験、結果をlabサイトにて公開 unkai向けソフトウェア開発 RPi向けソフトウェア開発 RPi操作用スマートフォンWebアプリ開発

シェルスクリプトの便利な小技

文字列操作 文字列の長さを取得する   書式: ${#name}   変数nameの文字列の長さを返す. $ HOGE=hoge $ echo ${#HOGE} 4 変数の修正 部分文字列を削除 数値で指定する   書式: ${name:number}   変数nameの文字列の先頭からnumberで指定した文字数を削除する. $ HOGE=hoge $ echo ${HOGE#3} e パターンマッチを使う   書式: ${name#pattern}(最短マッチ) ${name##pattern}(最長マッチ)   変数nameの文字列の先頭から文字列patternにマッチした部分を削除する. $ HOGE=hoge $ echo ${HOGE#ho} ge 置換 パターンマッチを使う   書式: ${name/pattern/repl}(一度限り) ${name//pattern/repl}(繰り返しあり)   変数nameの文字列とpatternで指定した文字列が一致した部分をreplで指定した文字列に置き換える.

SSH ポートフォワーディング

ポートフォワーディング ssh hostname] -l [usrname] -N -f [-L   オプション -N ログイン時にシェルを立ち上げない -f sshをバックグラウンドで実行する -L ローカルからリモートにフォワーディングする -R リモートからローカルにフォワーディングする -l ユーザIDを指定する 例 ローカルの8080番をホスト名server.sample.jpのHTTP(80番)にフォワードする.   接続の確立. $ ssh -f -N -L 8080:localhost:80 server.sample.jp -l username   上記コマンドのlocalhostは,server.sample.jpが解釈するホスト名であることに注意する.つまり,server.sample.jpから見たlocalhostなので,localhost = server.sample.jpとなる.従って,上記コマンドは,以下のコマンドと同等である. $ ssh -f -N -L 8080:server.sample.jp:80 server.sample.jp -l username   フォワーディングされていることを確認. $ firefox localhost:8080 ローカルの2222番をゲートウェイgw.sample.jp経由でserver.sample.jpに接続する. $ ssh -f -N -L 2222:server:22 gw.sample.jp -l username $ ssh -p 2222 localhost 良くわかる解説   sshの特徴の一つとして,ポートフォワーディングがある.たとえば,次のようにsshを実行する. % ssh -L X:Remote:Y Remote -l username   このあと,別のウィンドウからローカルマシン(Local)のX番ポートに接続すると,sshによって,その通信はすべてRemoteのY番ポートへ転送される.これをポートフォワーディングという.   sshでポートフォワーディングができる一番の意義は,ローカルとリモートマシン間の通信がsshが提供するレベルのセキュアなものになるということである.従って,この機能を使ってSMTP(25番)やPOP(110番)と通信すれば,メールの

ターミナルが文字化けしたときの対処

概要   ターミナルの文字が化けて,正常に表示されなくなることがある.これには,ターミナルを一度閉じて,再度新しいターミナルを立ち上げれば回復するが,煩わしいものである.   ここでは,ターミナルを閉じること無く,文字化けの除隊から回復する方法を記す. 文字が表示されない/改行がおかしい   ターミナルの設定がエコーなしになってたり,改行(LF)をCR/LFに変換しなくなったりする.   原因)sttyの設定がおかしくなってる stty -a すると、正常な場合と異常な場合で何箇所か違ってるはず 正常な状態で stty -g した結果を保存しておき,   異常になったらそれを実行する. 改行が効かないときは ^J で代用できるはず. % stty 2d02:5:4bf:8a3b:3:1c:7f:15:4:0:1:ff:11:13:1a:ff:12:f:17:16:ff:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 英字が化ける(SI/SO問題)   誤って SO (0x0E,0/14) を表示すると,英字にあたる領域(GL)にG1領域の文字が呼び出されてしまい,以後英字が文字化けする.   SIを表示すれば治る. % echo ^V^O   ctrlを押したまま,VOと押す. 英字が化ける(screen問題)   screenを使っている場合,screen側の文字エンコーディングがおかしくなることがある.screenのコマンドで下記のいずれかを指定. :encoding utf8 :encoding euc