タグ

linuxに関するnunohitoのブックマーク (30)

  • PHPの公式Dockerfileを読み解く - Qiita

    Dockerfileをスラスラ書けるようになるにはどうすればいいか?」 自分の答えは、公式のDockerfileを読み解くことだと思う。公式のリポジトリには、DockerLinuxに精通した人達の知恵が詰まっており、知らなかったことを多く知れる。 ということで今回は、php:7.3-apache-stretch という「Apache上でPHP7.3を動かす環境」が入ったDockerイメージのDockerfileを読解していく。 GitHubはここにある。php/7.3/stretch/apache · docker-library/php · GitHub ベースイメージの指定(debian:stretch-slim) Dockerfileは全てFROMから始まり、ベースのイメージを設定する。ここではベースイメージにDebian v9(stretch)を使用している。 Linuxディス

    PHPの公式Dockerfileを読み解く - Qiita
  • Linuxカーネルのソースコードを機能とレイヤーで分類して表示してくれる「Linux kernel map」

    Linuxのカーネルは膨大な数のソースコードから成り立っており、どこに何の処理が書いてあるのかぱっと見当をつけるのにはかなりコードを読み込む必要があります。「Interactive map of Linux kernel」はそのソースコードを機能とレイヤーで分類して表示してくれるサイトということで、使い勝手を試してみました。 Interactive map of Linux kernel http://www.makelinux.net/kernel_map/ サイトにアクセスし、ロードが終わると下の画像のように6列6行の表が表示されます。列が機能の分類を表しており、「インターフェース」「システム」「処理」「メモリー」「ストレージ」「ネットワーク」という分類になっています。行はレイヤーを表しており、上からシステムコールなどの「ユーザースペースインターフェース」、「バーチャル」、「ブリッジ」

    Linuxカーネルのソースコードを機能とレイヤーで分類して表示してくれる「Linux kernel map」
  • コマンドラインツールを作るときに参考にしている資料 | SOTA

    コマンドラインツールについて語るときに僕の語ること - YAPC::Asia Tokyo 2014 コマンドラインツールが好きで昔からつくってきた. 今年のYAPCで,そのコマンドラインツールをつくるときにどういうことを意識して作っているのか?どのような流れで開発しているのか?といったことを語る機会をもらえた. 具体的な内容については,是非トークを聴きに来てもらうとして, スライドをつくるにあったって過去に読んだ資料や,よく参考にしている記事を集め直したので,その一部を参考資料としてまとめておく. UNIXという考え方 UNIXという考え方 Mike GancarzによるUNIXの思想や哲学をまとめた.古いが全然色あせてない. コマンドラインツールの作り方を書いたではないが,これらの思想の上で動くツールはこの思想に準拠して作られるべきだと思う.何度も読んで考え方を染み付かせた. 小さい

  • そこそこセキュアなlinuxサーバーを作る - Qiita

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

    そこそこセキュアなlinuxサーバーを作る - Qiita
  • NETBIOS名とホスト名の違い

    今回は「NETBIOS名」と「ホスト名」について解説します。「NETBIOS名」と「ホスト名」が混ざってしまいよく理解できていない人はかなり多いです。いざという時のトラブルシュートで差が出ますのでしっかり理解しましょう。 Windowsネットワークの歴史 NETBEUIの時代 「NETBOIS名」のことをよく理解するためにはWindowsネットワークの歴史を知らなくてはいけません。 まず、今のTCP/IP全盛の時代からすると信じられないかもしれませんが、初めてWindowsにネットワーク機能が標準搭載されたWindows95では規定のプロトコルはTCP/IPでは無くてNETBEUIというものでした。そしてNETBEUINETBIOSというAPIを利用しています。 NETBEUIはTCP/IPとは全く異なる考え方のプロトコルです。IPアドレスなんてありません。ルーティングもしません。名前だ

    NETBIOS名とホスト名の違い
  • rm -rf でやらかした時すかさず実行する復元コマンド(Linux編) | aucfan Engineers' blog

    初めまして、新卒入社の桑折(@2k0ri)と申します。 入社から今日まで約3ヶ月間、研修およびOJTを受けさせて頂いておりました。 その初OJTのステージング環境で、デプロイ先ディレクトリのシンボリックリンクを消すつもりが デプロイディレクトリを中身ごとrm -rfする という重度のやらかしをしでかしました。 30秒うちひしがれた後、ググって extundeleteというコマンドを見つけてからの 自分が行ったリカバリーの手順を残します。 なお、このコマンドはext3/ext4フォーマット専用になります。 1. サーバーへのアクセスを出来る限り抑えるように周知 最近のLinuxのデファクトFSであるext4フォーマットは、rmされたデータの跡地に 待ったなしで容赦なく新しいデータが書き込まれていきます。 そのため、何よりもまず失われたデータが上書きされないように、 該当サーバーでやらかしたこ

    rm -rf でやらかした時すかさず実行する復元コマンド(Linux編) | aucfan Engineers' blog
  • マルチコア時代のロードアベレージの見方 - naoyaのはてなダイアリー

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

    マルチコア時代のロードアベレージの見方 - naoyaのはてなダイアリー
  • LinuxのDISK,CPUベンチマークを確認する - Qiita

    $ vi myjob.fio [Sequential-Read] # jobの名前 rw=read # シーケンシャルでreadする directory=/tmp/ # ベンチマークで使うディレクトリ size=100m # ベンチマークで使用するデータサイズ。キャッシュサイズを考慮して決める。 ioengine=libaio # 非同期I/Oでテストする。指定しないとsync(同期I/O)になる。 [Sequential-Write] rw=write # シーケンシャルでwriteする directory=/tmp/ size=100m ioengine=libaio [Random-Read] rw=randread # ランダムでreadする directory=/tmp/ size=100m ioengine=libaio [Random-Write] rw=randwrite

    LinuxのDISK,CPUベンチマークを確認する - Qiita
  • 9.15.5. 推奨されるパーティション設定スキーム Red Hat Enterprise Linux 6 | Red Hat Customer Portal

    インストールガイド 1. Obtaining Red Hat Enterprise Linux 2. メディアの作成 Expand section "2. メディアの作成" Collapse section "2. メディアの作成" 2.1. インストール DVD の作成 2.2. 最小ブートメディアの作成 Expand section "2.2. 最小ブートメディアの作成" Collapse section "2.2. 最小ブートメディアの作成" 2.2.1. BIOS ベースのシステムの最小 USB ブートメディア 2.2.2. UEFI ベースのシステムの最小 USB ブートメディア 2.3. USGCB 準拠のインストールイメージの作成 I. x86、AMD64、および Intel 64 - インストールと起動 Expand section "I. x86、AMD64、および In

    9.15.5. 推奨されるパーティション設定スキーム Red Hat Enterprise Linux 6 | Red Hat Customer Portal
  • 6万ミリ秒でできるLinuxパフォーマンス分析 | Yakst

    NetflixのシニアパフォーマンスアーキテクトであるBrendan Gregg氏による、Linuxサーバにログインして60秒でまず調べることのまとめ。 パフォーマンス問題でLinuxサーバーにログインしたとして、最初の1分で何を調べますか? Netflixには、多数のEC2 Linuxからなるクラウドがあり、そのパフォーマンスを監視したり調査したりするための数々のパフォーマンス分析ツールがあります。その中には、クラウド全体にわたる監視を行うAtlasや、オンデマンドにインスタンスの分析を行うVectorがあります。これらのツールは多くの問題を解決する手助けをしてくれますが、各インスタンスにログインし、標準的なLinuxパフォーマンスツールを実行する必要がある場合もあります。 この記事では、すぐ使えるはずの標準的Linuxツールを使いコマンドラインにおいて、最適化されたパフォーマンス調査を

    6万ミリ秒でできるLinuxパフォーマンス分析 | Yakst
  • Linuxサーバにログインしたらいつもやっているオペレーション - ゆううきブログ

    主にアプリケーション開発者向けに、Linuxサーバ上の問題を調査するために、ウェブオペレーションエンジニアとして日常的にやっていることを紹介します。 とりあえず調べたことを羅列しているのではなく、当に自分が現場で使っているものだけに情報を絞っています。 普段使っているけれども、アプリケーション開発者向きではないものはあえて省いています。 MySQLNginxなど、個別のミドルウェアに限定したノウハウについては書いていません。 ログインしたらまず確認すること 他にログインしている人がいるか確認(w) サーバの稼働時間の確認 (uptime) プロセスツリーをみる (ps) NICやIPアドレスの確認 (ip) ファイルシステムの確認(df) 負荷状況確認 top iostat netstat / ss ログ調査 /var/log/messages or /var/log/syslog /

    Linuxサーバにログインしたらいつもやっているオペレーション - ゆううきブログ
  • LVMで新たにディスクを追加して既存のLVを拡張する - Qiita

    容量が足りなくなったときに、新しいディスクを追加して既存のVG・LV・ファイルシステムを拡張する手順。 新しいディスク上にPVを作成 新しいディスク上にPVを作成する。fdiskパーティションを作成しておく必要はない。 以下は /dev/sdg 上にPVを作成する場合の実行例。

    LVMで新たにディスクを追加して既存のLVを拡張する - Qiita
  • [Linux] 単調増加しているファイルを探す : Edo::World::Blog

    9月25 [Linux] 単調増加しているファイルを探す カテゴリ:LinuxCentOS5 気がついたらディスクを圧迫していたって事にならないようにチェックし、必要であればlogrotateの対象にする。 エントリではlsofコマンドとfindでのチェック方法を記載(他の方法は思いつかない...)。 lsof 一般的にプロセスが使用中のファイルを調べたり使われるコマンド。 書き込みモードでファイルがオープンされている物がピックアップでき、さらにファイルサイズやプロセスIDも参照できるので便利。 ファイルサイズの大きい物から並べてみた。 lsof | grep -P "\s+\d.*(u|w)\s+REG" | sort -r -k 7 grepコマンド補足 "-P"オプションはPerlの正規表現が使える・・・らしい FD列で、w(書き込み)、u(読み書き込み)モードで開いているファイル

  • RHEL6/CentOS6でMunin 2.0.16 セットアップ&動的設定 | Pocketstudio.jp log3

    EPEL リポジトリを使った Munin のセットアップが、非常に簡単になりました。これまでは yum で入れた場合でも、細かな調整が必要でした。たとえば、グラフのダイナミック・ズーミング機能、以前は面倒でしたが、今はもう簡単できます。 今日の投稿は、munin を yum で入れる方法(所要時間5分)。そして、動的にグラフや HTML ページを生成するための方法(所要時間10分)をご紹介します。 Munin のバージョンは 2.0.16 (2013年6月3日配付)が最新安定版です。EPELのものも 2.0.16 に追いつきました。Version 2.0 がリリースされてから、毎月のようにバージョンアップが続いていましたが、ようやく一段落。開発チームでは次期バージョン 2.1.x 系の開発が進んでいます。 Munin いつ始めるの? 今でしょ!! ←ごめんなさい、一回書きたかっただけです(

  • オフライン環境でyumを使用したいとき。レポジトリにISOイメージを指定する。 - 日常メモ

    最近仕事では、AWSの構築作業をしている。勉強しながらなので、全然捗らないけど。しかし、今日はその話ではなく、知人に質問された件。 知人の悩みは次のようなもの。 Linux環境を構築しており、必要なソフトウェアを1つずつインストールしているとのこと。 しかし、インターネットからは隔離された環境で、yumのリポジトリがインターネット上のサーバに指定されたままではyumが使い物にならなくて困っている。 この質問に対して、メールで次のように回答した。 yumのレポジトリにLinuxのインストールメディアを指定し、インストールメディアから必要なパッケージをyumを使用してインストールすればよい。 ただ、これだけでは具体的な手順が分からなかったようで、別途次のように回答。 VMWare使っているようで、しかも、VSphere Clientツールでしかアクセスできないという事情もあったらしい。 〜〜〜

    オフライン環境でyumを使用したいとき。レポジトリにISOイメージを指定する。 - 日常メモ
  • Linux fdiskコマンドで論理パーティション(拡張領域)を作成する

    Linux fdisk コマンドでパーティションを作成する」で、fdisk コマンドで基領域の作り方を説明しました。次は拡張領域を作成し、そこへ論理パーティションを作成します。 Last Update : 2013年08月12日 Linux fdiskコマンドで論理パーティション(拡張領域)を作成する 項目 拡張領域を作成する 論理パーティションを作成する 1. 拡張領域を作成する 拡張領域を作成するには、fdiskコマンドの「n」コマンドで新規領域を作る時の作る領域選択で「e:拡張」を選択します。 # fdisk /dev/sdb デバイスは正常な DOS 領域テーブルも、Sun, SGI や OSF ディスクラベルも 含んでいません 新たに DOS ディスクラベルを作成します。あなたが書き込みを決定するまで、変更は メモリ内だけに残します。その後はもちろん以前の内容は修復不可能にな

  • Linux fdiskコマンドでパーティションを作成する

    memo ハードディスクは、4つまでのパーティションに分割できます。(※ 4つを超えることができない) パーティションは、基領域か、拡張領域となり、拡張領域は1つのハードディスクに1つだけ作ることができます。 基領域だけで4つパーティションを作成すると、拡張領域を作成する事はできません。 拡張領域には、論理パーティションという領域を複数作ることができるので、多くのパーティションを必要とする場合には拡張領域が必要となってきます。 パーティションの最大数 IDE :63(基3 +論理60) SATA:15(基3 +論理12) SCSI:15(基3 +論理12) 今回は、1GBの基領域を作成してみます。 コマンド (m でヘルプ): n コマンドアクション e 拡張 p 基領域 (1-4) p ← 今回は基領域を作成するので「p」を入力 領域番号 (1-4): 1 ← このディス

  • 気付いたらrootメールが溢れてる

    そんなことになる前にやれるべきことはやっておこう。 犯人はだれ Linuxサーバをテキトーに作ってテキトーに運用してるとやらかしがちなのがrootメールの始末だろう。ターミナルログインしてrootにsuしたら毎回You have mailと言われるアレである。mailコマンドを打ってもよくわからんメールが大量に溜まっておりいちいち読むのも削除するのも面倒だからと放置しがちだが、気を抜くと何年かして忘れた頃に突如ディスクが溢れて、システム丸ごと制御不能ということも稀にあるからあなどれない。それはまあ自業自得なのだが、ミニマルな普通のRHEL/CentOS(Linux)ならrootメールの生成元は基的に以下のふたつだけだ。 crond logwatch たったふたつしかないのだからサーバセットアップ時に忘れずに対処しておくに越したことはない。あとからnagiosやらchkrootkitやらを

  • Linuxサーバーのアカウント管理について | おそらくはそれさえも平凡な日々

    少人数でサービス開発をしていると、サーバーのアカウント管理を疎かにしてしまいがちです。良くないことだとわかっていながらも、共用ユーザーのログイン情報を数人で共有していたりだとか、rootばかり使っているなんてこともあるのではないでしょうか。 それだとオペレーターが増えたり、退職者がでたりした時に困ることになるので、最初からルールと仕組みを決めておいた方がトータルで楽になります。 前提 パスワードやログイン鍵の共用、ダメ!絶対! rootを常用するの(・A・)イクナイ!! パスワードやログイン鍵を共用していると、人数が増えた時に誰が作業しているのか把握するのが大変になりますし、退職者が出た時に一斉変更をせざるを得なくなって混乱してしまいます。逆に一部のスタッフを別扱いして権限を制限したユーザーをアドホックに作ったりしてしまうのも管理が煩雑になります。じゃあどうすればよいかというと、個人ごとに

    Linuxサーバーのアカウント管理について | おそらくはそれさえも平凡な日々
  • Linuxのディレクトリ構成 -- Key:雑学事典 -- Key:雑学事典

    FHSとは 最終更新2006-09-23T22:46:00+09:00 この記事のURI参照https://www.7key.jp/nw/directory.html#fhs FHSとは【Filesystem Hierarchy Standard】の略で、ファイルシステム階層標準と訳されます。Linuxや他のUNIX系オペレーティングシステムにおいて主なディレクトリの構成とその内容を定めるものです。 FHS 2.3の推奨するディレクトリ構成 最終更新2006-09-23T22:46:00+09:00 この記事のURI参照https://www.7key.jp/nw/directory.html#fhs23 /ルートディレクトリ /bin(基コマンド) /boot(起動に必要なファイル) /dev(デバイスファイル) /etc(設定ファイル) /home(ユーザーのホームディレクトリ) /