並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 303件

新着順 人気順

sysctlの検索結果41 - 80 件 / 303件

  • Linuxでv6プラス MAP-Eなルーターをつくる。IPv6, RAも疎通する版 - 方向

    ルーターで遊びたい欲が出てきており、適当なマシンを調達して遊ぶことになりました。 自分の家のルーター(IO DATA WN-AX2033GR)が微妙にIPoE環境だとフルスピードが出ないこと(だいたい200-300Mbpsが限界)や細かい設定ができない不満などがあり、いろいろ代替手段を物色していたんですがちょうどいいマシンを借りれたのでそれでやりました よくある文献だとv6の設定まで詳しくは書いてなかったりするんですがv6のほうがカプセル化のオーバーヘッドがない分スループット高いはずだし、MAP-Eでセッション(ポート)枯渇することもないので使わない手はないはずなんですよね。 環境 光コラボ回線。NTTフレッツ光ネクスト相当 DTI 光。 安いがIPoEが開通するとPPPoEが消滅する IPv4 over IPv6はJPNEのMAP-E おうちに光コンセントが生えているタイプ ひかり電話な

      Linuxでv6プラス MAP-Eなルーターをつくる。IPv6, RAも疎通する版 - 方向
    • CVE-2020-10749(Kubernetesの脆弱性)のPoCについての解説 - knqyf263's blog

      少し前ですが、Kubernetesの方から以下の脆弱性が公開されました。 github.com タイトルにはCVE-2020-10749と書きましたが、複数のCNI実装が影響を受ける脆弱性でCVE-2020-10749はcontainernetworking/pluginsにアサインされたものです。他にもCalicoはCVE-2020-13597、DockerはCVE-2020-13401、などとそれぞれCVE-IDがアサインされています。 このIssueの説明を読んで、はいはいあれね完全に理解した、と思って一旦閉じました。ですが、頭で分かった気になって手を動かさないのは一番やってはいけないことと念じ続けてきたのに、しれっと同じことをやりそうになっていた事に気づきました。なので数日経ってからちゃんとPoCを書いてみました。多少知識が増えてくるとついうっかりやってしまいがちなので気をつけなけ

        CVE-2020-10749(Kubernetesの脆弱性)のPoCについての解説 - knqyf263's blog
      • 第814回 1500円以下で買えるRaspberry Pi PicoサイズのRISC-VボードなMilk-V DuoでUbuntuを動かす | gihyo.jp

        Ubuntu Weekly Recipe 第814回1500円以下で買えるRaspberry Pi PicoサイズのRISC-VボードなMilk-V DuoでUbuntuを動かす Ubuntu 24.04 LTSではRISC-Vボードのひとつである「Milk-V Mars」をサポートしました。これは中国のRISC-V製品のベンダーであるMilk-Vが作っているRaspberry Piライクなシングルボードコンピューターです[1]。ただしこのMarsはなかなか入手できない状況が続いています。Milk-Vでは他にも64コア搭載されたPCライクなPioneer、10GbEのネットワークスイッチとして使えるVegaなどもリリースしています。今回はRaspberry Pi Picoサイズの小さなボードで、比較的安価で入手性が高いMilk-V Duoシリーズに、Ubuntuをインストールしてみましょう

          第814回 1500円以下で買えるRaspberry Pi PicoサイズのRISC-VボードなMilk-V DuoでUbuntuを動かす | gihyo.jp
        • linuxのipコマンドでgretap を作って通信してみる - それマグで!

          gretap を作る GRE Tap でイーサネット・フレームを転送するVPNを作ってみたい。 wg0 でL2-VPNはできると思う。 wg に L2-VPN機能がないので、 wg 上に ip bridge で gre tap を構成すればいい。 wireguardではL2はサポートされていなので、WG上にGRETAPでL2転送をかけてみたらいいと思う。ただし、iPhoneのiOSではgreを使えないので、どんな手段を用いてもリモートからGoogle Homeを呼び出しはできないと思う。iphoneでL2TPをするならwigreguardは使えない もっとかんたんに、L2トンネルを使うのなら、softether や OpenVPNを使うしかない。 GRE tap を体験するために、Linux仮想マシンを作る。 仮想マシンをつくると流石に重いので、LXCを使ってコンテナを使うことにする。 n

            linuxのipコマンドでgretap を作って通信してみる - それマグで!
          • Go and CPU Caches

            Credits: unsplash.comAccording to Jackie Stewart, a three-time world champion F1 driver, having an understanding of how a car works made him a better pilot. “You don’t have to be an engineer to be a racing driver, but you do have to have Mechanical Sympathy” Martin Thompson (the designer of the LMAX Disruptor) applied the concept of mechanical sympathy to programming. In a nutshell, understanding

              Go and CPU Caches
            • ラクスサービスを管理するAnsibleコードの共通テンプレートを作った話 - RAKUS Developers Blog | ラクス エンジニアブログ

              こんにちは、弊社サービスのインフラを運用している id:keijiu (ijikeman)です。 今回は、「ラクスサービスを管理するAnsibleコードの共通テンプレートを作った話」を記載します。 [対象読者] 対象読者: Ansibleでサーバの管理を行っている人 またはこれから行いたいと考えている人 記事を読んでわかること: Ansibleの実装方法(汎用化) パラメータ(vars)の記載箇所 Ansibleの学習資料の作成 Ansibleコード規約 目次 目次 背景 1. コーディング規約策定 ■ポイント コーディング規約一部例 2. 共通処理の標準化 [カテゴリ] [共通設定]のAnsible実装例 ■ポイント [OS標準機能の設定] ■ポイント [OS標準機能の設定]: ネットワーク設定の一部 ホスト名の設定 ■ポイント 3. 各サーバの構成管理情報(パラメータ)の記載場所の固定

                ラクスサービスを管理するAnsibleコードの共通テンプレートを作った話 - RAKUS Developers Blog | ラクス エンジニアブログ
              • kube-proxy入門

                Kubernetes Novice Tokyo #28 の登壇資料です イベントURL: https://k8s-novice-jp.connpass.com/event/293157/ 配信URL: https://www.youtube.com/watch?v=LSW51Cm0Wc0 コードリーディングメモ: https://zenn.dev/bells17/scraps/5e41da598a8266 参考資料: https://github.com/kubernetes/kubernetes/tree/v1.28.2 https://speakerdeck.com/ryusa/servicewotazunete3000xing-kuberneteskodorideingufalselu https://qiita.com/Tocyuki/items/6d90a1ec4dd8e991a

                  kube-proxy入門
                • 2021年 SRv6 入門 - hiroportation

                  SRv6について2021年までに取集した情報を整理して入門書を作りました。 とりあえずSRv6に触れたい方向けの内容になっています。 1. SRv6 概要 1.1. SRv6 とは 1.1.1. セグメントルーティング 1.1.2. IPv6 1.2. どういうところで使われているのか? 1.3. 今どういう状況? 2. SRv6 詳細 2.1. SRv6の仕組み 2.2. SRv6 Function 2.3. SRv6 Control Plane 2.4. Flex-Algo (Flexible Algorithm) 2.5. TI-LFA 2.6. SRv6 OAM (Operation, Administration, and Maintenance) 2.6. 今後のSRv6 3. SRv6を実際に使う 3.1. iproute2 【ハンズオンツール】 3.2. VPP 3.3.

                    2021年 SRv6 入門 - hiroportation
                  • このKernel、どんなKernel? - Qiita

                    はじめに この記事は、Linux Advent Calendar 2019 - Qiitaの8日目です。 この記事では、今使っているLinux Kernelがどんなkernelなのか、どんな設定で動いているのかを確認する方法を紹介します。 Linux Kernelは様々な用途に使われています。 そのため、ひとくちにLinux Kernelと言っても、動作はシステムによって全然違います。 現状を把握する手段を知ることで、効率的にKernelのコードリーディングやより良い設定を探す一助になれば幸いです。 また、コメント大歓迎ですので、なんでもお気づきのことがありましたらぜひお気軽にお願いします。 この記事で書くこと Linux Kernelの素性を確認する方法 Linux Kernelの設定値を確認する方法 この記事で書かないこと 各プロセスや各ユーザなどに対する設定(ulimitやniceや

                      このKernel、どんなKernel? - Qiita
                    • Raspberry PiでTensorflowの環境を構築【2020年】 - Qiita

                      Raspberry PiでTensorflowの環境構築【2020年】 情報が少なく、Version管理の難しいRaspberry Piでの環境構築を以下に記します。 Raspberry Pi OS (32-bit) LiteをSDに書き込む 僕はmobileNetV2を用いてリアルタイムの画像処理をするのにOSのサイズをできる限り軽量化する必要がありました。 自分のパソコンをsshでつなぐ。同じwifi環境下でのみ Wifiの管理ファイルにご自身のWifi設定を書き加え、sshで接続します。 下記のコマンドでOS関係を最新の状態にします。 sudo apt update sudo apt upgrade -y sudo reboot この記事を参考にスワップ領域を拡張します。 少しでもメモリ容量を持たせるために拡張します。 テキストファイル開くときおすすめはnanoです。Nanoは使い方

                        Raspberry PiでTensorflowの環境を構築【2020年】 - Qiita
                      • redis threadedI/Oの検証 - MicroAd Developers Blog

                        はじめに マイクロアドでインフラエンジニアをしている柏木です。 マイクロアドでは広告配信に高速なKVSであるRedisを使用しています。 Redisはシングルスレッドでの高速性、安定性を売りにしていました。しかし6.0でマルチスレッド機能であるThreded I/Oが追加されました。 広告配信で多用している、Redisを高速化できるのであれば積極的に導入したいので検証を行いました。 はじめに Threded I/Oとは シングルスレッドでのRedisの処理 マルチスレッドでのRedisの処理 io-threads io-threads-do-reads + io-threads 検証環境 OSの追加設定 今回の検証結果 前提条件 指標の取得方法について loopbackアドレスを利用した検証 実行CPUの指定 Redisの起動コマンド Redisのconfigについて 暖機運転 検証1:I

                          redis threadedI/Oの検証 - MicroAd Developers Blog
                        • Announcing additional Linux controls for Amazon ECS tasks on AWS Fargate | Amazon Web Services

                          Containers Announcing additional Linux controls for Amazon ECS tasks on AWS Fargate Introduction An Amazon Elastic Container Service (Amazon ECS) task is a number of co-located containers that are scheduled on to AWS Fargate or an Amazon EC2 container instance. Containers use Linux namespaces to provide workload isolation—and with namespaces—even though containers are scheduled together in an Amaz

                            Announcing additional Linux controls for Amazon ECS tasks on AWS Fargate | Amazon Web Services
                          • UNIX Domain Socket の SO_SNDBUF, SO_RCVBUF についての覚書 - hibomaの日記

                            macOS と Linux の UNIX Domain Socket の SO_SNDBUF, SO_RCVBUF について調べていた。 経緯 会社で @kurotaky のトラブルシューティングの相談を受けた際の覚書。 下記のように UNIX Domain Socket を挟んで IPC しているコードがあり、macOS と Linux で挙動が違っているのを調べていた。Linux では Go Ethereum が送ってくるデータを全部読み出せるが、macOS だと一部 ( 8192 バイト 注1 ) しか読み出せないとのことだった。 Ruby のコード <----- UNIX Domain Socket -----> Go Ethereum 色々調べてみたところ、macOS / Linux で UNIX Domain Socket のデフォルトの SO_SNDBUF, SO_RCVBU

                              UNIX Domain Socket の SO_SNDBUF, SO_RCVBUF についての覚書 - hibomaの日記
                            • Goのnet/httpのkeep-aliveで気をつけること - Carpe Diem

                              概要 Idle connectionをプールするkeep-aliveの仕組みですが、Goで適切に使用するためにはいくつか注意があります。 環境 golang/go 1.13.1 TCP Keep-Aliveの挙動をパケットキャプチャで確認する 例えば以下のようにDefaultTransportの一部の設定(①、②)をイジってリクエストを送ると client = &http.Client{ Transport: &http.Transport{ DialContext: (&net.Dialer{ Timeout: 30 * time.Second, KeepAlive: 10 * time.Second, // ① DualStack: true, }).DialContext, ForceAttemptHTTP2: true, MaxIdleConns: 100, IdleConnTim

                                Goのnet/httpのkeep-aliveで気をつけること - Carpe Diem
                              • Linux Kernel: rtnl_mutex を長時間 ロックして刺さった状態を観察する - hibomaの日記

                                Linux Kernel で struct net_device や Routing Netlink の処理を排他制御する mutex である rtnl_mutex を任意の時間 ロックするカーネルモジュールを作成して、rtnl_mutex のロックがユーザランドのプロセスやカーネルスレッド等にどういった影響を及ぼすかを観察する ... というエントリです Linux カーネルの話や、strace, gdb, /proc/$pid/stack を使ったデバッグ方法に興味あるかた向けです 経緯 とあるサーバで動いてる大量のプロセスが rtnl_mutex をロックする箇所やそれに関連していそうな箇所で TASK_UNINTERRUPTIBLE でブロックしてしまい、障害を起こしているのに遭遇して原因を追いかけていたのでした 障害の再現が難しくて困っていたのだが、別のアプローチとして 「rtn

                                  Linux Kernel: rtnl_mutex を長時間 ロックして刺さった状態を観察する - hibomaの日記
                                • LinuxのBPFで何ができるのか? BPFの「プログラムタイプ」とは

                                  Linuxにおける利用が急速に増えている「Berkeley Packet Filter(BPF)」について、基礎から応用まで幅広く紹介する連載「Berkeley Packet Filter(BPF)入門」。前回までは、BPFの基本やBPFのプログラムの作成方法を説明しました。今回から、「LinuxのBPFで何ができるのか」について詳しく見ていきます。 なお本稿では、Linux 5.3のソースコードを参照しています。 BPFでできること BPFプログラム実行の流れをおさらいしましょう。 ユーザーはBPFプログラムを作成し、システムコールを利用してそれをLinuxカーネル内に登録します(図の【1】)。そうして登録されたBPFプログラムは、対応するイベントが発生すると、Linuxの中で引数が1つ、戻り値も1つの関数として実行されます(図の【2】)。BPFプログラムは実行中にカーネル内のヘルパー関

                                    LinuxのBPFで何ができるのか? BPFの「プログラムタイプ」とは
                                  • When the window is not fully open, your TCP stack is doing more than you think

                                    When the window is not fully open, your TCP stack is doing more than you think07/26/2022 This post is also available in 简体中文 and 繁體中文. Over the years I've been lurking around the Linux kernel and have investigated the TCP code many times. But when recently we were working on Optimizing TCP for high WAN throughput while preserving low latency, I realized I have gaps in my knowledge about how Linux

                                      When the window is not fully open, your TCP stack is doing more than you think
                                    • CoreOS on Full IP fabric の検証 - Qiita

                                      Out of Scope CoreOSの初期デプロイ(L2からL3接続への切替) 外部からコンテナへの接続 (追加考慮必須) ECMP (問題ないはず) 経路フィルタ(スケール時の事故予防のため対策必須) 検証環境構築 GNS3 上の構築イメージ. CoreOSにはインターネット接続が必要. ToR (Cumulus-VX) の設定 downlink に Unnumbered で eBGP接続するように設定. #---------------------------------------------- # Basic Cumulus #---------------------------------------------- net add hostname tor-cumulus-1 net add loopback lo ip address 4.4.4.4/32 net pend

                                        CoreOS on Full IP fabric の検証 - Qiita
                                      • Docker Desktop for Mac(参考訳) - Qiita

                                        原文 、ウェブ版原文 2020年6月7日現在の情報です。 注記 こちらのページの内容を修正し、ページ間でリンクを張り直した情報は、こちらをご覧ください。 Docker for Mac を始めよう — Docker-docs-ja 19.03 ドキュメント http://docs.docker.jp/docker-for-mac/ 目次 Mac に Docker Desktop をインストール Docker for Mac を始めよう Kubernetes 上にデプロイ Docker Desktop for Mac 対 Docker Toolbox マルチ CPU アーキテクチャのサポートを活用 ネットワーク構築機能 ファイルシステム共有 ボリューム・マウント(共有ファイルシステム)のパフォーマンス・チューニング ディスク使用量 ログとトラブルシューティング FAQ Mac に Docker

                                          Docker Desktop for Mac(参考訳) - Qiita
                                        • 40%のUbuntuに影響大の深刻な脆弱性「GameOver(lay)」、2020年に修正されたはずなのに改めて発見されてしまう非常事態

                                          Linuxディストリビューションの一つであるUbuntuにて、ローカル権限昇格の脆弱(ぜいじゃく)性「GameOver(lay)」が発見されました。CVEは「CVE-2023-2640」および「CVE-2023-32629」の2つで、ともに修正パッチが2023年7月24日にリリース済みであるものの、脆弱性の内容が2020年にLinuxカーネルで修正された「CVE-2021-3493」と同じものとなっており、「なぜ修正済みだったはずの脆弱性が残っていたのか」について今回の脆弱性の発見者であるクラウドセキュリティ企業Wizが解説しています。 GameOverlay Vulnerability Impacts 40% of Ubuntu Workloads | Wiz Blog https://www.wiz.io/blog/ubuntu-overlayfs-vulnerability Wizに

                                            40%のUbuntuに影響大の深刻な脆弱性「GameOver(lay)」、2020年に修正されたはずなのに改めて発見されてしまう非常事態
                                          • 第54回 Linuxカーネルのコンテナ機能 ―cgroup v2から使うCPUの帯域幅制限(2) | gihyo.jp

                                            前回は、CPUコントローラでの帯域幅制限がどのように行われるのかについて簡単に説明しました。 前回の最後に、説明のために挙げた例がかなり理想的な状況であると書きました。今回は、帯域幅制限の機能を詳しく見ていくために、前回よりはもう少し複雑な状況について説明していきましょう。 未使用クォータの返却 前回説明で示した例では、CPUは割り当てられたスライスをすべて使いきっていました。しかし、複数のCPUがある環境で、タスクが終了したり、I/O待ちなどにより、クォータが割り当たったCPUで実行可能なタスクがなくなった場合はどうなるでしょう? 図1 割り当てられたスライスが使われない場合 図1のように、クォータプールに10msクォータが残っているとします。 ①でCPU1でCPUを使用するタスクから要求がありスライスが転送され、クォータの残りが5msとなりました ②で再度CPU1でCPUを使用するタス

                                              第54回 Linuxカーネルのコンテナ機能 ―cgroup v2から使うCPUの帯域幅制限(2) | gihyo.jp
                                            • Raspberry Pi Zero 2台とB+をUSBで繋いでLinuxルーター検証環境を作る

                                              ども、takiponeです。この記事は Raspberry Pi Advent Calendar 2020 - Adventar の12/15分です。 Linux netfilter(iptables)の検証のために、2つのネットワークセグメントとそれぞれに接続する2つのLinuxノード、それを中継するLinuxルーターを組めないかなと手元のRaspberry Piで作ってみました。 ポイントはRaspebrry Pi ZeroのUSB OTG機能によってスイッチやLANケーブルなどのネットワーク機材を使わず、USBケーブル1本でルーターとノードをつなげている点です。電源供給と有線LANを兼ねている様子はAmazon EC2 MacインスタンスのThunderbolt接続を彷彿とさせませんか(しない)。ネットワーク構成は以下にしてみました。 動作確認環境 ハードウェア Raspberry

                                                Raspberry Pi Zero 2台とB+をUSBで繋いでLinuxルーター検証環境を作る
                                              • Scaling Linux Services: Before accepting connections

                                                More posts When writing services that accept TCP connections, we tend to think of our work as starting from the point where our service accepts a new client connection and finishing when we complete the request and close the socket. For services at scale, operations can happen at such a high rate that some of the default resource limits of the Linux kernel can break this abstraction and start caus

                                                • Dear Linux, Privileged Ports Must Die

                                                  Privileged ports, toffs of the Linux world. Kitten is a small web server that runs as a user-level service and would never need elevated privileges if it wasn’t for one archaic anti-security feature in Linux that dates back to the mainframe era: privileged ports. Back to the future As it was in Unix in the 1980s, so it is now, that any process that wants to bind to a port less than 1024 must have

                                                    Dear Linux, Privileged Ports Must Die
                                                  • Apple Silicon搭載Mac、ここ「も」変わった - 新・OS X ハッキング!(275)

                                                    Apple Siliconこと「M1」搭載のMacが好調なセールスを記録している。どのオンラインストアを眺めても、ステータスは「お取り寄せ」か数週間先の配送予定日、これから手配しても年末年始をコスパ抜群の新Macで迎えることは難しそう。せめて気分だけでも...というわけではないが、M1 Macならではの小ネタ集をお届けしたい。 仕様が変わった「macOS復旧」 Apple M1を搭載したMac(以下、M1 Mac)で大きく変わったことのひとつに、「macOS復旧」が挙げられる。リカバリーモードなどとも呼ばれるシステム復旧モードのことだが、これまで利用されてきた電源投入直後の「CommandとRキーの同時押し」は廃止、電源ボタン長押しに変更された。 この電源ボタン長押しへの変更は、起動直後にCommand+Rを押しているのにスルーされ頭が「?」となることを数回繰り返すだけのことだが、M1 M

                                                      Apple Silicon搭載Mac、ここ「も」変わった - 新・OS X ハッキング!(275)
                                                    • 第51回 Plamo Linuxの遊び方(その2) | gihyo.jp

                                                      前回に引き続き、今回もPlamo Linuxの特徴的な部分のうちシステム起動回りの処理を解説しましょう。もっともこのあたりに関しては、Plamo Linuxが従来のやり方(SysV-init)を固守しているうちに、ほとんどのディストリビューションが新しいSystemdに移行してしまった結果なので、ベテランユーザはむしろこのやり方に馴染みがあるかも知れません。(⁠苦笑 さまざまな/sbin/init Linux/Unixでは、何でもできる大きなプログラムよりも、1つのことを上手にこなす小さなプログラムを組み合わせて使うスタイルが好まれ、多数の小さなプログラム(デーモン)が協働してOSの機能を提供するようになっています。それらのデーモンを起動するのが/sbin/initの主要な仕事です。 Linux/Unixの設計では、起動されたカーネルはCPUやメモリ、周辺機器等を認識、初期化していき、最終

                                                        第51回 Plamo Linuxの遊び方(その2) | gihyo.jp
                                                      • Amazon Linux 2023でNAT Instanceを手作りしてみた | DevelopersIO

                                                        しばたです。 私は昔から検証環境でNAT Instanceを利用しているのですが、先日Amazon Linux 2023が正式リリースされたのを受け「流石にそろそろインスタンスを更新するか」という気分になりAmazon Linux 2023でNAT Instanceを作成してみました。 本記事ではその手順を紹介します。 作成手順 Amazon Linux 2以降のディストリビューションにおいてはAWS公式でNAT Instance AMIは提供されておらず、以下の記事にある様に自分で手作りする必要があります。 こちらの記事はAmazon Linux 2のものであり、当然ながらまだAmazon Linux 2023向けの公式手順といったものは存在してません。(現在は公式手順が存在します) とはいえ、そこまでディストリビューション独自の作業は少ないため「多分Amazon Linux 2の手順と

                                                          Amazon Linux 2023でNAT Instanceを手作りしてみた | DevelopersIO
                                                        • WSL2+Microk8s: the power of multinodes :: ~/wsl.dev — Get your Linux On

                                                          IntroductionDuring the first ever WSLConf, which went from an onsite to online event, I did showcase Canonical Kubernetes cluster Microk8s on WSL2 The demo told a story of going from the usual local one node k8s cluster to a multi-node in WSL2. And it ended with a (huge?) surprise: everything was running on Windows Server 2019 Insider Now it’s your turn and while in the demo the first parts were a

                                                          • GitHub Actionsを開発して公開するまで(Docker編) - Qiita

                                                            はじめに Github Actions便利ですよね.毎月2000分までタダで使えるので,個人プロジェクトはほぼこれでまかなえてしまいます.Docker,もしくはJavaScriptで開発できるので,バックエンドの方もフロントの方も触りやすそうです. すでに公式日本語ドキュメントがあるので,最新情報はこちらを確認してください. 個人的に手順全体の概要があったほうがわかりやすいと思い,この記事を書いています. action.ymlの役割とAction自体を検証するCIの作成方法は役立つと思います. その他の詳細部分も書きましたが,個別のAction実装作業には役立たないので読まなくても大丈夫だと思います. この記事の前提 Dockerを利用して開発する前提です.JavaScriptでの開発は扱いません. Dockerにある程度詳しいことを前提としています. 開発に至った背景 CI上でElast

                                                              GitHub Actionsを開発して公開するまで(Docker編) - Qiita
                                                            • Linux メモリ管理 徹底入門(プロセス編)

                                                              Linux カーネルのメモリ管理方法について、勉強したことをまとめる。プロセス編。 カーネル編はこちら。 Linux メモリ管理 徹底入門(カーネル編) - SIerだけど技術やりたいブログwww.kimullaa.com OS は CentOS7.6、カーネルは次のバージョンを利用する。 ]# cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) ]# uname -a Linux localhost.localdomain 3.10.0-957.21.3.el7.x86_64 #1 SMP Tue Jun 18 16:35:19 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux メモリ管理の特徴メモリの使い方を簡素化すると、次の図のようになる。 どのような特徴があるかをまとめる。 連続した

                                                                Linux メモリ管理 徹底入門(プロセス編)
                                                              • せっかくのIPoE化もDS-liteの制限で台無しだったので、代替策を考えた|しょっさん

                                                                久しぶりに書いていくスタイル。人生鳴かず飛ばず、しょっさんです。 生活リズムがどうしても一定せず、わけあってお仕事もプライベートも盛り沢山で、精神的にモノを書こうという気力が一切わかず、この間に書いた原稿も今まで以上の悲惨なもので、たくさんのツッコミをいただいています。編集長、ホントごめんなさい。 さて、そんな殺伐とした生活もやっと安寧の時期がやってきそうです。光明が見えてきました。 1ヶ月以上前でしょうか、自宅作業民増加による帯域不足に悩まされていました。プロバイダが悪いと言うよりも、PPPoE 経由によるどんづまりでの遅延の様子。ついに我が家もIPoE化か...と IPv6 プロバイダに申し込んだのが運の尽き。何重もの罠に苦しめられることになり、今に至ります。根本的な解決には至ってはいませんが、ようやく使い物になる状況にはなったので、ここに記録しておきます。技術的な設定方法や回避策など

                                                                  せっかくのIPoE化もDS-liteの制限で台無しだったので、代替策を考えた|しょっさん
                                                                • AIによるLinuxカーネルのチューニング--バイトダンスの新たな試み

                                                                  「TikTok」などを運営する字節跳動(バイトダンス)のLinuxカーネルエンジニアであるCong Wang氏は、Linuxカーネルのトップ開発者が集まる招待制のカンファレンスであるLinux Plumbers Conferenceで、ワークロードに合わせて最善の結果が得られるように、人工知能(AI)と機械学習を使ってLinuxカーネルをチューニングすることを提案した。 一般的な話で言えば、Linuxカーネルはほぼどのようなタスクにも問題なく使えるが、特定の作業で最大の効果を上げるには、微調整して最善の結果が得られるようなパラメーターを設定する必要がある。ただし、このアプローチには1つだけ小さな問題がある。それは、パラメーターの数が何千にも及ぶことだ。Linuxの専門家であっても、最適なパフォーマンスを得るためのチューニング作業には時間と手間がかかる。しかも、ワークロードが変われば、また別

                                                                    AIによるLinuxカーネルのチューニング--バイトダンスの新たな試み
                                                                  • 他のBSDユーザのためのOpenBSD管理入門

                                                                    ストレージ、ファイルシステム関連 ディスク関連の設定はインストール時に行われるが、運用開始後に変更や増設をする時に、以下のノウハウを把握しておくと有用: OpenBSDでは、fdiskパーティションとdisklabelパーティションが個別に存在する。 fdiskパーティションとdisklabelパーティションの設定は連動しない。fdiskパーティションのOpenBSD領域とdisklabelパーティションのOpenBSD boundaryはセクタ単位で合わせておく必要がある(インストール時には自動で合わせられる。手動で合わせる場合はdisklabel -Eのbサブコマンドを使用する)。 disklabel -Eコマンドによるパーティション操作は、OpenBSD boundaryの範囲内でのみ可能。 ディスクパーティションは例えば /dev/sd0a のように命名される デバイス wd :

                                                                    • The SYZBOT CTF

                                                                      目次 第0章 概要 0.1 syzbot とは? 0.2 主な登場人物紹介? 0.3 自己紹介:熊猫の Linux との関わりについて 0.4 今日のお話「バグハンティング」 第1章 Linux カーネルについて 1.1 Linux カーネルの規模について 1.2 Linux カーネルの制約事項について 1.3 Linux カーネルのデバッグ支援機能について 第2章 カーネルメッセージを読めるようにするための試行錯誤について 2.1 printk() に求められているものとは? 2.2 複数行分のメッセージをバッファリングする試み(2017年4月~) 2.3 メッセージ本文中にコンテキスト情報を埋め込む試み(2018年4月~) 2.4 1行分のメッセージをバッファリングする試み(2018年6月~) 2.5 再び1行分のメッセージをバッファリングする試み(2018年9月~) 2.6 再挑戦(

                                                                      • The internals and the latest trends of container runtimes (2023)

                                                                        Last week I had an opportunity to give an online lecture about containers to students at Kyoto University. The slide deck can be found here (PDF): 1. Introduction to containersWhat are containers?Containers are a set of various lightweight methods to isolate filesystems, CPU resources, memory resources, system permissions, etc. Containers are similar to virtual machines in many senses, but they ar

                                                                          The internals and the latest trends of container runtimes (2023)
                                                                        • GitHub - a13xp0p0v/kernel-hardening-checker: A tool for checking the security hardening options of the Linux kernel

                                                                          $ ./bin/kernel-hardening-checker -c kernel_hardening_checker/config_files/distros/ubuntu-22.04.config -l /proc/cmdline -s kernel_hardening_checker/config_files/distros/example_sysctls.txt [+] Kconfig file to check: kernel_hardening_checker/config_files/distros/ubuntu-22.04.config [+] Kernel cmdline file to check: /proc/cmdline [+] Sysctl output file to check: kernel_hardening_checker/config_files/

                                                                            GitHub - a13xp0p0v/kernel-hardening-checker: A tool for checking the security hardening options of the Linux kernel
                                                                          • 第673回 カーネルのクラッシュ情報を取得する | gihyo.jp

                                                                            Linuxカーネルも人類が生み出したものである以上、既知であれ未知であれなんらかの不具合を抱えています。そしてそれは「都合の悪い時」に限って顕在するものです。今回は「やたらとカーネルがフリーズする」不幸な星のもとに生まれた人に向けて、カーネルがクラッシュしたときのデバッグ方法を紹介しましょう。 カーネルだってつらいときはあるんです Linuxカーネルには「クラッシュダンプ」と呼ばれる仕組みが存在します。これはカーネルがどうしようもない自体に陥ったとき(=panicしたとき⁠)⁠、システムを再起動する前に障害収集用のシステムを起動し、現象発生直後のカーネルのメモリーをストレージに保存する機能です。これを使えば、panic時の原因を追求することが可能です[1]⁠。 UbuntuをはじめとするLinuxディストリビューションにとって、Linuxカーネルはまさに「縁の下の力持ち」と言える存在です。

                                                                              第673回 カーネルのクラッシュ情報を取得する | gihyo.jp
                                                                            • Linux Kernel: cgroup 削除後も残り続ける slab キャッシュ についての調べ物 - hibomaの日記

                                                                              タイトルの通りで、コンテナの生成と削除が頻繁におこなわれているホストで、 cgroup 削除後も特定の slab キャッシュ ( + sysfs のファイル = kobject ) が残るという現象を調べていました 環境 vagrant@bionic:~$ uname -a Linux bionic 5.4.1-050401-generic #201911290555 SMP Fri Nov 29 11:03:47 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux 再現の方法 cgroup v1 + memory コントローラーでグループを作る そのグループ内で適当なファイルを作成する cgroup のグループを削除する とすれば ok です #!/bin/bash set -ex for i in {1..10}; do mkdir /sys/fs/cgro

                                                                                Linux Kernel: cgroup 削除後も残り続ける slab キャッシュ についての調べ物 - hibomaの日記
                                                                              • New – Trigger a Kernel Panic to Diagnose Unresponsive EC2 Instances | Amazon Web Services

                                                                                AWS News Blog New – Trigger a Kernel Panic to Diagnose Unresponsive EC2 Instances When I was working on systems deployed in on-premises data centers, it sometimes happened I had to debug an unresponsive server. It usually involved asking someone to physically press a non-maskable interrupt (NMI) button on the frozen server or to send a signal to a command controller over a serial interface (yes, s

                                                                                  New – Trigger a Kernel Panic to Diagnose Unresponsive EC2 Instances | Amazon Web Services
                                                                                • Incorrect I/O throttling when using block device files — Matt Jacobson

                                                                                  Matt Jacobson February 2022 Summary: Apple has a bug in its disk I/O throttling code that affects raw disk copies. I walk through my diagnosis. This week, I was restoring a slow-as-molasses 2.5-inch HDD to an SSD, as part of an upgrade for my mom's work machine. For whatever reason, the USB SATA controller I was using seems to limit me to 15 MB/s and 4 kB transfers. Not ideal when I'm transferring