タグ

Linuxに関するyamadarのブックマーク (217)

  • システムの負荷の原因を切り分ける方法 - Qiita

    サーバのボトルネックを探る サーバが重い時、主に以下の4つがボトルネックとなる。 CPU使用率 メモリ使用量 ディスクI/O TCPコネクション数 この記事では、これらのうちどれがボトルネックとなっているかを突き止める方法について書く。 ロードアベレージを見る まずはロードアベレージを見ることで、おおまかに問題を切り分ける。 ロードアベレージの確認方法はload averageを見てシステムの負荷を確認するに書いた。 ロードアベレージが高い場合 現在のホストの**「1. CPU使用率」**, 「2. メモリ使用率」, **「3. ディスクI/O」**を疑う。 ロードアベレージが1以下であれば軽く、1〜3くらいだとやや重く、それ以上だとこれらがボトルネックの可能性が高い。 ロードアベレージが低い場合 **「4. TCPコネクション数」**か、リモートホストがボトルネックになっていないか疑う。

    システムの負荷の原因を切り分ける方法 - Qiita
  • 不審なプロセスがないのにメモリ使用量が高い場合はslab領域の肥大化を疑うといいかも

    メモリのfreeが10%を切ったとアラートが飛んできた時の対応のメモです。 top を見てもあやしいプロセスが見つからなくて、 /proc/meminfo を見てみると slab領域の肥大が確認できました。 slabtop で dentry_cache が肥大化している事がわかったので、 echo 2 > /proc/sys/vm/drop_caches を実行しました。 というはなし。 freeコマンドで現在のメモリの使用量を確認する [root@bacchi ~]# free total used free shared buffers cached Mem: 1030516 971468 59048 1088 278348 166456 -/+ buffers/cache: 526664 503852 Swap: 2064380 654596 1409784 確かにこのサーバーはメモ

    不審なプロセスがないのにメモリ使用量が高い場合はslab領域の肥大化を疑うといいかも
  • プロセスのメモリ使用量が少ないのにメモリ使用量が増加していた時に調査、対応したこと | DevelopersIO

    はじめに メモリ使用率が上昇傾向のインスタンスについて調査をしましたので調査内容と対応内容についてご紹介します。 初動調査 freeコマンドで確認 $ free -m total used free shared buffers cached Mem: 7986 7657 329 33 99 312 -/+ buffers/cache: 7246 740 Swap: 0 0 0 メモリ使用量は7246MB topコマンドで確認 topの後にshift + m top - 12:40:32 up 36 days, 12:26, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 96 total, 1 running, 95 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100

    プロセスのメモリ使用量が少ないのにメモリ使用量が増加していた時に調査、対応したこと | DevelopersIO
  • Linuxで、どのプロセスがページングを行っているのか調べるには? | Yakst

    スワップがなぜ起きるか、どのようにスワップの状態を確認するべきかの平易な解説。Quoraの質問に対する、Robert Love氏の回答。 質問に対するストレートな回答は、調べるのは不可能、だ。どうしてそうなのかを説明してから、君の知りたい情報を含んでいるであろう、5つの関連する質問に答えよう。 Linuxのような、モダンなOSにおいては、スワップはシステム全体における現象だ。ある1つのプロセスがスワップに関する責任を持っているわけではない。システムがスワップしているかどうかは、メモリプレッシャの機能による。物理メモリを大量に使おうとすれば、スワップしてしまう。何をスワップアウトするかは、一番少ないページを要求しているのが何かによる。何をスワップインするかは、一番ページを必要としているのが何かによる。プロセスがRAM上に存在しないページを要求した時、そのページはディスク上にあるので、スワップ

  • [小ネタ] mkdir したディレクトリに cd する方法 9 選 +1 (BASH) ※追記あり | DevelopersIO

    $ mkdir /very/_very/Very-long/directory_name/20170915 なんて操作をしたあと、そのディレクトリにcdしたい場合ってまれによくありますよね。 どんなやり方があるか考えてみました。 1. コピペする そのまんまですが、これをやりたくなくてこの blog を書いてます。 2. TAB 補完で頑張る これも無いわけではないですが、間違えたりすることを考えると正直あんまりやりたくないです。 3. 上矢印キーで前コマンドを呼び出し、右矢印キーで先頭に戻ってmkdirをcdに書き直す よく見る方法ですが、もうすこし少ない手数でできないでしょうか。 4. 上矢印キーで前コマンドを呼び出し、Ctrl-Aで先頭に戻ってCtrl-Dx5 のあとにcd BASH のキーバインドはデフォルトだと emacs モードなので、このやり方が出来ます。 でもまだちょっと手

    [小ネタ] mkdir したディレクトリに cd する方法 9 選 +1 (BASH) ※追記あり | DevelopersIO
  • 指定したファイルの更新があったらコマンドを自動実行するシェルスクリプト - 午睡二時四十分

    プログラミングの作業をしていると、一旦コンパイルや実行を行なって結果を確認したくなることがあります。 C++Javaであればコンパイル -> 実行が必要ですし、rspecのようなコマンドでテストを行いたい場合もあると思います。 その度にエディタを終了-> (コンパイル実行 ->) 実行 -> またエディタを起動とかするのはとても手間です。(エディタ内でコンパイルとかするもありますが、それでも何らかのコマンドが必要です) そこで、特定のファイルを監視下に入れてそのファイルの更新があったら指定されたコマンドを実行するようなシェルスクリプトを作ってみました。 #!/bin/sh if [ $# -ne 2 ]; then echo "実行するには2個の引数が必要です。 第一引数: 監視対象ファイル名 第二引数: 監視対象ファイルが更新された際に実行されるコ>マンド 例: ./autoexec.

    指定したファイルの更新があったらコマンドを自動実行するシェルスクリプト - 午睡二時四十分
  • ファイルの更新を監視してコマンドを実行するワンライナー - ngyukiの日記

    phpunit を実行させるために Grunt を使いましたが・・・ PHP 開発でも Grunt を使う - ngの日記 まあファイルの更新を監視して phpunit(に限らず任意のコマンド)を実行するだけならワンライナーです。 $ inotifywait -e create,delete,modify,move -mr src tests|while read;do while read -t 0.3;do :;done;phpunit -c tests;done バラすとこうなります。 $ inotifywait -e create,delete,modify,move -m -r src/ tests/ | while read; do while read -t 0.3; do : done phpunit -c tests/ done ただし Linux に限る。 inotif

    ファイルの更新を監視してコマンドを実行するワンライナー - ngyukiの日記
  • ブラウザからアクセスできる踏み台サーバを構築 | システム運用日記

    ブラウザからアクセスできるリモートデスクトップクライアントApache Guacamole Apache Guacamoleは、VNC,SSH,RDP,telnetプロトコルを利用してブラウザ上から端末を操作することができるソフトです。 今回は、CentOS7にインストールしてみました。 環境準備 Apache Guacamoleを利用するためには、色々なパッケージが必要となるためyum等を利用してパッケージをインストールしていきます。 #yum -y install libguac-client-rdp libguac-client-vnc libguac-client-ssh #yum -y install cairo-devel libjpeg-turbo-devel libjpeg-devel libpng-devel uuid-devel #yum install freerdp

    ブラウザからアクセスできる踏み台サーバを構築 | システム運用日記
    yamadar
    yamadar 2017/05/02
    ChromeOSと相性が良さそう
  • IDCFクラウドにrancherosをインストールしてみよう | Startup Plus, Inc. | スタートアッププラス

    Rancher OSとは RancherOSは、Docker専用のOSで、主な特徴は、OSのサイズが小さい →v0.4.5時点で32.5MB(ただしSYSTEM DOCKER部分は含まれません) 5〜10秒程度で起動 オープンソース ntpd, syslog, consoleなど、Linuxカーネル以外の部分は出来るだけコンテナで動かすコンセプトとなっています。 RancherOSのインストール ISOが提供されているので今回はそちらを利用します。 AWS等の場合はAMIが提供されていたりします。 今回利用するIDCFクラウドのコミュニティテンプレートにはRancherOSがなかったので、ISOイメージを登録するところから始めます。 (以前あったような記憶があるのですが、なくなってしまったのでしょうかね・・・) RancherOSのISOをIDCFクラウド上に登録 利用するリージョンを選択

    IDCFクラウドにrancherosをインストールしてみよう | Startup Plus, Inc. | スタートアッププラス
  • どうしてメモリはスワップするのか!?

    こんにちは。斎藤です。 最近、新しいスキー板が欲しいなと思っています。現在使っているOGASAKAの板は5年目に入り、メーカーからこれ以上はチューンナップ(メンテナンス)はできないよ、と言われてしまいました。もし、次に買うなら、スノーボーダーの人と一緒にパウダーに飛び込みやすいセミファットタイプが良いのかなと考えています。皆さんのオススメ、ぜひ教えてください。 さて、今日はLinux Kernel上でのメモリ管理、特にページ回収(Page Reclaim)とスワップに絞り、「スワップの理由」「ページを回収する仕組み」そして「スワップの様子を観察する」の3点に分けてお話しします。「スワップするのが気持ち悪い」と考えている方は少なくないと思いますし、私もそう考えていた時期がありました。しかし、それは当に悪い事なのか、今回掘り下げて行きます。 ※主な対象Kernelは2.6.32(Red Ha

    どうしてメモリはスワップするのか!?
  • あなたの世界 | ランサーズ(Lancers)エンジニアブログ

    こんにちは、ランサーズのエンジニアのameshoです。 開発をしていると、隣の人と特定のコマンドなどについて話し込んだりしますよね。 この間、agやdiffについて話していて、 The Silver Searcher agってコマンドがあって乱暴に説明するとgrepのすごい早いやつですごい便利ですよ。 とか diff -up a.txt a_dash.txt diffってこんな感じでpatchつくれて便利ですよね。 とか話していたんですが、 「vimdiffってのがありますよ。」 って話していた人に聞いて、あったのそんなもの。 と思いながらvimdiffを調べてみたら vimdiff(1) - Linux man page vimdiffでより賢いアルゴリズム (patience, histogram) を使う などいろいろ出てきまして、生活が便利になりました。 また、agも自分で話してお

  • run-partsが認識するファイル名ではまった - うまいぼうぶろぐ

    run-parts - run scripts or programs in a directory 指定ディレクトリ以下のスクリプトを順次実行するコマンド。/etc/crontabで run-parts /etc/cron.dailyこんな感じで使われている。 特徴 実行はアルファベット順(ASCIIコード順? 数字、英大文字、英小文字の順) サブディレクトリは無視 option -aで引数を指定すると、各スクリプトに共通の引数が渡せる -v verbose ファイル名に一部制限あり ファイル名の制限 debian系とredhat系で動きが違う。これではまった。debianのはELFのバイナリで、redhatはシェルスクリプト。 debian ファイル名に使える文字[0-9A-Za-z-_] "."は使えない (hoge.shは無視される) redhat 末尾が"~"か","以外のファイ

    run-partsが認識するファイル名ではまった - うまいぼうぶろぐ
    yamadar
    yamadar 2017/02/10
    debianではrun-parts内のファイルに拡張子が付いてると無視される
  • cron の意外な落とし穴! - もろず blog

    システムを運用していく上で cron を使う場面はよくありますよね 処理をスケジュール実行したい時にとても便利です そんな cron ですが、最近仕事で作業しているときに ntpdate でシステム時刻を変更した後に cron で設定した時刻になってもジョブが実行されないという問題が見つかりました 全てのジョブが実行されていないわけではなく一部のジョブは実行されているようでした また、時刻を変更した後に crond を再起動すれば全てのジョブが正常に実行されるようになりました 幸い、実運用ではなくてシステムテスト中に見つかった問題なのでまだよかったんですが、運用している環境で同じ問題が起きたら相当マズイですよね そもそも ntp の時刻同期でシステム時刻が修正された場合にも同じ問題が起きそうじゃないですか? ググっても同じような事象は見つからず、社内のメンバーにも聞いてみても cron

    cron の意外な落とし穴! - もろず blog
  • インフラ関係のメモ書き | clamav

    AmazonLinuxでclamavを使う Published at February 22, 2015 · 1 min read しらないうちにAmazonLinuxの標準リポジトリにclamavが追加されていたので使ってみました。 インストール # yum install clamav clamav-update clamav-scanner-sysvinit パッケージ名とかがrpmforgeのものと結構違います。。...

  • OWASP ZAP | OWASP Foundation

    The OWASP® Foundation works to improve the security of software through its community-led open source software projects, hundreds of chapters worldwide, tens of thousands of members, and by hosting local and global conferences. Project Information Flagship Project Classification Tool Audience Breaker Builder Downloads Download OWASP ZAP! Questionnaire Please help us to make ZAP even better for you

  • シェルスクリプトの罠を避ける三つの tips

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? シェルスクリプトは、Unix 系環境で仕事をするエンジニアなら誰もが一度は書くであろうにもかかわらず、書き方や特性を熟知している人が少ない言語です。この記事は、シェルスクリプトを書くときに罠を踏まないようにするために最低限あなたが気を付けるべき tips 集です。「たかがシェルスクリプト」とは思わないでください。生半可に書かれたシェルスクリプトはあなたの (チームの) 生産性をかえって低下させます。 Shebang に bash を明示しろ Bash でしか使えない機能のことを俗に Bashism と言います。Bashism はもちろん

    シェルスクリプトの罠を避ける三つの tips
  • LinuxのI/OやCPUの負荷とロードアベレージの関係を詳しく見てみる - Qiita

    大人気TBSドラマ、「逃げるは恥だが役に立つ」でも話題になったインフラエンジニアという言葉ですが、今ではインターネットインフラを知らないまま開発をするのも難しい状況になっています。クラウドが一般化されたからといって単にリソースの調達が簡単になっただけで、つまりハードウェアの知識が無くても何とかやっていけるようになっただけであり、インフラの知識が要らなくなったなどということは全くなく、むしろdevopsの掛け声とともに、ソフトウェア開発者にインフラを見なければならない新たな責務が課せられたという、なかなか痺れる状況なのだろうと思います。 そういった中で、先日のさくらインターネットのAdvent Calendar最終日に「いまさら聞けないLinuxとメモリの基礎&vmstatの詳しい使い方」という記事を書かせて頂きましたが、今回はLinuxサーバの「負荷」と、ロードアベレージに関して、掘り下げ

    LinuxのI/OやCPUの負荷とロードアベレージの関係を詳しく見てみる - Qiita
  • いまさら聞けないLinuxとメモリの基礎&vmstatの詳しい使い方 - Qiita

    さくらインターネット Advent Calendar最終日は、硬派にLinuxのメモリに関する基礎知識についてみてみたいと思います。 最近はサーバーを意識せずプログラミングできるようになり、メモリの空き容量について意識することも少なくなりましたが、いざ低レイヤーに触れなければいけないシチュエーションになった際に、OSを目の前に呆然とする人が多いようです。 基的にLinux のパフォーマンスについて、メモリをたくさんつめばいいとか、スワップさせないほうが良い とか、このあたりは良く知られたことだと思います。 ただ、なんとなく ps コマンドや free コマンド などの結果を見るだけでなく、もう少しメモリのことについて掘り下げてみてみたいと思います。 メモリとキャッシュ Linux におけるメモリの状態を大きく分けると「使用中のメモリ」「キャッシュ」「空きメモリ」「スワップ」の 4 つに分

    いまさら聞けないLinuxとメモリの基礎&vmstatの詳しい使い方 - Qiita
  • シェルスクリプトで「ビルドスクリプト」を作る時に便利なテクニック - ククログ(2012-10-11)

    プログラムの種類によっては、そのまま実行できるものと、実行できるようにするために「ビルド」が必要なものとがあります。Cなどのコンパイルが必要な言語で書かれたプログラムは当然ビルドが必要ですし、コンパイルが不要な言語であっても、インストーラパッケージを作るというビルド作業が必要な場合はあります。 ビルド作業の自動化のためのツールとしてmakeなどがありますが、そこまで格的な事をやる必要がない場合は、シェルスクリプトで「ビルドスクリプト」を作るのが手軽でおすすめです。この記事では、そのような場合に役立つシェルスクリプトのテクニックを4つご紹介します。 エラーの気付きやすさとデバッグのしやすさを高める メッセージに色を付ける シェル関数をライブラリにする 一時的に作業ディレクトリの中に入る エラーの気付きやすさとデバッグのしやすさを高める はじめに紹介するテクニックは問題が発生した時に気づきや

    シェルスクリプトで「ビルドスクリプト」を作る時に便利なテクニック - ククログ(2012-10-11)
  • Text to ASCII Art Generator (TAAG)

    Main Controls - *FIGlet and AOL Macro Fonts Supported* Font: Character Width: Character Height: Test All More Opts About Type Something Other Stuff From patorjk.com That You Might Like: My YouTube Channel Keyboard Layout Analzyer Text Color Fader Snake Game Scrolling Text Time Waster Main Page Share Link Select & Copy Generate Image Font Info patorjk.com

    yamadar
    yamadar 2016/12/19
    文字をアスキーアート化するサービス。コンソール出力用などに。