機械学習を「社会実装」するということ 2025年版 / Social Implementation of Machine Learning 2025 Version
(本文書はAndrew S. Tanenbaum教授の許可をいただいて島慶一が翻訳しました。) MINIXの30年の歴史から学んだこと (原題: Lessons learned from 30 years of Minix) 著者: Andrew S. Tanenbaum (収録: Communications of the ACM, Vol. 59 No. 3, March 2016, Pages 70-78) Linuxのことはみなさんよくご存知だと思いますが、その直接の祖先であるMINIXも齢三十を迎え、古参のソフトウェアとしてはまだまだ元気にやっています。MINIXの生い立ち、またMINIXやLinuxの始まりの物語はあまり知られておらず、だからこそMINIXの開発から多少なりとも学ぶべきことがあるのではないかと思うのです。これからお話しすることには、オペレーティングシステム特有の
Too Long; Didn't Read<em>How well do you really know it? — Best practice from the Alibaba tech team</em> How well do you really know it? — Best practice from the Alibaba tech team Ren Xijun is a member of Alibaba’s middleware technology team. Recently, he encountered a problem with a client-side communication server that was constantly throwing an exception. But to his dismay, despite scouring the
「NIC 2枚刺し」というと「IP masqueradeを使ってLinuxでルーターを作ろう!」的な話を思い出す老害です。こんにちは。 NICを2枚生やしたサーバーから同じサブネットに両方の足をのばす機会があったのですが、じゃっかん躓いたのでそのメモです。 具体的にいうと、eth0の方は問題ないのですが、eth1についているIPアドレスへの疎通ができない、というものでした。 以下、 eth0についているIPアドレスが10.0.0.10 eth1についているIPアドレスが10.0.0.11 対向の別サーバーが10.0.0.100 という体で読んでください。 さて、 別サーバーからpingしつつ、eth1でtcpdumpしてみると、echo requestは届いているのが観測できました。が、echo replyを返していません。 # tcpdump -i eth1 -nl icmp liste
Samba をビルドする Samba をビルドするには、まず適切なソース RPM をダウンロードします。私は Samba 3.0.31 のソース RPM を PBONE サイトからダウンロードしました。次に、ダウンロードしたソース RPM ファイルを /usr/src/redhat/SRPMS に保存します。これは、ビルド プロセス中に使用されるソース RPM 用の標準ディレクトリです。 ターミナル セッション (Windows 用語では "コマンドライン ウィンドウ") を開き、SRPMS フォルダに移動します。その後、コマンドを使用してソース パッケージをインストールします (図 5 参照)。 図 5 Samba のソース RPM のインストール (画像をクリックすると拡大表示されます) "user mockbuild does not exist—using root" (ユーザー
はじめに 脆弱性対応のためのアップデート作業というものは頻繁に発生するものですが、本番運用しているシステムではサービスへの影響を最小限にしたいものです。 アップデートした後、出来ることなら必要なプロセスだけリスタートさせることで済ませたいのですが、どのプロセスをリスタートすれば良いのか、そもそもOS再起動しないと反映されないものなのか、判断が付かない場合が少なくありません。 そのような場合のため、再起動が必要なプロセスを見つけたり、OS再起動が必要かどうかアドバイスしてくれるコマンドがあります。 Redhat系 「yum-utils」パッケージに入っている「needs-restarting」コマンドを使います。 # needs-restarting -h Usage: needs-restarting: Report a list of process ids of programs th
fillinというコマンドラインツールを作成しました。 コマンドの一部を変数化して、別の履歴に保存しておけるツールです。 ステージング環境と本番環境のように、同じコマンドで複数の環境を切り替えるのに便利です。 zshの本 (エッセンシャルソフトウェアガイドブック) 作者:広瀬 雄二発売日: 2009/06/17メディア: 単行本(ソフトカバー) どうして作ったの コマンド履歴って便利ですよね。 私はよくコマンド履歴からコマンドを選んで実行しています。 シェルに付属しているデフォルトの履歴を使っている方もおられるでしょうし、fzfやpecoのようなインタラクティブな絞り込みを行なっている方もいるでしょう。 私が一番困っていたのが、認証キーの扱いです。 webアプリを作っていてcurlで素早く確認するときに、認証キーやアクセストークンを打つことがあります。 アクセストークンのようなランダムな英
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
前回、 自作FRPライブラリTimeEngineをブラッシュアップして http://timeengine.github.io/ を公開しました。 次回は、その日本語訳、 Reactの応用技術、あるいはReact再入門についての記事をUPしますのでお楽しみに! と書いていたのですが、Dockerじゃないsystemd-nspawn+machinectlが非常に良い、ので予定を変更して、こちらを先にエントリします。いろいろ印象を忘れないうちに。TimeEngineに関してはとりあえず自分がすでに英文で書いたものを和訳してどこかにUPしておいたほうが、何か別展開や国内のためになるかな程度のことなのでお急ぎの方は上記リンクから英文読んでください。そちらも全部仕上がっているとは言えないですし、行き届いていないところをセルフチェックするために和訳もしておこうという感じです。 実用的で枯れた技術「コン
We provide professional technical support for our clients from all over the world. Our support team is always ready to help you – so don’t worry about your business continuity. We offer 3 levels of technical support: – Standard Technical Support (9-17 CET); – Enterprise Technical Support (9-17 CET + active monitoring of the cluster); – Enterprise Plus Technical Support (24/7 + active monitoring of
さくらインターネット Advent Calendar最終日は、硬派にLinuxのメモリに関する基礎知識についてみてみたいと思います。 最近はサーバーを意識せずプログラミングできるようになり、メモリの空き容量について意識することも少なくなりましたが、いざ低レイヤーに触れなければいけないシチュエーションになった際に、OSを目の前に呆然とする人が多いようです。 基本的にLinux のパフォーマンスについて、メモリをたくさんつめばいいとか、スワップさせないほうが良い とか、このあたりは良く知られたことだと思います。 ただ、なんとなく ps コマンドや free コマンド などの結果を見るだけでなく、もう少しメモリのことについて掘り下げてみてみたいと思います。 メモリとキャッシュ Linux におけるメモリの状態を大きく分けると「使用中のメモリ」「キャッシュ」「空きメモリ」「スワップ」の 4 つに分
UPDATE: I've recorded a 30 min video with developers from the project as well as Dustin from Ubuntu about HOW this works if you want more technical details. As a web developer who uses Windows 10, sometimes I'll end up browsing the web and stumble on some cool new open source command-line utility and see something like this: In that past, that $ prompt meant "not for me" as a Windows user. I'd loo
OOM killerで大事なプロセスが殺される。困りますね。。 google で OOM Killerと入力すると 「無効」とか補完されます。しかしどうするのが良いのか、あまりよく説明されている記事がみあたらなかったので自分の考えをメモしておきます。 OOM Killer の目的は何か? まずは何故OOM Killerが発生しているのかについて、ざっくりイメージをつかみましょう。linux kernelはプロセスからの「メモリくれ」という要求に対してたぶん足りそうだという場合に「OK」といって渡します。実際のメモリ割り当てはアクセスが発生するタイミングまで遅延させます。これを遅延アロケーションといい、だいたいにおいてうまく動きます。ただし必ずうまくいくと保証されているわけではないので破綻することがあります。 OOM Killerはこの遅延アロケーションが破綻しそうなときに、適当にプロセスを
Stop using tail -f (mostly) 12 Mar 2015 I still see a lot of people using tail -f to monitor files that are changing, mostly log files. If you are one of them, let me show you a better alternative: less +F The less documentation explains well what this +F is all about: Scroll forward, and keep trying to read when the end of file is reached. Normally this command would be used when already at the e
シェルスクリプトの中で、スペース区切りもしくはタブ区切りのレコードを扱うことがよくあると思います。 たとえば、前回のエントリ「AWS CLIとjqを使って、AWSのELBボリュームがアタッチされているEC2インスタンス名を出力するワンライナーを書いた - 双六工場日誌」のスクリプトの出力は以下のようになります。 i-ec56a9f5 vol-07d00601 servername i-ec56a9f5 vol-8f550991 servername このようなレコードの特定の列を取り出して、処理する際にどうするのが効率的か、というのがこのエントリのお題です。 非常に古い話題なので、昔からシェルスクリプトを書いている人には自明な話ではありますが、最近、シェルの標準機能の話を聞く機会がなく、失われつつある技術になってきている気がしているので、改めて確認ということで。 例として挙げたレコードから
6.3 (3) Alfresco (1) Amazon Linux (3) Amazon Web Services (1) Apache (7) API (1) apt (1) AWS (3) Bash (1) BigData (1) bind (4) Bounscale (1) BRIN (1) Btrfs (1) CentOS (5) CentOS 6 (19) CentOS 6.2 (6) CentOS 6.3 (7) CentOS6 (3) CentOS7 (3) cgroup (1) cgroups (1) Chef (1) CLI (2) Cloud (2) CMS (1) Comice OS (1) corosync (1) createrepo (1) cscope (2) CVE (1) CVE-2012-5166 (1) Database (1) dblink (1)
CentOS 7ではsystemdが導入されているので、サービスの管理が従来と大きく変わっています。詳しい解説はsystemd徹底入門のスライドを参照するとして、ここでは「前のコマンドはsystemdでどう入力するの?」というのだけ、簡単にまとめてみました。 サービス名にはsshdを指定していますが、もちろん任意のサービスが指定できます。 サービスの起動、終了など 操作SysV InitSystemd 起動/etc/init.d/sshd startsystemctl start sshd 終了/etc/init.d/sshd stopsystemctl stop sshd 強制終了PID探してkill -9systemctl kill -s 9 sshd 再起動/etc/init.d/sshd restartsystemctl restart sshd 設定反映/etc/init.d/s
はじめに AWSで、外部からのアクセスを遮断、あるいは外部へのアクセスを制限することを目的に、外部への通信経路を持たないプライベートサブネットを作成するパターンがあります。この場合プライベートサブネットに配置したインスタンスは外部へ一切通信が出来ないため、ミドルウェアのアップデートや外部サービスとの通信などは、外部アクセスが可能なパブリックサブネットに配置したNATインスタンスを経由するように設計します。 しかし、場合によっては通信元のインスタンスによって、外部に接続する際の接続元のグローバルIPアドレスを切り替えたい場合があります。例えば外部サービスにて接続元グローバルIPアドレスにより振り分けを行っていて、接続元グローバルIPアドレスが全て同じだと正常動作しない場合などです。 この「NATインスタンスで、通信元インスタンスによって、接続元のグローバルIPアドレスを切り替えたい」というw
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く