タグ

Linuxに関するSnowCaitのブックマーク (113)

  • ~/.ssh/config で簡単に複数ホストへのSSH接続を管理する - すぱぶらの日記

    ssh で鍵やユーザ名を複数のホストで使い分けないといけない場合、それら設定を覚えておくのは面倒です。 それらホスト毎の設定は ~/.ssh/config で簡単に管理することができます。 複数の鍵を管理する場合 identity, id_rsa などのファイル名で保存しますが、これでは複数の鍵を置くことができないので、 test.org の場合、「id_rsa.test.org」 hoge.in の場合、「id_rsa.hoge.in」 など、ホスト名や用途名の prefix, suffix を付けて管理しています。 どの鍵をどのような用途で利用しているのかが分かればファイル名は何でも構いません。 ~/.ssh/configを記述する Host test.org HostName test.org IdentityFile ~/.ssh/id_rsa.test.org User test

    ~/.ssh/config で簡単に複数ホストへのSSH接続を管理する - すぱぶらの日記
  • ログアウトしてもバックグラウンド ジョブを継続する方法

    はじめに SSH 接続で時間の掛かるシェルスクリプトをバックグラウンドで走らせて帰りたいのに、SSH 接続を切るとジョブが死んでしまいます。SSH 接続に限らず目の前の OS からログアウトしたりターミナル エミュレータを終了しても同じ現象が起こります。 この症状は正常です。なぜなら、バックグラウンド ジョブを起動したプロセス(ログイン シェル)が子プロセスである該当のバックグラウンドジョブをハングアップ シグナル( HUP )によって終了させるからです。 シェルスクリプトを起動した親プロセスは子プロセスの終了状態を監視しています。ですからログアウトして親プロセスであるシェルが終了すると子プロセスはゾンビ プロセスとなってしまうので親プロセスとなるシェル(ログインシェル)は子プロセスであるバックグラウンド ジョブを kill ( kill -HUP ) するのです。 nohup コマンド

    ログアウトしてもバックグラウンド ジョブを継続する方法
  • 一定時間でシェルコマンドを終了させるたった1つの方法 - Qiita

    Linuxでcoreutils が利用可能なら、timeout コマンドを使いましょう。なお、Mac であれば brew install coreutils して gtimeout が使えます。 timeout Usage: timeout [OPTION] NUMBER[SUFFIX] COMMAND [ARG]... or: timeout [OPTION] man には以下のように書かれています。デフォルトの挙動が使いやすそうです。 コマンドがタイムアウトし、--preserve-status が指定されていない場合、 終了ステータスは 124 になります。それ以外の場合、COMMAND の終了ステータスが 終了ステータスになります。シグナルが指定されていない場合、タイムアウト時には TERM シグナルが送られます。この TERM シグナルにより、TERM シグナルをブロック もしく

    一定時間でシェルコマンドを終了させるたった1つの方法 - Qiita
  • dfltweb1.onamae.com – このドメインはお名前.comで取得されています。

    このドメインは、お名前.comで取得されています。 お名前.comのトップページへ Copyright © 2020 GMO Internet, Inc. All Rights Reserved.

    dfltweb1.onamae.com – このドメインはお名前.comで取得されています。
  • Load Average(ロードアベレージ)とCPU数 - tweeeetyのぶろぐ的めも

    はじめに 業務中Load Averageを見ることが多いが Load Averageについてあらためて自分のためにも整理&メモ また、誰かに質問された際にええっとええっと。。。とならないように 質問されたらって仮定ですw 知ってるつもりなのに意外に答えられないんですよね(>_<) Load Average Load Averageってなに?(※こぴりました。 実行プロセス数(実行中プロセス数+実行可能プロセス数) Load Averageが高いとなに? 語弊を恐れず言えば Load Averageが高い ≒ サーバ負荷が高い ≒ 重い ≒ 応答速度が遅い Load Averageが高いってどんな状態?もっとkwsk...的な コマンド(uptimeなど)でLoad Averageを表示した場合に Load Averageの値がCPUの数より大きい場合、「Load Averageが高い」(

    Load Average(ロードアベレージ)とCPU数 - tweeeetyのぶろぐ的めも
  • Linuxで文字コードを変換する方法 | クロの思考ノート

    送られてきたファイルは以下のような結果でした Non-ISO extended-ASCII text, with CRLF line terminators つまりShift-JISということですね。もちろんWindwosから送付されたということなので当然なのですが。 nkfを使う方法もある nkfについては次の項で紹介しますが、文字コードを調べるにも便利なツールです。以下のように使います。 $ nkf —guess <ファイル名> 出力例 Shift_JIS (LF) iconvを使って文字コードを変換する まずはiconvを使って変換していきましょう。Linuxユーザーの間ではとても有名なツールですね。基的な使い方は以下の通りです。 $ iconv -f <エンコーディング> -t <エンコーディング> <ファイル名> よく使われるエンコーディングには以下があります。 SHIFT_J

    Linuxで文字コードを変換する方法 | クロの思考ノート
  • 引数を処理する | UNIX & Linux コマンド・シェルスクリプト リファレンス

    引数を処理する 引数とは? 引数 (ひきすう) とはコマンド (シェルスクリプト) 実行時に、コマンドラインから渡される値のことである。 引数は実行時にプログラム内で参照され、シェルスクリプトの実行結果 (動作) に影響を与える。引数はパラメータと呼ばれることもある。 → コマンド名に続けて引数としてコマンドに渡したい値のリストを指定する。 引数はコマンド名に続けてスペース区切りで指定する。引数として指定可能な値の数は各コマンドにより異なる。 【参考】 引数とオプション コマンド実行時に指定する値には引数とオプションがある。引数は実行に使用されるファイル名や出力されるメッセージなどを指定するのに使用される。 一方、オプションは -f などのように - (ハイフン) とアルファベット1文字で表記され、主にコマンドの振る舞い方を指定する目的で使用されるものである。 また、オプションは -a -

    引数を処理する | UNIX & Linux コマンド・シェルスクリプト リファレンス
  • シェルプログラミングの基礎知識 | Shinta's Site

    UNIX のコマンドインタプリタである Bourne shell を知っておかないといろいろ困るので基的なことをメモしておく。ここでは、コマンドをバッチ処理するための シェルスクリプトについて記述しています。 #!/bin/sh UNIXでスクリプトを記述する場合、一番初めの行は #!(shebang)ではじめます。さらに、シェルスクリプトであることを明確にするためにコマンドをフルパスで記述します。シェルスクリプトでは、#!/bin/sh となります。Bourne shell の場合、初めの行が : (コロン)のみでもよいが、現在あまりこの記述は使われていない。また、#! /bin/sh というように #! の後に半角スペースを入れても動作する UNIX システムもあるが、互換性を考えると半角スペースは入れないほうがよい。 コメント行と改行 # 以降コメントとなり、\ を利用して複数行を

  • Linux OOM Killerについて - Qiita

    OOMとは? Linuxは、メモリが不足してシステムが停止する恐れがある際、メモリリソースを多く消費しているプロセスを強制的に殺します。これをOOM Killerといいます。重要なプロセスでも問答無用で殺しにきます。 いるはずのプロセスがある日消えていたのなら、それはOOM Killerに殺されたのかもしれません 確認方法(CentOS) 5789のrubyのプロセスが殺されたことが分かります $ sudo cat /var/log/messages | grep Killed Oct 1 11:11:54 ip-xx-xx-xx-xx kernel: [1983378.957901] Killed process 5789 (ruby) total-vm:4957320kB, anon-rss:2717004kB, file-rss:0kB

    Linux OOM Killerについて - Qiita
  • [Linux]Swap領域をクリアする方法 · DQNEO日記

    開発に使ってるLinuxサーバで、Swap領域が大量に使用されて動作が重くなっていたのでSwap領域を解放するためにやったことのまとめ。 単純にサーバ再起動してもよいのだけど、それだと作業中のEmacsが落ちてしまうので開発効率がおちる。 サーバ再起動させずにSwapを空にする方法はないかと試行錯誤してみたら、うまくいきました。 メモリに空き容量がある場合 Swap usedの容量よりも実メモリの空き容量の方が大きい場合、単純にスワップをoffにしてonにすれば解決します。 swapoff -a && swapon -a (swapoffコマンドが見つからない場合は /sbin/swapoff などをあたってみてください。) メモリに空き容量がない場合 「スワップをoffにする」とは、ディスクに退避されてるデータをメモリに移動させることです。 なのでメモリの空き容量が足りない場合はswap

    [Linux]Swap領域をクリアする方法 · DQNEO日記
  • grepのオプションおさらい | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、河野です。 ログ調査の時にはgrep使いますよね!でも良くオプションを忘れてしまうので、おさらいしてみました。 ファイルの扱い 基の文法としては、

  • Linuxの対話がめんどくさい?そんな時こそ自動化だ!-expect編- - Qiita

    expect編以外に書くつもりは毛頭ありません。 manを見てもググってもどうにも手がつけられない程度に分かりづらかったので、備忘録としてまとめます。 expectって何? 対マシンに於いて発生する、マシンからの問いに対し、人間がキーを叩いて返答する、所謂対話を自動化するコマンド及びモジュールです。 今回はLinux上のexpectコマンドを取り上げますが、CでもC++でも同様の処理が実行可能なようです。 RubyPerlでも書き換えられ、モジュールとして配布されているようです。 元はTclというプログラム言語ベースのコマンドです。 コマンドとは言いましたが、使い道はほぼスクリプトとなるかと思います。 というかコイツをワンライナーでどう使えばいいのかよくわかりません。 また、expectはコマンドというか言語であるようです。 expectはTclのスーパーセット(Tclを包括し、更にオプ

    Linuxの対話がめんどくさい?そんな時こそ自動化だ!-expect編- - Qiita
  • sarでLinuxサーバのシステムモニタリングを行う方法 | なおべりーのブログ

    sarコマンドを使うことで、LinuxサーバのCPUやメモリ、DISK IOなどの様々な情報のモニタリングが可能です。 サーバを運用する上で、モニタリングは非常に重要です。 車にはスピードやガソリン残量、モーターの回転数などの情報が見れるようになっているため、スピード違反やガス欠になるのを事前に防ぐことが可能です。 サーバについても、CPUやメモリ、DISK IOなどの情報を取得することで、異常の事前検知や、問題発生時の原因調査などが円滑におこなうことができるようになります。 今回は、sarコマンドを利用して統計情報を取得する方法を紹介します。 sarコマンドとは sarとは、sysstatパッケージに含まれている、システムの統計情報を取得するコマンドです。名前は、System Admin Reporterの頭文字をとったものになります。 大きな特徴としては、過去にさかのぼって情報が見れる

    sarでLinuxサーバのシステムモニタリングを行う方法 | なおべりーのブログ
  • Linuxパフォーマンス調査などで使うコマンドメモ - Qiita

    パフォーマンスなどの調査をする時に利用する便利コマンドメモ。 これないぞ、あれないぞなどあると思いますがとりあえずなどを参考にまとめたものをピックアップしています。 参考 [24時間365日] サーバ/インフラを支える技術 ‾スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ) 絵で見てわかるシステムパフォーマンスの仕組み CPU使用率やメモリなど全体の概要把握 top デフォルトでは3秒ごとにOSで利用しているプロセスの数や状態、またOS全体のシステムリソース状況が分かります。 パフォーマンスが悪い場合にOS全体としてどのリソースの利用が多いのか(CPU負荷なのかメモリ利用率が高いのか)などの判断に有用だと思われます。 top - 22:36:56 up 28 min, 2 users, load average: 0.00, 0.02, 0.

    Linuxパフォーマンス調査などで使うコマンドメモ - Qiita
  • Hyper-V で Linux 環境を構築する | なつねこメモ

    なつねこメモ主にプログラミング関連のメモ帳 ♪(✿╹ヮ╹)ノ 書いてあるコードは自己責任でご自由にどうぞ。記事文の無断転載は禁止です。 2016/04/13 Hyper-V で Linux 環境を構築するせっかくの Windows 10 Pro なので、 Virtual Box ではなく、元から入っている Hyper-V を使って、 Linux 環境を構築してみました。 作っていく仮想マシンは、以下の要件を満たすものを目標としています。 CentOS 7 Windows 側から SSH で接続可能 仮想マシン側からインターネットへの接続が可能 ということで、早速作っていきます。 はじめに、 Hyper-V マネージャーを起動します。 Windows 10 の場合は、検索バーに Hyper-V と入力すれば出てくるはずです。 次に、右側メニューから、「仮想スイッチマネージャー」をクリックし

    Hyper-V で Linux 環境を構築する | なつねこメモ
  • Linux上でシェルが実行される仕組みを,体系的に理解しよう (bash 中級者への道) - 主に言語とシステム開発に関して

    バッチのまとめTOPへ bash 初級者は,簡単なコマンドが並んだだけの小さなスクリプトを書くことができる。 しかしシェルの動作原理をよく理解しておらず, 一歩進んだことをやろうとするとつまずく。 シェルスクリプトの中級者になるためには, Linux上でシェルが動作する仕組みを体系的に理解しておく必要がある。 (1) シェルとコマンドについて (1−1) シェルとは,OSに命令を出すために,OSを包んでいる外膜である。 (1−2) Linuxログイン時には,そのユーザ用のログインシェルが起動する。 (1−3) ユーザが打ち込んだコマンドは,実行前に,bashによって整形される。 (1−4) コマンドの先頭の文字列は,実行可能ファイルか,またはbashの組み込みコマンドである。 (2) コマンド間の連携について (2−1) コマンド呼び出しとは,サブプロセスの生成である。 (2−2) 親プロ

    Linux上でシェルが実行される仕組みを,体系的に理解しよう (bash 中級者への道) - 主に言語とシステム開発に関して
  • 6. システムがパフォーマンスを維持するためのメモリ管理について | Oracle 日本

    6. システムがパフォーマンスを維持するためのメモリ管理について システムの安定したパフォーマンス発揮を維持するためには、システムを構成する各機器において適切なメモリ量が常に利用可能な状態である必要があります。 一般的に、メモリ量が十分かどうかをチェックする方法としては、物理メモリ(主記憶)の空きメモリ量のチェックが行われています。 しかし、最近のOSにおいては、システムが性能向上のためにキャッシュやバッファリングを行っているため、物理メモリの空き容量のみに着目していると性能的な影響度がはっきり見えてこないことがあります。 今回は、性能管理においてどのようにメモリを管理すれば良いのかを示します。 物理メモリの空き容量の確認方法 物理メモリの空き容量とは、マシンに装着されている主記憶用の物理的なメモリ中でプログラムやデータ等が何も割り当てられていない部分の容量を指します。何も割り当てられてい

  • jq コマンドを使う日常のご紹介 - Qiita

    jq コマンドとは http://stedolan.github.io/jq/ JSONから簡単に値を抜き出したり、集計したり、整形して表示したりできるJSON用のgrepとかawkみたいなコマンドです。 WebサービスがJSONを吐いたり、AWS CLIが JSON を吐いたりする現代社会で大変便利なコマンドです。 マニュアル だいたいここ読めばOK. http://stedolan.github.io/jq/manual/ あ、これで、終わってしまう。だけど気にせず進めます。 簡単な例 まず、空気をつかみましょう。 以下jqコマンドの記法を見ていきます。JSON { "hoge": "value" } があった場合、 . がルート {} を表します。.hoge で "value" を表現します。だいたいこんな感じです。 ただの整形 しばらく下記のJSONを例に進めます。itemsには配

    jq コマンドを使う日常のご紹介 - Qiita
  • Linux チューニング - Ext3 のパフォーマンスを最大化させる

    じつは自宅サーバのロードアベレージが上がり続けています。分析の結果、ボトルネックは I/O 処理でした。CPU は Athlon64 X2 4400+ ですが、まだまだ当分この CPU で間に合いそうです。HDD は当時は 7200 回転で最速だった HITACHI Deskstar T7K250 SATA2 250GB を RAID1 構成にしたのですが、今思えば速度優先で RAID0 にしておけば良かったと少しだけ後悔。 I/O がボトルネックに成っている理由ですが、Drk7jp が公開しているサービスの全てがキャッシュファイルを利用した高速化手法を取っているのですが、単純にそれらファイルの write 処理が追いついていません。常に何らかのプロセスで I/O 待ち状態が発生しているような状況です。抜的な解決方法としては disk を高速なものに交換する以外ありません。 というわけで

  • Linuxサーバの反応が遅い(重い)場合の原因の調査手順

    概要 Linuxサーバの反応が遅い場合の調査手順のメモ。 実行する場合は自己責任でお願いします。 原因として考慮すべき事項 サーバが遅い場合には様々な原因がありますが、以下を考慮します。 CPU負荷 メモリ不足 ディスクI/O負荷 ネットワークI/O負荷 まず、どれが原因か調査する必要があります。 top コマンド 最初は「top」コマンドを利用します。 top - xx:xx:xx up 0 min, 1 user, load average: 1.44, 0.51, 0.18 Tasks: 87 total, 1 running, 86 sleeping, 0 stopped, 0 zombie Cpu(s): 0.7%us, 0.3%sy, 0.0%ni, 99.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 2057692k total, 291