タグ

Linuxに関するs_moriのブックマーク (142)

  • 俺史上最強のiptablesをさらす - Qiita

    #!/bin/bash ########################################################### # このスクリプトの特徴 # # 受信・通過については基的に破棄し、ホワイトリストで許可するものを指定する。 # 送信については基的に許可する。ただし、サーバが踏み台になり外部のサーバに迷惑をかける可能性があるので、 # 心配な場合は、送信も受信同様に基破棄・ホワイトリストで許可するように書き換えると良い。 ########################################################### ########################################################### # 用語の統一 # わかりやすさのためルールとコメントの用語を以下に統一する # ACCEPT :

    俺史上最強のiptablesをさらす - Qiita
  • tmpfsが/dev/shmをマウントしている件 - サーバー技術メモ

    前から気になってた。tmpfsって何? ノートLinuxでファイルシステムのディスク容量を見てみるとこうなってる。 # df -Th Filesystem Type サイズ 使用 残り 使用% マウント位置 /dev/hda2 ext3 19G 7.1G 11G 41% / tmpfs tmpfs 248M 0 248M 0% /lib/init/rw udev tmpfs 10M 64K 10M 1% /dev tmpfs tmpfs 248M 0 248M 0% /dev/shm /dev/hda1 ext3 938M 51M 840M 6% /boot /dev/hda3 ext3 17G 9.7G 6.1G 62% /homeFilesystemの中の/dev/hda達は、/etc/fstabに書いてるから納得だけど、 Typeがtmpfsなのがよくわからない。 仮想メモリベースの

    tmpfsが/dev/shmをマウントしている件 - サーバー技術メモ
    s_mori
    s_mori 2019/01/27
  • ログインシェルとインタラクティブシェルと~/.bashrc達の関係

    Update & 注意 (2017.5.9) 最初の投稿からかなりの時間が経過しましたが、いくつか修正点が見つかりましたので、それぞれ訂正の注記を入れておきました。また、ポイントのまとめを表に改めました。 以下の記述は次の環境で動作確認しています。 OS X 10.11.6, Homebrew よりインストールされた Bash 4.4.12 Ubuntu 14.04.5 LTS, Bash 4.3.11(1)-RELEASE macOS 10.12.4, OSデフォルトの GNU bash, version 3.2.57(1)-release ログインシェルとして Bash が使用されていることを確認するには、echo $SHELL として環境変数 $SHELLに bash の実行ファイルが指定されていることを確認します。(2018.5.16追記: Ubuntu等、左記の方法では確かめられ

    ログインシェルとインタラクティブシェルと~/.bashrc達の関係
  • 本当に正しい .bashrc と .bash_profile の使ひ分け - Qiita

    .bash_profile はログイン時にのみ実行されます。具体的な用途は: 環境変数を設定する (export する変数) 環境変数はプロセス間で勝手に受け継がれるのでログイン時のみ設定すれば十分です。 .bashrc は対話モードの bash を起動する時に毎回実行されます。具体的な用途は: 環境変数でない変数を設定する (export しない変数) エイリアスを定義する シェル関数を定義する コマンドライン補完の設定をする これらは bash を起動する度に毎回設定する必要があるものです。 その他 .bash_profile ? .bashrc ? いろいろあるけどこいつらなにもの? を参照。もっと突き詰めたい人は Linux: .bashrcと.bash_profileの違いを今度こそ理解する。 Bash 以外のシェルを使用しない人は .bash_profile と .bashrc

    本当に正しい .bashrc と .bash_profile の使ひ分け - Qiita
  • Linuxのloadavgが約7時間ごとに上昇する現象の原因 - Mackerel お知らせ #mackerelio

    Mackerelチームのエンジニアのid:itchynyです。 「mackerel-agentを入れるとloadavgが7時間ごとに上昇する」 先日、このような問い合わせを複数のお客さまから受けました。私も実験してみたところ、確かに再現しました。EC2 t2.microにmackerel-agentを入れて簡単なログ監視とプロセス監視を設定し、数日放置しました。 確かに、約7時間ごとにloadavgが上昇しています。この周期のcronの設定はしておらず、またmackerel-agent内部でも7時間ごとに行う処理はありません。しかし、プラグインを多く入れるほどloadavgのピーク値も上がります。 エントリーでは、この現象の原因について説明します。 loadavgが上昇する原因を調べるには、まずloadavg自体がどう計算されているかを知る必要があります。 まずは、Linuxがloada

    Linuxのloadavgが約7時間ごとに上昇する現象の原因 - Mackerel お知らせ #mackerelio
  • サーバから外に出ていく時のグローバルIPをコマンドで調べる - Qiita

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    サーバから外に出ていく時のグローバルIPをコマンドで調べる - Qiita
    s_mori
    s_mori 2018/06/09
    curl inet-ip.info
  • Linuxのユーザーランドをinitから全てまるごとgolangで書く

    第1回NTT-WEST学生向けアプリ開発コンテスト(WebRTC)の勉強会資料です。 ※コンテスト情報はFacebookページよりご覧ください! https://www.facebook.com/nttw.w.con 各資料のURL WebRTCの技術解説 第二版 公開版 完全版 http://www.slideshare.net/nttwestcon/20140805-technical-description-of-webrtc-second-edition-public-edition-full-version WebRTCの技術解説 第二版 公開版 編 http://www.slideshare.net/nttwestcon/20140805-technical-description-of-webrtc-second-edition-public-edition-main-pr

    Linuxのユーザーランドをinitから全てまるごとgolangで書く
  • sortコマンド、基本と応用とワナ - Qiita

    sortコマンド、使いこなしてる? UNIXの基コマンドの一つsortコマンド。アナタはどれくらい使いこなしているか? 何にもオプションを付けずにsortと打ち込むくらいしか知らない、というなら、これを見て便利に使おう。 基編. 各行を単なる1つの単語として扱う sortコマンドの使い方には基と応用がある。基的な使い方は単純で、各行を1つの単語のように見なしてキャラクターコード順に並べるなどの使い方だ。 (オプションなし)……キャラクターコード順に並べる $ cat <<EXAMPLE | sort > perl > ruby > Perl > Ruby EXAMPLE Perl ← 註) Ruby ← キャラクターコード順なので perl ← 大文字から先に並ぶ ruby

    sortコマンド、基本と応用とワナ - Qiita
  • CentOS7で「kernel:BUG: soft lockup~」というメッセージが表示された - Qiita

    Message from syslogd@cmv7 at Jun 13 17:54:30 ... kernel:BUG: soft lockup - CPU#0 stuck for 23s! [rcuos/2:16] 環境 ESXi5.5 CentOS7.2 64bit config-3.10.0-327.18.2.el7.x86_64 /var/log/messagesを見てみると・・・ Jun 13 17:54:30 cmv7 kernel: BUG: soft lockup - CPU#0 stuck for 23s! [rcuos/2:16] Jun 13 17:54:30 cmv7 kernel: Modules linked in: vmw_vsock_vmci_transport vsock coretemp crc32_pclmul ghash_clmulni_intel

    CentOS7で「kernel:BUG: soft lockup~」というメッセージが表示された - Qiita
  • 『Linuxのしくみ』を読みました - スベリミナル効果

    OSCにて、著者様ご人から直接売って頂いた『Linuxのしくみ』ですが、読むの遅くてモタモタしてましたが無事読み終わりましたので軽く感想など書かせていただければと思います。遅かったのは花粉症とMHWのせいだ。 [試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識 作者: 武内覚出版社/メーカー: 技術評論社発売日: 2018/02/23メディア: 単行(ソフトカバー)この商品を含むブログを見る 読んだ人 Linux触り出してそろそろ10年目(マジかウソだろおい…) だいぶ前に職場でカーネル2.6解読室とかの輪講とかはやってたけど「お、おう」くらいな理解度だった Kernelのコードまで読んだ経験はあまり無い 難易度の高くないLAMP周りをボチボチ(高負荷になることが無い簡素なUIとか) iptablesとかnetfilter周りをボチボチ OSSでVPN繋ぐ

    『Linuxのしくみ』を読みました - スベリミナル効果
  • Amazon.co.jp: [試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識: 武内覚: 本

    Amazon.co.jp: [試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識: 武内覚: 本
  • minimalなlinuxを作りたい、と思ったんだ - livaの雑記帳

    以下のツイートが結構反響があったので、どんな事をやったのかまとめておく。 自分の勉強用に最小構成のlinuxを作ったので、githubに転がしておく(不要な.cファイルもパッと見つけられる限り削除した)https://t.co/KdTb6zgr8N— Liva (@liva_jy) 2018年2月8日 元ネタはsatさんのこのツイート。 linuxのコードを理解するための、主要関数や構造体の名前はそのままに、簡略化したカーネルというのは作ってみたい。cgroupsとかトレーサとかエラー処理とかは思い切ってばっさりと。常人はそこにはまって躓くから— sat (@satoru_takeuchi) 2018年2月8日 僕はカーネルには詳しくはないので、中のソースを弄って素朴な実装にリプレースする、みたいな事はできないのだけど、kernel configでminimalな構成にして、不要なファイル

    minimalなlinuxを作りたい、と思ったんだ - livaの雑記帳
    s_mori
    s_mori 2018/02/10
  • diffコマンドを便利に使う

    configファイル修正したり、ソースをいじった際によくdiffコマンドを使って変更点を確認しますよね。 オプション無しで実行すると見にくいけど、あるオプションを付けてやると gitっぽく出力してくれたり、WinMergeっぽく出力してくれるようになります。 覚えておくと便利なので、ぜひ見ていってください。 オプション無し オプション無しでdiff を叩くと以下のように出力されます。 見にくい・・ 慣れない人が見るとなんじゃこりゃとなりそうですね。 [root@bacchi ~]# diff /etc/ntp.conf.orig /etc/ntp.conf 8,9c8,10 < restrict default kod nomodify notrap nopeer noquery < restrict -6 default kod nomodify notrap nopeer noquer

    diffコマンドを便利に使う
    s_mori
    s_mori 2018/02/09
    diff -ybBw
  • Linuxカーネルを読む前にやったこと - komukomo’s diary

    「カーネルのコードがよくわからない。Linuxカーネルに関するを読んでもいまいちしっくりこない。」 から、「読めば理解できそう..!」 になるまでにやったことのまとめ。 はじめに 低レイヤの話がわかるようになりたかった。 カーネルの中身が知りたかった。 とりあえずを読もうと思い詳解 Linuxカーネル 第3版を読んだが知識がなさ過ぎてよくわからない。 知らない用語だらけで都度調べればなんとなくはわかる気もするが、いまいち頭に入ってこない。 今思うとそもそもCPUの話なのかカーネルの話なのかさえよくわからない状態で読んでいたような気がする。 そんな状態を克服するためにやったことをまとめておく。 学習前 学習前の自分の知識はこんな感じだった。 知っていた データ構造とアルゴリズム 論理回路 C言語(研究室で数値計算に使える程度。構造体やポインタくらいならわかる。) よく知らなかった OSが

    Linuxカーネルを読む前にやったこと - komukomo’s diary
  • net.ipv4.tcp_tw_recycle は廃止されました ― その危険性を理解する - Qiita

    Disclaimer 私はネットワークの勉強もちゃんとしたことないし、Linux のソース読むのもはじめてな素人です。 何かおかしなところなどあれば、遠慮なくコメント欄でまさかりをお願いいたします。 ソースコードの引用に関して 文中で Linux のコード/ドキュメントを引用している箇所がありますが、すべてタグ v4.11 のものです。また、日語のコメント・翻訳文は筆者が入れたものです。 TL; DR Linux のカーネルパラメータ net.ipv4.tcp_tw_recycle は、バージョン4.12から廃止されました。 今後はこの設定は行わないようにしましょう(というかできません)。 一方、net.ipv4.tcp_tw_reuse は安全であり、引き続き利用できます。 …というだけの話なのですが、自分用にメモがてら経緯・背景などを記録しておきます。 なんで気がついたか このパラ

    net.ipv4.tcp_tw_recycle は廃止されました ― その危険性を理解する - Qiita
  • 知っておきたいLinuxファイルシステムの概念 - Qiita

    ファイルシステムとは ファイルシステムとは、データとメタデータをある構造に従ってストレージデバイス上に格納したものを指す。 ファイルシステムの作成には mkfs(8) コマンドを使用する。 全体アーキテクチャ 以下の図の通りである。詳細は以下で説明する。 ファイルシステムの構造 ここでは、古典的ファイルシステムであるext2をベースに説明する。 ファイルシステム内で領域を割り当てる基単位を論理ブロックという。ディスクデバイスの連続する物理ブロックから構成される。論理ブロックサイズ1024,2048,4096バイトのいずれかを選択できるが、これは mkfs(8) のパラメータとして与える。 ディスク上では、以下のように格納される。※ext2の構造はブロックグループごとに分かれており、もう少し複雑になっている。 ブートブロック・・・OSを起動する情報を保存する。すべてのファイルシステムでブー

    知っておきたいLinuxファイルシステムの概念 - Qiita
    s_mori
    s_mori 2018/01/02
  • 【CentOS】BUG: soft lockup - CPU# のメッセージ | ぴぐろぐ

    ZabbixでIO系のエラーが頻発していたので確認したところ、kernel: BUG: soft lockup - CPU#x というエラーがでていたので対処した時のメモです。 環境 ESXi 6.0 CentOS 7.2 エラーなど /var/log/messages を確認したところ、以下のエラーが出力されていた。 Jun 29 03:30:38 HOSTNAME kernel: BUG: soft lockup - CPU#1 stuck for 23s! [xfsaild/dm-0:401] Jun 29 03:30:38 HOSTNAME kernel: Modules linked in: ip6t_rpfilter ipt_REJECT ip6t_REJECT xt_conntrack ip_set nfnetlink ebtable_nat ebtable_broute b

  • プロセス毎のメモリ消費量を調べたい時に使えるコマンド - Qiita

    # ps aux | grep unicor[n] USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND user 1111 0.0 10.4 479180 177440 ? Sl Aug16 0:38 unicorn worker[0] -D -E production -c /RAILS_ROOT/config/unicorn.rb user 2222 0.0 10.5 547060 178604 ? Sl Aug16 0:39 unicorn worker[1] -D -E production -c /RAILS_ROOT/config/unicorn.rb user 3333 0.0 10.5 479180 178764 ? Sl Aug16 0:26 unicorn worker[2] -D -E production -

    プロセス毎のメモリ消費量を調べたい時に使えるコマンド - Qiita
    s_mori
    s_mori 2017/08/17
  • Linuxメモ : icdiffコマンドで横並び、文字単位で差分を表示 - もた日記

    icdiff インストール 使い方 git diffで使う icdiff icdiff: side-by-side highlighted command line diffs github.com 2つのファイルを横並び(サイドバイサイド)で比較する場合、diff -yを使う、vimdiffを使う、WindowsならWinMergeなどのソフトを使う方法があるが、今回はicdiffコマンドを試してみる。 icdiffを使うとコマンドラインで図のように横並び、文字単位で差分を表示することができる。icdiffはImproved Colored Diffの略だと思われる。 インストール pipでインストールできるので下記コマンドを実行。 $ pip install icdiffまたはここからバイナリをダウンロードしてパスが通っているディレクトリに置く。 ヘルプメッセージは以下の通り。 $ i

    Linuxメモ : icdiffコマンドで横並び、文字単位で差分を表示 - もた日記
  • Linuxのパッケージをアップデートしたあとrestartが必要なプロセスを見つける方法 - Qiita

    はじめに 脆弱性対応のためのアップデート作業というものは頻繁に発生するものですが、番運用しているシステムではサービスへの影響を最小限にしたいものです。 アップデートした後、出来ることなら必要なプロセスだけリスタートさせることで済ませたいのですが、どのプロセスをリスタートすれば良いのか、そもそもOS再起動しないと反映されないものなのか、判断が付かない場合が少なくありません。 そのような場合のため、再起動が必要なプロセスを見つけたり、OS再起動が必要かどうかアドバイスしてくれるコマンドがあります。 Redhat系 「yum-utils」パッケージに入っている「needs-restarting」コマンドを使います。 # needs-restarting -h Usage: needs-restarting: Report a list of process ids of programs th

    Linuxのパッケージをアップデートしたあとrestartが必要なプロセスを見つける方法 - Qiita
    s_mori
    s_mori 2017/07/15
    needs-restarting