タグ

Linuxに関するhiyuzawaのブックマーク (38)

  • UNIXのプロセスやシグナルをしっかり理解するための技術ドキュメント「Process Book」 | ソフトアンテナ

    UNIXの基をなすプロセスやシグナルなどを分かりやすく解説した技術ドキュメント「Process Book」がGitHubにて公開されています。 同ドキュメントは、プロセスの生成、プロセスとファイル入出力、ファイルディスクリプタ、preforkサーバーの作り方、ゾンビプロセスと孤児プロセス、シグナルとkill、プロセスグループとフォアグランドプロセスといった話題を解説するドキュメントで、GitHubのreleasesディレクトリにはPDF、epub形式のファイルも格納されています。 UNIX環境でプログラムを開発する際に役立つだけではなく、普通のユーザーとしてターミナルを使ってコマンド操作を行う際にも役に立ちそうな内容だと思います。

    UNIXのプロセスやシグナルをしっかり理解するための技術ドキュメント「Process Book」 | ソフトアンテナ
  • そこそこセキュアなlinuxサーバーを作る - Qiita

    先日「サーバーのセキュリティ設定がなにすればいいかわからない」と相談をうけまして。 自分も初心者の時どこまでやればいいかわからず手当たりしだいにやって沼に入っていたのを思い出しながら自鯖構築したときのメモを元にまとめてみました。 注意 セキュリティ対策は用途や場合などによって違います。 自分で理解したうえで自己責任でおねがいします。 対象読者 Linuxのサーバーを建て慣れていない人 Linuxはある程度さわれる人(自分でパッケージを入れたり、サービスを止めたりできる) ラインナップ ☆は導入の重要度と導入の容易さから個人的偏見からつけた値です。 4つ以上が"最低限やること"だと思ってください。 sshd

    そこそこセキュアなlinuxサーバーを作る - Qiita
  • Linux系インフラエンジニア3年目のスキルを見抜く50の質問(ホスティングの場合)

    数年前になんとなく面白がって書いてた「Linuxインフラエンジニア3年目のスキルを見抜く50の質問(ホスティングの場合)」というのが、昔の資料をあさってると出てきて、意外と面白かったので少しだけ手を加えて(古い情報とかあったので)公開しようと思います。 意外とリアルなものがあって懐かしい気分になりました。過去に書いた以下の記事もどうぞ参考にして下さい。 「Linuxエンジニアを目指して入社一年目にやって役にたったと思う事」 「Linuxエンジニアを辞めて大学院に入学しました」 追記: 設問1があまりによくないので、@tagomorisさんのアドバイスを頂きつつ変更しました。1を消して3を追加しています。ありがとうございます! 2000台以上のサーバー運用経験はありますか? サーバやネットワーク機器のキッティング経験はありますか? サーバやネットワーク機器の交換を現地のデータセンター職員に

    Linux系インフラエンジニア3年目のスキルを見抜く50の質問(ホスティングの場合)
  • Linux女子部 systemd徹底入門

    5. Open Cloud Campus 5 Linux女子部 systemd徹底入門! Linuxの起動プロセス (1)  「システムBIOS」が起動ディスクからブートローダ(GRUB)をメモリに読み込んで実行。  GRUBは起動カーネル選択画面を表示して、指定されたカーネルと初期ラムディスクをメモ リに読み込んだ後に、カーネルを実行。  カーネルは、初期ラムディスクの内容をメモリ上のラムディスク領域に展開して、「initス クリプト」を実行。 – 初期ラムディスクには、ルートファイルシステムへのアクセスに必要なデバイスドライバと「init スクリプト」が含まれます。 ブートローダ (GRUB) /bootファイルシステム ② ブートローダが 読み込み ③ ラムディスク領域 に展開 起動ディスク物理メモリ Linuxカーネル 初期ラムディスク Linuxカーネル 初期ラムディスク

    Linux女子部 systemd徹底入門
  • PFIセミナー 2013/09/19 「Linux開発環境の自動構築」

    13. Linux環境構築:1⼈人/チーム開発向けユースケース l 1台のマシン環境しか利利⽤用しない  → キックスタート必要なさそう l 1台の物理理マシンしかないけれど、マシン環境は複数欲しい l l l → Amazon EC2等のサービスを使う(お⾦金金があれば) → 仮想マシンを使う(CPU, RAM等に余裕があれば) 2台以上の物理理マシンがある・⽤用途ごとに環境を分離離したい l 各種仮想マシンモニタを利利⽤用しましょう l l l VirtualBox, VMware, QEMU(KVM)など 他の⼈人への作業引き継ぎがあるなら、Vagrantも検討しては? AWSなどを使っている 13

    PFIセミナー 2013/09/19 「Linux開発環境の自動構築」
  • LPI-Japan、「Linuxセキュリティ標準教科書」を無償公開

    特定非営利活動法人LPI-Japanは、OSS/Linux技術者育成・教育のための教材「Linuxセキュリティ標準教科書」を、1日に公開した。PDF版、EPUB版、Kindle版、書籍版として提供し、PDF版とEPUB版はLPI-Japanの公式Webサイトから無料でダウンロードできる。 「Linuxセキュリティ標準教科書」は、Linuxにおけるセキュリティを学習・再認識するために、最低限必要となる知識を体系的にまとめており、同教材の無償提供によって、教育機関や企業研修でのOSS/Linuxにおけるセキュリティ教育の質の向上を目的としている。 また、セキュアなシステム設計・サーバ構築のスキルを認定する「LPICレベル3 303試験(LPI - 303 Security Exam)」の教育および学習にも役立つ。 なお、「Linuxセキュリティ標準教科書」はクリエイティブコモンズライセンスに

    LPI-Japan、「Linuxセキュリティ標準教科書」を無償公開
  • 新さくらのVPSでWebサーバを構築するテンプレ

    先日リニューアルされた「さくらのVPS」でWebサーバ(LAMP)を構築した際の基設定をテンプレートとして公開します。参考になればいいなと。 管理者アカウントの作成 # useradd -G wheel userName # passwd userName # vi /etc/pam.d/su -- 以下の行のコメントアウトを外す # auth required pam_wheel.so use_uid -- # visudo -- 以下の行のコメントアウトを外す # %wheel ALL=(ALL) ALL -- SSH設定 # mkdir /home/userName/.ssh # chown userName. /home/userName/.ssh クライアント側で公開鍵を作成し、サーバに公開鍵を転送 -- $ ssh-keygen -t rsa $ scp .ssh/id_rs

    新さくらのVPSでWebサーバを構築するテンプレ
  • dstatの万能感がハンパない - (ひ)メモ

    サーバーのリソースを見るにはグラフ化は重要ですが、推移ではなくリアルタイムな状況、例えば秒単位のスパイキーな負荷を見るには、サーバー上でvmstatやiostatなどの*statファミリーを叩く必要があります。 さて、vmstatはメモリの状況やブロック数単位のI/O状況は見られますが、バイト単位のI/O状況やネットワークの送信、受信バイト数を見ることはできません。 # vmstat 1 procs -----------memory---------- ---swap--- -----io----- --system-- -----cpu------ r b swpd free buff cache si so bi bo in cs us sy id wa st 3 1 0 4724956 355452 726532 0 0 54 484 3 3 1 0 99 0 0 2 0 0 47

    dstatの万能感がハンパない - (ひ)メモ
  • OSに付属するシェルスクリプトを読んで技術を盗む

    今回から、OS付属のシェルスクリプトを読んでいく。多くの人が使っているスクリプトを読むことで、シェルスクリプトならではの書き方、テクニックを身に付けることができるはずだ(編集部) 他人の技術を盗まなければ進歩はない 外国語をマスターするにも、楽器の演奏を覚えるにも、上達するにはただ練習するだけではダメだ。素晴らしいお手を見つけて、よく観察し、何度もまねることが必要だ。お手から技術を「盗む」ことが大切だということだ。 プログラミングでも同じことが言えると思う。文法を覚えて、ただひたすらプログラムを書くだけではなかなか上手にならない。スキルのある人のコードを見て、技術を盗もう。開発チームのメンバーそれぞれが書いたコードを持ち寄って、お互いに批評し合う「コードレビュー」に参加している、あるいはリーダーとして主催しているという人は多いと思う。このコードレビューも、人から技術を盗む良い機会と言え

    OSに付属するシェルスクリプトを読んで技術を盗む
  • 初心者の頃に知っておきたかった rpm と yum の違いと使い分け

  • perfの使いかた

    概要 Linuxのパフォーマンス解析ツールであるperfの使いかたの紹介 背景 個人的にperfよくできてると思うので紹介したいというのと、 パフォーマンスカウンタの読み方ってあんまり知られてないみたいなので、 それの解説を書きたい。 構成 perf について説明したあと、パフォーマンスカウンタの読みかた、見かた、を説明する。 perfとは何か Linuxに付いてくるプロファイラ。 man perf によると、 NAME ---- perf - Performance analysis tools for Linux と、書いてある。名前がひどいのでなんとかしてほしい。 perf の特徴 個人的には、手軽に使えるのが素晴らしいと思う。 2.6.31以降カーネルに標準で付いてる。(Ubuntuだとlinux-tools-common(TODO:あとで確認)で入るはず) 特殊な設定が必要無く、

  • IO Accounting 機能で I/O 負荷の高いプロセスを特定

    随分久々の Linux ネタです。以前にロードアベレージに関する考察などの記事も書きましたが、多くのサーバーサイドエンジニアはサーバ負荷と日々戦っていることかと思います。過去多くの場合、負荷の原因特定はおおよそ下記のような手順で分析をしていたことかと思います。※詳しい手順は別エントリとして記載予定。 top をみて上位に張り付いているプロセスを確認しつつ CPU or I/O のどちらが原因か判別 ps を使ってプロセスの状態を確認して(T),(D)の状態から CPU or I/O のどちらが原因か判別 vmstat で procs の r, b の数、swap の si, so の状態、I/O の bi, bo の状態を確認 iostat を使って disk の read/write の状態をさらに詳しく確認 sar を使って os の状態をさらに詳しく確認 おおよその原因特定から設定を

  • UbuntuにGoogle日本語入力(Mozc)をインストールする方法 - Elecnotes

    Google 日本語入力がオープンソースになりましたMozc LinuxBuildInstructionsUbuntuへのGoogle日本語入力(Mozc)インストールは3ステップで完了します。ターミナルを起動して、以下のコマンドを打ちます。 $ sudo apt-get install ibus-mozc mozc-server mozc-utils-gui インプットメソッドの選択から、[日語] → [Mozc]を選択します。*1[追加]を押して、MozcをAnthyより上に優先順位を上げれば完了です。*2Ubuntuソフトウェアセンターを利用する場合ターミナルではなくUbuntuソフトウェアセンターを利用する場合は、以下の3つをインストール後、上記のステップ2,3を行ってください。 ・GUI uitilities if the Mozc input method ・Server o

  • Linuxデスクトップ戦争勃発

    今、Linuxデスクトップ界には大きな変化が起きている。デスクトップ向けに利用される二大ディストリビューションであるUbuntuとFedoraにおいて、いずれもデフォルトのデスクトップ環境が従来型のGNOMEではなくなってしまったのだ。4月にリリースされたUbuntu 11.04にはUnityが、5月にリリースされたFedora 15にはGNOME3がそれぞれ搭載されている。(GNOMEそのものが激変してしまったのである!) Linuxデスクトップのシェアはとても小さい。このブログの読者を含め、ほとんどの人にとってはLinuxデスクトップにどのような変化が起きたとしても、そんなのはどうでもいいことだろう。だが、二大ディストリビューションで同時に変化が、しかもエポックメイキングな変化が訪れたのはただごとではない。筆者には、この変化が新たな時代の幕開けに思えて仕方がないのである。今日は、それぞ

    Linuxデスクトップ戦争勃発
  • 【仮想化道場】 Linux標準のサーバー仮想化機能「KVM」を試す

    hiyuzawa
    hiyuzawa 2011/06/06
    いつか試す。
  • sshを使いこなすための7つの設定 - 射撃しつつ前転 改

    五月病が抜け切らないIT系新入社員に贈るシリーズ第1段。 ~/.ssh/configにはいろいろな設定が書けるが、周囲を見渡した限り、あまり活用されているようには見受けられない。そこで、今回は便利な設定をいくつか集めてみた。 長いホスト名に短い名前をつける Host exp1 HostName verrrryyy.looooong.hostname.example.jp ssh verrrryyy.looooong.hostname.example.jpの代わりにssh exp1でログインできるようになる。 ちなみに、zshの場合、configファイルに登録されたホスト名はsshコマンドを打つときに補完されるので更に便利。 特定のホストへログインするときのユーザ名や鍵をカスタマイズする Host github.com User tkng IdentityFile ~/.ssh/id_rsa

    sshを使いこなすための7つの設定 - 射撃しつつ前転 改
  • これぐらいやっとけ 〜Linuxサーバのセキュリティ設定〜 - nabeの雑記帳

    管理中のサーバで行っているセキュリティ設定を公開します。当はこういうことを公開するのはよろしくないのですが、脆弱サーバが氾濫している現状そこが踏み台となってsshアタックされるのも迷惑極まりないので、最低限やっとけという内容でまとめました。*1 起動サービスと概要 iptables/Firewallの設定 iptablesの中身 limit-burstについて hashlimitについて hosts.allow/hosts.deny(TCP Wrapper)の設定 sshdの設定 その他の設定 Apacheの設定 Postfixの設定 Dovecotの設定 まとめ はてブさんは #の切り分けやめてくれないかな……。 起動サービスと概要 Apache (www) sshd smtp/pop bind (DNS) ntpd いくつかの注意点。 sftpで十分なのでftpdは使わない。WinS

    これぐらいやっとけ 〜Linuxサーバのセキュリティ設定〜 - nabeの雑記帳
  • MySQL 5.5をわずか30秒足らずでコンパイルするためのテクニック

    べっ・・・別にソースコードなんて自分でコンパイルしないんだからねッ!!などと言わずにまず聞いていただきたい。30秒でMySQLのコンパイルが出来るというこの事実を。最近、細々とビルド時間の短縮に取り組んでいたのだが、正直ここまで爆速になるとは思わなかった。今日はビルド時間短縮のためのテクニックを紹介するので、是非皆さんも参考にして、快適ビルド生活を送って頂きたい!! 自己ベストは26.262秒マシンの状態や負荷の状況によって多少ビルドにかかる時間は前後してしまうのだが、これまでの自己ベストはなんと26.262秒。平均すると30秒ぐらい。以前は1分を切ることがなかったのだが、今ではなんとその半分でビルドが出来てしまう。これは純粋にmakeをするのにかかった時間であり、cmake(MySQL 5.5以降)やconfigure(MySQL 5.1以前)にかかる時間は除いてある。だがそれでも速い。

    MySQL 5.5をわずか30秒足らずでコンパイルするためのテクニック
  • Linux のプロセスが Copy on Write で共有しているメモリのサイズを調べる

    Linux は fork で子プロセスを作成した場合、親の仮想メモリ空間の内容を子へコピーする必要があります。しかしまともに全空間をコピーしていたのでは fork のコストが高くなってしまいますし、子が親と同じようなプロセスとして動作し続ける場合は、内容の重複したページが多数できてしまい、効率がよくありません。 そこで、Linux の仮想メモリは、メモリ空間を舐めてコピーするのではなく、はじめは親子でメモリ領域を共有しておいて、書き込みがあった時点で、その書き込みのあったページだけを親子で個別に持つという仕組みでこの問題を回避します。Copy-On-Write (CoW) と呼ばれる戦略です。共有メモリページは、親子それぞれの仮想メモリ空間を同一の物理メモリにマッピングすることで実現されます。より詳しくは コピーオンライト - Wikipedia などを参照してください。 この CoW に

    Linux のプロセスが Copy on Write で共有しているメモリのサイズを調べる
  • 「喫茶店プログラミング」のための環境構築(VMwarePlayer + CentOS5.5+Apache2.2.3+MySQL5.5.8+PHP5.3.5+Ruby1.8.7+おまけ) - blog@sotm.jp

    ソフトウエア Windows 7 Home Premium (64bit)VMware Player 3.1.3 build-324285Tera Term 4.67 作る物 CentOS # cat /etc/redhat-release CentOS release 5.5 (Final) # uname -a Linux localhost.localdomain 2.6.18-194.32.1.el5 #1 SMP Wed Jan 5 17:52:25 EST 2011 x86_64 x86_64 x86_64 GNU/Linux Apache # /usr/sbin/httpd -v Server version: Apache/2.2.3 Server built: Aug 30 2010 12:28:40 MySQL # mysql --version mysql Ver 1

    「喫茶店プログラミング」のための環境構築(VMwarePlayer + CentOS5.5+Apache2.2.3+MySQL5.5.8+PHP5.3.5+Ruby1.8.7+おまけ) - blog@sotm.jp