タグ

linuxに関するaroma_blackのブックマーク (72)

  • .d ディレクトリにまつわる etc. - 破棄されたブログ

    .d を接尾辞にしたディレクトリの標準があるのか調べていたところ、.d ディレクトリの歴史的経緯について説明した文章を見つけた。 結論から言うと、 .d 接頭辞自体は標準ではないようだ。分散パッケージングが普及するにつれ、設定ファイルの衝突を避ける必要性が発生し、そこから生まれたものだった。 旧来、多くの UNIX のソフトウェアは、ソフトウェアパッケージごとに一つの設定ファイルで管理され、パッケージのすべての設定項目がひとつのファイルに記述されていた。このような管理手法も、システム管理者がローカルなシステムを手動で設定する場合には十分機能するものだった。 分散パッケージングが一般的になると、個々のパッケージから与えられる設定ファイルを複数に分割する方法がより望ましく必要になった。複数のパッケージは、同じサービスを共有しつつも、共通の設定ファイルを変更することなく設定できなければならなかっ

    .d ディレクトリにまつわる etc. - 破棄されたブログ
    aroma_black
    aroma_black 2018/08/07
    .dディレクトリの役割と生まれた経緯
  • /usr/local とは何なのか - 破棄されたブログ

    ご用心: この記事を鵜呑みにせず、末尾に記載された一次ソースを確認してください。 ソースからソフトウェアをビルドしてインストールするときに使う /usr/local ディレクトリだけど、/opt ディレクトリとの住み分けとか、 そもそも標準はどうなっているのかとか、まともに知らんかったので Filesystem Hierarchy Standard を確認してみた。 /usr/local は何をすべきところなのか? 他のホストと共有されない 既存のシステムの破壊防止 FHS 準拠のソフトウェアをインストールする /usr/local ディレクトリ下自体が FHS 準拠になる /usr/local ディレクトリは、システム管理者がソフトウェアをローカルにインストールするために用いる。 /usr/local ディレクトリとして隔離されるため、同名のファイル名で既存のファイルを上書きするなどして

    /usr/local とは何なのか - 破棄されたブログ
    aroma_black
    aroma_black 2018/08/07
    /usr/local、/usr、/optそれぞれの使い分け。
  • Arch ファイルシステム階層 - ArchWiki

    Arch Linux は他の多数のディストリビューションと同じようにファイルシステム階層標準に従っています。それぞれのディレクトリについてその目的を説明するのに加えて、この記事では Arch 固有の事情についても説明しています。 ファイルシステム階層標準 Filesystem Hierarchy Standard (FHS) のホームページ より: "ファイルシステムスタンダードは Unix ディストリビューションの開発者やパッケージの開発者、そしてシステムの実装者によって使われることを想定して策定されました。ただし、この標準はあくまでリファレンスであり、Unix のファイルシステムやディレクトリ階層を管理する方法のチュートリアルではありません。" 共有可能ファイルと共有不能ファイル 共有可能ファイルとはあるホストで保存されていながら他者からも利用できるファイルです。共有不能ファイルは共有

    Arch ファイルシステム階層 - ArchWiki
    aroma_black
    aroma_black 2018/08/07
    各ディレクトリの役割。ArchLinuxは標準ファイルシステム階層とは微妙に違う。
  • Linuxサーバ上でホスト間コネクションを集約表示するツール lstf をつくった - ゆううきメモ

    概要 netstatやssコマンドにより、あるホストと他のホストとのコネクションを一覧表示できる。しかし、Webシステムの場合、クライアントが並行接続するため、 同一ホストから複数のポートを介してコネクションを確立しているケースが多い。コネクション数が大きい場合は、1万以上のコネクションが表示され、ホスト間のコネクション状況を人間の目で概観することが難しかった。 そこで、同一ホストとのコネクションを集約表示し、コネクション状況を概観する 「lstf」 (「えるえすてぃーえふ」)コマンドをつくった。 github.com lstfの特徴は以下の通り。 コマンド実行ホストを起点に、active openコネクションかpassive openコネクションを判定する。つまり、接続をする側かされる側かを判定する。 各ホストフローごとにコネクション数を表示する Goで実装されているポータビリティ。i3

    Linuxサーバ上でホスト間コネクションを集約表示するツール lstf をつくった - ゆううきメモ
  • LinuxサーバでネットワークI/Oで刺さっている接続先を発見する - ゆううきメモ

    Linuxサーバの障害対応で社内で伝統的に使われているテクニック。I/Oで完全にブロックしているポイントを特定するノウハウ。 問題対応のため、怪しいプロセスをstraceしてみる read(2)やwrite(2)でブロックしていることを発見する read(2)やwrite(2)、connect(2)の引数にはファイルディスクリプタ番号がみえる プロセスIDとファイルディスクリプタ番号を使って、/proc//fd/ の中身をみると、ソケットI/Oで刺さっている場合はソケット番号を発見できる netstat からソケット番号でgrepして接続先を発見する [y_uuki@hogehoge ~]$ sudo strace -p 10471 Process 10471 attached - interrupt to quit read(58, <unfinished ...> Process 10

    LinuxサーバでネットワークI/Oで刺さっている接続先を発見する - ゆううきメモ
  • sudoでリダイレクトをしたいとき - Y's note

    sudoでリダイレクトに失敗 @yutakikuchi_です。 UNIX/Linuxでコマンドラインで実行した結果をファイルにリダイレクトしたい時があります。(例えばPHPのバッチを実行した時に処理のログとエラーログをファイルに書き込んでおきたい。) ユーザに実行権限がないディレクトリのファイルに対してリダイレクトでデータを書き込みたいとき、sudo をつけても失敗します。 次はリダイレクトが失敗する例です。zsh: permission deniedと怒られます。 $ sudo echo 'redirect' >> /var/test/hoge.txt zsh: permission denied: /var/test/hoge.txt うまくいく方法 以下に方法を書きます。私が知る限りでは2つ方法があります。 回避策1 : shのオプションに-cを付ける man sudoを見てみます。

    sudoでリダイレクトをしたいとき - Y's note
    aroma_black
    aroma_black 2017/08/08
    sudo sh- c "hoge > piyo" か hoge | sudo tee -a piyo
  • commandlinefu.comで見つけた便利・面白Linuxコマンド使用例 - もた日記

    commandlinefu.com コマンド使用例 ^foo^bar mount | column -t time read (ctrl-d to stop) echo "You can simulate on-screen typing just like in the movies" | pv -qL 10 mv filename.{old,new} diff <(sort file1) <(sort file2) !* !:- fc date -d@1234567890 ps awwfux | less -S bind -P mkdir -p work/{d1,d2}/{src,bin,bak} showkey -a ccze grep . filename > newfilename grep -Fx -f file1 file2 grep . * kill -9 $$ tail

    commandlinefu.comで見つけた便利・面白Linuxコマンド使用例 - もた日記
  • Alpine Package Keeper - Alpine Linux

    Because Alpine Linux is designed to run from RAM, package management involves two phases: Installing / Upgrading / Deleting packages on a running system. Restoring a system to a previously configured state (e.g. after reboot), including all previously installed packages and locally modified configuration files. (RAM-Based Installs Only) apk is the tool used to install, upgrade, or delete software

    aroma_black
    aroma_black 2017/07/24
    AlpineLinuxのパッケージマネージャであるapkの使い方
  • 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
    aroma_black
    aroma_black 2017/07/02
    ”再起動が必要なプロセスを見つけたり、OS再起動が必要かどうかアドバイスしてくれるコマンド”
  • カーネルの観点から見たLinuxKit - Qiita

    はじめに Docker社はDockerCon2017において、Dockerコンテナの実行にフォーカスした軽量Linuxである、LinuxKitをリリースしました。 以下関連URLです。 Docker、「LinuxKit」を発表。コンテナランタイムのためだけにゼロから開発されたセキュアなLinux SubsystemDockerCon 2017 ANNOUNCING LINUXKIT: A TOOLKIT FOR BUILDING SECURE, LEAN AND PORTABLE LINUX SUBSYSTEMS 記事はLinuxKitについて網羅的な説明をすることではなくて、LinuxKitに同梱されているカーネルがどのようなものかをざっと眺めることです。なぜカーネルだけなのかというと、単に私がカーネル屋さんなのでカーネルに興味があっただけです。 記事のLinuxKitの対象バージ

    カーネルの観点から見たLinuxKit - Qiita
  • Introducing Dockercast – the Docker Podcast | Docker Blog

    Products Docker DesktopContainerize your applicationsDocker HubDiscover and share container imagesDocker ScoutSimplify the software supply chainDocker Build CloudSpeed up your image buildsTestcontainers Desktop Local testing with real dependenciesTestcontainers Cloud Test without limits in the cloud See our product roadmapMORE resources for developers

    Introducing Dockercast – the Docker Podcast | Docker Blog
  • ぜんぶTIME_WAITのせいだ! - Qiita

    課題 突然キャンペーンとかの高トラフィックが来る!とか言われると色々困ることはあるものの、今のご時世クラウドだからスペック上げときゃなんとかなるでしょ。ってとりあえずCPUとかメモリあげて見たものの、キャンペーンが始まったら意外と早くブラウザからつながらない!!とか言われたりする。 CPUもメモリもそんなに負荷は特に高くもない。調べてみたらTIME_WAITが大量にあった。 とりあえず何とかしたい TIME_WAIT数をコマンドで確認 $ netstat -anp|grep TIME_WAIT __(snip)__ tcp 0 0 192.168.1.1:80 192.97.67.192:56305 TIME_WAIT - tcp 0 0 192.168.1.1:80 192.63.64.145:65274 TIME_WAIT - tcp 0 0 192.168.1.1:80 192.39

    ぜんぶTIME_WAITのせいだ! - Qiita
  • Linux デスクトップ環境 2017 - k0kubun's blog

    Linux デスクトップ環境 2016 - eagletmt's blogの人に影響を受けて自作PCLinuxデスクトップを使い始めてから約1年半が経ち、僕の使う環境が一通り満足な状態になったので今どういう構成なのか書いておく。 僕はKeynoteを使う時とか会社のマシンでmacOSも割と使う都合、基的に操作性がmacOSに近くなるようにしているので、macOSからLinuxに移行したい人の参考になるかもしれない。 *1 そもそも何故Linuxデスクトップを使っているのか 「苦労してmacOSに近づけるくらいなら最初からmacOS使えばいいじゃん」と言われそうだが、今この瞬間は大体以下の理由でLinuxデスクトップを使っている。 趣味で作ったスペックが高めの自作PCmacOSが入れられない *2 最新のmacOSではKarabinerが使えないが、Linuxでは自作のキーリマッパーが

    Linux デスクトップ環境 2017 - k0kubun's blog
  • RH_ip_command_cheatsheet_1214_JCS_print.indd

    ip コマンド チートシート for Red Hat Enterprise Linux IP クエリ サブコマンド 説明およびタスク addr (アドレスの省略形) IP アドレスとプロパティ情報を 表示する ip addr すべてのアドレスの情報を表示する ip addr show dev em1 em1 デバイスの情報を表示する link すべてのネッ トワークインターフェイスの状態を管 理および表示する ip link すべてのインター フェイスの情報を表示する ip link show dev em1 em1 デバイスの情報を表示する ip -s link インターフェイス統計を表示する route ルーティ ングテーブルを表示および変更する ip route カーネルのルートエントリをすべて表示する maddr マルチキャストの IP アドレスを管理および表示する ip madd

    aroma_black
    aroma_black 2017/01/16
    ipコマンドの使い方。古くなったnet-toolsパッケージの対応表もある。
  • 「障害発生時に即座に収集したいサーバの状態・14項目」を実際に収集してみた - えいのうにっき

    僕はインフラエンジニアではないし、そうだったこともないのだけど、いま「インフラエンジニアの教科書2」というを読んでいる。 インフラエンジニアの教科書2 スキルアップに効く技術と知識 作者: 佐野裕出版社/メーカー: シーアンドアール研究所発売日: 2016/08/26メディア: Kindle版この商品を含むブログを見る Twitter かなにかでこのの存在を知り、とりあえず買ってみたものの、しばらくの間積読状態になってしまっていた。...のだけど、最近になってようやくちまちまと読んでいる。関係ないけど、kindleで読めるのはほんとに便利だ。 このの7章「障害対策と障害対応」で、『以下のような項目についてはサーバ障害時に即座に(20秒程度で!)収集できるべき』、とされていた。 メモリの搭載量と使用量 パーティションごとのディスクの使用率と空き容量 CPUの種類とコア数 ディスクのRA

    「障害発生時に即座に収集したいサーバの状態・14項目」を実際に収集してみた - えいのうにっき
  • あなたの知らない time(1) の世界 - kuenishi's blog

    自分が書いたプログラムのメモリ使用量を測定したいことがある。プログラムがOOM Killerによってお亡くなりになった場合や、ページフォルトをなくして高速化したい場合などだ。定常的に起動するサーバーのプログラムなら、sarや meminfo など(今なら Datadog とかだろうか)を使ってじーっと見つめるわけだ。もっとモダンにやるなら perf や DTrace を使ってもよいかもしれない。しかしこれらのツールは基的にプロセスIDを渡してサンプリングして外から覗く方法だ。 わたしのユースケースはデーモンプロセスではなく、 main から入って必要な計算をして、それが終わったら main を抜けるバッチジョブ(単にコンソールから実行して終わるまで待つ、いわゆる "Hello world!" 的なやつ)だ。これだと、プログラムが起動して終わるまでそこそこの時間で終わってしまって、外部プロ

    あなたの知らない time(1) の世界 - kuenishi's blog
  • Linux Performance

    static, benchmarking, tuning: sar, perf-tools, bcc/BPF: bpftrace, BPF book: Images license: creative commons Attribution-ShareAlike 4.0. This page links to various Linux performance material I've created, including the tools maps on the right. These use a large font size to suit slide decks. You can also print them out for your office wall. They show: Linux observability tools, Linux static perfor

    aroma_black
    aroma_black 2016/09/19
    Linuxのパフォーマンス調査系のコマンドとコマンドがどの辺を調べるかをわかりやすく図で示したもの
  • yum upgradeとyum updateの違いについて勘違いしてた - kanonji’s diary

    yum updateは、よく使うしよく知っているパッケージを最新にアップデートするコマンドだけど、それとよく似たyum upgradeというコマンドがあります。たぶんどこかで読んだんだと思うけど、yum upgradeはメジャーバージョンを上げるコマンドだと、勘違いしていました。yum upgradeについて、調べなおしたので書いておきます。 結論 yum upgradeはメジャーバージョンアップ以外にも使う。 そもそもyum upgradeはyum update --obsoletesと同じコマンド。 CentOSのデフォルトでは、設定ファイルにobsoletes=1が書いてあるので--obsoletesは付けなくても付けた扱いになる。 --obsoletesをつけると、というかCentOSのデフォルトでは、廃止対象のパッケージがあり、廃止処理される。 廃止処理は、他の新しいパッケージで

    yum upgradeとyum updateの違いについて勘違いしてた - kanonji’s diary
  • いまさら聞けない Linux コンテナの基礎 / OSC 2016 Kyoto

    "OSC 2016 Kyoto" の発表資料です。当日はこの資料のcgroupの部分(43ページ)まで解説しました。 参考となる情報にはPDF中からリンクをしていますが、資料中のリンクは Speaker Deck 上ではクリックできないので PDF をダウンロードしてご覧ください。

    いまさら聞けない Linux コンテナの基礎 / OSC 2016 Kyoto
  • ttyについて ttyやptsってなんぞ? - それマグで!

    PCにシリアルコンソールでログインできるように設定した。シリアルコンソールを使えばNICの設定などでもあわてずに利用できる。便利。シリアルコンソールでつかうmgetty mingettyのttyってなんだろう ttyとは、 どうやら、標準出力の接続先デバイス事のらしい。一般的にはpts、RS232C経由などはttyS0が標準出力の接続先になっていて、中継しているプログラムがmgetty。 図で表すと PC----ssh------/dev/pts/1--sshd----bash #ssh が接続されている PC----rs232c---/dev/ttyS0--mgetty--bash #rs232c が接続されている とttyなど仮想端末経由になっている。コレ今はよく解ったけど、ずっとよく解らなかった。 私が理解できるようになるまで、次のプロセスがありました。 2ヶ月前 先輩に訊いてみた

    ttyについて ttyやptsってなんぞ? - それマグで!