[フレーム]
1 - 40 件 / 68件
by Adam Harvey Linuxを利用していると「シェル」や「grep」「プロセス」といった言葉を目にします。エンジニアのCarl Riis氏はそんなLinuxの基礎用語の意味や仕組みをさまざまなウェブサイトから学習し、「10のミニプロジェクト」を作成することでスキルを向上させたとして、その詳細を公開しています。 Getting better at Linux with 10 mini-projects - carltheperson https://carltheperson.com/posts/10-things-linux GitHub - carltheperson/10-things-linux: Getting better at Linux with 10 mini-projects. https://github.com/carltheperson/10-thing
ルータの稼働状況 まえがき systemdが森羅万象を統べるようになって千年ほどが経った。 ダイソン球の姿勢制御から、マスドライバーの運行管理まで、あらゆるプロセスがかれの傘下に入った。政治(systemd-politicsd)、経済(systemd-economyd)、文化(systemd-cultured)など、名だたるサブシステムがデーモンに置き換えられ、社会構造は大きく改変されていった。ときには抵抗もあったが、systemdが「PID 1」と叫べば、ひれ伏さぬものはなかった。 そのように強力であるため、systemdはご家庭のルータになることもできる(ここからは本当)。そこで、この記事ではsystemd-networkdを使い、Linuxルータを作る。最終的には、 フレッツ光(IPv6 IPoE)+ v6プラス(IPv4 over IPv6 / MAP-E)に接続し 下流にNTTの
Red Hatの森若です。 自分でsystemdのservice unitを作るときに、起動用のいくつかのコマンドを記述したシェルスクリプトを呼ぶ事は(理想的ではないですが)あるかと思います。 今回はこの場合に、sudoを利用するとまずい理由を説明して、かわりにsetprivを使うほうがよいという話です。 例題用のservice 実行してみる 別のcgroupだと何がまずいのか? 対策はsetprivコマンド 例題用のservice sudoによるまずい動作を確認するためのできるだけ単純な例として、hoge.service を用意します。 /opt/hoge/hoge.sh #!/bin/bash sudo -u moriwaka sleep 5000 /etc/systemd/system/hoge.service [Unit] Description=hoge [Service] Ty
systemdのバージョン256に /homeディレクトリ以下のファイルを削除してしまうバグがあったそうで,修正版の 256.1 がリリースされています. systemdのissuesによると,一時ファイルを一括削除する systemd-tmpfiles --purge コマンドが /home以下を不要ファイルと誤判定して削除するそうです tmpファイルを消すだけのコマンドと見せかけて,home以下も消すという邪悪なバグなので注意が必要です. 心配な人は systemd のバージョンを確認しておきましょう systemdのバージョンの確認方法 以下のコマンドを実行してsystemdのバージョンを確認します $ systemctl --version バグ有り,/homeが消える可能性がある場合 1行目にsystemd 256 (256-1)と表示されます.バグあり版です.何かの拍子に/ho
あけましておめでとうございます。年賀状代わりに開発環境の構築記事を差し上げます。 いやわりと真剣に、開発環境にはその開発者の近況が表れていると思うのですよ。 いっちょあなたもどうですか 😀 閑話休題。 以下今日やった Ubuntu 20.04 LTS のインストール作業記録です。語調変わるのはご勘弁。 Hyper-V VM の用意 Ubuntu のインストール インストール後の作業 systemd-networkd の設定 不要なツールを purge build-essential をインストール dotfiles で初期設定 Go をインストール Docker をインストール 以上 Hyper-V VM の用意 特に難しいことはない。 ブリッジ仮想スイッチを作り、第2世代タイプにしてセキュアブートを無効化するくらい。 あとチェックポイント(自動スナップショット)はうざいので無効化してい
systemdの思想と機能 Linuxを支えるシステム管理のためのソフトウェアスイート Software Design plus 作者:森若 和雄技術評論社Amazon いつの間にかどのLinuxディストリビューションでも標準で使われるようになったsystemd。なんとなくsystemctlを叩いてサービスを立ち上げていたけど、いまいち「なんで必要なの?」とか、「いろいろ機能があるっぽいけど、何ができるの?」といったことをちゃんと勉強しないままここまで来てしまったので、この本でおさらい。 単なる機能紹介ではなく、「なぜsystemdはこんな広範囲な機能を扱うのか?」という機能が作られた背景から説明されているところがいいですね。 この本を読むまでcore dumpまで管理されるようになったことを知りませんでした。 本書を読めば、systemdはサービスが動く環境を用意するために必要な機能を備
TOPフォーカス論文を書けなかった物理学者がOSS文化に救われた理由。元・京大助教がエンジニアになるまで【フォーカス】 レッドハット株式会社 シニアソフトウェアエンジニア 渡辺 優 1984年生まれ。2012年8月から2019年7月まで京都大学基礎物理学研究所で助教を務め、量子情報理論の研究に従事。2015年にGitHub上でsystemdへのPull Requestを送ったのをきっかけに、2016年から本格的にコミッターとして活躍するようになる。2020年5月から現職。systemdへの累計コントリビューション数は、レナート・ポッターリング氏に次いで世界で最も多い。 X GitHub 趣味でsystemdにコミットしていたら、いつの間にか給料がもらえるようになった――。 自らの仕事について、このようにX上でつづっているのは、Red Hat社のシニアソフトウェアエンジニア・渡辺優さん。業務
仕事が納まったのでぼんやりしています。 「年末だな〜」→「お笑いとかみてないな〜」→「あるある探検隊みたいな〜」→「systemdあるある探検隊〜」ということでつい書いてしまったやつ Restart=on-failure にして kill したら再起動しない! → SIGTERMによる終了は正常終了だから再起動したかったら Restart=always にしようね systemctl statusしたら Notice: journal has been rotated since unit was started, output may be incomplete. って出てる! 障害なの!? → 英語よんでくれたのむ timer unitで「1時間以内で適当にずらしたい」ときに AccuracySec=1hour とか定義しちゃう。 →それ最大1分しかずれないし、君が使うべきなのは Ra
序論 WSL2 では起動時に systemd を自動スタートさせたり、/etc/rc.local によるスタートアップスクリプトの実行ができません。 Windowsスケジューラにスクリプトを登録するなど、回避策はありますが、筆者はなるべく Linux 環境内で設定を完結させたいと考えていました。 そのような訳で、WSL2 で Docker を使いたい場合、起動時にいちいち以下のようなコマンドを打っていました。 # dockerデーモン起動 $ sudo service docker start # WSL2 には cgroup 用ディレクトリがデフォルトで作られていないため作成しておく ## これをしておかないと Docker でプロセスのグループ化が必要になったときにエラーが起きる $ sudo mkdir -p /sys/fs/cgroup/systemd $ sudo mount -
Red Hatの森若です。 systemctlコマンドでサービスを起動すると、予期しないエラーが出力されます。しかし操作は成功しているし、df等でファイルシステムを見ても余裕があります。 今回はこの状況で何が起きていたのか見てみます。 # systemctl start httpd.service Error: No space left on device inotifyとは? linuxにはinotifyという機能があり、ファイルやディレクトリ等への操作をイベントとして取得することができます。 inotifyではアプリケーションがファイルとして「inotify instance」を用意し、inotify instanceにイベントに対応する「inotify watch」を複数登録します。 inotify watchがイベントを検出するごとに、inotify instanceのキューにイ
Go で Web Server 書く 動作確認するだけのコードなのでなるだけシンプルに書く。んで、 Port 80 を Listen したいけどプロセスは root で走らせたくないので、 systemd でポート開いてそれをプログラム側で使うようにする。 ディスクリプタごにょる部分は coreos/go-systemd がドンピシャなのでこれを使う。 package main import ( "errors" "fmt" "log" "net" "net/http" "github.com/coreos/go-systemd/activation" ) func main() { // Mux を設定する m := http.NewServeMux() m.HandleFunc("/", handler) // Server を設定する s := &http.Server{ Handl
ちょっとした雑なスクリプト書いてそれを常に起動しておきたいときないですか?僕はあります。 しかもめんどくさがり屋なのでghq管理化のディレクトリでgemに頼って雑に書いたスクリプトがそのまま動いてほしいんです。 systemd使えば出来るんだろうなぁと思いつつ「色々面倒くさいんだろうな」と思って手を出していなかったんだけどやってみたら拍子抜けするほど簡単だったので共有です。 雑要件定義 rubyはrbenvで管理してるんでそれそのまま使ってほしい 実行ファイルをgit&ghq管理化のディレクトリでそのまま使いたい 他の場所にインストールとかコード管理ダルい bundle exec 的なのもやって依存ライブラリもうまいことやってほしい やること systemdをユーザーレベルで使うときは ~/.config/systemd/user/にファイルを置けば良い。ディレクトリ無かったら作る mkd
著者 森若和雄(もりわかかずお) 著 定価 3,080円(本体2,800円+税10%) 発売日 2023年12月21日 判型 B5変形 頁数 216ページ ISBN 978-4-297-13893-6 978-4-297-13894-3 概要 systemd(システムディー)はLinuxの基本的な構成要素を提供するソフトウェア群です。システムやサービスの管理機能を中心として、ハードウェアの管理、ログの管理などを行う多数の独立したソフトウェアからなっています。 Linuxでシステム管理を行うときにはsystemdの知識が必要になります。systemdに関するオンラインマニュアルなどは充実しているものの、systemdがどんな機能を提供しているかを知らなければ「どのドキュメントを読めばいいのか」「何を探すべきなのか」の見当がつかないでしょう。 本書はsystemdの概要をつかみ、マニュアルなどを
systemdには、依存関係を記述するためのディレクティブとして Wants=, Requires=, BindsTo= などがあり、順序を記述するために Before= と After= が用意されています。systemd.unit(5)に説明は書かれていますが、具体的にどう動くのか分からなかったので、ユニットの起動処理と停止処理に注目して挙動を調べました。 Unitセクション まずは各ディレクティブの概要から。マニュアルから起動、停止に関連する部分を抜き出して意訳したものを載せます。 Wants= 弱い依存関係を示す。a.service の実行に b.service が必要なとき Wants=b.service と記述する。ユニットファイルに記述する他に、a.service へのシンボリックリンクを b.service.wants/ ディレクトリ以下に配置することでも依存関係を注入でき
この記事について WSL 上にインストールした Linux で systemctl コマンドが使用できない問題を解決します。 この記事では Ubuntu 20.04 LTS を使用して説明していますが、他のディストリビューションでも手順に大きな違いは無いと思いますので、参考にしていただければと思います。 環境 この記事は以下の環境にて動作を確認しています。 Windows 10 Pro 21H2 ( OS Build : 19044.1645 ) Windows Terminal v1.12.10982.0 Distrod v0.1.5 WSL2 ( Kernel version: 5.10.102.1 ) Distrodとは? 公式では以下の様に説明されています。 Distrod is a systemd-based meta-distro for WSL2 that allows yo
Distrod is a systemd-based meta-distro for WSL2 that allows you to install Ubuntu, Arch Linux, Gentoo and many other distros with systemd in a minute, or make your current distro run systemd. Distrod also provides built-in auto-start feature and port forwarding service. This allows you to start systemd-managed services, such as ssh, on Windows startup and make it accessible from outside Windows. W
WSLでのsystemdのサポートが開始 早速使ってみる Unixを祖先に持つLinuxには、起動時にデーモン(Windowsでいうところのサービス)を起動したり、初期化などをするプログラムを実行するinitシステムがある。ただ、WSL(Windows Subsystem for Linux)では特殊な起動をすることから、従来initシステムは動作できなかった。そもそもWSLは当初のコンセプトからして、Linuxコマンドラインを使うための環境であり、たとえばHTTPサーバーなどを動作させることは想定外とされていたのだ。 一方でLinuxには、さまざまなプログラムがあり、その中にはinitシステムで起動されるプログラムが必要なものがある。こうしたプログラムを動作させるためには、どうしてもinitシステムを組み込む必要があった。 Linuxのinitシステムには、Unix System V互換
Last edited: March 19th, 2022 Linux is not a secure operating system. However, there are steps you can take to improve it. This guide aims to explain how to harden Linux as much as possible for security and privacy. This guide attempts to be distribution-agnostic and is not tied to any specific one. DISCLAIMER: Do not attempt to apply anything in this article if you do not know exactly what you ar
こんにちは。サイオステクノロジー OSS サポート担当 山本 です。 今回は以前お話しした journald のログを永続化するお話しをしてみようと思います。 ■しかくおさらい:journald って何だっけ? journald は、システム管理ソフトウェア systemd のコンポーネントの一つで、システム全体のロギングを担うものです。 この journald のログは、systemd + rsyslog でロギング環境を構成するシステムでの主要なログファイル /var/log/messages の元となっている一方で、 journald のログ自体は通常はデフォルトで一時ディレクトリ /run/ 配下の /run/log/journal/ 配下に保存されており、システムの再起動ごとに中身が全て消えてしまいます。 ...というのが、前回と前々回お話しした概要でした。 ■しかくjournald のログは永
Ubuntu Weekly Recipe 第861回systemdの開発者が作ったmkosiで、お手軽にルートファイルシステムを構築する ソフトウェアの作成時における悩ましい問題のひとつが「動作確認環境の構築」です。今回はこの動作確認環境をCI等から作成・利用しやすい「mkosi」について紹介しましょう。 mkosiとは 「mkosi」とはさまざまなディストリビューションの起動可能なOSツリーやイメージを作成するツールです。URLからもわかるように、systemdの開発者たちがsystemdの動作確認用に作ったツールでもあります。その名前の由来は「Make Operating System Image」であり、次のような機能を備えています。 UbuntuやFedoraを含むさまざまなディストリビューションのルートファイルシステムに対応 個々のリリースやCPUアーキテクチャーを指定できる
こんにちは、去年の8月に入社しましたMSP事業部エンジニアリンググループの鈴木です。 本記事は、Apache HTTP Server(以降「Apache」と略す)のgraceful stop/restart(以降、2つを指す場合「graceful」と略す)について調査・理解したことをまとめたものになります。具体的には以下について調査しました[※(注記)1]。 gracefulの概要、通常のstop/restartとの違いおよびユースケース systemd(systemctl)でgracefulを実行する方法 gracefulを実行する3つのコマンドの動作や関係性 gracefulを実行するコマンドの動作確認(ドキュメントの裏取り) 付録:graceful関連のソースコード解析(理解できている範囲のみ) なお、今回は私個人の学びの一環としてgracefulの基本的なことから調査しましたので、内容とし
この様に指定すると3分毎に実行されます。 とても便利ではあるのですがコマンドの実行が失敗すると、冗長なコマンド実行となり得ます。cron ではコマンドの実行が失敗し続けるとメールが運営者に繰り返し送信され続けます。 crontab にコマンドが1分毎に実行される様に投入してひとまず正常起動を確認、仕事を終えて家に返ってビールでも飲んで、さぁ寝ようかなと思った頃にコマンドが失敗し始めると、朝までメールが飛び続けます。 またウェブサービスの API を呼び出す cron ジョブを投入していたらそのウェブサービスがメンテナンスに入った、なんて事もあると思います。メンテナンス中にも関わらず無限に失敗し続ける API 呼び出しはもしかしたら BAN の対象になってしまうかもしれません。 全ては cron に exponential backoff する機能がないのが問題です。 systemd tim
Red Hatの森若です。 「RHELは常にアップデートして、最新バージョンを使ってください。既知の問題が直っているからいいですよ」という話はよくします。 ふと「具体的にどんな問題があったのか/直したのかがわかるといいのかもしれない」と思いつきました。 最近は暑いので怖い話も多少は需要があるでしょう。 そこでナレッジベースからsystemdの大きめの問題修正をピックアップしてみました。 以下では、私が独断と偏見でピックアップした systemdの大きめの問題 について、修正されたマイナーリリース毎に紹介していきます。 RHEL 8.1 systemd-journald プロセスのヒープメモリ使用量が徐々に増加する問題:systemd-journald プロセスのヒープメモリ使用量が徐々に高くなることがありましたが、これは systemd-239-18.el8_1.1 で修正されました。 s
ちょっと前の話だけど、社内のISUCON練習会で特定のエンドポイントが重いのをなんとかしようとしていた。このエンドポイントはキャッシュして問題ないので普段はキャッシュから返して1秒おきにリフレッシュしたい。Redisなどに入れてTTLを指定してキャッシュが揮発していたら再生成という手もあるが、これだとTTLが切れた瞬間わずかにリクエストが詰まってしまう。なので、何か別の手立てで定期的にキャッシュをリフレッシュしたい。 Goだとcarlescere/schedulerを使えば簡単にできそう。ただ、この回はPerlでやろうということで進めていた。AnyEventを使えばなんとかなる? と思いつつあんまり慣れていないライブラリを突然使うのはコストが高い。そんなときwatchを使えばいいじゃんということに気付いた。 systemdのunitファイルを以下のような感じで書いて systemctl s
2022年10月21日(日本時間)、Ubuntu 22.10 Kinetic Kuduがリリースされました。 主な変更点についてはリリースノートを参照して頂きたいのですが、一般的なユーザーにとって影響するであろうポイントは、SSHサーバーがsystemdのSocket-Based Activation経由で起動されるようになった点でしょう。 wiki.ubuntu.com この変更は、SSHサーバーの待ち受けポートを変更したい場合に影響があります。従来であれば/etc/ssh/sshd_configを直接書き換えていましたが、Ubuntu 22.10ではsystemd.socketのUnitファイルを変更する必要があります。デフォルトでは/etc/systemd/system/sockets.target.wants/ssh.socketというファイルに、以下の記述がされています。このLi
moriwaka's github page https://moriwaka.github.io Project maintained by moriwaka Hosted on GitHub Pages — Theme by mattgraham 資料おきば ビギナー向け RHELを使いはじめる時の留意点 実際に触る人むけ RHELを買う前に知っておきたいこと 買うときに必要なポイント RHEL資料の探しかたとよく参照される資料 頻出資料リンク&紹介 RHELのサブスクリプション管理 サブスクリプション登録、管理の仕組み はじめて触るRHEL GUI環境 GNOMEのちょっと独特なところと小技 Red Hat Enterprise Linux を使う前に読む資料 1時間強で詰め込みたいとき用 Red Hat Enterprise Linux 8 全体的な紹介 Red Hat Enter
Systemd Creator Lands At Microsoft Written by Michael Larabel in Microsoft on 6 July 2022 at 07:00 PM EDT. 213 Comments Yesterday's surprise was that Lennart Poettering quietly had left Red Hat following a decade and a half there leading PulseAudio among other projects and ultimately going on to start systemd that has fundamentally reshaped modern Linux distributions. It turns out he had joined Mi
I have completed an initial new port of systemd to musl. This patch set does not share much in common with the existing OpenEmbedded patchset. I wanted to make a fully updated patch series targeting more current releases of systemd and musl, taking advantage of the latest features and updates in both. I also took a focus on writing patches that could be sent for consideration of inclusion upstream
The Windows Subsystem for Linux (WSL) can now run systemd inside of your WSL distros, empowering you to do more with your Linux workflows on your Windows machine. This post will cover: What is systemd? What can you do with it? How is this change possible in WSL? How can you get systemd on your machine? For a summary, check out the video below: What is systemd? What can you do with it? From systemd
Overview On March 25, 2021, 360 NETLAB's BotMon system flagged a suspiciousELF file (MD5=64f6cfe44ba08b0babdd3904233c4857) with 0 VT detection, the sample communicates with 4 domains on TCP 443 (HTTPS), but the traffic is not of TLS/SSL. A close look at the sample revealed it to be a backdoor targeting Linux X64 systems, a family that has been around for at least 3 years. We named it RotaJakiro ba
これでMicrosoft initではなくsystemdが起動するようになります。Microsoftの/initはPID2で起動し、ログインプロセス?(WSL.exeから起動するコンソールアクセス)については /init の子孫として起動します。nslogin等も不要です。 先日リリースされたUbuntu 22.04には/usr/libexec/wsl-systemdというシェルスクリプトが同梱されています。中身を覗くとunshareで名前空間を分けてsystemdを起動するようです。過去様々なところで紹介されていた手法のようですね。 systemdを起動する 早速試してみましょう。 $ sudo /usr/libexec/wsl-systemd $ ps ax PID TTY STAT TIME COMMAND 1 ? Sl 0:00 /init 7 ? Ss 0:00 /init 8
GNU Shepherd 1.0 Service Manager Released As "Solid Tool" Alternative To systemd Written by Michael Larabel in Free Software on 9 December 2024 at 01:42 PM EST. 82 Comments GNU Shepherd as a service manager for both system and user services that is used by Guix and relying on Guile Scheme has finally reached version 1.0. For those not pleased with systemd, GNU Shepherd can be used as an init syste
systemd by example Part 1: Minimization Series overview This article is part of the series systemd by example. The following articles are available. Introduction This is the first article in a series where I try to understand systemd by creating small containerized examples. systemd always has been a bit of a mystery to me. I knew that it is used for system initialization and for service managemen
まもなくベータ版提供が始まる Linux Mint 21 では、systemd-oomd を標準搭載しないそうだ (The Linux Mint Blog の記事、 Phoronix の記事、 Neowin の記事)。 systemd-oomd (out-of-memory daemon) はメモリー不足時にプロセスを終了して空きメモリーを確保するシステムサービスだ。Linux Mint の上流である Ubuntu 22.04 LTS は標準で systemd-oomd を使用するが、メモリー使用量の多いアプリが予期せず終了してしまうといった問題が報告されている。そのため、Ubuntu が oomd の動作を調整したのに対し、Linux Mint プロジェクトでは問題を調査した結果、Linux Mint 21 に搭載しないことを決めたとのことだ。
Ubuntu 22.04 LTS Integrating systemd-oomd For Improving Low Memory Handling Written by Michael Larabel in Ubuntu on 31 January 2022 at 09:05 AM EST. 27 Comments Ubuntu 22.04 LTS is going to be making use of systemd-oomd for aiming to improve the experience when out of memory or under heavy memory pressure on the Linux distribution. Ubuntu is now the latest Linux distribution shipping with systemd-
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? man systemd.service で表示されるマニュアルの日本語訳。 名前 systemd.service-サービスユニット構成 概要 service.service 説明 名前が .service で終わるユニット構成ファイルは systemd によって制御・監視されるプロセスに関する情報をエンコードします。 このマニュアルページには、このユニットタイプに固有の構成オプションが列記されています。 すべてのユニット構成ファイルに共通するオプションについては systemd.unit(5) を参照してください。 一般的な構成要素は、
Systemdはいまや多くのLinuxで標準的に使われているシステム管理用の仕組みです。 systemdの機能のひとつに、定期的・定時にコマンドを実行するtimerという機能があります。最近では、cronの代わりとしてsystemdのtimerを使う場面も多くなりました。 しかしcronに比べてsystemd.timerの情報は圧倒的に少なく、実装や移行の妨げになっていると感じます。 cronよりも最初の導入が少し厄介ですが、使いこなせると少ない労力で柔軟な設定が可能になります。最強に便利なツールであることは確かなので、ノートとして残しておきます。 Systemd timerとはなにか timerはsystemdのもとで動く、定期実行の仕組みです。 設定はcronと同様、設定ファイルを配置してコマンドを実行するだけ。 systemdが導入されているLinux(ほぼすべてのディストリビューシ
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く