タグ

関連タグで絞り込む (183)

タグの絞り込みを解除

Linuxに関するskypenguinsのブックマーク (149)

  • Systemd

    Page Scrolling Vertical Scrolling Horizontal Scrolling Wrapped Scrolling

    Systemd
  • ls よりも exa を使おう!モダンな Linux コマンド達を紹介 - Qiita

    上記の画像を見ると分かる通り、カラフルで見やすいですね。右図のようにディレクトリのツリー表示にも対応しています。さらに --icons オプションを付けると、ファイルタイプに応じたアイコン表示も可能です。 bat 続いて cat コマンドの代替である bat の紹介です。 ファイルの拡張子に応じてソースコードを色付けして表示してくれます。また less のようなページャの機能も持っており、行数の長いファイルを渡すと自動でページャモードで開いてくれます。 hexyl hexyl はバイナリダンプコマンド od の代替コマンドです。bat の開発者と同じ方が開発しています。

    ls よりも exa を使おう!モダンな Linux コマンド達を紹介 - Qiita
  • メモリダンプの模様とはどのようなものなのか(入門編) - 覚書

    はじめに 最近バズった以下の記事について、補足のようなものを書きたくなったので書きます。 note.com 上記の記事に対して「模様って何…?」のようなコメントが散見されましたので、カーネルのメモリダンプ解析経験が数年ある筆者が、わたしの理解できる範囲でメモリの模様とはどんなものかについて書きます。なお、模様とはあくまで感覚的なものなので、上記記事で扱われているかたの定義とわたしの定義は違うかもしれませんのであしからず。また、LinuxカーネルやCPUについてのある程度の知識が必要な表現や用語が出てきますが、記事ではそれらについての説明は割愛します。 メモリのさまざまな模様 メモリの模様とは(少なくとも私にとっては)16進バイナリの文字列の特定パターンです。ここでいうパターンとは正規表現マッチングできるようなパターンのことを指します。その中の代表的なパターンを見てみましょう。 ポインタ

    メモリダンプの模様とはどのようなものなのか(入門編) - 覚書
  • 大規模システムでの Linux のメモリ管理

    (This post is also available in English.) この記事は Linux memory management at scale を 著者の Chris Down さんの許可 を得て Hiroaki Nakamura が日語に翻訳したものです。 原文のライセンス は CC BY-SA 4.0 であり、翻訳のライセンスも同じく CC BY 4.0 とします。 cgroup2 プロジェクトでの私の仕事の一部として Linux システムのリソース管理についてエンジニアと話すことに多くの時間をかけてきました。 これらの会話を通じてどんどん明らかになってきた 1 つの事実は多くのエンジニアは、シニア SRE たちでさえも、 Linux のメモリ管理についていくつかのよくある誤解を持っていて、そしてそれが彼らがサポートするサービスやシステムが来確実に稼働したり効率的

    大規模システムでの Linux のメモリ管理
  • スワップの弁護:よくある誤解を解く

    (This post is also available in English.) この記事は In defence of swap: common misconceptions を 著者の Chris Down さんの許可 を得て Hiroaki Nakamura が日語に翻訳したものです。 原文のライセンス は CC BY-SA 4.0 であり、翻訳のライセンスも同じく CC BY 4.0 とします。 長文を読みたくない方への要約: スワップを持つことは正しく機能するシステムのかなり重要なポイントです。 スワップが無ければ、まともなメモリ管理を実現することは難しくなります。 スワップは一般的に緊急事態用のメモリを取得するためのものではなく、メモリの回収を平等に効率的に行うためのものです。 実のところ「緊急事態用のメモリ」は一般的に盛大に悪影響を及ぼします。 スワップを無効にすることは

    スワップの弁護:よくある誤解を解く
  • TOMCAT殺害事件 - Qiita

    OOMKillerの殺意 顧客EC2のTomcatがアクセスの無い早朝にもかかわらずOOMKillerに突然殺されてしまったので、調査した顛末をたぶん同じような問題に直面されている方もおられるかと思いますので備忘録として記載します。 Javaヒープのチューニングにも多少役立つかと思います。 (この記事はJava8が対象となります。) OOMKillerとはOut of Memory時に、サーバ全体を守るためにメモリーを消費しているプロセスを停止するLinuxの標準機能です。 そのOOMKillerになんとTomcatが突然殺害されてしまいました。 問答無用の辻斬り状態です。 早朝ですのでアクセスログには何も記録されておらず、catalina.outには OpenJDK 64-Bit Server VM warning: Setting LargePageSizeInBytes has no

    TOMCAT殺害事件 - Qiita
  • 低レイヤの知識の重要性は今後も変わらない - 小崎資広に聞くLinuxカーネル開発の裏側 - エンジニアHub|Webエンジニアのキャリアを考える!

    低レイヤの知識の重要性は今後も変わらない - 小崎資広に聞くLinuxカーネル開発の裏側 Linuxは、世界でもっとも広く使われているソフトウェアのひとつであり、多くのエンジニア仕事に密接に関わっています。では、Linuxそれ自体は、どのように開発されているのでしょうか。Linuxの中枢である、Linuxカーネルの開発者のひとりである小崎資広さんに、知られざる開発の裏側を聞きました。 オペレーティング・システムLinuxは、世界でもっとも広く使われているソフトウェアのひとつであり、オープンソースというカルチャーが生み出した、大きな大きな結実です。サーバー用OSとしてはデファクトと呼べるほどの普及を見せており、それだけにLinuxの動向がもたらす影響は広範にわたります。こうした前提があるなかで、Linuxそれ自体は、どのように開発されているのでしょうか。 今回、お話を聞いた小崎資広(こさき

    低レイヤの知識の重要性は今後も変わらない - 小崎資広に聞くLinuxカーネル開発の裏側 - エンジニアHub|Webエンジニアのキャリアを考える!
  • Webサービスを作る際に必要なプログラミング以外の重要なタスク【備忘録】

    サービスを「いざ、リリース!」と思ったタイミングで、実はまだまだ必要なタスクが残っていた事に気がつくのは、当にエンジニアあるあるなのではないでしょうか。 この記事では、今までWebサービスをリリースしてきた筆者の経験を元に、共通して必要だと感じた「細かいけどとても大切なタスク」の数々をジャンル毎にまとめてみました。 目次 サービス全般 画像素材系 サービスロゴ作成 画面を占める割合は小さいですが、ユーザーの印象に強く残る重要なパーツです。 ロゴ作成の工程は専業の方がいるレベルで重要な工程なので、こだわりだすとキリがありません。 デザイン技術を持たないエンジニアで、現実的に対応出来る範囲だと次のような方法がオススメです。 おしゃれなフォントの力を借りる フリーフォントや有償フォントの中でイメージに合うものを探しましょう。 Adobe Fonts を使えば気に入ったフォントをすぐにWebFo

    Webサービスを作る際に必要なプログラミング以外の重要なタスク【備忘録】
  • 6万ミリ秒でできるLinuxパフォーマンス分析 | Yakst

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

  • hatebu.me

    This domain may be for sale!

    hatebu.me
    skypenguins
    skypenguins 2019/07/09
    ほとんどman読めば書いてあることだった
  • Docker内部で利用されているLinuxカーネルの機能 (namespace/cgroups) - Qiita

    Dockerで内部的に利用されているLinuxカーネルの機能について整理しています。 個人ブログの以下の2つのエントリーを1つにまとめたものになります。 Linuxカーネル Docker関連 namespaceのメモ Linuxカーネル Docker関連 cgroupsのメモ 勉強メモ程度の内容なので間違いを含む可能性が大いにあります、ご注意ください。 環境 CentOS 7.2 (kernel-3.10.0-327.4.5.el7.x86_64) Ubuntu 14.04 (3.13.0-77-generic) Docker 1.9.1 namespace (名前空間) Linuxにおける namespace(名前空間) はプロセスに対して以下の6種類のリソースを分離するための機能として提供されています。 名前空間 定数 概要

    Docker内部で利用されているLinuxカーネルの機能 (namespace/cgroups) - Qiita
  • ptraceシステムコール入門 ― プロセスの出力を覗き見してみよう! - プログラムモグモグ

    他のプロセスを中断せずに、その出力をミラーリングして新しくパイプで繋ぐ、そんなことはできるのでしょうか。 straceやgdbといったコマンドは一体どういう仕組みで動いているのでしょうか。 ptraceシステムコールを使い、プロセスが呼ぶシステムコールを調べて出力を覗き見するコマンドを実装してみたいと思います。 ptraceシステムコール Linuxを触っていると、いかにプロセスを組み合わせるか、組み合わせる方法をどれだけ知っているかが重要になってきます。 パイプやリダイレクトを使ってプロセスの出力結果を制御したり、コードの中からコマンドを実行して、終了ステータスを取得したりします。 プロセスツリーやプロセスグループを理解し、シグナルやnohupコマンドを使ったりします。 プロセスの扱いに慣れると疑問に持つのがstraceやgdbの仕組みです。 プロセスの実行しているシステムコールを出力し

    ptraceシステムコール入門 ― プロセスの出力を覗き見してみよう! - プログラムモグモグ
  • コンテナはなぜ安全(または安全でない)なのか - sometimes I laugh

    CVE-2019-5736を覚えていますか?今年の2月に見つかったrunc(Dockerがデフォルトで利用しているコンテナのランタイム)の脆弱性で、ホストのruncバイナリを好き勝手にコンテナ内部から書き換えることができるというものです。 脆弱性の仕組みに興味があったので調べたところ、コンテナを攻撃する方法というのは他にもいろいろあって、runcは頑張ってそれを塞いでいるようです。これまとめると面白いかも、と思ったので以下のようなおもちゃを作りました。 Drofuneは簡単なコンテナランタイムです。drofune runとかdrofune execなどでコンテナを起動したり、入ったりすることができます、といえば想像がつくでしょうか。 これだけでは何も面白くないので、Drofuneはわざと安全でない実装になっています。なので、今回発見されたCVE-2019-5736を利用した攻撃も成立します

    コンテナはなぜ安全(または安全でない)なのか - sometimes I laugh
    skypenguins
    skypenguins 2019/05/05
    未熟な理解だけど、コンテナは仮想機械(not仮想マシン)をアプリケーションの範囲まで拡大した再発明のようなものに思える
  • RISC-V実機でDebianを動かしてみる(&ちょっとアセンブリ比較) - Fixstars Tech Blog /proc/cpuinfo

    このブログは、株式会社フィックスターズのエンジニアが、あらゆるテーマについて自由に書いているブログです。 以前から何度かブログにも登場している通り、フィックスターズでは社内有志で勉強会を半年区切りぐらいで開催しています。 そして今期は「RISC-V勉強会」になりまして、早速『RISC-V原典』の輪読をしているのですが、「やっぱり実機もほしいよね」ということで、HiFive Unleashedを会社で購入しました。 この記事は、そのHiFive UnleashedでDebianを動かしてみるところまでの軌跡という名の手順のご紹介です。 RISC-Vとは RISC-Vとは、近年とても注目されている命令セット・アーキテクチャー(ISA)で、詳細な説明は先述の『RISC-V原典』に譲るとして、ここでは簡単な特徴を紹介しておきます 比較的最近作られたISAであり、従来のプロセッサーが抱えていた問題を

    RISC-V実機でDebianを動かしてみる(&ちょっとアセンブリ比較) - Fixstars Tech Blog /proc/cpuinfo
  • Dockerコンテナが遅くなるもう一つの原因 | POSTD

    前回の ブログ記事 では、Kubernetesの話と、 ThoughtSpot がKubernetesを開発インフラのニーズに合わせてどのように取り入れたかをご紹介しました。今回はその続報として、最近の興味深いデバッグ経験について少々駆け足になりますがお話ししていきます。記事も「コンテナ化と仮想化はノットイコールである」という事実に基づいており、たとえcgroupの上限がどれも高くない値に設定されホストマシンで十分な演算能力が利用できるとしても、コンテナ化されたプロセス同士がリソースの競合を起こす場合があることを示したいと思います。 ThoughtSpotでは内部のKubernetesクラスタで 多数のCI/CDや開発関連のワークフロー を稼働させており、ある1点を除いては全てが順調でした。唯一問題だったのは、ドッカー化された製品コピーを起動すると、パフォーマンスが期待を極端に下回るレベ

    Dockerコンテナが遅くなるもう一つの原因 | POSTD
  • Linux (Unix) の su コマンドの su は何の略か - 元RX-7乗りの適当な日々

    "man 1 su" すると頭には以下の記載がある。 NAME su - change user ID or become superuserまだ学生の頃、師匠に初めて su コマンドの存在を教わった時から、私は "Super User" ではなく "Switch User" であるという認識だったが、お恥ずかしながらどうやったら違ったらしい。 The Unix command su, which stands for substitute user is used by a computer user to execute commands with the privileges of another user account. su (Unix) - Wikipedia "Substitute User" なのですね。 代用するとか取り替えるの意だと思うので、確かにしっくりきますね。な

    Linux (Unix) の su コマンドの su は何の略か - 元RX-7乗りの適当な日々
    skypenguins
    skypenguins 2019/03/27
    sudoする度に須藤さんのことを思い浮かべる(知り合いにそんな人いないのに)
  • Dockerコンテナ内でpuppeteerを使うとChromeゾンビプロセスがたまる問題 - その手の平は尻もつかめるさ

    表題のような問題があり,その調査したという記録です.なお,結論を一言で言うと--initを使え,ということになります. そもそもDockerコンテナを起動すると,CMDあるいはENTRYPOINTに指定されたコマンドがコンテナ内でPID 1として起動します.これが何を意味するかと言うと,「CMDあるいはENTRYPOINTに指定されたコマンド」はそのコマンド自体の責務をまっとうするのと同時に,initプロセスとしての振る舞いも行わなければならないということになります (id:hayajo_77さんにこの辺を詳しく教えてもらいました,ありがとうございます). つまりPID 1で動いているプロセスは「SIGCHLDをトラップすることで孤児プロセスを適切に回収し,waitpidをかける」という処理も適切に行う必要があります. さて,puppeteerを使ってChromeブラウザを起動するとどうな

    Dockerコンテナ内でpuppeteerを使うとChromeゾンビプロセスがたまる問題 - その手の平は尻もつかめるさ
    skypenguins
    skypenguins 2019/03/03
    孤児とか看取るとかそういう単語が多い
  • Windows 10の「WSL」でネットワークドライブなどをマウントする

    Windows 10に「WSL(Windows Subsystem for Linux)」をインストールすると、Linux向けのプログラム(バイナリファイル)をそのまま実行することができる。WSLのインストール方法や活用については、以下のTIPSなどを参照していただきたい。 WSLでは、ローカルドライブが自動マウントされる WSLを起動すると、ローカルのハードディスクやSSD上に存在して、ドライブ文字を割り当てられているNTFSやFATなどの固定ボリュームはWSL用に自動マウントされる。マウント先は、例えば「C:」ドライブなら「/mnt/c」、「D:」ドライブなら「/mnt/d」、……などとなっている。 だが、リムーバブルデバイス(USBメモリやUSB接続のハードディスクなど)やネットワークドライブは自動ではマウントされない。そのため、USBメモリにコピーしたデータやツールなどを、WSL上

    Windows 10の「WSL」でネットワークドライブなどをマウントする
  • Autonomy

    Talos Talos is a modern Linux distribution designed to be secure, immutable, and minimal.

  • Windows 10のWindows Subsystem for Linux(WSL)を日常的に活用する - 2017-11-08 - ククログ

    この表に示す通り、WSLは既存の取り組みでそれぞれ諦めざるを得なかった部分の両立を図った新しい選択肢と言えます。 端的に言うと、「WindowsLinux互換のコマンド操作インターフェースが加わった」状態に近いものとなっています。 Linuxデスクトップ環境やmacOSでは、「普段の操作はGUIで行いつつも、定型的な処理を素早く済ませたい場合には『端末』のウィンドウを開いて、その中で普段サーバーの操作に使っているのと同様のコマンド操作を行う」という使い方ができますが、WSLによってWindowsでもこれに近いことができるようになります。 WSLそのものの導入手順やWSLの仕組みの概要については、技術情報サイトの記事やまんがでわかるWSLなどに譲る事にして、この記事では具体的な活用事例にフォーカスしてご紹介していきます。 なお、Windows 10 Creators Updateおよびそ

    Windows 10のWindows Subsystem for Linux(WSL)を日常的に活用する - 2017-11-08 - ククログ