タグ

qiitaとLinuxに関するmsakamoto-sfのブックマーク (21)

  • 新しい curl コマンドの使い方 完全ガイド(2025年版) - Qiita

    はじめに curl とは対話シェルやシェルスクリプトから HTTP 通信を行うのによく使われるコマンドです。あらゆる環境(100 種類の OS)で動作し、macOSWindows には標準でインストールされています。商用サポートもあり、互換性は非常に重視され、何年経っても同じ書き方で動きます。非常に長く使われており(1998 年生まれの 27 歳1)、そして古い情報もたくさんあります。この記事ではそういった古い情報を、より簡単で新しい curl コマンドの使い方にアップデートします。最初に結論を書いておくと、 もう -X POST -H "Content-Type: applicatoin/json" なんて書かなくていいですよ。 (記事を読まない人のためのリンク) この記事を書くにあたって以下の記事を参考にしています。この記事が書かれたのは 2015 年、現在はそれから 10 年後

    新しい curl コマンドの使い方 完全ガイド(2025年版) - Qiita
  • echoコマンドの移植性が低い歴史的理由とPOSIXの改定方針 ~ 次期POSIXでbashのechoはPOSIX準拠になる! - Qiita

    echoコマンドの移植性が低い歴史的理由とPOSIXの改定方針 ~ 次期POSIXでbashのechoはPOSIX準拠になる! はじめに 実は bash に組み込まれた echo コマンドは POSIX に準拠していません。しかし 2023 年に予定されている次期 POSIX (Issue 8) の改定で、POSIX 準拠の動作になります。🎉🎉🎉 私のこの言い方には違和感を感じるかもしれません。「POSIX に違反している bash が問題点を修正して、POSIX に準拠させるのではないのか?」と。いいえ違います。POSIX 側が仕様を修正することで、bash は何も変更せずに過去のバージョンも含めて POSIX に準拠するようになります。面白いですね。 この記事は echo コマンドの移植性の問題の歴史を振り返りながら、それを例に POSIX 標準化団体がどのような方針で標準規格を

    echoコマンドの移植性が低い歴史的理由とPOSIXの改定方針 ~ 次期POSIXでbashのechoはPOSIX準拠になる! - Qiita
  • 1コンテナ複数プロセスはやめておいた方が良い話 - Qiita

    概要 Docker コンテナの原則として「1コンテナ1プロセス」1というものがありますが、あえてこの原則を破りたいときがあるかもしれません。 公式: Run multiple services in a container 有志翻訳: コンテナー内での複数サービス起動 上記ドキュメントのラッパースクリプトを利用する方法には重大な問題があり、番環境で使用するべきではありません。 (よりによって「番環境でのアプリ運用」の項目にある) 公式ドキュメントに書かれているのに、死ぬというのはおかしいじゃないか それが罠だという証拠 ちなみに supervisord を利用する方法は問題ありません。 また、コンテナ向けに最適化された s6-overlay2 を利用する方法もあります。 ラッパースクリプトの問題点 プロセスの graceful shutdown が実行されない(プロセスに SIGKIL

    1コンテナ複数プロセスはやめておいた方が良い話 - Qiita
  • ssコマンドの使い方 - Qiita

    [root@server ~]# ss -help Usage: ss [ OPTIONS ] ss [ OPTIONS ] [ FILTER ] -h, --help this message -V, --version output version information -n, --numeric don't resolve service names -r, --resolve resolve host names -a, --all display all sockets -l, --listening display listening sockets -o, --options show timer information -e, --extended show detailed socket information -m, --memory show socket memo

    ssコマンドの使い方 - Qiita
  • WSL2とHyper-Vの関係 - Qiita

    PR 2020年もWSL Advent Calendar作りました。 WSL2をインストールして使うときの注意点もよろしくお願いします。 tl;dr WSL2はHyper-Vのコア機能であるHyper-Vアーキテクチャと、それを利用したHyper-Vコンテナーの上に実現されている。それらはWindows 10 Homeでも利用可能なので、WSL2にProは不要。 MSのFAQから引用 WSL 2 は Hyper-v を使用しますか? Windows 10 Home で使用できるようになりますか。 WSL 2 は、WSL が現在利用可能なすべての Sku (Windows 10 Home を含む) で利用できます。 最新バージョンの WSL は、Hyper-v アーキテクチャを使用して仮想化を有効にします。 このアーキテクチャは、"仮想マシンプラットフォーム" のオプションコンポーネントで使

    WSL2とHyper-Vの関係 - Qiita
  • Docker Desktopに依存しない、WindowsでのDocker環境 - Qiita

    もろもろの事情でDocker Desktopを使いたくなくなったため、Docker Desktop for Windows無しに、似たようなDocker環境をWindowsに構築する手順を確認しました。 (2021-09-05追記) 私はWSL2Docker以外の目的で使用していないので気にしませんが、他の目的にも使っているという方は 「(おまけ) Docker用のディストリビューションを分ける」 を先に参照したほうが良いかもしれません。 (2022-01-29追記) Visual Studio Code (VSCode) に、WSL環境内の docker コマンドを直接使用できるオプションが追加されました。この機能を有効にすると、VSCodeからコンテナを使用するために一旦WSLに接続したり、Windows側にDocker CLIをインストールしたり、というステップが不要になります。詳

    Docker Desktopに依存しない、WindowsでのDocker環境 - Qiita
  • Linuxカーネルビルド大全 - Qiita

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

    Linuxカーネルビルド大全 - Qiita
  • NetBSDを手探りで移植したときの話 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事は自作OS Advent Calendar 2020 7日目の記事となります。 はじめに 現在のオープンソースOSは、たとえばLinux開発ボードであればボードベンダーから移植済みのLinux環境が提供されたり、たとえばNetBSDであればクロスコンパイル環境が整備済みでドキュメントも用意されていて、最低限の移植作業で移植が完了したりします。 ぼくがNetBSDを移植した当時(1993年)はそうではありませんでした。ドキュメントもなくいろいろ手探りで、それも一人でやらざるを得ませんでした。苦労話のことは置いておいて、技術的にどう

    NetBSDを手探りで移植したときの話 - Qiita
  • Linux - Qiita Advent Calendar 2020 - Qiita

    便利なTips、Linux Kernel、ディストリビューション、デスクトップ等々、Linuxに関することを書いていきましょう。 Linux Advent Calendar その2もあります😊 2019年のアドベントカレンダー 2018年のアドベントカレンダー 2017年のアドベントカレンダー 2016年のアドベントカレンダー 2015年のアドベントカレンダー 2014年のアドベントカレンダー 2013年のアドベントカレンダー

    Linux - Qiita Advent Calendar 2020 - Qiita
  • Linuxのパッケージをアップデートしたあとrestartが必要なプロセスを見つける方法 - Qiita

    はじめに 脆弱性対応のためのアップデート作業というものは頻繁に発生するものですが、番運用しているシステムではサービスへの影響を最小限にしたいものです。 アップデートした後、出来ることなら必要なプロセスだけリスタートさせることで済ませたいのですが、どのプロセスをリスタートすれば良いのか、そもそもOS再起動しないと反映されないものなのか、判断が付かない場合が少なくありません。 そのような場合のため、再起動が必要なプロセスを見つけたり、OS再起動が必要かどうかアドバイスしてくれるコマンドがあります。 Redhat系 「yum-utils」パッケージに入っている「needs-restarting」コマンドを使います。 # needs-restarting -h Usage: needs-restarting: Report a list of process ids of programs th

    Linuxのパッケージをアップデートしたあとrestartが必要なプロセスを見つける方法 - Qiita
  • 2020年はsystemd-homedの登場でLinuxのユーザー管理が大きく変わるぞ - Qiita

    これまでのLinuxでは、ユーザーの追加はuseraddで行われ、ホームディレクトリは/home以下にディレクトリとして作られ、ユーザーのアカウントは/etc/passwd、/etc/group、/etc/shadowで管理されていました。 これからは、systemd-homedがその全ての仕事を置換することになります。 ※タイトル詐欺感がありますが、従来の方式も並行して使えます。安心してください。 systemd-homedとは? systemd バージョン245で追加された、ユーザー管理デーモン。実体はsystemdのサービスユニットファイルで、systemd-homed.serviceとして起動されます。 今後、ユーザーの管理や認証はsystemd-homed(以下、 homed )によって行われることになるようですね。 出典が無く間違いだったため、訂正しました。systemd-ho

    2020年はsystemd-homedの登場でLinuxのユーザー管理が大きく変わるぞ - Qiita
  • Bashの邪悪なコマンド9選 - Qiita

    rm -rf /やったことある人。 私はないです。 以下はAndreas Müller( Twitter / GitHub / LinkedIn / Medium )による記事、9 Evil Bash Commands Explainedの日語訳です。 9 Evil Bash Commands Explained 初めてターミナルを使って、そしてそれを理解したときのことを覚えています。 あらゆるファイルにアクセスし、全てのプログラムを実行し、黒い画面に何かを入力するだけでシステムの全てを完全に掌握できることに気がついた、あの感覚。 そしてもちろん、致命的ミスを犯して全てを失った、あのときの恐怖も。 私は当はシステム管理者ではありませんが、長年にわたってLinux/UNIXベースのシステムで作業してきたので、コマンドを実行しようとしてEnterキーを打つことを躊躇う状況に何度も遭遇しまし

    Bashの邪悪なコマンド9選 - Qiita
  • (ほぼ)無からのトラブルシューティング技法 - Qiita

    闇の魔術に対する防衛術 Advent Calendar 2019 16日目の記事です。 イントロダクション デプロイ自動化、コンテナ型仮想化、マイクロサービス化などが進み、トラブルシューティングの難易度が意図せず上がっているケースがあります。 日常の開発作業でアプリケーションの設定やアクセス経路をほとんど意識しない コンテナが軽量すぎて ps や netstat すら入っていない Infrastructure as Code (なおドキュメントは存在しない) ログ管理の基盤はあるが、欲しいログが収集されていないか、ログ以外を調べたいので役に立たない 今回は、こうしたケースで 対象システムに熟知していなくても トラブルシューティングを進めていく方法について取り上げます。 スタート あなたは Linux サーバへの SSH ログインに必要な情報を入手し、ログインに成功しました。なんと root

    (ほぼ)無からのトラブルシューティング技法 - Qiita
  • Linux on Chromebook のソフトウェア開発者向けカスタマイズ例 - Qiita

    設定は fcitx の後で起動します。入力切り替え設定は「全体の設定」タブの「ホットキー」です。 私は US 配列の Chromebook に合わせて Ctrl + SPACE にしています。スクショに写ってる Hangul は ErgoDox を外付けしたときイケてる設定にできないかなーと試行錯誤してるところです。 エディタ兼軽量 IDE として VSCode 「候補をトリガー」と fep のショートカットをずらす 私は FEP 切り替えを Ctrl + SPACE にしているので、VSCode 標準の候補表示トリガーとブッキングしてしまいます。ショートカットキー変更で候補表示を alt + SPACE にずらしています。 ショートカットキー変更は ctrl + k → ctrl + s です。または ctrl + SHIFT + p でコマンドパレットから open keyboard

    Linux on Chromebook のソフトウェア開発者向けカスタマイズ例 - Qiita
  • この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
  • guestfish (libguestfs-tools)を使う - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    guestfish (libguestfs-tools)を使う - Qiita
  • 低レイヤーを学ぶための技術書をまとめてみる - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 半年前から低レイヤーに関する勉強をしている。 その中で読んだ技術書の感想、そしておすすめの読む順番をここにまとめてみる。 OS 30日でできる! OS自作入門 おすすめ度:80(満点100) 一言:自作OSの初心者向け 自作OSでまず初めに候補に挙がるのがこの。2006年に出版されたではあるが、OSの根幹を理解するにはとても良い。最初からアセンブリでメモリ操作をがっつり書くため、アセンブリの経験やレジスタ周りの知識が無いと挫折してしまうかも知れない。そこを乗り越えれば楽しくOSを実装していける。 コンピュータシステムの理論と実装 ―

    低レイヤーを学ぶための技術書をまとめてみる - Qiita
  • tail -fやtailfを使うのはやめてless +Fを使おう - Qiita

    tail データの末尾を見たい場合はtailを使い、 更新されたデータをリアルタイムに見たい場合はtail -fを使います。 「tail -fは情弱なのでtailfを使おう」 ということを、若かりし頃先輩に教えて頂いた時は感激したものです。 less ファイルの内容を閲覧したい場合に使うコマンドで、 /検索文字列で検索が出来たり、 文字のページ幅での折り返しを付けたく無いときは-Sのオプションを付けて見やすくしたりと、 何かと便利なlessですが、、 lessにもリアルタイムに更新されるデータを見れるオプション +F がありました 使い方はとっても簡単で、以下の様に+Fのオプションを渡すだけです。 less +F hoge.log すると、画面下の方に Waiting for data... (interrupt to abort)の文字が書いてあり、データが更新される度に反映してくれます

    tail -fやtailfを使うのはやめてless +Fを使おう - Qiita
  • tailコマンドのオプション「f」と「F」 - Qiita

    この記事を書くに至った経緯 tailコマンド。ログ監視等で当にお世話になっています。 いつもオプションとして「F」(大文字の方)を使っているのですが、その理由がその昔、「f」(小文字の方)よりよいと誰かに聞いたからなのです。 その時に理由も聞いたはずなのですが、毎日のように使っている内に忘れてしまいましたw 先日ふとしたきっかけで「どうしてF(大文字の方)使ってるの?」と尋ねられ、そう言えばなんでだっけと調べたので、忘れないように記事に残しておきたいと思ったのです。 結論、**私は「F」が便利だと思うからそれを使うよ!**って記事ですw tailコマンド 来**tailは、ファイルの末尾10行(デフォルト)を表示するためのコマンドです。 対になるコマンドとしてhead(こちらはファイルの先頭10行(デフォルト)を表示する**)があります。 表示する行数を変更するためにはどちらのコマンド

    tailコマンドのオプション「f」と「F」 - Qiita
  • SELinux を使おう.使ってくれ. - Qiita

    この記事の目的 SELinux って邪魔者ですか? 「トラブルシュートの時に邪魔だから」「トラブルの元だから」とか言う理由で /etc/selinux/config で SELINUX=disable したり setenforce 0 したりしていませんか? SELinux は理解さえすればとても簡単です. 番環境でファイアウォールと WAF の設定をして満足していないで SELinux を使いましょう. 対象 SELinux を初めて触る人向けです. 玄人の方は他へ... 稿の範囲 稿では SELinux を導入しておしまいです.あくまで「みんな,簡単だからね,使おうね!」と言いたいのです. 当は SELinux の効果を示すために Exploit を仕込んだアプリケーションから root を取って不正にファイルに触るところまでやりたいのですが,これまた別の記事にします. 僕の願

    SELinux を使おう.使ってくれ. - Qiita