Closed7

数多のソフトウェアの集合から成るLinuxディストリビューション

四ツ山伊吹四ツ山伊吹

何気なく調べ物をしていたら、Linuxディストリビューションというのは数多くのソフトウェアプロジェクトの成果が寄り集まってできているんだなあと改めて実感したのでメモ。「あのコマンドって、Linuxカーネル/GNUプロジェクト/ディストリビューション固有じゃあないんだ」という驚きがいくつもあった。

実例としてDebian GNU/Linuxを挙げるが、ほかのディストリビューションでも同様かと思う。

ここでは、「どの団体組織」が「どのようなソフトウェア」をリリースしているかに着目していきたい。

ライセンスは多様

四ツ山伊吹四ツ山伊吹

shadow-utils

https://github.com/shadow-maint/shadow

port: https://salsa.debian.org/debian/shadow

ライセンスはBSD-3-Clause。著作権表記は “Copyright (c) 1989 - 1994, Julianne Frances Haugh”

Debianプロジェクトでの名称は“shadow-utils”、Wikipediaによれば、オリジナルは“ Shadow Password Suite”[1]

/etc/passwd/etc/shadow といった著名な設定ファイルを取り扱うソフトウェア。shell utilities として利用可能なコマンドとしては、passwdはもちろん、useraddgroupaddloginなども含まれる。オリジナルのものには、ほかにはsuコマンドも含まれるが、Debianでは別の実装 (util-linux) が代わりに使われてる様子[2]。Wikipedia[1:1]によればその誕生は1980年代に遡るという(現在40歳越え!)。

脚注
  1. https://en.wikipedia.org/wiki/Passwd#History ↩︎ ↩︎

  2. su --version ↩︎

四ツ山伊吹四ツ山伊吹

Linux-PAM

Pluggable Authentication Modules for Linux

https://github.com/linux-pam/linux-pam

port: https://salsa.debian.org/vorlon/pam

ライセンスはBSD-3-Clause風だが、

ALTERNATIVELY, this product may be distributed under the terms of the
GNU General Public License, in which case the provisions of the GNU
GPL are required INSTEAD OF the above restrictions. (This clause is
necessary due to a potential conflict between the GNU GPL and the
restrictions contained in a BSD-style copyright.)

という記載が追加されているとおり、GNU General Public Licenseでも利用できる。

先のloginpasswdsuコマンドをはじめ、ソフトウェアでユーザー認証を行うための基盤。詳しい説明はWikipedia[1]やArchWiki[2]などで。

脚注
  1. https://en.wikipedia.org/wiki/Linux_PAM ↩︎

  2. https://wiki.archlinux.org/title/PAM ↩︎

四ツ山伊吹四ツ山伊吹

procps

https://gitlab.com/procps-ng/procps

port: https://salsa.debian.org/debian/procps

procpsはprocps-ngが開発するソフトウェア。ライセンスはGPL-2.0だがGNUプロジェクトとは関係ない?収録されているコマンドはREADMEに記載されている通り:

The following programs are found in procps:

  • free - Report the amount of free and used memory in the system
  • kill - Send a signal to a process based on PID
  • pgrep - List processes based on name or other attributes
  • pkill - Send a signal to a process based on name or other attributes
  • pmap - Report memory map of a process
  • ps - Report information of processes
  • pwdx - Report current directory of a process
  • skill - Obsolete version of pgrep/pkill
  • slabtop - Display kernel slab cache information in real time
  • snice - Renice a process
  • sysctl - Read or Write kernel parameters at run-time
  • tload - Graphical representation of system load average
  • top - Dynamic real-time view of running processes
  • uptime - Display how long the system has been running
  • vmstat - Report virtual memory statistics
  • w - Report logged in users and what they are doing
  • watch - Execute a program periodically, showing output fullscreen

見覚えのあるのがけっこうある。

このスクラップは2023/09/20にクローズされました