タグ

ブックマーク / gihyo.jp (107)

  • 第812回 aptの新機能あれこれ [Ubuntu 24.04 LTS版] | gihyo.jp

    「apt」は言わずとしれたUbuntuの基を担うパッケージ管理システムです。今回はUbuntu 24.04 LTSに搭載された「apt 2.8.0」に関して、前回のLTSである22.04の「apt 2.4.12」以降に実装されたり、さらには古いLTSにもバックポートされたりした機能について紹介しましょう。 ちなみにaptの機能紹介は連載でも何度か行っています。より古いバージョンからアップグレードする場合は、そちらも参照してください。 第327回「aptコマンドを使ってみよう」 第675回「apt-keyはなぜ廃止予定となったのか」 第676回「aptコマンドの最新機能あれこれ」 第677回「aptで使うsources.listのオプションいろいろ」 これらの記事では公開当時最新の2.3.6までしか紹介できていなかったので、2.3.6から2.4.12までの機能についてもまとめて紹介する予

    第812回 aptの新機能あれこれ [Ubuntu 24.04 LTS版] | gihyo.jp
    craf
    craf 2024/05/09
  • 第677回 aptで使うsources.listのオプションいろいろ | gihyo.jp

    第675回ではapt-keyコマンドが廃止される理由を、さらに第676回ではaptの新機能を紹介しました。今回はaptパッケージのリポジトリ情報を指定するsources.listの内容とそのカスタマイズ方法について紹介しましょう。 リポジトリ情報を設定するsources.list Aptはリポジトリにあるパッケージをその依存関係に基づいてダウンロードし、システムにインストールするツールです。その「リポジトリ」の情報を管理するのが「sources.list」と呼ばれるファイルとなります。 パッケージリポジトリとしてアクセスするためには、具体的には次の情報が必要です。 リポジトリのURI 通信プロトコルの種別 リリース名やコンポーネント アーキテクチャーや鍵情報など、その他のオプション これらの情報が「/etc/apt/sources.list」もしくは「/etc/apt/sources.li

    第677回 aptで使うsources.listのオプションいろいろ | gihyo.jp
    craf
    craf 2024/04/24
  • xzパッケージに仕込まれた3年がかりのバックドア、スケール直前に見つけたのはMicrosoftの開発者 | gihyo.jp

    Linux Daily Topics xzパッケージに仕込まれた3年がかりのバックドア⁠⁠、スケール直前に見つけたのはMicrosoftの開発者 “アップストリームのxzリポジトリとxz tarballsはバックドア化されている(The upstream xz repository and the xz tarballs have been backdoored)⁠”―2024年3月29日、Microsoftに所属する開発者 Andres Freundが「Openwall.com」メーリングリストに投稿したポストは世界中のオープンソース関係者に衝撃を与えた。 backdoor in upstream xz/liblzma leading to ssh server compromise -oss-security 主要なLinuxディストリビューションにはほぼ含まれているデータ圧縮プログラ

    xzパッケージに仕込まれた3年がかりのバックドア、スケール直前に見つけたのはMicrosoftの開発者 | gihyo.jp
  • 第796回 LXDとIncus、今後どちらをUbuntuユーザーは使うべきか? | gihyo.jp

    Ubuntu Weekly Recipe 第796回LXDとIncus⁠⁠、今後どちらをUbuntuユーザーは使うべきか? 連載でも何度か紹介しているコンテナ・仮想マシンの管理システムである「LXD」がCanonicalの管理になった結果、コミュニティ版の「Incus」が登場しました。詳しい経緯は「LXCで学ぶコンテナ入門」の第55回「コンテナと仮想マシンのマネージャ"Incus"」に記述されています。今回は少し趣向を変えて、「⁠UbuntuユーザーはLXDとIncusのどちらを使うべきか」という観点から、Incusを紹介します。 UbuntuとLXDとIncus 冒頭でも説明したように、LXDのコミュニティ版フォークとしてIncusが登場しました[1]。 フォークに至った詳細な流れは「LXCで学ぶコンテナ入門」が参考になりますが、かんたんに説明すると次のような時系列になります。 Lin

    第796回 LXDとIncus、今後どちらをUbuntuユーザーは使うべきか? | gihyo.jp
  • 第793回 自作のカーネルモジュールをRustで作る | gihyo.jp

    第791回では基的なカーネルモジュールの作り方とそれをDKMSに対応させる方法を紹介しました。今回はカーネルの新しい機能のひとつである「Rustでカーネルモジュールを作る方法」を紹介しましょう。 UbuntuカーネルにおけるRustの対応 Linuxカーネルでは、Kernel 6.1からプログラミング言語である「Rust」の機能が取り込まれました。これは「Rust for Linux」の成果で、カーネルの機能をC言語やアセンブラだけでなく、Rustでも書けるようにするというものです。メモリー安全性や強い静的型付けなどの特徴を取り込むことで、カーネルのセキュリティ問題の原因の多くを占めるメモリー関連の不具合に対して、一種の対策になることが期待されます。 あらゆるケースにおいてRustに置き換えられるというわけではありませんが、今後カーネルのコードを読み書きする上でC言語やアセンブラだけでな

    第793回 自作のカーネルモジュールをRustで作る | gihyo.jp
  • すべてのフェーズでミスが重なった ―全銀ネットとNTTデータ、全銀システム通信障害の詳細を説明 | gihyo.jp

    すべてのフェーズでミスが重なった ―全銀ネットとNTTデータ⁠⁠、全銀システム通信障害の詳細を説明 全国銀行資金決済ネットワーク(以下、全銀ネット)とNTTデータは12月1日、2023年10月10日~11日にかけて全国銀行データ通信システム(以下、全銀システム)で発生した通信障害に関する報道関係者向けの説明会を開催しました。件についてはNTTデータが11月6日に行った途中経過報告の内容をもとにレポートしましたが、今回、全銀ネットとNTTデータが揃って会見を行ったことで、より詳細な障害の原因が判明したので、あらためてその内容を検証してみたいと思います。 説明会の登壇者。左から、全銀ネット 企画部長 千葉雄一氏、事務局長兼業務部長 小林健一氏、理事長 辻松雄氏、NTTデータ 代表取締役社長佐々木 裕氏、取締役副社長執行役員 鈴木正範氏 なお、全銀ネットとNTTデータは、今回の障害に関して金融

    すべてのフェーズでミスが重なった ―全銀ネットとNTTデータ、全銀システム通信障害の詳細を説明 | gihyo.jp
    craf
    craf 2023/12/06
  • 第2章 詳解QUIC ~ TCPに代わり下位層で使用する新しいトランスポートプロトコル | gihyo.jp

    章では、HTTP/3がTCPに代わって下位層で用いるQUICについて解説します。 QUICはトランスポートプロトコル QUICはトランスポートプロトコルです。QUICの説明に入る前に、トランスポートプロトコルついておさらいします。 TCP/IPの4階層モデル プロトコルは階層で役割を分担しています。TCP/IPの4階層モデルでは、アプリケーション層、トランスポート層、インターネット層、ネットワークインタフェース層に分かれます(図1⁠)⁠。 図1 TCP/IPの4階層モデル アプリケーション層に分類されるアプリケーションプロトコルは、クライアントやサーバで動作するアプリケーションの動作に関するデータやメッセージの通信ルールを規定します。たとえばSMTP(Simple Mail Transfer Protocol)は、メールを送信する通信ルールを規定しています。HTTPはこの層に属します。

    第2章 詳解QUIC ~ TCPに代わり下位層で使用する新しいトランスポートプロトコル | gihyo.jp
    craf
    craf 2023/08/19
  • 第765回 高度なことが簡単にできる多機能バックアップツール、Restic[前編] | gihyo.jp

    今回はGo言語で書かれた、オープンソースでマルチプラットフォームなバックアップツールであるResticを紹介します。前後編に分かれており、今回はインストールとバックアップ方法2種類を解説します。 Resticとは 第653回で紹介したDéjà DupはDuplicityというバックアップツールのフロントエンドです。しかしバージョン43.0以降はバックエンドをResticへ変更できるようになっています。 図1 Déjà Dupの実験的機能。なおこのタブは表示されない場合もある Duplicityは高性能ではあるもののコマンドラインオプションが複雑で使用するのは難しく、Duplyというコマンドラインのフロントエンドまであるくらいです。 ではこのResticはどうなのかと思って調査したところ、後発(とはいえ最初のリリースは8年前)だからか洗練されており、かつGo言語で書かれているのでメンテナンス

    第765回 高度なことが簡単にできる多機能バックアップツール、Restic[前編] | gihyo.jp
    craf
    craf 2023/06/07
  • Microsoft、オリジナルディストリビューション「Azure Linux」の一般提供を開始 | gihyo.jp

    Linux Daily Topics Microsoft、オリジナルディストリビューション「Azure Linux」の一般提供を開始 Microsoftは5月23日(米国時間⁠)⁠、開発者向けの年次カンファレンス「Microsoft Build 2023」において、Azure上のコンテナワークロードに最適化されたLinuxディストリビューション「Azure Linux」の一般提供(GA)開始を発表した。Hyper-VをベースにしたAzureクラウドおよびエッジ環境にデプロイし、複数のコンテナを実行するように設計されており、「⁠Azure Kubernetes Service(AKS⁠)⁠」のコンテナホストとして利用される。 Introducing the Azure Linux container host for AKS - Azure Infrastructure Blog Azure

    Microsoft、オリジナルディストリビューション「Azure Linux」の一般提供を開始 | gihyo.jp
  • 『WEB+DB PRESS』 休刊のお知らせ:WEB+DB PRESS

    WEB+DB PRESSは,2023年8月発売のVol.136をもって隔月刊誌としては休刊させていただきます。物価上昇による製作費の高騰など諸般の事情により,今回の決定に至った次第です。 突然の休刊案内にてたいへん恐縮ではございますが,何卒ご理解を賜りますよう,お願い申し上げます。 22年以上の長きにわたり,絶大なご支援をいただきましたことを,厚く御礼申し上げます。 弊誌で扱っていた分野のコンテンツは,今後も弊社刊行のSoftware Designやgihyo.jp,書籍などで提供させていただきます。また,必要な場合には「特別号」の編集・刊行なども検討してまいります。 最後に,皆様の一層のご活躍を心より祈念しております。

    『WEB+DB PRESS』 休刊のお知らせ:WEB+DB PRESS
    craf
    craf 2023/05/01
  • 開発視点から見る、新しい分散型SNS「Bluesky」とAT Protocolの可能性 | gihyo.jp

    開発視点から見る⁠⁠、新しい分散型SNSBluesky」とAT Protocolの可能性 2023年4月初旬、日で盛り上がりの兆しを見せ始めた分散型SNSBluesky⁠」⁠。記事では、Blueskyのクライアント開発を行う筆者が、開発視点から見たBluesky、そのコア技術であるAT Protocolについて解説します。 なお、Bluesky誕生の背景や基機能などについては、syui氏の記事「ネクストブレイク分散型SNSの大命、Blueskyを先取り!」を併せてご覧ください。 Bluesky をコマンドラインから扱う Blueskyクライアント開発のきっかけ Blueskyにはすでにクライアントが存在します。BlueskyのオフィシャルからはiOSアプリが、また Android向けにはkamakuraさんが開発している青雲というアプリが提供されています。 通常はこれらのクライ

    開発視点から見る、新しい分散型SNS「Bluesky」とAT Protocolの可能性 | gihyo.jp
    craf
    craf 2023/04/11
  • 第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
    craf
    craf 2023/03/30
  • ChatGPTのおさらいと、プログラミングに活用するための第一歩 | gihyo.jp

    大量の文章から学習することで、多言語を取り扱う能力だけでなく、高度な推論能力まで手に入れました。 GPT-3.5、とりわけその初期モデルのCodexはGitHubに存在する5400万の公開リポジトリから採取された159GBのPythonコードでGPT-3をfine-tuning(微調整)することで生まれました。ChatGPTがとりわけPythonが得意なのはここから来ています。 ChatGPTの学習データを考えることはその能力を発揮させるときに極めて有効です。質問時も以下のように、『⁠涼宮ハルヒの憂』というライトノベル作品について日語で聞いたときはSOS団の略称を間違えるなどしますが、英語ではほぼ期待通りの回答を見せます。 図1 『ハルヒの憂』について日語で聞いた場合の回答 図2 『ハルヒの憂』について英語で聞いた場合の回答 知ったかぶりをするChatGPT ところで、ChatG

    ChatGPTのおさらいと、プログラミングに活用するための第一歩 | gihyo.jp
    craf
    craf 2023/03/23
  • 第755回 UbuntuにおけるMOTDの仕組みのすべて | gihyo.jp

    Ubuntuを含むLinux/Unix系のサーバーには、「⁠ログインした時にメッセージを表示する」仕組みである「MOTD(Message Of The Day)」が存在します。来はメンテナンスの予定日など、システム管理者からログインしたユーザーに伝えるべき情報を伝えるための仕組みです。 しかしながら常に何か伝えたいことがあるわけではなく、普段どのような情報を表示するかは、システムの設定に依存します。たとえばUbuntuの場合、何も設定しなければシステム情報を表示します。今回はUbuntuのやたらと情報過多なMOTDを整理する方法を紹介しましょう。 MOTDとISSUE 冒頭で述べたように、MOTDはユーザーがログインしたときにメッセージを表示する仕組みです。そこで何を表示するかはシステム管理者のセンスが問われます。一番シンプルなのは「急ぎで伝えることがないなら、何も表示しない」ことです。

    第755回 UbuntuにおけるMOTDの仕組みのすべて | gihyo.jp
    craf
    craf 2023/03/23
  • 分散型SNS「Misskey」、それを支える技術スタック | gihyo.jp

    連載は分散型マイクロブログ用ソフトウェアMisskeyの開発に関する紹介と、関連するWeb技術について解説を行っていきます。第1回はMisskey、ひいては分散型SNSの簡単な紹介とその内部実装の概略を説明します。 はじめまして! はじめまして、Misskey(みすきー)のプロジェクトリーダーをしている、しゅいろ(@syuilo)です! この度連載の機会をいただきましたので、ちょっと仰々しい気もしますが「Misskey & Webテクノロジー最前線」と題して、今後Misskeyやそれに関わる最新のWeb技術について解説をしていく予定です。 今回はMisskey、ひいては分散型SNSの簡単な紹介とその内部実装の概略を説明します。 対象読者は、後半の実装解説の部分においてはある程度のWeb開発の知識がある人を想定しています。 Misskeyとは⁠、そして分散型とは Misskeyは、オープン

    分散型SNS「Misskey」、それを支える技術スタック | gihyo.jp
    craf
    craf 2023/02/13
  • 第50回 Linuxの非特権コンテナで利用するID mappedマウント(1) | gihyo.jp

    2014年に始めたこの連載もついに50回になりました。この連載は当初12回の予定で、LXCの機能を中心に紹介するつもりでした。しかし、書いているうちに予定の回数には収まらないほど書きたいことが出てきて、結局予定していた内容を書き終えたのは第26回でした。 内容についてはLXCの機能について書いたあとは、Linuxカーネルに実装されるコンテナ関連機能の紹介が中心になりました。ここ数年はLinuxカーネルに実装されるコンテナ関連の大きな機能の追加が少なくなったことと、それ以上に筆者が新しい機能を勉強する時間が少なくなり、記事として書ける内容を取得するスピードが減速したので、新しい記事を書く頻度は減りました。 このようなマイペースな連載に長くお付き合いいただきありがとうございます。スピードが減速したとはいえ、まだ書きたいネタがなくなったわけではないので引き続きお付き合いいただければと思います。

    第50回 Linuxの非特権コンテナで利用するID mappedマウント(1) | gihyo.jp
    craf
    craf 2022/12/23
  • Linux 6.1の注目機能「MGLRU」―メモリ管理に取り入れられたエイジングシステム | gihyo.jp

    Linus Torvaldsは12月11日(米国時間⁠)⁠、前週の告知どおりに「Linux 6.1」の正式リリースをアナウンスした。 Linux 6.1 -Linus Torvalds Linux 6.1はメインライン開発ではじめてRustを採用したことが大きな話題となったが、そのほかにもユーザ空間におけるメモリサニタイザーツールに似た動的エラー検出の「KMSAN」やB-treeベースのデータ構造「Maple Tree⁠」⁠、AMDの新しいPMFドライバのサポートなど多くのアップデートが行われている。Googleの開発者がメインラインへのマージを提案してきた「MGLRU(Multi-generational LRU⁠)⁠」もそのひとつで、古参のカーネル開発者であるAndrew MortonもMGLRUのメインライン化をバックアップしてきた。 Linuxカーネルではメモリ管理に「LRU(Le

    Linux 6.1の注目機能「MGLRU」―メモリ管理に取り入れられたエイジングシステム | gihyo.jp
    craf
    craf 2022/12/21
  • 『家族アルバム みてね』に学ぶ、AWSのReserved InstancesとSavings Plansの勘所 | gihyo.jp

    みてね×gihyo.jpスペシャル 『家族アルバム みてね』に学ぶ、AWSのReserved InstancesとSavings Plansの勘所 『家族アルバム みてね』(⁠⁠以下、みてね)ではサービスの拡大に合わせてAWSのコスト削減のために、2018年から5年間にわたってReserved Instances(以下、RI)とSavings Plans(以下、SPs)の活用をしています。 現在に至るまでの間、サービスやインフラの成長に合わせそれらの使い方を試行錯誤してきましたが、振り返ってみるとどのタイミングでも注意すべきポイントは共通していることがわかりました。 そこで今回の記事では、みてねでのRI/SPsの活用の歴史を振り返りながら、それぞれを購入する際に注意すべきポイントについて共有いたします。 RIとSPsとは 振り返りの前にまずは、RIとSPsの概要について紹介します。 RIと

    『家族アルバム みてね』に学ぶ、AWSのReserved InstancesとSavings Plansの勘所 | gihyo.jp
    craf
    craf 2022/12/19
  • 第736回 vTPMに対応したLXDで、Windows 11とWSLの新機能であるWSLgとsystemdを試してみる | gihyo.jp

    Ubuntu Weekly Recipe 第736回vTPMに対応したLXDで、Windows 11とWSLの新機能であるWSLgとsystemdを試してみる 1年前にリリースされたWindows 11では、「⁠WSLg」と呼ばれるWSL上でGUIアプリケーションを動かせる仕組みが正式にサポートされ、Ubuntu 22.04 LTSではデスクトップ版のインストーラーが動くようになりました。さらに2022年の9月にはsystemdの公式サポートが正式にアナウンスされます(参考:Ubuntu Weekly Topics⁠」⁠)⁠。今回は、あらためてWindows 11環境に注目して、WSLの環境構築手順を整理しておきましょう。 図1 Ubuntuの上のLXDで動いているWindows 11 進化し続けるWSLとLXD WSL(Windows Subsystem for Linux)は、Wind

    第736回 vTPMに対応したLXDで、Windows 11とWSLの新機能であるWSLgとsystemdを試してみる | gihyo.jp
    craf
    craf 2022/10/27
  • 第734回 UbuntuでSBOM(ソフトウェア部品表)を作る方法 | gihyo.jp

    SBOM(Software Bill Of Materials:ソフトウェア部品表)」という概念があります。これはあるソフトウェアを構築する上で利用しているライブラリの一覧をまとめたものです。また、システムにインストールされているソフトウェア一覧を示す場合もあります。今回は手元のUbuntuにインストールされているソフトウェア一覧を簡易的にまとめる方法を紹介しましょう。 SBOMの必要性 昨今のソフトウェアは多種多様なライブラリに依存しながら構築されています。太古のC言語のプログラムなら、シンプルなものならlibcだけ、そこそこ複雑なものでも2、3個のライブラリに依存するだけで済むことが大半でした。それが今風のプログラミング言語になると、特定の便利そうなライブラリに依存するだけで、「⁠だったら俺も僕も私もミーも」といくつものライブラリがバンドルされてしまうのです。 結果的に広く使われてい

    第734回 UbuntuでSBOM(ソフトウェア部品表)を作る方法 | gihyo.jp
    craf
    craf 2022/10/12