タグ

linuxに関するsaicologicのブックマーク (38)

  • Linuxファイルシステムの基礎と応用 | OSDN Magazine

    ファイルシステムにおいてLinuxと他のOSが異なる点――それは、他のOSは標準でサポートするファイルシステムが2~3種程度であるのに対し、Linuxは非常に多彩な選択肢(ext2/ext3、ReiserFS、JFS、XFSなど)を提供していることだ。現在のところext3が使われることが多いものの、その理由は歴史的な経緯によるものであり、このファイルシステムがReiserFSやJFS、XFSに対して機能、性能的に優れているというわけではない。 以下で紹介する4つの記事は、2003年に発行された『Linux Power Tools』からの抜粋であり、ここではext3、ReiserFS、JFS、XFSの4つのファイルシステムのその特徴から設定・運用方法までが解説されている。4年前の記事ではあるが、その内容は2007年の現在でも通用するものばかりだ(ext4やReiser4といった新世代のファイ

    Linuxファイルシステムの基礎と応用 | OSDN Magazine
  • Linuxの各種コマンドのチートシート

    UnixやLinuxには山ほどコマンドがあるわけですが、それらすべてを覚えるのは至難の業。そのため、よく使うコマンド以外はあんまり詳しく覚えていないわけですが、そういう場合にちらっと見て「ああこれこれ」といった感じでわかるようにできるのがカンニングシートみたいなこのチートシート。Linux初心者から初級者、中級者に至るまで幅広くオススメです。 ダウンロードは以下から。 FOSSwire >> Unix/Linux Command Cheat Sheet クリエイティブ・コモンズライセンスで配布されているPDFファイルなので、印刷して手元に置いておけば結構便利かも。リファレンスブックほどのものはいらないが……という人に最適です。

    Linuxの各種コマンドのチートシート
  • inetd の仕組みを見てみる - naoyaのはてなダイアリー

    inetd や xinetd (以下 inetd) はインターネットサービスをデーモン化するのに共通している処理を担い、ほとんどの時間をアイドル状態で過ごすその手のサービスに必要なリソースを節約する役割を果たします。 inetd のひとつ面白いところは、inetd でサービス化したいプログラムの標準入力/標準出力がクライアントソケットの入出力に接続されるところです。例えば daytime 相当のサービスを自分で作ろうと思った場合 #!/usr/local/bin/perl # daytime.pl use strict; use warnings; use DateTime; use IO::Handle; STDOUT->autoflush(1); STDOUT->printf( "%s\n", DateTime->now(time_zone => 'Asia/Tokyo') ); と標

    inetd の仕組みを見てみる - naoyaのはてなダイアリー
  • Command Technica:rsyncを使った熟練者レベルのバックアップ (1/3) - ITmedia エンタープライズ

    rsyncを使いこなせば、あなたが想定するバックアップのニーズのほとんどに対応できるようになる。ここでは、あなたをrsyncマスターにするためのポイントを解説する。 この2カ月でわたしはあちこちに出かけた。その間、メインで使っているデスクトップコンピュータは眠ったままだった。もしrsyncを使いこなせていなかったら、きっと厄介なことになっていただろう。しかし、このユーティリティを定期的に使っていたおかげで、すでにわたしのデータ(とにかくその大部分)は別の場所にコピーされていつでも使える状態になっていた。rsyncの習得には少し時間が掛かるが、いったん覚えてしまえば、ごく短いスクリプトを使ってバックアップのニーズのほとんどに対応できるようになるはずだ。 rsync の素晴らしさはどこにあるのか。1つは、毎回ファイルを丸ごとコピーするのではなく、新旧ファイル間の差分をコピーすることでファイル転

    Command Technica:rsyncを使った熟練者レベルのバックアップ (1/3) - ITmedia エンタープライズ
  • 完全仮想化でもネイティブ並みのI/O速度を実現、SUSE Linux - @IT

    2007/06/15 仮想化環境の課題は速度。中でも完全仮想化と呼ばれる方法では、ネットワークやディスクといったI/O関連のパフォーマンスが大幅に低下してしまう。ゲストOSの中からハードウェアにアクセスするときに発生する特権命令は、仮想化レイヤでフックし、それを変換するという処理が入るため、オーバーヘッドが大きくなるからだ。オープンソースの仮想化ソフトウェア「Xen」では、完全仮想化のほかに、ゲストOSに変更を加えてオーバーヘッドを減らす準仮想化もサポートする。準仮想化環境ではゲストOS自体が仮想化に最適化されているため、オーバーヘッドが少なく、ネイティブ実行と遜色のないパフォーマンスを維持できる。 これまで問題となっていたのは、準仮想化環境に対応するよう手を入れられたゲストOSが、必ずしも存在しないことだ。特にWindows系のOSをゲストOSとして動かす時には、これが最大の問題だった。

  • Web高速化 || パフォーマンスチューニングBlog: インターオフィス

    AWSアドバンスドコンサルティングパートナーの一員として活動する株式会社スタイルズが、AWS導入、移行、開発、セキュリティ、運用保守など、すべてのご相談に乗らせていただきます。 AWSを導入したいが何から始めたらいいかわからない 既存のベンダーが新技術に弱く、良い提案がもらえない クラウドの導入にセキュリティの不安がある AWSをとりあえず導入したが、さらに活用していきたい 社内にAWSの知見を持っている人がいない AWSならではのシステム開発を詳しく知りたい

    Web高速化 || パフォーマンスチューニングBlog: インターオフィス
  • Linux I/O のお話 write 編 - naoyaのはてなダイアリー

    write はページに dirty フラグを立てるだけなので決してユーザープロセスを待たせない って、当にそうなんでしょうか?(否定しているわけではなく、純粋な疑問です。) と質問をもらったので、最近追ったことをここでまとめます。かなり長文です、すいません。また、まだまだ不勉強なので間違っているところもあるかもしれません。ツッコミ大歓迎です。 まず、オライリーのカーネルの 15章 ページキャッシュ 15.3 汚れたページのディスクへの書き込み から引用。 ご存知のように、カーネルは、ブロック型デバイスのデータを含むページをページキャッシュに蓄えています。プロセスが何らかのデータを更新した場合は、必ず対応するページに汚れている印をつけます。すなわち、PG_dirty フラグを設定します。 UNIX システムでは、汚れたページのブロック型デバイスへの書き込みを遅延することができます。この方

    Linux I/O のお話 write 編 - naoyaのはてなダイアリー
  • naoyaのはてなダイアリー - Linuxのページキャッシュ

    世間では PHP が、Perl が、と盛り上がっているようですが空気を読まずまたカーネルの話です。今回はページキャッシュについて。 /dev/shm に参照系DBを持っていくと I/O 負荷が激減した件(当たり前だけど) - drk7jp で、ディスク上にあったファイルを /dev/shm (tmpfs) に移したら I/O 待ちがなくなって負荷がさがった、ということなんですがおそらくこれは tmpfs に置く必要はないかなと思います。Linux (に限らず他の OS もそうですが) にはディスクの内容を一度読んだらそれはカーネルがキャッシュして、二度目以降はメモリから読む機構 = ページキャッシュがあります。tmpfs にデータを載せることができた、ということは物理メモリの容量に収まるだけのデータサイズかと思うので、放っておけば該当のファイルの内容すべてがメモリ上にキャッシュされて io

    naoyaのはてなダイアリー - Linuxのページキャッシュ
  • マルチコア時代のロードアベレージの見方 - naoyaのはてなダイアリー

    ちょっと煽り気味のタイトルですが、CPU がマルチコアになり 2個、4個と増えていく中 Linux の負荷の指針になるロードアベレージをどう読むべきか、という話です。気になったところを少し調べたのでそのまとめを。 http://d.hatena.ne.jp/naoya/20070222/1172116665 でも書いたとおり、Linux のロードアベレージは「ロードアベレージは過去1分、5分、15分の間の実行待ちプロセス数の平均数 = 実行したくても他のプロセスが実行中で実行できないプロセスが平均で何個ぐらい存在してるか」を示す値です。ボトルネックが CPU、メモリ、ディスク等々どこにあるかは関係なく、仕事の実行までにどれぐらい待たされているかを示す値なので、システムのスループットを計測する指標の入り口になる値です。 このロードアベレージですが、実装を見るとランキュー(待ち行列)に溜まった

    マルチコア時代のロードアベレージの見方 - naoyaのはてなダイアリー
  • IBM LAMP システムを調整する、第 1 回: LAMP アーキテクチャー・・ - Japan

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM LAMP システムを調整する、第 1 回: LAMP アーキテクチャー・・ - Japan
  • 【コラム】漢のzsh (10) もってけ泥棒! コピペで始めるzsh | エンタープライズ | マイコミジャーナル

    こいつを~/.zshrcへコピーだ これまで、zshの基となる設定を説明してきた。設定ファイルにエスケープコードを含めておいたためか「そのままコピー&ペーストしたんだけど使えねぇよ!!」という憂き目に遭った読者がいらっしゃったようだ。zshを学び始めるにあたって、この経験はまずい。「ネットで見つけた設定ファイルをコピペしたら、ヒャッホイ!動いたぜ!!」というくらいじゃないとモチベーションは上がらない。 そのようなわけで、今回はそのままコピー&ペーストすれば使える~/.zshrcファイルについて述べておく。zshを始めたばかりのユーザ、またはこれから始めようというユーザは、こいつをコピー&ペースしてとりあえずzshの底力を満喫してほしい。なお、zsherが多いと想定されるLinux、FreeBSD、Mac OS X上で動作するように調整しておいた。 以前設定ファイルをまとめた後に公開したコ

  • FrontPage - 詳解ファイルシステム - livedoor Wiki(ウィキ)

    詳解ファイルシステム Linuxのファイルシステムを詳解します トップページページ一覧メンバー編集 FrontPage 最終更新: linuxfs 2009年01月19日(月) 16:03:10履歴 Tweet 詳解ファイルシステム ファイルシステム諸元 subcontentsファイルシステム諸元性能比較パーティション用語集OOMkillerkernelSELinuxgitskillcheckKDBJapanese Linux hackerext3/4最新情報Hans Reiser情報Committerfeature-removal-scheduleTODO中の人OSC2007 Tokyo/FallOSC2008 Tokyo/FallOSC2009 Tokyo/Fall ファイルシステム詳解 filesystem contents注目度の高いファイルシステムvfsext3ext4reise

    FrontPage - 詳解ファイルシステム - livedoor Wiki(ウィキ)
  • ウノウラボ Unoh Labs: UNIXデーモンを作ろう

    20070405コードレビュー posted by (C)フォト蔵 尾藤正人です 先日ウノウの勉強会でUNIXデーモンの作り方についてプレゼンしました。 UNIXのデーモンの仕組みはWebサービスの開発にあたって直接関係の深いトピックではないかもしれませんが、知っておいて損はないと思います。 発表資料と動画を公開しますので、よかったらご覧下さい。 普段は気にしないUNIXデーモンが裏で何をやってるのか、少しでも身近に感じていただければと思います。 発表資料の公開にはちまたで話題のScribdを使ってみました。 プレゼン資料はKeynoteで作ったのですが、PowerPoint形式に変換してアップロードする簡単にできました。 デモ用に実際に動く簡単なデーモンプログラム ccho(シコー) を作成しました。 ccho は前々回の勉強会で行ったGnu Autotoolsで作った bat プログラ

  • 勝手に添削 - find(1) : 404 Blog Not Found

    2007年03月30日00:15 カテゴリ一日一行野郎Lightweight Languages 勝手に添削 - find(1) 「ウノウラボ Unoh Labs: コマンドラインで作業する上で知っておくといいテクニック」の用法に首を傾げたので。 まずはこちら。 $ find . -type f | fgrep index.html これは % find . -type f -name index.html でOK。パイプ不要。.htmlだけ見つけたい時も % find . -type f -name \*.html でOK。findはシェルのワイルドカードを受け付ける。ただしシェルにそれを展開して欲しくないので、\でエスケープしている。要は $ find . -name '*~' と同じなのだが、なんで上記の例でfgrepを使っているか不明。 ここからが番。 $ find . -nam

    勝手に添削 - find(1) : 404 Blog Not Found
  • ウノウラボ Unoh Labs: コマンドラインで作業する上で知っておくといいテクニック

    ちょうど入社から半年で有給発生しつつも日が退職日になりましたjokagiです.もう花見の季節ですね!! ちょうどラボブログの当番のようで,退職記念にjokagiが普段の開発で使っているテクニックとは呼ぶにはおこがましい小手先の技をつらつら書いてみたいと思います. これを覚えればjokagi程度には仕事をこなせるかも!? コマンドの使い方を覚えよう 基的なコマンドの使い方やコンソールなどの使い方は書籍やいろんなサイトで覚えてください. ここでは一応一通りなんとなくでもコマンドを扱える人がさらに覚えるといいかもしれないことだけを記述します. -03-20T23:59+0900"> また,これからの解説はシェルはbash,その他のコマンドの多くはGNU Toolsと呼ばれることのあるGNU findやcoreutilsなどを用いた環境でのオプション例や実行例になります. echo いわゆる指

  • ヽ( ・∀・)ノくまくまー(2007-03-23) DB勉強会 〜 大規模ソースコードの読み方 〜

    ● [Rails] DB勉強会 〜 大規模ソースコードの読み方 〜 内輪で集まってDB与太話をやるのかと勝手に想像していたら、ミラクル・リナックスのCTOの吉岡さん(参考1)がいらっしゃって軽く引いた(いい意味で)。前半は吉岡さんのプレゼンで「大規模ソースコードの読み方」。動的なソースコード解析で役立つ profiler や tracer の紹介が勉強になった。これらを使うと、ソースコードを全く読まないどころか、そのアプリケーションを初めて使った場合でもすぐにボトルネックを見つけ出すことができるらしい。実際、Ruby歴3時間の吉岡さんがgc.cのボトルネック解消パッチを作れたとか。(参考2)。素晴らしい。後半はDB周りの雑談から殆どがRailsネタに。吉岡さんすいません。 ● メモ printf デバッグは有益無害 基は -g でコンパイルしてgdbで実際に実行しながらソースコードを追う

  • CD1枚でサーバをセットアップ――CentOS 4.4 Single Server CDの簡易導入ガイド | OSDN Magazine

    先日私は、1基のサーバを新規に用意しなければならない事態に陥った。その際に求められていた要件は、Web、メール、ファイル共有という一般的なサーバコンポーネントを備えると同時に、堅牢性と信頼性を有していること、というものである。いずれにせよ、ネットワーク経由で4GBものソフトウェアをダウンロードすることは避けたかった。そこで選択したのがCentOSというディストリビューションのSingle Server CDバージョンである。 CentOSとはCommunity ENTerprise Operating Systemを省略した名称であり、Red Hatからフリーな利用が許可されているソース(GPLないし同様のライセンスが適用されているもの)を基に作成された、エンタープライズ向けLinuxディストリビューションの1つである。特にCentOS 4はRed Hat Enterprise Linux

    CD1枚でサーバをセットアップ――CentOS 4.4 Single Server CDの簡易導入ガイド | OSDN Magazine
  • prefork サーバーと thundering herd 問題 - naoyaのはてなダイアリー

    Catalyst を POE で動かす Engine の Catalyst::Engine::HTTP::POE という実装が CPAN にあります。"Single-threaded multi-tasking Catalyst engine " だそうです。"Single-threaded" と言いつつも実装を覗いてみると環境変数 CATALYST_POE_MAX_PROC を 1 よりも大きく設定することで prefork する実装になってます。POEシングルスレッドではアプリケーション内で発生するブロックを避けることが難しいのでそのための実装じゃないかなと思います。 ところでこの Catalyst POE エンジン、prefork の実装はどのように行っているかというと POE から prefork と名の付いたイベントが発生するとおもむろに子プロセスを生成する、というのもの。複数の

    prefork サーバーと thundering herd 問題 - naoyaのはてなダイアリー
  • TheC10kProblem - 「C10K問題」(クライアント1万台問題)とは、ハードウェアの性能上は問題がなくても、あまりにもクライアントの数が多くなるとサーバがパンクする問題のこと

    TheC10kProblem - 「C10K問題」(クライアント1万台問題)とは、ハードウェアの性能上は問題がなくても、あまりにもクライアントの数が多くなるとサーバがパンクする問題のこと 目次 この文書について C10K 問題 関連サイト まず読むべき I/O フレームワーク I/O 戦略 1. 各スレッドが複数のクライアントを受け付ける. そしてノンブロッキング I/O と レベル・トリガ型の完了通知を利用する. 伝統的な select() 伝統的な poll() /dev/poll kqueue() 2. 各スレッドが複数のクライアントを受け付ける. そしてノンブロッキング I/O と 変更型の完了通知(readiness change notification)を利用する. kqueue() epoll リアルタイム・シグナル fd 単位のシグナル (Signal-per-fd)

  • xargsコマンドを使って指定したコマンドを並列実行させる - 技術メモ帳

    あまり知られていないが、GNUのxargsコマンドには、 プロセスの最大数を設定できるオプションというのが用意されている。 コレを使って、プロセスを並列実行させてみよう。 xargs --max-procs=MAX-PROCS -P MAX-PROCS command MAX-PROCSに数字を指定すると、 最大で、その数だけ command プロセスを生成する。 デフォルトは、1プロセスだけになっている。 いくつか例を交えて説明する。 サンプルとして、以下のようにURLが行ごとに記述されたファイルを元に curlをxargsで並列実行して、HTMLデータを取得してみよう。 $ cat ./url_list.txt http://www.google.co.jp/ http://www.yahoo.co.jp/ http://b.hatena.ne.jp/ まず、普通にxargsを使ってc