タグ

linuxとLinuxに関するsakefのブックマーク (133)

  • 第52回 Linuxカーネルのコンテナ機能 ― cgroupを使ったI/O制限 | gihyo.jp

    第37回で説明した通り、cgroup v1には様々な問題点が指摘されており、その問題を解決すべくcgroup v2が実装されました。 cgroup v1では、各コントローラがバラバラに実装されており、コントローラ間の連携が取れませんでした。これが原因で、リソースを制限するにあたって一番表面化していた問題が、ディスクI/Oに対して制限をかける際の問題でした。cgroup v1ではblkioコントローラでI/Oに対する制限をかけられましたが、限定的な制限しかかけられませんでした。 LinuxでのI/O コントローラ間で連携ができないため、blkioコントローラを使ったI/O制限が限定的になってしまう理由を説明するために、Linuxでディスクへファイル入出力する際の仕組みを簡単に説明しておきましょう。もう少し詳しい仕組みが知りたい方は『[試して理解]Linuxのしくみ』など、関連する書籍や文書を

    第52回 Linuxカーネルのコンテナ機能 ― cgroupを使ったI/O制限 | gihyo.jp
    sakef
    sakef 2023/05/01
  • GitHub - onceupon/Bash-Oneliner: A collection of handy Bash One-Liners and terminal tricks for data processing and Linux system maintenance.

    I am glad that you are here! I was working on bioinformatics a few years ago and was amazed by those single-word bash commands which are much faster than my dull scripts, time saved through learning command-line shortcuts and scripting. Recent years I am working on cloud computing and I keep recording those useful commands here. Not all of them is oneliner, but i put effort on making them brief an

    GitHub - onceupon/Bash-Oneliner: A collection of handy Bash One-Liners and terminal tricks for data processing and Linux system maintenance.
  • あなたはps -ef派なのか、auxf派なのかをちょっとだけまとめてみた | ten-snapon.com

    あなたはps -ef派なのか、auxf派なのかをちょっとだけまとめてみた | ten-snapon.com
    sakef
    sakef 2021/05/23
  • chmod -R 777 /usr を実行したCentOS7で、一般ユーザがroot権限を得られることを確認する - Qiita

    chmod -R 777 /usr を実行したCentOS7で、一般ユーザがroot権限を得られることを確認するLinuxSecurityrootpermission Teratailで、suコマンドでrootログインできないという質問があり、てっきり/etc/pam.d/suまわりの設定かと思いきや、そうではなく、自己解決で説明された原因に一同驚愕ということがありました。 /usr/share/nginx/html に権限を追加したくて、横着して chmod 777 -R /usr とコマンド実行した記憶があります。 CentOS7、suコマンドでrootにログインできない、パスワードは絶対あっているのになぜ? /usr 以下のパーミッションをすべて777に設定したら、逆に動くべきものが動かなくなる例なのですが、これをやるとセキュリティ上問題であることは言うまでもありません。究極的には、

    chmod -R 777 /usr を実行したCentOS7で、一般ユーザがroot権限を得られることを確認する - Qiita
  • CPUエミュレータをつくる。 - レガシーガジェット研究所

    概要 https://github.com/0n1shi/mipsemu CPUエミュレータを書いたのでまとめる。 今回書いたのはMIPS1のCPUエミュレータ。命令は全て実装したわけではなくC言語のコードいくつか書きクロスコンパイルしたバイナリを実際に動作させ、ある程度のコードが問題なく動作することを確認した。 実際には以下のようなC言語を書き、 int c = 0; int main(void) { int a = 10; int b = 3; c = plus(a, b); return 0; } int plus(unsigned int a, unsigned int b) { return a + b; } ビルドしたバイナリをエミュレータで実行した結果が以下になる。 実行した命令のトレースやレジスタの値、メモリダンプなどが出力される。 環境構築 クロスコンパイラ 開発はMac

    CPUエミュレータをつくる。 - レガシーガジェット研究所
  • Linuxカーネルビルド大全 - Qiita

    はじめに (記事は Linux Advent Calendar 2020 および 東京大学 品川研究室 Advent Calendar 2020の11日目の記事として書かれました。) カーネルのビルドについての情報はググると色々と出てきますが、「ここを見ればOK」と思えるサイトに巡り会えていないので、自分で書いてみることにしたのが記事です。 いずれLinuxカーネルをビルドする必要にかられるであろう研究室・学科の後輩や、忘れっぽい将来の自分のためにも、改めてLinuxカーネルのビルド方法についてまとめてみたいと思います。 概要 さて、「カーネルをビルドしよう」という状況に置かれた場合、実際にすべきことは主に以下の4点だと思います。 ソースコードの取得 ビルド環境の構築 カーネルコンフィグの準備 ビルド及びインストール そこで記事では、カーネル体のビルド上記の4点の他、関連して以下の

    Linuxカーネルビルド大全 - Qiita
    sakef
    sakef 2020/12/13
  • ネットワークハッキング入門 - ニート向けソフトウェアエンジニアリング塾

    sudo airodump-ng -c 1 --bssid 00:11:22:33:44:55 -w aircap wlan1

    ネットワークハッキング入門 - ニート向けソフトウェアエンジニアリング塾
  • Linux Networking Tools: 101

    Representation Learning for Scale-free Networks: スケールフリーネットワークに対する表現学習

    Linux Networking Tools: 101
  • Linuxがブートするまで

    普段Linuxを使っていながら、vmlinuzやinitrd.imgというファイルは何なのか、 あやふやにしか理解していなかったので、一通りLinuxマシンのブートの仕組みを 勉強してみた結果を書き留めておく。なお、BIOSとGRUB Legacyの環境を前提としている。 EFIやGRUB2を使った環境については、今後いずれ勉強していきたい。 基的にOSの起動は、単純・低機能なプログラムが、より複雑・高機能なプログラムを 読み込み起動するという処理を連鎖的に行う仕組みになっている。 Linuxでは、下記のプログラムが順に起動していく: BIOSブートローダ (GRUB)Stage 1Stage 1.5Stage 2LinuxカーネルInit以下では、それぞれのプログラムについて順に要約して述べていく。 1. BIOS現在一般的なx86/x86-64 CPUは、電源が投入されると、0xff

    sakef
    sakef 2020/08/18
  • 3日間クッキング【Kubernetes のラズペリーパイ包み “サイバーエージェント風”】

    今回は鮮度が高いまますぐに届く Amazon 産とヨドバシ.com 産の材料を使いました。�メイン材のラズペリーパイについては RS コンポーネンツから購入しました。クラスタに彩りを添える CyberAgent のステッカーについては産地直送で取り寄せです。 さて鮮度が非常に高いまま到着しました。朝自席に来たときはダンボールの山が積まれた状態でしたが、一旦1つの大きな箱に詰め込みました。 今回は 12 人前の材料を用意しました。 なかなかこの量の Raspberry Pi を用意することも無いかと思います。圧巻の光景ですね。 作り方 さて、いよいよ作っていきたいと思います。 物理的構築自体はだいたい 1 時間ほどで完了するかと思います。 1.Raspberry Pi を開封します。 一番高い部品なので、壊さないよう丁寧に空けましょう。 2.Raspberry Pi にヒートシンクを取り付

    3日間クッキング【Kubernetes のラズペリーパイ包み “サイバーエージェント風”】
  • リンカ

    ついに、リンカの説明をするときが来た。 ここに至るまでに、何度「リンカのところで説明する」と書いただろうか? ここまで読んできた人ならば、 リンカというものが、なにやら色々やっているんだな、というのはわかってきたのではないかと思う。 筆者が常々思っていることのひとつに、「C言語に関する書籍は、リンカの説明をおざなりにしすぎだ」というのがある。 多くのC言語の書籍は、 コンパイラがソースコードをアセンブリコードに変換します アセンブラがアセンブリコードを機械語に変換します リンカが機械語をリンクして実行ファイルが作られます と、いう解説がなされがちである。この説明を見たら、多くの人が、「え、リンクってなんですか?」と、思うに違いない。 アセンブラには、「人間が読めるニーモニックを、機械が読める機械語に変換する」みたいな、最低限の説明が付くものの、 リンカの説明は「リンクをします」のひとことだ

  • Satoru Takeuchi - YouTube

    コンピュータシステム、とくにLinuxについての豆知識を紹介しています。 twitter hashtag: #satlinuxtube動画内で使ったサンプルコード&実行ログhttps://github.com/satoru-takeuchi/youtube-sampleこのチャンネルと近いことを扱っているhtt...

    Satoru Takeuchi - YouTube
    sakef
    sakef 2020/06/21
  • いますぐ実践! Linuxシステム管理

    「いますぐ実践! Linux システム管理」はこちらです。 メルマガの解除、バックナンバーなども、以下からどうぞ。 https://www.usupi.org/sysad/ (まぐまぐ ID:149633) その他、作者に関するページは、概ね以下にございます。 https://www.usupi.org/kuri/ (まぐまぐ ID:126454) http://usupi.seesaa.net/ (栗日記ブログ) https://twitter.com/kuriking/ (twitter) https://facebook.com/kuriking3 (facebook) https://jp.pinterest.com/kuriking/pinterest) https://www.instagram.com/kuri_king_/ (instagram) [バックナンバーのトップへ

    sakef
    sakef 2020/06/21
  • [6/6]Kernel/VM/探検隊online part1

  • curl は何をしているか #システムコール編 - Qiita

    はじめに curl は Web サーバや REST API の動作確認でよく利用されているコマンドです curl が実際にどんな処理を行っているのか、strace コマンドを使用してシステムコールレベルで観察してみたいと思います 説明に間違いがありましたらごめんなさい 調査環境 Web サーバ 1 台とクライアントマシン 1 台を LAN ケーブルで直結し、OS は Linux をインストール、Web サーバは nginx を使用します 各マシンの IP アドレスは以下の通りです マシン IP アドレス

    curl は何をしているか #システムコール編 - Qiita
    sakef
    sakef 2020/06/11
  • その1: CPU and Linux

    LinuxにおいてCPUに関する小技を紹介します。 0:00 目次 0:49 CPUのハードウェア情報や数を得る方法: /proc/cpuinfo, nproc 6:38 CPUがどれだけ使われているかを知る方法: top 13:12 特定のCPUでプロセスを動かす方法: taskset 16:54 起動中のシステムのCPUをoffline/onlineにする方法: cpu online/offline 22:27 まとめ スライド https://speakerdeck.com/sat/cpu-and-linux 動画シリーズは以下のをなぞるように進めていますが、しょっちゅう脱線します。よろしければお買い求めください。 https://amzn.to/3RVWdo3 メンバーになるにはこちらをクリックしてください。とくに特典はないですが、メンバー数が多くなるとうれしくなって

    その1: CPU and Linux
    sakef
    sakef 2020/06/04
  • cat,tac,revコマンドの使い方 - おれさまラボ

    シェルスクリプトを書いてみる catコマンドとは cat(キャット、カット)コマンドは、ファイルまたは標準入力の内容を連結して標準出力に出力するコマンドのこと。catは連結を意味する"catenate"の略。 tacコマンドとは tac(タック)コマンドは、行を逆順に出力するコマンド。catをひっくり返してtac、覚えやすいです。 revコマンドとは rev(レヴ)コマンドは、行内をひっくり返して出力するコマンド。 基的な使い方 catの後にファイル名をつけて使います。 cat [ファイル1] ([ファイル2] [ファイル3] ...) 例えば、basho.txtファイルの中身を表示したい場合は以下のように記述。 $ cat basho.txt 古池や 蛙飛び込む 水の音 例えば、basho.txtとshiki.txtを連結して標準出力したければ以下のように記述。 $ cat basho

    cat,tac,revコマンドの使い方 - おれさまラボ
  • BPF Performance Toolsを読んだ感想 - go_vargoのブログ

    BPF Performance Toolsを読んだので、感想ブログです。 先に感想を言っておくと「最高」でした。 BPF Performance Toolsとは? NetflixでKernel・パフォーマンスにかかわるチューニング・アーキテクチャを専門にしているBrendan Greggさんが書いたです。BPFのiovisorというTracing分野の第一人者でもあります。 www.brendangregg.com 2019年12月に発売したばかりなので、BPFの分野では最新のでしょう。他の著書に有名なとして(日語版の)「詳解システム・パフォーマンス」があります。 BPF Performance Toolsは「詳解システム・パフォーマンス」第二弾と言えるかもしれません。ちなみにページ数は880Pあり、Kindleで表示される読み終わるための平均的な時間は「27時間30分」で、大作R

    BPF Performance Toolsを読んだ感想 - go_vargoのブログ
    sakef
    sakef 2020/04/01
  • 開発ツール(QEMU)への貢献(前半) 〜自作OSのいまと昔 [第3回] | さくらのナレッジ

    これまでの記事では、自作OSとそれを取り巻く状況について触れてきましたが、今回と次回は少し視点を変えて、自作OS開発で使うツールのデバッグや、それを通した貢献(contribute)の話をしたいと思います。 自作OSに限らず何かを開発する際には、たいていの場合、他の誰かが作ったツールを利用することになります。たとえば、CコンパイラとしてのClangや、デバッグのためのエミュレータとしてのQEMU, CやC++の標準ライブラリとしてのNewlibやlibc++などを、私の自作OS liumOS では利用しています。これらのソフトウエアは、ソースコードが公開されており、インターネット上の誰もが開発に参加することが可能です。 これらの開発ツールは、世界中のたくさんのユーザーに利用されるうちに、バグが見つかったり機能追加のリクエストが来たりすることで、完成度が次第に高まってきます。しかし、多くの人

    開発ツール(QEMU)への貢献(前半) 〜自作OSのいまと昔 [第3回] | さくらのナレッジ
  • 入門 シェル実装

    開発者にとってシェルが必要不可欠なものであることは論を俟ちませんが、当たり前の存在すぎてこれがどのように実現されているのかを知る機会はあまりないと思います。トークでは、シェルがどのように実現されているのかを、実際にシェルを実装する過程を通じてお話しします。 ※ もともとのトークのタイトルは「入門 シェル」でしたが,わかりやすさのため「入門 シェル実装」にタイトルを変更しています.Read less

    入門 シェル実装