Path: blob/main/documentation/content/ja/books/handbook/basics/_index.adoc
18098 views
---
title: 第3ç« FreeBSD ã®åºç€ç¥è
part: ããŒãI. å°å
¥
prev: books/handbook/bsdinstall
next: books/handbook/ports
description: FreeBSD ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®åºæ¬çãªã³ãã³ããšæ©èœã«ã€ããŠ
tags: ["basics", "virtual consoles", "users", "management", "permissions", "directory structure", "disk organization", "mounting", "processes", "daemons", "shell", "editor", "manual pages", "devices"]
showBookMenu: true
weight: 5
params:
path: "/books/handbook/basics/"
---
[[basics]]
= FreeBSD ã®åºç€ç¥è
:doctype: book
:toc: macro
:toclevels: 1
:icons: font
:sectnums:
:sectnumlevels: 6
:sectnumoffset: 3
:partnums:
:source-highlighter: rouge
:experimental:
:images-path: books/handbook/basics/
ifdef::env-beastie[]
ifdef::backend-html5[]
:imagesdir: ../../../../images/{images-path}
endif::[]
ifndef::book[]
include::shared/authors.adoc[]
include::shared/mirrors.adoc[]
include::shared/releases.adoc[]
include::shared/attributes/attributes-{{% lang %}}.adoc[]
include::shared/{{% lang %}}/teams.adoc[]
include::shared/{{% lang %}}/mailing-lists.adoc[]
include::shared/{{% lang %}}/urls.adoc[]
toc::[]
endif::[]
ifdef::backend-pdf,backend-epub3[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]
endif::[]
ifndef::env-beastie[]
toc::[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]
[[basics-synopsis]]
== ãã®ç« ã§ã¯
ãã®ç« ã§ã¯ FreeBSD ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®åºæ¬çãªã³ãã³ããšæ©èœã«ã€ããŠèšè¿°ããŠããŸãã
ããã«æžãããŠããããšã®ã»ãšãã©ã¯ãã©ã㪠UNIX(R) -like ãªãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã«ãããŠã¯ãŸããŸãã
FreeBSD ã®åå¿è
ã§ããã°ããã®ç« ãèªãã§ãããæ¹ããã£ãšããã¯ãã§ãã
ãã®ç« ãèªãã§åããããšã¯ã次ã®ãããªããšã§ãã
* ä»®æ³ã³ã³ãœãŒã«ã®äœ¿ãæ¹ãšèšå®æ¹æ³
* FreeBSD ã·ã¹ãã äžã§ãŠãŒã¶ãã°ã«ãŒããäœæã管çããæ¹æ³
* UNIX(R) ã®ãã¡ã€ã«ã®èš±å¯å±æ§ã®ä»çµã¿ãš FreeBSD ã®ãã¡ã€ã«ãã©ã°ã«ã€ããŠ
* FreeBSD ã®ãã¡ã€ã«ã·ã¹ãã ã®æ§æ
* FreeBSD ã®ãã£ã¹ã¯æ§æ
* ãã¡ã€ã«ã·ã¹ãã ãããŠã³ããã¢ã³ããŠã³ãããæ¹æ³
* ããã»ã¹ãããŒã¢ã³ãšã·ã°ãã«ãšã¯ãªã«ã
* ã·ã§ã«ãšã¯ãªã«ãã ãŸããããã©ã«ãã®ãã°ã€ã³ç°å¢ãå€ããæ¹æ³
* ããã¹ããšãã£ã¿ã®åºæ¬çãªäœ¿ãæ¹
* ããã€ã¹ããã³ããã€ã¹ããŒããšã¯ãªã«ã
* ããã«è©³ããæ
å ±ãåŸãããã®ããã¥ã¢ã«ããŒãžã®èªã¿æ¹
[[consoles]]
== ä»®æ³ã³ã³ãœãŒã«ãšç«¯æ«
èµ·åæã«èªåçã«ã°ã©ãã£ã«ã«ãªç°å¢ãèµ·åããããã« FreeBSD ãèšå®ããŠããªããã°ãã·ã¹ãã ãèµ·åãããšã以äžã®ãããªã³ãã³ãã©ã€ã³ã®ãã°ã€ã³ããã³ããã衚瀺ãããŸãã
[source,shell]
....
FreeBSD/amd64 (pc3.example.org) (ttyv0)
login:
....
æåã®è¡ã¯ã·ã¹ãã ã®æ
å ±ã§ãã
`amd64` ã¯ããã®ã·ã¹ãã äžã§ 64 ãããçã® FreeBSD ãåäœããŠããããšã瀺ããŠããŸãã
ãã¹ãå㯠`pc3.example.org`ã`ttyv0` 㯠"ã·ã¹ãã ã³ã³ãœãŒã«" ã§ããããšã瀺ããŠããŸãã
次ã®è¡ã¯ãã°ã€ã³ããã³ããã§ãã
FreeBSD ã¯ãã«ããŠãŒã¶ã·ã¹ãã ãªã®ã§ããŠãŒã¶ãåºå¥ããäœãããã®ææ®µãå¿
èŠã§ãã
ã·ã¹ãã äžã®ããã°ã©ã ãå®è¡ã§ããããã«ãªãã«ã¯ããã¹ãŠã®ãŠãŒã¶ã«å¯ŸããŠã·ã¹ãã ã«ãã°ã€ã³ããããšã矩åä»ããããŠããŸãã
ãã¹ãŠã®ãŠãŒã¶ã¯ãäžæãª "ãŠãŒã¶å" ãš "ãã¹ã¯ãŒã" ãæã£ãŠããŸãã
ã·ã¹ãã ã³ã³ãœãŒã«ã«ãã°ã€ã³ããã«ã¯ãã·ã¹ãã ã®ã€ã³ã¹ããŒã«æã« crossref:bsdinstall[bsdinstall-addusers,ãŠãŒã¶ã®è¿œå ] ã§è¿œå ãããŠãŒã¶åãå
¥åããŠãkbd:[Enter] ãæŒããŠãã ããã
次ã«ãã®ãŠãŒã¶ã®ãã¹ã¯ãŒããå
¥åããŠãkbd:[Enter] ãæŒããŠãã ããã
ã»ãã¥ãªãã£ã®èгç¹ããããã¹ã¯ãŒã㯠_衚瀺ãããŸãã_ã
ãã¹ã¯ãŒããæ£ç¢ºã«å
¥åããããæ¥ã
ã®ã¡ãã»ãŒãž (MOTD) ã衚瀺ããã
ã³ãã³ãããã³ããã衚瀺ãããŸãã
ãŠãŒã¶äœææã«éžæããã·ã§ã«ã«äŸåããŸããããã®ããã³ãã㯠`+#+`, `$` ãŸã㯠`%` ãšãã£ãèšå·ã§ãã
ããã³ããã¯ãŠãŒã¶ã FreeBSD ã®ã·ã¹ãã ã³ã³ãœãŒã«ãžãã°ã€ã³ããå©çšå¯èœãªã³ãã³ããå®è¡ããæºåãã§ããŠããããšã瀺ããŠããŸãã
[[consoles-virtual]]
=== ä»®æ³ã³ã³ãœãŒã«
ã·ã¹ãã ã³ã³ãœãŒã«ããã·ã¹ãã ã«å¯Ÿè©±çã«ã³ãã³ããå®è¡ã§ããŸãããFreeBSD ã·ã¹ãã äžã§ããŒããŒãã«ããã³ãã³ãã©ã€ã³ããå©çšããŠãããŠãŒã¶ã¯ãé垞代ããã«ä»®æ³ã³ã³ãœãŒã«ã«ãã°ã€ã³ããŸãã
ããã©ã«ãã§ã¯ã·ã¹ãã ããã®ã¡ãã»ãŒãžã¯ã·ã¹ãã ã³ã³ãœãŒã«ã«åºåããããããã®ã¡ãã»ãŒãžãããŠãŒã¶ãäœæ¥ããŠããã³ãã³ããŸãã¯ãã¡ã€ã«äžã«è¡šç€ºãããããããŠãŒã¶ãçŸåšã®äœæ¥ã«éäžã§ããªããªãããã§ãã
ããã©ã«ãã§ã¯ FreeBSD ã¯ãè€æ°ã®ä»®æ³ã³ã³ãœãŒã«ã衚瀺ããŠã³ãã³ããå
¥åã§ããããã«èšå®ãããŠããŸãã
åä»®æ³ã³ã³ãœãŒã«ã¯ãåå¥ã®ãã°ã€ã³ããã³ããããã³ã·ã§ã«ãæã£ãŠãããç°¡åã«ä»®æ³ã³ã³ãœãŒã«éã®åãæ¿ããã§ããŸãã
ããã«ãããã°ã©ãã£ã«ã«ãªç°å¢ã«ãããŠåæã«è€æ°ã®ãŠã£ã³ããŠãéããŠã³ãã³ãã©ã€ã³ã®ç°å¢ãæäŸã§ããŸãã
FreeBSD ã§ã¯ kbd:[Alt+F1] ãã kbd:[Alt+F8] ãŸã§ã®ããŒã®çµã¿åããããä»®æ³ã³ã³ãœãŒã«éã®åãæ¿ãã«äºçŽãããŠããŸãã
ã·ã¹ãã ã³ã³ãœãŒã« (`ttyv0`) ã«åãæ¿ããã«ã¯ãkbd:[Alt+F1] ã䜿ã£ãŠãã ããã
æåã®ä»®æ³ã³ã³ãœãŒã« (`ttyv1`) ã«ã¢ã¯ã»ã¹ããã«ã¯ kbd:[Alt+F2]ã2 çªç®ã®ä»®æ³ã³ã³ãœãŒã« (`ttyv2`) ã«ã¢ã¯ã»ã¹ããã«ã¯ kbd:[Alt+F3]ããšãã£ãããã«äœ¿ã£ãŠãã ããã
Xorg ãã°ã©ãã£ã«ã«ãªã³ã³ãœãŒã«ãšããŠäœ¿çšããŠãããšãã«ã¯ãkbd:[Ctrl+Alt+F1] ã®çµã¿åããã䜿çšãããšãããã¹ãããŒã¹ã®ä»®æ³ã³ã³ãœãŒã«ãžæ»ããŸãã
ããã³ã³ãœãŒã«ããä»ã«åãæ¿ããã®ã«å¿ããŠãFreeBSD ã¯ç»é¢ãžã®åºåã管çããŸãã
çµæãšããŠãFreeBSD ã§åããã³ãã³ããå
¥åããã®ã«äœ¿ããè€æ°ã®ç»é¢ãšããŒããŒããä»®æ³çã«å®çŸã§ããã®ã§ãã
ããä»®æ³ã³ã³ãœãŒã«ã§å®è¡ããããã°ã©ã ã¯ããŠãŒã¶ãå¥ã®ä»®æ³ã³ã³ãœãŒã«ã«åãæ¿ããŠãå®è¡ã忢ããŸããã
FreeBSD ã®ã³ã³ãœãŒã«ããã³ããŒããŒããã©ã€ãã«é¢ãããããªãæè¡çãªèª¬æã«ã€ããŠã¯ãman:kbdcontrol[1], man:vidcontrol[1], man:atkbd[4], man:syscons[4] ããã³ man:vt[4] ãåç
§ããŠãã ããã
FreeBSD ã§ã¯ä»¥äžã® `/etc/ttys` ã®ã»ã¯ã·ã§ã³ã®ããã«è€æ°ã®å©çšå¯èœãªä»®æ³ã³ã³ãœãŒã«ãèšå®ãããŠããŸãã
[.programlisting]
....
# name getty type status comments
#
ttyv0 "/usr/libexec/getty Pc" xterm on secure
# Virtual terminals
ttyv1 "/usr/libexec/getty Pc" xterm on secure
ttyv2 "/usr/libexec/getty Pc" xterm on secure
ttyv3 "/usr/libexec/getty Pc" xterm on secure
ttyv4 "/usr/libexec/getty Pc" xterm on secure
ttyv5 "/usr/libexec/getty Pc" xterm on secure
ttyv6 "/usr/libexec/getty Pc" xterm on secure
ttyv7 "/usr/libexec/getty Pc" xterm on secure
ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure
....
ä»®æ³ã³ã³ãœãŒã«ãç¡å¹ã«ããã«ã¯ãç¡å¹ã«ãããä»®æ³ã³ã³ãœãŒã«ã®è¡ãã³ã¡ã³ãèšå· (`+#+`) ããå§ãŸãããã«èšå®ããŠãã ããã
ããšãã°ãå©çšå¯èœãªä»®æ³ã³ã³ãœãŒã«ã 8 ã€ãã 4 ã€ã«æžããå Žåã«ã¯ã`ttyv5` ãã `ttyv8` ãŸã§ã®ä»®æ³ã³ã³ãœãŒã«ã衚ãæåŸã® 4 è¡ã®å
é ã« `+#+` ãæ¿å
¥ããŠãã ããã
ã·ã¹ãã ã³ã³ãœãŒã«ã衚ã `ttyv0` ããå§ãŸãè¡ã¯ã³ã¡ã³ãã¢ãŠã _ããªãã§ãã ããã_
æåŸã®ä»®æ³ã³ã³ãœãŒã« (`ttyv8`) ã¯ã crossref:x11[x11,X Window System] ã§èª¬æãããŠããããã« Xrog ãã€ã³ã¹ããŒã«ãããŠèšå®ãããŠããå Žåã«ãã°ã©ãã£ã«ã«ç°å¢ã«ã¢ã¯ã»ã¹ããããã«äœ¿çšãããŸãã
ãã®ãã¡ã€ã«ã®ããããã®ã«ã©ã ãšä»®æ³ã³ã³ãœãŒã«ã«èšå®å¯èœãªãªãã·ã§ã³ã®è©³ãã説æã¯ãman:ttys[5] ã®ããã¥ã¢ã«ãåç
§ããŠãã ããã
[[consoles-singleuser]]
=== ã·ã³ã°ã«ãŠãŒã¶ã¢ãŒã
FreeBSD ã®ããŒãã¡ãã¥ãŒã§ã¯ã"ã·ã³ã°ã«ãŠãŒã¶ã¢ãŒã" ãšè¡šç€ºãããŠãããªãã·ã§ã³ãæäŸãããŠããŸãã
ãã®ãªãã·ã§ã³ãéžæãããšãã·ã¹ãã 㯠"ã·ã³ã°ã«ãŠãŒã¶ã¢ãŒã" ãšåŒã°ããç¹å¥ãªã¢ãŒãã§èµ·åããŸãã
ãã®ã¢ãŒãã¯ãã·ã¹ãã ãèµ·åããªãå Žåã«ä¿®æ£ã®ããããŸã㯠`root` ã®ãã¹ã¯ãŒããåãããªããªã£ãŠããŸããªã»ãããããšããªã©ãç¹å¥ãªç¶æ³ã§å©çšãããŸãã
ã·ã³ã°ã«ãŠãŒã¶ã¢ãŒãã§åãããŠããå Žåã¯ããããã¯ãŒã¯ãä»ã®ä»®æ³ã³ã³ãœãŒã«ã¯å©çšã§ããŸããã
ããããã·ã¹ãã ãžã®å®å
šãª `root` æš©éãå©çšã§ããããã©ã«ãã®èšå®ã§ã¯ `root` ã®ãã¹ã¯ãŒãã¯å¿
èŠãããŸããã
ãã®ãããªçç±ã®ããããã®ã¢ãŒãã§èµ·åããå Žåã«ã¯ç©ççãªããŒããŒããžã®ã¢ã¯ã»ã¹ãå¿
èŠã§ãããFreeBSD ã·ã¹ãã ã®å®å
šæ§ã®èгç¹ããããŒããŒãã«ç©ççã«ã¢ã¯ã»ã¹ã§ããäººãæ±ºããŠããäºãå¿
èŠã§ãã
ã·ã³ã°ã«ãŠãŒã¶ã¢ãŒãã管çããèšå®ã¯ã`/etc/ttys` ãã¡ã€ã«ã®ä»¥äžã®ã»ã¯ã·ã§ã³ã«ãããŸãã
[.programlisting]
....
# name getty type status comments
#
# If console is marked "insecure", then init will ask for the root password
# when going to single-user mode.
console none unknown off secure
....
ããã©ã«ãã§ã¯ãstatus 㯠`secure` ã«èšå®ãããŠããŸãã
ããã¯ãããŒããŒããžã¢ã¯ã»ã¹ã§ããããŠãŒã¶ã誰ã§ããããéèŠã§ã¯ãªãããããã¯ã¢ã¯ã»ã¹ã§ãããŠãŒã¶ã«ã€ããŠã¯ç©ççãªã»ãã¥ãªãã£ããªã·ãŒã§ã³ã³ãããŒã«ãããŠããããšãåæãšãªã£ãŠããŸãã
ãã®èšå®ã `insecure` ã«å€æŽããã±ãŒã¹ãšããŠã¯ãã·ã¹ãã ã¯å®å
šã§ã¯ãªãã誰ã§ãããŒããŒãã«ã¢ã¯ã»ã¹ã§ããç°å¢ãæ³å®ãããŸãã
ãã®è¡ã `insecure` ã«å€æŽãããšãFreeBSD ãã·ã³ã°ã«ãŠãŒã¶ã¢ãŒãã§èµ·åããå Žåã« `root` ã®ãã¹ã¯ãŒããèŠæ±ãããŸãã
[NOTE]
====
__ `insecure` ã«å€æŽããå Žåã¯ååæ³šæããŠãã ãã! __
`root` ã®ãã¹ã¯ãŒããå¿ããŠããŸããšãã·ã³ã°ã«ãŠãŒã¶ã¢ãŒãã§èµ·åããããšã¯ã§ããŸãããFreeBSD ã®èµ·åã®ããã»ã¹ã«è©³ãããªã人ãèµ·åã§ããããã«ããã®ã¯é£ããããç¥ããŸããã
====
[[consoles-vidcontrol]]
=== ã³ã³ãœãŒã«ã®ãããªã¢ãŒãã®å€æŽ
FreeBSD ã®ããã©ã«ãã®ãããªã¢ãŒã㯠1024x768 ã 1280x1024 ãªã©ãã°ã©ãã£ãã¯ãããããã³ãã£ã¹ãã¬ã€ã察å¿ããŠãããµã€ãºã«èª¿æŽãããŸãã
å¥ã®ãããªã¢ãŒãã䜿ãã«ã¯ã`VESA` ã¢ãžã¥ãŒã«ãããŒãããŠãã ããã
[source,shell]
....
# kldload vesa
....
ãã®åŸãããŒããŠã§ã¢ã察å¿ããŠãããããªã¢ãŒãã man:vidcontrol[1] ã䜿ã£ãŠç¢ºèªããŠãã ããã
以äžãå®è¡ãããšã察å¿ããŠãããããªã¢ãŒãã調ã¹ãããšãã§ããŸãã
[source,shell]
....
# vidcontrol -i mode
....
ãã®ã³ãã³ãã¯ã䜿çšããŠããããŒããŠã§ã¢ã察å¿ããŠãããããªã¢ãŒãã®äžèЧã衚瀺ããŸãã
ãã®åŸãman:vidcontrol[1] ã `root` ãŠãŒã¶ã§å®è¡ããŠãæ°ãã䜿çšãããããªã¢ãŒããéžæããŠãã ããã
[source,shell]
....
# vidcontrol MODE_279
....
ãã®ãããªã¢ãŒãã§è¯ããã°ãèµ·åæã«èªåçã«èšå®ãããããã« `/etc/rc.conf` ã«ä»¥äžã®ããã«è¿œå ããŠãã ããã
[.programlisting]
....
allscreens_flags="MODE_279"
....
[[users-synopsis]]
== ãŠãŒã¶ãšåºæ¬çãªã¢ã«ãŠã³ã管ç
FreeBSD ã¯ãè€æ°ã®ãŠãŒã¶ãåæã«ã³ã³ãã¥ãŒã¿ã䜿ããããã«ããŸãã ã¹ã¯ãªãŒã³ãšããŒããŒãã®åã«äžåºŠã«åº§ããã®ã¯ãã®äžã®äžäººã ãã§ãã ãŠãŒã¶ã¯äœäººã§ããããã¯ãŒã¯ãéããŠãã°ã€ã³ã§ããŸãã ã·ã¹ãã ã䜿ãããã«ã¯ã ã©ã®ãŠãŒã¶ãã¢ã«ãŠã³ãããªããã°ãªããŸããã
ãã®ç« ã§ã¯ã以äžã®ããšã説æããŸãã
* FreeBSD ã·ã¹ãã ã«ãããããŸããŸãªçš®é¡ã®ãŠãŒã¶ã¢ã«ãŠã³ãã«ã€ããŠ
* ãŠãŒã¶ã¢ã«ãŠã³ãã远å ãåé€ããã³å€æŽããæ¹æ³
* ãŠãŒã¶ãã°ã«ãŒããå©çšã§ãããªãœãŒã¹ã®äžéãå¶åŸ¡ããæ¹æ³
* ã°ã«ãŒãã®äœæã ããã³ã°ã«ãŒãã«ãŠãŒã¶ãã¡ã³ããšããŠè¿œå ããæ¹æ³
[[users-introduction]]
=== ã¢ã«ãŠã³ãã®çš®é¡
FreeBSD ã·ã¹ãã ãžã¢ã¯ã»ã¹ããã«ã¯ã ããªããã¢ã«ãŠã³ãã䜿ããã ãŸããããã»ã¹ããã¹ãŠãŠãŒã¶ã«ãã£ãŠå®è¡ãããã®ã§ã ãŠãŒã¶ãšã¢ã«ãŠã³ãã®ç®¡çã¯ãéèŠãªãã®ã§ãã
ã¢ã«ãŠã³ãã«ã¯å€§ããåããŠäžçš®é¡ãããŸãã ã·ã¹ãã ã¢ã«ãŠã³ã (system accounts)ããŠãŒã¶ã¢ã«ãŠã³ã (user accounts)ã ãããŠã¹ãŒããŒãŠãŒã¶ (superuser) ã§ãã
[[users-system]]
==== ã·ã¹ãã ã¢ã«ãŠã³ã
ã·ã¹ãã ã¢ã«ãŠã³ãã¯ãDNSãã¡ãŒã«ã ãŠã§ããµãŒããšãã£ãåçš®ãµãŒãã¹ãéçšããããã«äœ¿ãããŸãã ãã®ç®çã¯ãã»ãã¥ãªãã£ã確ä¿ããããã§ãã ãããã¹ãŠã®ãµãŒãã¹ãã¹ãŒããŒãŠãŒã¶ã§å®è¡ãããŠãããšã ãããã®ãµãŒãã¹ã¯ã©ããªåäœã§ãå¯èœãšãªãã é©åãªå¶éãé©çšããããšãã§ããŸããã
ã·ã¹ãã ã¢ã«ãŠã³ãã®å
·äœäŸã¯ã `daemon`, `operator`, `bind`, `news` ããã³ `www` ãšãã£ããã®ã§ãã
`nobody` ã¯éåžžã®ç¹æš©ãæããªãã·ã¹ãã ã¢ã«ãŠã³ãã§ãã ãããã`nobody` ãå©çšãããµãŒãã¹ãå¢ããã°å¢ããã»ã©ã ããã«æå±ãããã¡ã€ã«ãããã»ã¹ãå¢ãã ãã®ç¹æš©ã倧ãããªããšããããšãå¿ããªãããã«ããŠãã ããã
[[users-user]]
==== ãŠãŒã¶ã¢ã«ãŠã³ã
ãŠãŒã¶ã¢ã«ãŠã³ãã¯ã äž»ã«çŸå®ã®ãŠãŒã¶ãã·ã¹ãã ã«ã¢ã¯ã»ã¹ããææ®µãšããŠçšãããããã®ã§ãã ã·ã¹ãã ã«ã¢ã¯ã»ã¹ãããã¹ãŠã®ãŠãŒã¶ã¯ã ããããå¯äžã®ãŠãŒã¶ã¢ã«ãŠã³ããæã€ã¹ãã§ãã ããããããšã§ç®¡çè
ã¯èª°ãäœãè¡ãªã£ãŠããããããããŸããã ä»ã®äººã®èšå®ãå£ããŠããŸããããªããšãé¿ããããšãã§ããŸãã
ããããã®ãŠãŒã¶ã¯å¿«é©ã«ã·ã¹ãã ãå©çšããããã ã·ã§ã«ããšãã£ã¿ãããŒèšå®ãèšèªãªã©ã åèªã®ç°å¢ãã»ããã¢ããããããšãã§ããŸãã
FreeBSD ã·ã¹ãã äžã®ã©ã®ã¢ã«ãŠã³ãã«ãã 以äžã®ãããªæ
å ±ããªã«ãããçµã³ä»ããããŠããŸãã
ãŠãŒã¶å::
`login:` ããã³ããã«å¯ŸããŠå
¥åãããŠãŒã¶ã®ååã§ãã
åãŠãŒã¶ã¯äžæãªãŠãŒã¶åãæã€å¿
èŠããããŸãã
æå¹ãªãŠãŒã¶åãäœæããã«ã¯ man:passwd[5] ã«èšèŒãããŠããããã€ãã®èŠåããããŸãã
ã¢ããªã±ãŒã·ã§ã³ã®äžäœäºææ§ãä¿ã€ããã«ã8 æå以äžã®å°æåãããªããŠãŒã¶åã䜿ãããšãæšå¥šãããŠããŸãã
ãã¹ã¯ãŒã::
åã¢ã«ãŠã³ãã«ã¯ãã¹ã¯ãŒãããããŸãã
ãŠãŒã¶ ID (UID)::
ãŠãŒã¶ ID (UID) ã¯ã FreeBSD ã·ã¹ãã ããŠãŒã¶ãäžæã«èå¥ããããã®æ°å€ã§ãã ãŠãŒã¶åãæå®ã§ããã³ãã³ãã¯ã ãŠãŒã¶åã UID ã«å€æããŠããæ±ã£ãŠããŸãã
65535 ãã倧ã㪠UID ã¯ããœãããŠã§ã¢ã«ãã£ãŠã¯äºææ§ã®åé¡ãåŒãèµ·ããå¯èœæ§ãããã®ã§ã65535 以äžã® UID ã䜿çšããããšãæšå¥šãããŠããŸãã
ã°ã«ãŒã ID (GID)::
ã°ã«ãŒã ID (GID) ã¯ã ãŠãŒã¶ãå±ãã第äžã°ã«ãŒããäžæã«èå¥ããããã®æ°å€ã§ãã ã°ã«ãŒãã¯ãUID ã§ã¯ãªãã ãŠãŒã¶ã® GID ã«åºã¥ããŠè³æºãžã®ã¢ã¯ã»ã¹ãå¶åŸ¡ããä»çµã¿ã§ãã ããã¯ãããçš®ã®èšå®ãã¡ã€ã«ã®ãµã€ãºã倧å¹
ã«å°ããããŸãã ãŠãŒã¶ã¯ãè€æ°ã®ã°ã«ãŒãã«æå±ã§ããŸãã 65535 ãã倧ã㪠GID ã¯ããœãããŠã§ã¢ã«åé¡ãåŒãèµ·ããå¯èœæ§ãããã®ã§ã 65535 以äžã® GID ã䜿ãããšãæšå¥šããŸãã
ãã°ã€ã³ã¯ã©ã¹::
ãã°ã€ã³ã¯ã©ã¹ã¯ã°ã«ãŒãã®ä»çµã¿ãæ¡åŒµãããã®ã§ã å¥ã
ã®ãŠãŒã¶ã«å¯ŸããŠã·ã¹ãã ã調æŽããæã«ã ãããªãæè»æ§ãæäŸããŸãããã°ã€ã³ã¯ã©ã¹ã®è©³çްã«ã€ããŠã¯ã <<users-limiting>> ã§èª¬æããŸãã
ãã¹ã¯ãŒãã®æå¹æé::
ããã©ã«ãã§ã¯ããã¹ã¯ãŒãã«æå¹æéã¯èšå®ãããŠããŸããã
ããããªããããã¹ã¯ãŒãã®æå¹æéããŠãŒã¶ããšã«èšå®ããäžéšãŸãã¯ãã¹ãŠã®ãŠãŒã¶ã«ãäžå®ã®æéããã£ãããã¹ã¯ãŒãã匷å¶çã«å€æŽãããããšãã§ããŸãã
ã¢ã«ãŠã³ã倱广é::
ããã©ã«ãã§ã¯ãFreeBSD ã¯ã¢ã«ãŠã³ãã倱å¹ãããŸããã ããšãã°åŠæ ¡ã§çåŸã®ã¢ã«ãŠã³ããããå Žåãªã©ã éãããæéã ãã®ã¢ã«ãŠã³ããäœæãããªãã ãã®ã¢ã«ãŠã³ãããã€å€±å¹ããã man:pw[8] ã䜿ã£ãŠæå®ã§ããŸãã æå¹æéãçµéãããã ãã®ã¢ã«ãŠã³ãã®ãã£ã¬ã¯ããªããã¡ã€ã«ã¯æ®ã£ãŠããŸããã ã·ã¹ãã ãžã®ãã°ã€ã³ã¯ã§ããªããªããŸãã
ãŠãŒã¶ã®æ°å::
FreeBSD ã§ã¯ãŠãŒã¶åã§ã¢ã«ãŠã³ããäžæã«èå¥ããŸããã å¿
ããããŠãŒã¶ã®æ¬åãåæ ãããã®ã§ã¯ãããŸããã ãã®æ
å ±ãã¢ã«ãŠã³ãã«é¢é£ä»ããããšãã§ããŸãã ãã®æ
å ±ã¯ãã³ã¡ã³ãã®ããã«ã空çœã倧æåãããã³ 8 å以äžã§èšèŒã§ããŸãã
ããŒã ãã£ã¬ã¯ããª::
ããŒã ãã£ã¬ã¯ããªã¯ãã·ã¹ãã äžã®ãã£ã¬ã¯ããªãžã®ãã«ãã¹ã§ãã
ããã¯ãŠãŒã¶ããã°ã€ã³ããæã«äœæ¥ãéå§ãããã£ã¬ã¯ããªã§ãã
äžè¬çãªæ
£ç¿ã¯ããã¹ãŠã®ãŠãŒã¶ã®ããŒã ãã£ã¬ã¯ããªã `/home/username` ã `/usr/home/username` ã®äžã«çœ®ãããšã§ãã
åãŠãŒã¶ã¯ãå人ã®ãã¡ã€ã«ããµããã£ã¬ã¯ããªãããŠãŒã¶ã®ããŒã ãã£ã¬ã¯ããªã«ä¿åããŸãã
ãŠãŒã¶ã·ã§ã«::
ã·ã§ã«ã¯ã ãŠãŒã¶ãã·ã¹ãã ãšå¯Ÿè©±ããããã©ã«ãã®ç°å¢ãæäŸããŸãã ãããããªçš®é¡ã®ã·ã§ã«ãããã çµéšãç©ãã ãŠãŒã¶ã¯ãããã奜ã¿ãããã ãããã¢ã«ãŠã³ãã®èšå®ã«åæ ã§ããŸãã
[[users-superuser]]
==== ã¹ãŒããŒãŠãŒã¶ã¢ã«ãŠã³ã
ã¹ãŒããŒãŠãŒã¶ã¢ã«ãŠã³ãã¯éåžž `root` ãšåŒã°ãã ã·ã¹ãã 管çãè¡ãªãããã«äœ¿ãããæš©éã«å¶éããããŸããã ãã®ããããã®ã¢ã«ãŠã³ãã¯ã¡ãŒã«ã®ãããšããã·ã¹ãã ã®èª¿æ»ã ããã°ã©ãã³ã°ãšãã£ãæ¥åžžçãªäœæ¥ãè¡ãªãããã«äœ¿ãããã¹ããã®ã§ã¯ãããŸããã
ãã®çç±ã¯ãã¹ãŒããŒãŠãŒã¶ãéåžžã®ãŠãŒã¶ã¢ã«ãŠã³ããšç°ãªãã æäœã«ãŸã£ããå¶éãåããªãããšã«ãããŸãã ãã®ããã¹ãŒããŒãŠãŒã¶ã¢ã«ãŠã³ãã§æäœãééãããšã ã·ã¹ãã ã«é倧ãªåœ±é¿ãäžããŠããŸãæããããã®ã§ãã ãŠãŒã¶ã¢ã«ãŠã³ãã§ã¯ã ä»®ã«æäœãééããŠãã·ã¹ãã ãå£ããŠããŸããããªããšã¯ã§ããªãããã«ãªã£ãŠããŸãã ãã®ããããŠãŒã¶ã¢ã«ãŠã³ãã§ãã°ã€ã³ãã é«ãæš©éãå¿
èŠãªã³ãã³ããå®è¡ãããšãã ãã¹ãŒããŒãŠãŒã¶ã«ãªãããšãæšå¥šãããŠããŸãã
ã¹ãŒããŒãŠãŒã¶ã§å®è¡ããã³ãã³ãã¯ãã€ã§ãã äºåãäžåãšç¢ºèªããŠãã ããã ãªããªãã¹ããŒã¹ãå€ãã£ãããæåãæ¬ ããŠãããããã ãã§ã åãè¿ãã®ã€ããªãããŒã¿ã®ç Žå£ã«ã€ãªããå¯èœæ§ãããããã§ãã
ã¹ãŒããŒãŠãŒã¶ã®æš©éãåŸãã«ã¯ãããŸããŸãªæ¹æ³ããããŸãã `root` ãŠãŒã¶ãšããŠãã°ã€ã³ããæ¹æ³ããããŸããã ããã¯ãŸã£ãããå§ãã§ããŸããã
ã¹ãŒããŒãŠãŒã¶ã®æš©éãæã«å
¥ããã«ã¯ããããã« man:su[1] ã䜿ã£ãŠäžããã `-` ãªãã·ã§ã³ãã€ããŠå®è¡ãããšã å®è¡ãããŠãŒã¶ã« root ãŠãŒã¶ã®ç°å¢ãèšå®ãããŸãã ãã®ã³ãã³ã㯠`wheel` ã°ã«ãŒãã«å
¥ã£ãŠããŠãŒã¶ã®ã¿ãå®è¡ã§ããä»ã®ãŠãŒã¶ã¯å®è¡åºæ¥ãŸããã ãŸããå®è¡æã«ã¯ `root` ãŠãŒã¶ã®ãã¹ã¯ãŒããå¿
èŠãšããŸãã
以äžã®äŸã§ã¯ã`make install` ãè¡ããšãã«ã¹ãŒããŒãŠãŒã¶ã®æš©éãå¿
èŠãªã®ã§ã ãã®ã³ãã³ããå®è¡ããæã ããŠãŒã¶ã¯ã¹ãŒããŒãŠãŒã¶ã«ãªããŸãã ã³ãã³ããå®è¡ãããããŠãŒã¶ã¯ `exit` ãå®è¡ããŠã¹ãŒããŒãŠãŒã¶ãããã°ã¢ãŠããã éåžžã®ãŠãŒã¶ã¢ã«ãŠã³ãã®æš©éã«æ»ããŸãã
.ã¹ãŒããŒãŠãŒã¶æš©éã§ããã°ã©ã ãã€ã³ã¹ããŒã«ãã
[example]
====
[source,shell]
....
% configure
% make
% su -
Password:
# make install
# exit
%
....
====
1 人ã®ç®¡çè
ãäžå°ã®ãã·ã³ã ãããã¯å°èŠæš¡ãªãããã¯ãŒã¯ã管çããå Žåã«ã¯ã man:su[1] ã®ãã¬ãŒã ã¯ãŒã¯ã¯ããŸãæ©èœããã§ãããã ãã®ä»£ãããšãªãã®ã¯ã package:security/sudo[] package ãŸã㯠port ã§ããããã¯ãã°æ©èœãã ã¹ãŒããŒãŠãŒã¶ã®æš©éã§å®è¡ã§ãããŠãŒã¶ãã³ãã³ããèšå®ã§ããŸãã
[[users-modifying]]
=== ã¢ã«ãŠã³ãæ
å ±ã®ç®¡ç
FreeBSD ã¯ããŠãŒã¶ã¢ã«ãŠã³ããæäœããããã«ããŸããŸãªã³ãã³ããçšæããŠããŸãã
ãã£ãšãäžè¬çãªã³ãã³ãã <<users-modifying-utilities>> ã«ãŸãšããããŠããŸãã
ãã®åŸã§ãåã³ãã³ãã«ã€ããŠè©³ãã䜿çšäŸã瀺ããŸãã
åãŠãŒãã£ãªãã£ã®è©³çްã䜿çšäŸã«ã€ããŠã¯ããã¥ã¢ã«ããŒãžãåç
§ããŠãã ããã
[[users-modifying-utilities]]
.ãŠãŒã¶ã¢ã«ãŠã³ãã管çããããã®ãŠãŒãã£ãã£
[cols="25h,~"]
|===
| ã³ãã³ã
| èŠçŽ
|man:adduser[8]
|ã³ãã³ãã©ã€ã³ãããŠãŒã¶ã远å ããããã®æšå¥šã¢ããªã±ãŒã·ã§ã³
|man:rmuser[8]
|ã³ãã³ãã©ã€ã³ãããŠãŒã¶ãåé€ããããã®æšå¥šã¢ããªã±ãŒã·ã§ã³
|man:chpass[1]
|ãŠãŒã¶ããŒã¿ããŒã¹ã®æ
å ±ã倿Žããããã®æè»ãªããŒã«
|man:passwd[1]
|ãŠãŒã¶ã®ãã¹ã¯ãŒãã倿Žããã³ãã³ãã©ã€ã³ããŒã«
|man:pw[8]
|ãŠãŒã¶ã¢ã«ãŠã³ãã®ããããç®æã倿Žãã匷åã§æè»ãªããŒã«
|man:bsdconfig[8]
|ã·ã¹ãã ã®èšå®ã®ããã®ãŠãŒãã£ãªãã£ãã¢ã«ãŠã³ã管çã«å¯Ÿå¿ããŠããŸãã
|===
[[users-adduser]]
==== ãŠãŒã¶ã®è¿œå
æ°ãããŠãŒã¶ã®ç»é²ã«æšå¥šãããããã°ã©ã 㯠man:adduser[8] ã§ãã
ãŠãŒã¶ã远å ãããšããã®ããã°ã©ã ã¯ã`/etc/passwd` ãš `/etc/group` ãèªåçã«æŽæ°ããŸãã
ãŸããæ°èŠãŠãŒã¶ã®ããŒã ãã£ã¬ã¯ããªãäœæãã`/usr/share/skel` ãããããã©ã«ãã§äœ¿çšãããèšå®ãã¡ã€ã«ãã³ããŒããŸãã
ãŸããæ°ããäœæããããŠãŒã¶ã«å¯ŸããŠããŠã§ã«ã«ã ã¡ãã»ãŒãžãã¡ãŒã«ã§éä¿¡ããããšãå¯èœã§ãã
ãã®ãŠãŒãã£ãªãã£ã¯ãã¹ãŒããŒãŠãŒã¶æš©éã§å®è¡ããå¿
èŠããããŸãã
man:adduser[8] ã¯ãæ°ãããŠãŒã¶ã¢ã«ãŠã³ãã察話çã«æ®µéçã«äœæãããŠãŒãã£ãªãã£ã§ãã
<<users-modifying-adduser>> ã§ç€ºãããŠããããã«ãå¿
èŠãªæ
å ±ãå
¥åããããæ¬åŒ§å
ã«ç€ºãããŠããããã©ã«ãã®å€ã kbd:[Return] ãæŒããŠæ¿èªããŠãã ããã
ãã®äŸã§ã¯ããŠãŒã¶ã¯ man:su[1] ã«ãã£ãŠã¹ãŒããŠãŒã¶æš©éãååŸããããšãå¯èœãšãªã `wheel` ã°ã«ãŒãã«æå±ããŸãã
æäœãçµäºãããšããŠãŒãã£ãªãã£ã¯å¥ã®ãŠãŒã¶ã远å ããããçµäºããããå°ããŠããŸãã
[[users-modifying-adduser]]
.FreeBSD ã«ããããŠãŒã¶ã®è¿œå
[example]
====
[source,shell]
....
# adduser
Username: jru
Full name: J. Random User
Uid (Leave empty for default):
Login group [jru]:
Login group is jru. Invite jru into other groups? []: wheel
Login class [default]:
Shell (sh csh tcsh zsh nologin) [sh]: zsh
Home directory [/home/jru]:
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]:
Use an empty password? (yes/no) [no]:
Use a random password? (yes/no) [no]:
Enter password:
Enter password again:
Lock out the account after creation? [no]:
Username : jru
Password : ****
Full Name : J. Random User
Uid : 1001
Class :
Groups : jru wheel
Home : /home/jru
Shell : /usr/local/bin/zsh
Locked : no
OK? (yes/no): yes
adduser: INFO: Successfully added (jru) to the user database.
Add another user? (yes/no): no
Goodbye!
....
====
[NOTE]
====
å
¥åãããã¹ã¯ãŒãã¯ç»é¢ã«è¡šç€ºãããŸããã®ã§ã ãŠãŒã¶ã¢ã«ãŠã³ããäœæããéã«ã¯ã ãã¹ã¯ãŒããééããŠå
¥åããŠããŸããªãããã«æ³šæããŠãã ããã
====
[[users-rmuser]]
==== ãŠãŒã¶ã®åé€
ã·ã¹ãã ããå®å
šã«ãŠãŒã¶ãåé€ããã«ã¯ãã¹ãŒããŒãŠãŒã¶æš©éã§ man:rmuser[8] ãå®è¡ããŠãã ããã
ãã®ã³ãã³ãã¯ãæ¬¡ã®æé ãå®è¡ããŸãã
[.procedure]
====
. æå®ããããŠãŒã¶ã® man:crontab[1] ãšã³ããªãååšããå Žåã«ã¯åé€ã
. æå®ããããŠãŒã¶ã® man:at[1] ãžã§ãããã¹ãŠåé€ã
. æå®ããããŠãŒã¶ãææãããã¹ãŠã®ããã»ã¹ã«å¯Ÿã㊠SIGKILL ã·ã°ãã«ãéä¿¡ã
. ããŒã«ã«ãã¹ã¯ãŒããã¡ã€ã«ããã æå®ããããŠãŒã¶ã®ãšã³ããªãåé€ã
. æå®ããããŠãŒã¶ã®ããŒã ãã£ã¬ã¯ããªãåé€ (ãã£ã¬ã¯ããªã®ææè
ãæå®ããããŠãŒã¶ã®ãã®ã ã£ãå Žå)ãå®éã®ããŒã ãã£ã¬ã¯ããªãžã®ã·ã³ããªãã¯ãªã³ã¯ã®åé€ãå«ãŸããŸãã
. `/var/mail` ãããæå®ããããŠãŒã¶ã®å°çã¡ãŒã«ãã¡ã€ã«ãåé€ã
. `/tmp`, `/var/tmp`, ããã³ `/var/tmp/vi.recover` ãããæå®ããããŠãŒã¶ã®ææãããã¡ã€ã«ãåé€ã
. `/etc/group` ã«ãã ãã¹ãŠã®ã°ã«ãŒããããæå®ããããŠãŒã¶ãåé€ããŸã
(æå®ããããŠãŒã¶ãšåãååã®ã°ã«ãŒãã§ããã®ãŠãŒã¶ãåé€ããããšç©ºã®ã°ã«ãŒããšãªãå Žåã¯ããã®ã°ã«ãŒãèªäœãåé€ãããŸãã
ãã㯠man:adduser[8] ã«ãã£ãŠãŠãŒã¶ããšã«äœæãããããŠããŒã¯ãªã°ã«ãŒãã«å¯Ÿå¿ãããã®ã§ã)ã
. æå®ããããŠãŒã¶ãææãããã¹ãŠã®ã¡ãã»ãŒãžãã¥ãŒãå
±éã¡ã¢ãªã»ã°ã¡ã³ãããã³ã»ããã©ãåé€
====
ã¹ãŒããŠãŒã¶ã¢ã«ãŠã³ãã®åé€ã« man:rmuser[8] ãå©çšããããšã¯ã§ããŸããã ã¹ãŒããŠãŒã¶ã¢ã«ãŠã³ãã®åé€ã¯ã»ãšãã©ãã¹ãŠã®å Žåã å€§èŠæš¡ãªã·ã¹ãã ã®ç Žå£ãæå³ããããã§ãã
ããã©ã«ãã§ã¯ã以äžã®äŸã®ãããªå¯Ÿè©±ã¢ãŒãã䜿ãããŸãã
.`rmuser` ã«ãã察話çãªã¢ã«ãŠã³ãã®åé€
[example]
====
[source,shell]
....
# rmuser jru
Matching password entry:
jru:*:1001:1001::0:0:J. Random User:/home/jru:/usr/local/bin/zsh
Is this the entry you wish to remove? y
Remove user's home directory (/home/jru)? y
Removing user (jru): mailspool home passwd.
....
====
[[users-chpass]]
==== ãŠãŒã¶æ
å ±ã®å€æŽ
ãã¹ãŠã®ãŠãŒã¶ã¯ãman:chpass[1] ãçšããŠããã©ã«ãã·ã§ã«ããŠãŒã¶ã¢ã«ãŠã³ãã«é¢é£ããå人æ
å ±ã倿Žã§ããŸãã
ã¹ãŒããŠãŒã¶æš©éã«éãããã®ãŠãŒãã£ãªãã£ãçšããŠä»ã®ãŠãŒã¶ã®ã¢ã«ãŠã³ãæ
å ±ã倿Žã§ããŸãã
ãŠãŒã¶åã®ä»ã«ãªãã·ã§ã³ãæå®ããªããšã man:chpass[1] ã¯ãŠãŒã¶æ
å ±ãç·šéãããšãã£ã¿ã衚瀺ããŸãã ãŠãŒã¶ããšãã£ã¿ãçµäºãããšã ãŠãŒã¶ããŒã¿ããŒã¹ãæ°ããæ
å ±ã«æŽæ°ãããŸãã
[NOTE]
====
ã¹ãŒããŠãŒã¶æš©é以å€ã§ãã®ãŠãŒãã£ãªãã£ãå®è¡ããå Žåã¯ã ãšãã£ã¿ãæããåŸã«ãŠãŒã¶ã®ãã¹ã¯ãŒããèãããŸãã
====
<<users-modifying-chpass-su>> ã§ã¯ãã¹ãŒããŒãŠãŒã¶ã¯ `chpass jru` ãšå
¥åãããã®ãŠãŒã¶ã«å¯ŸããŠå€æŽå¯èœãªãã£ãŒã«ãã衚瀺ãããŠããŸãã
`jru` ããã®ã³ãã³ããå®è¡ãããšãæåŸã® 6 ãã£ãŒã«ãã®ã¿ã衚瀺ããç·šéãå¯èœã§ãã
ãã®å Žåã«ã€ããŠã¯ã<<users-modifying-chpass-ru>> ã§ç€ºãããŠããŸãã
[[users-modifying-chpass-su]]
.ã¹ãŒããŠãŒã¶ã«ãã `chpass` ã®äœ¿çš
[example]
====
[source,shell]
....
#Changing user database information for jru.
Login: jru
Password: *
Uid [#]: 1001
Gid [# or name]: 1001
Change [month day year]:
Expire [month day year]:
Class:
Home directory: /home/jru
Shell: /usr/local/bin/zsh
Full Name: J. Random User
Office Location:
Office Phone:
Home Phone:
Other information:
....
====
[[users-modifying-chpass-ru]]
.éåžžã®ãŠãŒã¶ã«ãã `chpass` ã®äœ¿çš
[example]
====
[source,shell]
....
#Changing user database information for jru.
Shell: /usr/local/bin/zsh
Full Name: J. Random User
Office Location:
Office Phone:
Home Phone:
Other information:
....
====
[NOTE]
====
man:chfn[1] ããã³ man:chsh[1] ã³ãã³ãã¯ãããããman:chpass[1] ãžã®ãªã³ã¯ã§ãã
ãŸããman:ypchpass[1], man:ypchfn[1] ããã³ man:ypchsh[1] ãåæ§ã§ãã
NIS ã®ãµããŒãã¯èªåçã«è¡ãªãããŸãã®ã ã³ãã³ãã®å
é ã« `yp` ãã€ããå¿
èŠã¯ãããŸããã
NIS ã®èšå®ã«ã€ããŠã¯ããããã¯ãŒã¯ãµãŒãã®ç« ã§èª¬æãããŠããŸãã
====
[[users-passwd]]
==== ãŠãŒã¶ã®ãã¹ã¯ãŒãã®å€æŽ
ãããªããŠãŒã¶ã man:passwd[1] ã䜿ã£ãŠç°¡åã«èªèº«ã®ãã¹ã¯ãŒãã倿Žã§ããŸãã
誀ã£ãŠããŸãã¯äžæ£ãªãã¹ã¯ãŒãã®å€æŽãé¿ãããããæ°ãããã¹ã¯ãŒããèšå®ããåã«ãããšã®ãã¹ã¯ãŒãã®å
¥åãæ±ããããŸãã
.èªåã®ãã¹ã¯ãŒãã®å€æŽ
[example]
====
[source,shell]
....
% passwd
Changing local password for jru.
Old password:
New password:
Retype new password:
passwd: updating the database...
passwd: done
....
====
ã¹ãŒããŒãŠãŒã¶ã¯ãman:passwd[1] ããŠãŒã¶åãæå®ããŠå®è¡ããããšã«ããããããªããŠãŒã¶ã®ãã¹ã¯ãŒãã倿Žã§ããŸãã
ã¹ãŒããŒãŠãŒã¶ã®æš©éã§ãã®ãŠãŒãã£ãªãã£ãå®è¡ããéã«ã¯ãããšã®ãã¹ã¯ãŒããå
¥åããå¿
èŠã¯ãããŸããã
ãã®ããããŠãŒã¶ãå
ã®ãã¹ã¯ãŒããå¿ããŠããŸã£ãŠãããã¹ã¯ãŒãã倿Žã§ããŸãã
.ã¹ãŒããŒãŠãŒã¶æš©éã§ã®ä»ã®ãŠãŒã¶ã®ãã¹ã¯ãŒã倿Ž
[example]
====
[source,shell]
....
# passwd jru
Changing local password for jru.
New password:
Retype new password:
passwd: updating the database...
passwd: done
....
====
[NOTE]
====
man:chpass[1] åæ§ãman:yppasswd[1] ã¯ã man:passwd[1] ãžã®ãªã³ã¯ã«ãªã£ãŠããŸãã®ã§ã NIS ã¯ã©ã¡ãã®ã³ãã³ãã§ãåäœããŸãã
====
[[users-pw]]
==== ã·ã¹ãã ãŠãŒã¶ããã³ã°ã«ãŒãã®äœæãåé€ã倿Žããã³è¡šç€º
man:pw[8] ã¯ããŠãŒã¶ãã°ã«ãŒãã®äœæãåé€ã倿Žããã³è¡šç€ºãè¡ãªãã³ãã³ãã©ã€ã³ã®ãŠãŒãã£ãªãã£ã§ãã
ããã¯ãã·ã¹ãã ãŠãŒã¶ãã¡ã€ã«ãã·ã¹ãã ã°ã«ãŒããã¡ã€ã«ã®ããã³ããšã³ããšããŠåããŸãã
man:pw[8] ã¯ãšãŠã匷åãªäžé£ã®ã³ãã³ãã©ã€ã³ãªãã·ã§ã³ãæããŠãããã·ã§ã«ã¹ã¯ãªããã§äœ¿ãã®ã«åããŠããŸãããæ°ãããŠãŒã¶ã¯ããã®ç« ã§ç޹ä»ãããŠããä»ã®ã³ãã³ãã«æ¯ã¹ãŠé£ãããšæãããããããŸããã
[[users-groups]]
=== ã°ã«ãŒãã®ç®¡ç
ã°ã«ãŒããšã¯ããŠãŒã¶ãçŸ
åãããã®ã§ãã ã°ã«ãŒãã¯ãã°ã«ãŒãåãš GID ã§èå¥ãããŸãã FreeBSD ã§ã¯ã ããããã»ã¹ãäœãããã®ãèš±å¯ãããã©ãããã«ãŒãã«ã倿ããéã«ã ããã»ã¹ã® UID ãšãã®ãŠãŒã¶ãæå±ããã°ã«ãŒãã®äžèЧãå©çšããŸãã ã»ãšãã©ã®å ŽåããŠãŒã¶ãããã¯ããã»ã¹ã® GID ã¯äžèŠ§ã®æåã®ã°ã«ãŒããæããŠããŸãã
ã°ã«ãŒãåãã GID ãžã®åå㯠`/etc/group` ã«ãããŸãã
ããã¯ãã³ãã³ã§åºåããã 4 é
ç®ãããªãããã¹ããã¡ã€ã«ã§ãã
1 çªç®ã®é
ç®ã¯ã°ã«ãŒãåã2 çªç®ã¯æå·åããããã¹ã¯ãŒãã3 çªç®ã GIDã4 çªç®ãã«ã³ãã§åºåãããã¡ã³ãã®äžèЧã§ãã
ææ³ã«ã€ããŠã®å®å
šãªèª¬æã¯ãman:group[5] ãã芧ãã ããã
ã¹ãŒããŒãŠãŒã¶ã¯ã`/etc/group` ãããã¹ããšãã£ã¿ã§ç·šéã§ããŸãã
ãã ããããããééããèŠã€ããŠããã man:vigr[8] ãçšããŠã°ã«ãŒããã¡ã€ã«ãç·šéããããšã奜ãŸããã§ãã
ãããã¯ãman:pw[8] ã䜿ã£ãŠã°ã«ãŒãã®è¿œå ãç·šéãã§ããŸãã
ããšãã°ã`teamtwo` ãšããã°ã«ãŒãã远å ããŠããã®ååšã確èªããã«ã¯ã次ã®ããã«äœ¿ããŸãã
[WARNING]
====
operator ã°ã«ãŒãã䜿ãæã«ã¯ãæå³ããªãã¹ãŒããŒãŠãŒã¶ãžã®ã¢ã¯ã»ã¹æš©ãäžããå¯èœæ§ãããããæ³šæãå¿
èŠã§ãã
ã·ã£ããããŠã³ããªããŒãããã³ãã®ã°ã«ãŒããææãã `/dev` ã®ãã¹ãŠã«ã¢ã¯ã»ã¹ã§ãããšãã£ãããšãå¯èœã«ãªã£ãŠããŸããŸãã
====
.man:pw[8] ã«ããã°ã«ãŒãã®è¿œå
[example]
====
[source,shell]
....
# pw groupadd teamtwo
# pw groupshow teamtwo
teamtwo:*:1100:
....
====
ãã®äŸã§ã¯ã`1100` ãšããçªå·ã¯ã `teamtwo` ã® GID ã§ãã ãã®æç¹ã§ã¯ã`teamtwo` ã«ã¡ã³ãã¯ããŸããã 以äžã®ã³ãã³ãã¯ã `jru` ã `teamtwo` ã®ã¡ã³ãã«è¿œå ããŸãã
.man:pw[8] ã«ããæ°ããã°ã«ãŒãã«ã¡ã³ãã远å ãã
[example]
====
[source,shell]
....
# pw groupmod teamtwo -M jru
# pw groupshow teamtwo
teamtwo:*:1100:jru
....
====
`-M` ã®åŒæ°ã¯ãã«ã³ãã§åºåãããæ°ãã (空ã®) ã°ã«ãŒãã«è¿œå ãããããã¯ååšããã°ã«ãŒãã®ã¡ã³ãã眮ãæãããŠãŒã¶ã®äžèЧã§ãã
ãŠãŒã¶ã«ãšã£ãŠã¯ããã®ã°ã«ãŒãã®ã¡ã³ããŒã·ããã¯ãã¹ã¯ãŒããã¡ã€ã«ã«èšèŒãããŠãããã©ã€ããªã®ã°ã«ãŒããšã¯ç°ãªããŸãã
man:pw[8] ã® `groupshow` ã³ãã³ãã䜿ã£ãæã¯ããã®ãŠãŒã¶ã¯ã°ã«ãŒãã®äžå¡ãšããŠè¡šç€ºãããŸããããman:id[1] ãªã©ã®ããŒã«ã䜿ã£ãŠæ
å ±ãåãåãããã°ããã®æ
å ±ãåŒãåºããŸãã
ãŠãŒã¶ãã°ã«ãŒãã«è¿œå ãããéã«ãman:pw[8] 㯠`/etc/group` ããæ±ããã `/etc/passwd` ãã远å ã®ããŒã¿ãèªãã ãã¯ããŸããã
.man:pw[8] ã«ããã°ã«ãŒããžã®ãŠãŒã¶è¿œå
[example]
====
[source,shell]
....
# pw groupmod teamtwo -m db
# pw groupshow teamtwo
teamtwo:*:1100:jru,db
....
====
ãã®äŸã§ã¯ã`-m` ã®åŒæ°ã¯ã ã«ã³ãã§åºåãããã°ã«ãŒãã«è¿œå ãããŠãŒã¶ã®äžèЧã§ãã
åã®äŸãšç°ãªãããããã®ãŠãŒã¶ã¯ã°ã«ãŒãã«è¿œå ãããæ¢åã®ã°ã«ãŒãã®ãŠãŒã¶ã眮ãæããããšã¯ãããŸããã
.ã°ã«ãŒãã«æå±ããŠãããŠãŒã¶ã調ã¹ãããã® man:id[1] ã®äœ¿ãæ¹
[example]
====
[source,shell]
....
% id jru
uid=1001(jru) gid=1001(jru) groups=1001(jru), 1100(teamtwo)
....
====
ãã®äŸã§ã¯ã`jru` 㯠`jru` ã°ã«ãŒããš `teamtwo` ã°ã«ãŒãã®ã¡ã³ãã§ãã
ãã®ã³ãã³ãã `/etc/group` ã®ãã©ãŒãããã®è©³çްã«ã€ããŠã¯ã man:pw[8] ããã³ man:group[5] ãã芧ãã ããã
[[permissions]]
== èš±å¯å±æ§
FreeBSD ã§ã¯ããã¹ãŠã®ãã¡ã€ã«ããã³ãã£ã¬ã¯ããªã¯äžçµã®èš±å¯å±æ§ãæã£ãŠããŸãã
ãããã®èš±å¯å±æ§ã¯ããŠãŒãã£ãªãã£ã䜿ã£ãŠç¢ºèªããã倿Žã§ããŸãã
èš±å¯å±æ§ãã©ã®ããã«æ©èœããããç¥ãããšã§ããŠãŒã¶ãå¿
èŠãšãããã¡ã€ã«ã«ã¢ã¯ã»ã¹ã§ãããã©ããããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã䜿çšããŠãããã¡ã€ã«ãä»ã®ãŠãŒã¶ãææãããã¡ã€ã«ã«ã¢ã¯ã»ã¹ã§ããªãããšãçè§£ã§ããããã«ãªããŸãã
ãã®ç¯ã§ã¯ãFreeBSD ã§äœ¿çšãããäŒçµ±ç㪠UNIX(R) ã®èš±å¯å±æ§ã«ã€ããŠèª¬æããŸãã
ãã现ãããã¡ã€ã«ã·ã¹ãã ã®ã¢ã¯ã»ã¹å¶åŸ¡ã«é¢ããŠã¯ãcrossref:security[fs-acl,ã¢ã¯ã»ã¹å¶åŸ¡ãªã¹ã] ãã芧ãã ããã
UNIX(R) ã§ã¯ãåºæ¬ã®èš±å¯å±æ§ã¯ 3 ã€ã®ã¢ã¯ã»ã¹ã¿ã€ã (èªã¿ã»æžãã»å®è¡) ã䜿ã£ãŠå²ãåœãŠãããŸãã
ãããã®ã¢ã¯ã»ã¹ã¿ã€ãã䜿ã£ãŠããã¡ã€ã«ã®ææè
(owner)ãã°ã«ãŒã (group) ãã®ä» (others) ã«å¯Ÿãããã¡ã€ã«ã¢ã¯ã»ã¹ãèšå®ããŸãã
èªã¿ãæžããå®è¡ã«é¢ããèš±å¯å±æ§ã¯ããããã `r`, `w`, ããã³ `x` æåã§è¡šãããŸãã
ãããã®èš±å¯å±æ§ã衚ãéã«ããªã³ããªã (`0`) ã«ãã 2 鲿°è¡šèšã䜿ãããŸãã
æ°åã§è¡šçŸããå Žåã«ã¯ã `r` 㯠`4`ã`w` 㯠`2` ãã㊠`x` 㯠`1` ã®å€ãæã€ããã`rwx` ã®é çªã§è¡šãããŸãã
以äžã¯ãèš±å¯å±æ§ã衚ãéã«çšããããæ°åããã³ã¢ã«ãã¡ãããããŸãšãã衚ã§ãã
"ãã£ã¬ã¯ããªã®è¡šç€º" ã«ã©ã ã§ã¯ã`-` ã¯èš±å¯å±æ§ããªãã«èšå®ãããŠããããšã衚ããŸãã
.UNIX(R) èš±å¯å±æ§
[cols="1,1,1", frame="none", options="header"]
|===
| å€
| èš±å¯å±æ§
| ãã£ã¬ã¯ããªã®è¡šç€º
|0
|èªã¿èŸŒã¿äžå¯ãæžã蟌ã¿äžå¯ãå®è¡äžå¯
|`---`
|1
|èªã¿èŸŒã¿äžå¯ãæžã蟌ã¿äžå¯ãå®è¡å¯èœ
|`--x`
|2
|èªã¿èŸŒã¿äžå¯ãæžã蟌ã¿å¯èœãå®è¡äžå¯
|`-w-`
|3
|èªã¿èŸŒã¿äžå¯ãæžã蟌ã¿å¯èœãå®è¡å¯èœ
|`-wx`
|4
|èªã¿èŸŒã¿å¯èœãæžã蟌ã¿äžå¯ãå®è¡äžå¯
|`r--`
|5
|èªã¿èŸŒã¿å¯èœãæžã蟌ã¿äžå¯ãå®è¡å¯èœ
|`r-x`
|6
|èªã¿èŸŒã¿å¯èœãæžã蟌ã¿å¯èœãå®è¡äžå¯
|`rw-`
|7
|èªã¿èŸŒã¿å¯èœãæžã蟌ã¿å¯èœãå®è¡å¯èœ
|`rwx`
|===
ã³ãã³ãã©ã€ã³åŒæ° `-l` ãšãšãã« man:ls[1] ã䜿ããšã詳现ãªãã£ã¬ã¯ããªãªã¹ããèŠãããšãã§ãããã¡ã€ã«ã®ææè
ãã°ã«ãŒãããã®ä»ãžã®èš±å¯å±æ§ãç€ºãæ¬ãããã®ãããããŸãã
äŸãã°ã`ls -l` ãå®è¡ããŠã é©åœãªãã£ã¬ã¯ããªã衚瀺ããããšä»¥äžã®ããã«ãªããŸãã
[source,shell]
....
% ls -l
total 530
-rw-r--r-- 1 root wheel 512 Sep 5 12:31 myfile
-rw-r--r-- 1 root wheel 512 Sep 5 12:31 otherfile
-rw-r--r-- 1 root wheel 7680 Sep 5 12:31 email.txt
....
`myfile` ãå«ãŸããŠããè¡ã®äžçªç®ã®åã®æåã® `(äžçªå·Šã®)` æåã¯ããã®ãã¡ã€ã«ãæ®éã®ãã¡ã€ã«ãªã®ãããã£ã¬ã¯ããªãªã®ãããã£ã©ã¯ã¿åã®ããã€ã¹ç¹æ®ãã¡ã€ã«ãªã®ãããœã±ãããªã®ãããã®ä»ã®ç¹æ®ãªç䌌ãã¡ã€ã«ããã€ã¹ãªã®ããšãã£ãçš®é¡ã瀺ãç¹å¥ãªæåã§ãã
ãã®äŸã«ãããŠã`-` ãšããæåã¯ãæ®éã®ãã¡ã€ã«ã§ããããšã瀺ããŸãã
ãã®æ¬¡ã«æ¥ã `rw-` ãšæžããã 3 æåã¯ããã®ãã¡ã€ã«ã®ææè
ã«èš±å¯ãäžãããã®ã§ãã
ãã®æ¬¡ã® `r--` ã® 3 æåã¯ããã®ãã¡ã€ã«ãæå±ããŠããã°ã«ãŒãã«èš±å¯ãäžããŸãã
æåŸã® `r--` ã® 3 æåã¯ã ã·ã¹ãã ã«ååšãããã®ä»ã®ãŠãŒã¶ã«èš±å¯ãäžããŸãã
"-" ã¯èš±å¯ãäžããããŠããªãããšã瀺ããŸãã
ãã®äŸã§ã¯ããã¡ã€ã«ã®ææè
ã¯ãã®ãã¡ã€ã«ãèªã¿æžãã§ãããã¡ã€ã«ã®æå±ããŠããã°ã«ãŒãã«å±ãããŠãŒã¶ã¯ãã¡ã€ã«ãèªãããšã ãã§ãããã®ã©ã¡ãã§ããªããŠãŒã¶ã¯ã ãã®ãã¡ã€ã«ãèªãã ãã§ããããã«èš±å¯å±æ§ãäžããããŠããŸãã
äžã®è¡šã«ããã°ããã®ãã¡ã€ã«ã«äžããããèš±å¯å±æ§ã¯ `644` ãšãªããŸãã
ããã§åæ°åã¯ããã®ãã¡ã€ã«ã®èš±å¯å±æ§ã® 3 ã€ã®éšåã衚ããŠããŸãã
ããã€ã¹ã®å Žåã®èš±å¯å±æ§ã¯ã©ã®ããã«ã³ã³ãããŒã«ãããŠããã®ã§ãããã?
FreeBSD ã¯ã倧éšåã®ããŒããŠã§ã¢ããã¡ã€ã«ãšããŠåãæ±ããŸãã
ãã®ãããããã°ã©ã ããã¯æ®éã®ãã¡ã€ã«ãšãŸã£ããåãããã«ãªãŒãã³ãã ããŒã¿ã®èªã¿æžããã§ããããã«ãªã£ãŠããŸãã
ãããã®ããã€ã¹ç¹æ®ãã¡ã€ã«ã¯ `/dev/` ã«åããããŠããŸãã
ãã£ã¬ã¯ããªããŸãããã¡ã€ã«ãšåæ§ã«æ±ãããŸãã
ããã¯èªã¿èŸŒã¿/æžã蟌ã¿/å®è¡ã®èš±å¯å±æ§ãæã¡ãŸãã
ãã£ã¬ã¯ããªã®å®è¡ãããã¯ãã¡ã€ã«ã®ãããšã¯å°ãéã£ãæå³ãæã¡ãŸãã
ãã£ã¬ã¯ããªãå®è¡å¯èœã«ãªã£ãŠãããšããman:cd[1] ã䜿ã£ãŠãã®ãã£ã¬ã¯ããªã«ç§»åããããšãã§ããŸãã
ããã¯ããã®ãã£ã¬ã¯ããªã«ãããã¡ã€ã«ã«ã¢ã¯ã»ã¹ã§ããããšãæå³ããŠããŸã (ãã¡ã€ã«èªäœã®èš±å¯å±æ§ã«ãããŸã)ã
ãã£ã¬ã¯ããªã®äžã®äžèЧã衚瀺ããã«ã¯ããã®ãã£ã¬ã¯ããªã«èªã¿èŸŒã¿å±æ§ãèšå®ãããŠããªããã°ãªããŸããã
ååãåãã£ãŠãããã¡ã€ã«ãåé€ããã«ã¯ããã®ãã¡ã€ã«ãå«ãŸããŠãããã£ã¬ã¯ããªã« æžã蟌ã¿å±æ§ _ãš_ å®è¡å±æ§ ã®äž¡æ¹ãå¿
èŠã§ãã
ãã®ä»ã«ãèš±å¯å±æ§ãããã¯ãããŸããããããã setuid ãã€ããªã sticky ãã£ã¬ã¯ããªãªã©ãšãã£ãç¹æ®ãªç¶æ³ã§äœ¿ãããŸãã
ãã¡ã€ã«ã®èš±å¯å±æ§ãã®ãã®ã«ã€ããŠããŸãããããã®èšå®æ¹æ³ã«é¢ãã詳ããæ
å ±ã¯ã man:chmod[1] ããã¥ã¢ã«ããŒãžãåç
§ããŠãã ããã
=== ã·ã³ããªãã¯è¡šèš
ã·ã³ããªãã¯è¡šèšãšåŒã°ããèš±å¯å±æ§ãè¡šãæ¹æ³ã§ã¯ããã¡ã€ã«ããã£ã¬ã¯ããªã®èš±å¯å±æ§ãã8 鲿°ã§ã¯ãªãèšå·ãçšããŠèšå®ããŸãã
ã·ã³ããªãã¯è¡šèšã«ããèš±å¯å±æ§ãè¡šãæ¹æ³ã§ã¯ã(who), (action), (permissions) ãšããæžåŒãçšããããŸãã
å©çšã§ããå€ã¯ä»¥äžã®éãã§ãã
[.informaltable]
[cols="1,1,1", frame="none", options="header"]
|===
| ãªãã·ã§ã³
| æå
| æå³
|(who)
|u
|ãŠãŒã¶
|(who)
|g
|ãã¡ã€ã«ãææããŠããã°ã«ãŒã
|(who)
|o
|ãã®ä»
|(who)
|a
|ãã¹ãŠ ("world")
|(action)
|+
|èš±å¯å±æ§ãäžãã
|(action)
|-
|èš±å¯å±æ§ãåãé€ã
|(action)
|=
|èš±å¯å±æ§ãæå®ãããã®ã«ãã
|(permissions)
|r
|èªã¿èŸŒã¿
|(permissions)
|w
|æžã蟌ã¿
|(permissions)
|x
|å®è¡
|(permissions)
|t
|Sticky ããã
|(permissions)
|s
|UID ãŸã㯠GID ãèšå®ãã
|===
ãããã®å€ã¯ããããŸã§ãšåæ§ã« man:chmod[1] ã§çšããŸãããæ°åã§ã¯ãªãæåã§æå®ããŸãã
ããšãã°ã_FILE_ ã«å¯Ÿã㊠_FILE_ ã®ã°ã«ãŒãã¡ã³ããŒããã³èªå以å€ã®ãã¹ãŠã®ãŠãŒã¶ããã¢ã¯ã»ã¹ãäžååãä»ããããªãããšãããšãã«ã¯ä»¥äžã®ã³ãã³ããå®è¡ããŠãã ããã
[source,shell]
....
% chmod go= FILE
....
ã«ã³ãåºåãã§èšå®ããããšã§ããã¡ã€ã«ã®å±æ§ãäžåºŠã« 2 ã€ä»¥äžå€æŽã§ããŸãã
以äžã®äŸã§ã¯ã_FILE_ ã«å¯ŸããŠèªå以å€ã®ãŠãŒã¶ããæžã蟌ã¿ã®æš©éãåãäžãããããã«ãã¹ãŠã®ãŠãŒã¶ã _FILE_ ãå®è¡ã§ããããã«ããŸãã
[source,shell]
....
% chmod go-w,a+x FILE
....
=== FreeBSD ã®ãã¡ã€ã«ãã©ã°
ãã¡ã€ã«ã®èš±å¯å±æ§ã«å ããFreeBSD ã§ã¯ "ãã¡ã€ã«ãã©ã°" ã䜿ããŸãã
ããã¯ãã¡ã€ã«ã«ã»ãã¥ãªãã£ã管çäžã®å±æ§ã远å ãããã®ã§ããããã£ã¬ã¯ããªã«ã¯è¿œå ããŸããã
ãã¡ã€ã«ãã©ã°ã«ããã`root` ãŠãŒã¶ã§ãã誀ã£ãŠãã¡ã€ã«ãæ¶å»ã倿ŽããŠããŸãããšãé²ãããšãã§ããŸãã
ãã¡ã€ã«ãã©ã°ã¯ãman:chflags[1] ã䜿ã£ãŠãç°¡åãªã€ã³ã¿ãã§ãŒã¹ã§èšå®ã§ããŸãã
äŸãã°ã`file1` ãšãããã¡ã€ã«ã«ã·ã¹ãã ã¬ãã«ã§æ¶å»äžå¯ã®ãã©ã°ãèšå®ããã«ã¯ã以äžã®ã³ãã³ããå®è¡ããŠãã ããã
[source,shell]
....
# chflags sunlink file1
....
æ¶å»äžå¯ã®ãã©ã°ãåé€ããã«ã¯ã以äžã®ããã« `sunlink` ã®åã« "no" ãã€ããŠå®è¡ããŠãã ããã
[source,shell]
....
# chflags nosunlink file1
....
ãã¡ã€ã«ã«èšå®ãããŠãããã©ã°ã確èªããã«ã¯ã`-lo` ãšäžç·ã« man:ls[1] ãå®è¡ããŠãã ããã
[source,shell]
....
# ls -lo file1
....
[.programlisting]
....
-rw-r--r-- 1 trhodes trhodes sunlnk 0 Mar 1 05:54 file1
....
ããã€ãã®ãã¡ã€ã«ãã©ã°ã®è¿œå ãåé€ã¯ `root` ãŠãŒã¶ããã§ããŸããã
ä»ã®ãã©ã°ã¯ããã¡ã€ã«ã®ææè
ã倿Žã§ããŸãã
man:chflags[1] ãš man:chflags[2] ãããããè©³çŽ°ãªæ
å ±ãåŸãããšãããããããŸãã
=== setuid, setgid ããã³ sticky èš±å¯å±æ§
ãããŸã§ã«èª¬æããèš±å¯å±æ§ã®ã»ãã«ã
ãã¹ãŠã®ç®¡çè
ãç¥ã£ãŠããã¹ãç¹å¥ãªèšå®ã 3 ã€ãããŸãã
ãã㯠`setuid`, `setgid` ããã³ `sticky` èš±å¯å±æ§ã§ãã
ãããã®èšå®ã¯ãéåžžã®ãŠãŒã¶ã«ã¯èš±å¯ãããŠããªãæ©èœãæäŸããã®ã§ãUNIX(R) ã®æäœã«ãããŠéèŠãšãªãããšããããŸãã
ãããã®èš±å¯å±æ§ãçè§£ããããã«ã¯ãå®ãŠãŒã¶ ID ãšå®å¹ãŠãŒã¶ ID ã®éãã«æ³šæããŠãã ããã
å®ãŠãŒã¶ ID ã¯ãææãããããã»ã¹ãéå§ãã UID ã§ãã
å®å¹ UID ã¯ãããã»ã¹ãå®è¡ãããŠãŒã¶ ID ã§ãã
ããšãã°ããŠãŒã¶ããã¹ã¯ãŒãã倿Žãããšãã«å©çšãã man:passwd[1] ã¯ãå®ãŠãŒã¶ ID ã§èµ·åããŸãã
ããããªããããã¹ã¯ãŒãããŒã¿ããŒã¹ã®ã¢ããããŒãã®éã¯ãå®å¹ ID ã® `root` ãŠãŒã¶ã®æš©éã§å®è¡ãããŸãã
ãã®ä»çµã¿ã«ããã`Permission Denied` ãšã©ãŒã衚瀺ãããããšãªãããŠãŒã¶ã¯ãã¹ã¯ãŒãã倿Žã§ããŸãã
setuid èš±å¯å±æ§ã¯ã以äžã®äŸã§ç€ºãããŠããããã«ããŠãŒã¶ã«å¯Ÿã㊠`s` ã®èš±å¯å±æ§ãã€ããããšã§èšå®ã§ããŸãã
[source,shell]
....
# chmod u+s suidexample.sh
....
setuid èš±å¯å±æ§ã¯ã以äžã®äŸã§ç€ºãããŠããããã«ãæå®ããèš±å¯å±æ§ã«æ°åã® 4 ãã€ããããšã§ãèšå®ã§ããŸãã
[source,shell]
....
# chmod 4755 suidexample.sh
....
ããã§ `suidexample.sh` ã®èš±å¯å±æ§ã¯ä»¥äžã®ããã«èšå®ãããŸãã
[.programlisting]
....
-rwsr-xr-x 1 trhodes trhodes 63 Aug 29 06:36 suidexample.sh
....
`s` ã¯ãèš±å¯å±æ§ã®ãã¡ã€ã«ææè
ã®å®è¡å¯èœãããã«çœ®ãæãã£ãŠåæ ãããŸãã
ãã®èšå®ã«ãããman:passwd[1] ãšãã£ããŠãŒãã£ãªãã£ãæš©éãææ Œããããšãã§ããŸãã
[NOTE]
====
`nosuid` man:mount[8] ãªãã·ã§ã³ã䜿ããšããã®ãããªãã€ããªããŠãŒã¶ãžã®èŠåãªãã«æš©éãææ Œã§ããªãããã«èšå®ã§ããŸãã
ãã ã `nosuid` ã©ããã«ããåé¿ã§ããããããã®ãªãã·ã§ã³ãå®å
šã«ã¯ä¿¡é Œã§ããŸããã
====
ãªã¢ã«ã¿ã€ã ã«ç¢ºèªããããã«ã2 ã€ã®ã¿ãŒããã«ãéããŠãã ããã
1 ã€ã®ã¿ãŒããã«äžã§ãéåžžã®ãŠãŒã¶æš©éã§ `passwd` ãšå
¥åããŠãã ããã
ãã¹ã¯ãŒãã®å
¥åãåŸ
ã€éã«ãããäžã€ã®ã¿ãŒããã«äžã§ãããã»ã¹ããŒãã«ããã³ man:passwd[1] ã®ãŠãŒã¶æ
å ±ã確èªããŠãã ããã
ã¿ãŒããã« A:
[source,shell]
....
Changing local password for trhodes
Old Password:
....
ã¿ãŒããã« B:
[source,shell]
....
# ps aux | grep passwd
....
[source,shell]
....
trhodes 5232 0.0 0.2 3420 1608 0 R+ 2:10AM 0:00.00 grep passwd
root 5211 0.0 0.2 3620 1724 2 I+ 2:09AM 0:00.01 passwd
....
éåžžã®ãŠãŒã¶æš©éã§ man:passwd[1] ãå®è¡ããã«ãããããããå®å¹ UID ã® `root` ã䜿ãããŠããŸãã
`setgid` èš±å¯å±æ§ã¯ `setuid` èš±å¯å±æ§ãšåæ§ã®æ©èœãæäŸããŸããããã®èš±å¯å±æ§ã¯ã°ã«ãŒãã®èšå®ã倿ŽããŸãã
ãã®èšå®ãè¡ã£ãäžã§ã¢ããªã±ãŒã·ã§ã³ãŸãã¯ãŠãŒãã£ãªãã£ãå®è¡ãããšãããã»ã¹ãéå§ãããŠãŒã¶ã§ã¯ãªãããã¡ã€ã«ãææããã°ã«ãŒãã«å¯ŸããŠãã®èš±å¯å±æ§ãäžããŸãã
èšå·ãçšããŠãã¡ã€ã«ã« `setgid` èš±å¯å±æ§ãèšå®ããã«ã¯ãman:chmod[1] ã§èšå®ããã°ã«ãŒãã« `s` ã®èš±å¯å±æ§ãã€ããŠå®è¡ããŠãã ããã
[source,shell]
....
# chmod g+s sgidexample.sh
....
ãŸãã¯ãman:chmod[1] ã§èšå®ããèš±å¯å±æ§ã®å
é ã« 2 ãã€ããŠå®è¡ããŠãã ããã
[source,shell]
....
# chmod 2755 sgidexample.sh
....
以äžã«ç€ºãããããã«ã`s` ãã°ã«ãŒãã®èš±å¯å±æ§ã«æå®ãããŠããŸãã
[source,shell]
....
-rwxr-sr-x 1 trhodes trhodes 44 Aug 31 01:49 sgidexample.sh
....
[NOTE]
====
äžèšã®äŸã«ãããŠã察象ãšããŠããã·ã§ã«ã¹ã¯ãªãããå®è¡å¯èœãªãã¡ã€ã«ã§ãã£ãŠããã·ã§ã«ã¹ã¯ãªãã㯠man:setuid[2] ã·ã¹ãã ã³ãŒã«ã«ã¢ã¯ã»ã¹ã§ããªããããå®å¹ãŠãŒã¶ ID ã§ã¯å®è¡ãããŸããã
====
`setuid` ããã³ `setgid` èš±å¯å±æ§ãããã¯ãæš©éã®ææ Œãèš±å¯ããã®ã§ãã·ã¹ãã ã®ã»ãã¥ãªãã£ã¬ãã«ãäžããŸãã
äžæ¹ 3 çªç®ã®ç¹æ®ãªèš±å¯å±æ§ `sticky bit` ã¯ãã·ã¹ãã ã®ã»ãã¥ãªãã£ã匷åããŸãã
ãã£ã¬ã¯ããªã« `sticky bit` ãèšå®ãããšããã¡ã€ã«ã®ææè
ã®ã¿ããã¡ã€ã«ãåé€ã§ããããã«ãªããŸãã
`/tmp` ãšãã£ãå
±æã®ãã£ã¬ã¯ããªã«ãããŠããã¡ã€ã«ã®ææè
以å€ã®ãŠãŒã¶ããã¡ã€ã«ãåé€ã§ããªããªãã®ã§æçšã§ãã
ãã®èš±å¯å±æ§ãæå¹ã«ããã«ã¯ããã¡ã€ã«ã«å¯Ÿã㊠`t` ã¢ãŒãã远å ããŠãã ããã
[source,shell]
....
# chmod +t /tmp
....
ãŸãã¯ãèš±å¯å±æ§ã« 1 ãã€ããŠèšå®ããŠãã ããã
[source,shell]
....
# chmod 1777 /tmp
....
`sticky bit` ãèšå®ãããŠãããšãèš±å¯å±æ§ã®æåŸã« `t` ã衚瀺ãããŸãã
[source,shell]
....
# ls -al / | grep tmp
....
[source,shell]
....
drwxrwxrwt 10 root wheel 512 Aug 31 01:49 tmp
....
[[dirstructure]]
== ãã£ã¬ã¯ããªæ§é
FreeBSD ã®ãã£ã¬ã¯ããªæ§é ã¯ãã·ã¹ãã å
šäœãçè§£ããã«åœãã£ãŠéèŠã§ãã
æãéèŠãªãã£ã¬ã¯ããªã¯ãã«ãŒããŸã㯠"/" ã§ãã
ãã®ãã£ã¬ã¯ããªã¯èµ·åæã«äžçªæåã«ããŠã³ãããããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ããã«ããŠãŒã¶ã§åäœãããããã«å¿
èŠãªããŒã¹ã·ã¹ãã ãå«ãŸããŠããŸãã
ãŸããã«ãŒããã£ã¬ã¯ããªã«ã¯ããã«ããŠãŒã¶ãžã®ç§»è¡äžã«ä»ã®ãã¡ã€ã«ã·ã¹ãã ãããŠã³ãããããã®ããŠã³ããã€ã³ããå«ãŸããŸãã
ããŠã³ããã€ã³ããšã¯ã远å ãããã¡ã€ã«ã·ã¹ãã ãæ¥ç¶ããå
ã®èŠªã®ãã¡ã€ã«ã·ã¹ãã (æ®éã¯ã«ãŒããã¡ã€ã«ã·ã¹ãã ) ã®ãã£ã¬ã¯ããªã®ããšã§ãã
ãã詳现ãªèª¬æã¯ <<disk-organization>> ã®ç¯ã«ãããŸãã
æšæºçãªããŠã³ããã€ã³ãã«ã¯ `/usr/`, `/var/`, `/tmp/`, `/mnt/` ããã³ `/cdrom/` ããããŸãã
éåžžãããã®ãã£ã¬ã¯ããªã«ã€ããŠã¯ã`/etc/fstab` ãšãããã¡ã€ã«äžã®ãšã³ããªãåç
§ãããŸãã
ãã®ãã¡ã€ã«ã¯ãããŸããŸãªãã¡ã€ã«ã·ã¹ãã ãšããŠã³ããã€ã³ãã®è¡šã§ãããã·ã¹ãã ãåç
§ããŸãã
`/etc/fstab` ã«æžããããã¡ã€ã«ã·ã¹ãã 㯠`noauto` ãªãã·ã§ã³ãæå®ãããŠããªããã°ãèµ·åæã« man:rc[8] ã¹ã¯ãªããã«ãã£ãŠèªåçã«ããŠã³ããããŸãã
詳现㯠<<disks-fstab>> ã®ç¯ãã芧ãã ããã
ãã¡ã€ã«ã·ã¹ãã æ§é ãç¶²çŸ
ãã説æã¯ man:hier[7] ã«æžãããŠããŸãã
以äžã®è¡šã¯ããã£ãšããã䜿ããããã£ã¬ã¯ããªã®ç°¡åãªæŠèŠã§ãã
[cols="25h,~"]
|===
| ãã£ã¬ã¯ããª
| 説æ
|`/`
|ãã¡ã€ã«ã·ã¹ãã ã®ã«ãŒããã£ã¬ã¯ããª
|`/bin/`
|ã·ã³ã°ã«ãŠãŒã¶ç°å¢ãšãã«ããŠãŒã¶ç°å¢ã®äž¡æ¹ã§éèŠãª ãŠãŒã¶ãŠãŒãã£ãªãã£
|`/boot/`
|ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®èµ·åæã«äœ¿ãããããã°ã©ã ãšèšå®ãã¡ã€ã«
|`/boot/defaults/`
|ããã©ã«ãã®èµ·åèšå®ãã¡ã€ã«; man:loader.conf[5] åç
§
|`/dev/`
|man:devfs[4] ã«ãã管çãããããã€ã¹ãã¡ã€ã«
|`/etc/`
|ã·ã¹ãã èšå®ãã¡ã€ã«ãšã¹ã¯ãªãã
|`/etc/defaults/`
|ããã©ã«ãã®ã·ã¹ãã èšå®ãã¡ã€ã«; 詳现ã«ã€ããŠã¯ man:rc[8] åç
§
|`/etc/periodic/`
|man:cron[8] çµç±ã§æ¯æ¥ã»æ¯é±ã»æ¯æå®è¡ãããã¹ã¯ãªãã; 詳现ã«ã€ããŠã¯ man:periodic[8] åç
§
|`/lib/`
|`/bin` ããã³ `/sbin` ã«ãããã€ããªã§å¿
èŠãšãããéèŠãªã·ã¹ãã ã©ã€ãã©ãª
|`/libexec/`
|éèŠãªã·ã¹ãã ãã¡ã€ã«
|`/media/`
|CD, USB ãã©ã€ãããã³ãããããŒãã£ã¹ã¯ãªã©ã®ãªã ãŒããã«ã¡ãã£ã¢ã®ããŠã³ããã€ã³ããšããŠäœ¿çšããããµããã£ã¬ã¯ããªãå«ããã£ã¬ã¯ããª
|`/mnt/`
|ã·ã¹ãã 管çè
ãäžæçãªããŠã³ããã€ã³ããšããŠãã䜿ã空ã®ãã£ã¬ã¯ããª
|`/net/`
|èªåããŠã³ã NFS å
±æãman:auto_master[5] ãåç
§
|`/proc/`
|ããã»ã¹ãã¡ã€ã«ã·ã¹ãã ; 詳现ã«ã€ããŠã¯ man:procfs[5] ãš man:mount_procfs[8] åç
§
|`/rescue/`
|man:rescue[8] ã§èª¬æãããŠããç·æ¥æã®ããã«éçã«ãªã³ã¯ãããŠããããã°ã©ã
|`/root/`
|`root` ã¢ã«ãŠã³ãã®ããŒã ãã£ã¬ã¯ããª
|`/sbin/`
|ã·ã³ã°ã«ãŠãŒã¶ç°å¢ãšãã«ããŠãŒã¶ç°å¢ã®äž¡æ¹ã§éèŠãªã·ã¹ãã ããã°ã©ã ãšç®¡çãŠãŒãã£ãªãã£
|`/tmp/`
|ã·ã¹ãã ã®åèµ·åã§ã¯éåžžä¿å _ãããªã_ äžæçãªãã¡ã€ã«ã
ã¡ã¢ãªãã¡ã€ã«ã·ã¹ãã ã¯ãã `/tmp` ã«ããŠã³ããããŸãã
ãã㯠man:rc.conf[5] ã® tmpmfs é¢ä¿ã®å€æ°ã䜿ããã`/etc/fstab` ã«èšå®é
ç®ãèšå
¥ããããšã§èªååã§ããŸãã
詳ãã㯠man:mdmfs[8] ãåç
§ããŠäžããã
|`/usr/`
|倧éšåã®ãŠãŒã¶ãŠãŒãã£ãªãã£ãšã¢ããªã±ãŒã·ã§ã³
|`/usr/bin/`
|ãã䜿ããŠãŒãã£ãªãã£ãšããã°ã©ãã³ã°ããŒã«ãšã¢ããªã±ãŒã·ã§ã³
|`/usr/include/`
|C ã®æšæºããããã¡ã€ã«
|`/usr/lib/`
|ã©ã€ãã©ãª
|`/usr/libdata/`
|ãããããªãŠãŒãã£ãªãã£ã®ããŒã¿ãã¡ã€ã«
|`/usr/libexec/`
|ä»ã®ããã°ã©ã ããå®è¡ãããã·ã¹ãã ããŒã¢ã³ãšã·ã¹ãã ãŠãŒãã£ãªãã£
|`/usr/local/`
|ããŒã«ã«ã®ããã°ã©ã ãã©ã€ãã©ãªãªã©ã
FreeBSD ports ãã¬ãŒã ã¯ãŒã¯ã®ããã©ã«ãã€ã³ã¹ããŒã«å
ãšããŠã䜿ãããŸãã
`/usr/local` å
ã§ã¯ã man:hier[7] ã«æžãããŠãã `/usr` ã®ããã®äžè¬æ§é ã䜿ãããŸãã
äŸå€ã¯ man ãã£ã¬ã¯ããªã§ã`/usr/local/share` ã®äžã§ã¯ãªã `/usr/local` ã®äžã«çŽæ¥çœ®ãããports é¢ä¿ææžã¯ `share/doc/port` ã«çœ®ãããŸãã
|`/usr/ports/`
|FreeBSD Ports Collection (ãªãã·ã§ã³)ã
|`/usr/sbin/`
|ãŠãŒã¶ã«ããå®è¡ãããã·ã¹ãã ããŒã¢ã³ããã³ã·ã¹ãã ãŠãŒãã£ãªãã£
|`/usr/share/`
|ã¢ãŒããã¯ãã£ã«äŸåããªããã¡ã€ã«
|`/usr/src/`
|BSD ã®ãœãŒã¹ãã¡ã€ã«ãŸãã¯ããŒã«ã«ã®ãœãŒã¹ãã¡ã€ã«ããããã¯äž¡æ¹
|`/var/`
|ããŸããŸãªçšéã®ãã°ã»äžæçãªãã¡ã€ã«ã»ã¹ããŒã«ãã¡ã€ã«ã
|`/var/log/`
|ãããããªã·ã¹ãã ãã°ãã¡ã€ã«
|`/var/tmp/`
|äžæçãªãã¡ã€ã«ãéåžžã®èšå®ã§ã¯ãããã«ãããã¡ã€ã«ã¯ã·ã¹ãã ãåèµ·åããŠã倱ãããŸããã
|===
[[disk-organization]]
== ãã£ã¹ã¯æ§æ
ãã¡ã€ã«ãèŠã€ããããã« FreeBSD ã䜿çšããæ§æã®äžçªå°ããªåäœã¯ãã¡ã€ã«åã§ãã
ãã¡ã€ã«åã¯ã倧æåãšå°æåãåºå¥ããŸãã
ãã®ããšã¯ `readme.txt` ããã³ `README.TXT` ãç°ãªãäºã€ã®ãã¡ã€ã«ã§ããããšãæå³ããŸãã
FreeBSD ã¯ãã®ãã¡ã€ã«ãããã°ã©ã ããŸãã¯ææžããããã¯ãã®ä»ã®åœ¢åŒãã©ãããæ±ºå®ããããã«æ¡åŒµåã䜿çšããŸããã
ãã¡ã€ã«ã¯ãã£ã¬ã¯ããªå
ã«æ ŒçŽãããŸãã
ãã£ã¬ã¯ããªã¯ãã¡ã€ã«ãäžã€ãå«ãã§ããªããããããããããŸãã¯æ°çŸã®ãã¡ã€ã«ãå«ãã§ãããããããŸããã
ãã£ã¬ã¯ããªã¯ãŸãå¥ã®ãã£ã¬ã¯ããªãå«ãããšãã§ããã®ã§ã
ããŒã¿ãäœç³»ã¥ãããã£ã¬ã¯ããªã®éå±€æ§é ãæ§ç¯ã§ããŸãã
ãã¡ã€ã«ããã³ãã£ã¬ã¯ããªã¯ãå¿
èŠãªä»ã®ãã£ã¬ã¯ããªåãšã¹ã©ãã·ã¥ (`/`) ãåŸã«ç¶ããŠãã¡ã€ã«åãŸãã¯ãã£ã¬ã¯ããªåãäžããããšã«ãã£ãŠåç
§ãããŸãã
ããšãã°ã`foo` ãã£ã¬ã¯ããªããã£ãŠããã®äžã« `bar` ãã£ã¬ã¯ããªããããšããŸãã
ãããŠããã®äžã« `readme.txt` ããããšãããšããã¡ã€ã«ãžã®ãã«ããŒã ããŸã㯠_ãã¹_ 㯠`foo/bar/readme.txt` ãšãªããŸãã
ãã¡ã€ã«ãšãã£ã¬ã¯ããªåãåããããã« `\` ã䜿ã Windows(R) ãšã¯éãããšã«æ³šæããŠãã ããã
FreeBSD ã¯ããã¹ã®äžã«ãã©ã€ãã¬ã¿ãŒãŸãã¯ä»ã®ãã©ã€ãåã䜿ããŸããã
ããšãã°ãFreeBSD ã§ã¯ `c:\foo\bar\readme.txt` ãšã¯æžããŸããã
[[disks-file-systems]]
=== ãã¡ã€ã«ã·ã¹ãã
ãã£ã¬ã¯ããªããã³ãã¡ã€ã«ã¯ãã¡ã€ã«ã·ã¹ãã å
ã«æ ŒçŽãããŸãã
ã©ã®ãã¡ã€ã«ã·ã¹ãã ãããã®ãã¡ã€ã«ã·ã¹ãã ã®ããã® _ã«ãŒããã£ã¬ã¯ããª_ ãšãã°ããããŸãã«é ç¹ã®äœçœ®ã«ã¡ããã©äžã€ã®ãã£ã¬ã¯ããªãå«ãã§ããŸãã
ãã®ã«ãŒããã£ã¬ã¯ããªã¯ä»ã®ãã£ã¬ã¯ããªãå«ãããšãã§ããŸãã
äžã€ã®ãã¡ã€ã«ã·ã¹ãã 㯠_ã«ãŒããã¡ã€ã«ã·ã¹ãã _ ãŸã㯠`/` ãšããŠèšèšãããŠããŸãã
ãã¹ãŠã®ãã¡ã€ã«ã·ã¹ãã ã¯ãã«ãŒããã¡ã€ã«ã·ã¹ãã 以äžã« _ããŠã³ã_ ãããŸãã
FreeBSD ã·ã¹ãã ã§ã©ããªã«å€ãã®ãã£ã¹ã¯ã䜿çšããŠãããã¹ãŠã®ãã£ã¬ã¯ããªã¯ãåããã£ã¹ã¯ã®äžéšã§ããããã«èŠããã®ã§åé¡ãããŸããã
`A`, `B` ããã³ `C` ãšåŒã°ããäžã€ã®ãã¡ã€ã«ã·ã¹ãã ãããã±ãŒã¹ãèããŸãã
ããããã®ãã¡ã€ã«ãã¡ã€ã«ã·ã¹ãã ã«ã¯äžã€ã®ã«ãŒããã£ã¬ã¯ããªãããã`A1`, `A2` ãšåŒã°ããŠããäºã€ã®ä»ã®ãã£ã¬ã¯ããªãå«ãã§ããŸã (åæ§ã« `B1`, `B2` ããã³ `C1`, `C2` ããããŸã)ã
`A` ãã«ãŒããã¡ã€ã«ã·ã¹ãã ãšããŸãã
ãã®ãã£ã¬ã¯ããªã«ãªã«ãå«ãŸããŠãããèŠãããã« man:ls[1] ã³ãã³ãã䜿ããšã`A1` ããã³ `A2` ã®äºã€ã®ãµããã£ã¬ã¯ããªã衚瀺ãããã§ãããã
ãã£ã¬ã¯ããªããªãŒã¯ä»¥äžã®ããã«ãªããŸãã
image::example-dir1.png[ã«ãŒããã£ã¬ã¯ããªããã³ 2 ã€ã®ãµãããªãŒãæã€ãã£ã¬ã¯ããªããªãŒ]
ãã¡ã€ã«ã·ã¹ãã ã¯ããŠã³ãå
ã®ãã¡ã€ã«ã·ã¹ãã å
ã®ãã£ã¬ã¯ããªã«ããŠã³ãããªããã°ãããŸããã
ããã§ã¯ã`A1` ãã£ã¬ã¯ããªã« `B` ãã¡ã€ã«ã·ã¹ãã ãããŠã³ããããšä»®å®ããŸãã
`B` ã®ã«ãŒããã£ã¬ã¯ããªã¯ `A1` ã«çœ®ãæãããããã㊠`B` å
ã®ãã£ã¬ã¯ããªãããã«å¿ããŠçŸããŸãã
image::example-dir2.png[ã«ãŒããã£ã¬ã¯ããªããã³ 2 ã€ã®ãµãããªãŒãæã€ãã£ã¬ã¯ããªããªãŒãããã« B1 ããã³ B2 ãµããã£ã¬ã¯ããªã A1 ã«ã¶ãäžãã£ãŠããŸã]
`B1` ãŸã㯠`B2` å
ã«ããã©ããªãã¡ã€ã«ããå¿
èŠãªãšãã« `/A1/B1` ãŸã㯠`/A1/B2` ã§å°éã§ããŸãã
`/A1` ã«ãã£ããã¹ãŠã®ãã¡ã€ã«ã¯äžæçã«é ãããŸããã
ããã㯠`B` ã `A` ãã _ã¢ã³ããŠã³ã_ ããããåã³çŸããã§ãããã
ãã `B` ã `A2` ã«ããŠã³ããããŠãããããã®å³ã®ããã«ãªããŸãã
image::example-dir3.png[ã«ãŒããã£ã¬ã¯ããªããã³ 2 ã€ã®ãµãããªãŒãæã€ãã£ã¬ã¯ããªããªãŒãããã« B1 ããã³ B2 ãµããã£ã¬ã¯ããªã A2 ã«ã¶ãäžãã£ãŠããŸã]
ãããŠããã¹ã¯ãããã `/A2/B1` ããã³ `/A2/B2` ãšãªãã§ãããã
ãã¡ã€ã«ã·ã¹ãã ã¯äºãã®ãã¡ã€ã«ã·ã¹ãã äžã«ãããŠã³ãã§ããŸãã
äžèšã®æåŸã®äŸã«ç¶ããŠã`C` ãã¡ã€ã«ã·ã¹ãã 㯠`B` ãã¡ã€ã«ã·ã¹ãã å
ã® `B1` ãã£ã¬ã¯ããªäžã«ããŠã³ãã§ããŸãã
次ã®å³ã®ããã«ãªããŸãã
image::example-dir4.png[è€éãªãã£ã¬ã¯ããªããªãŒãããŸããŸãªãµããã£ã¬ã¯ããªãã«ãŒã以äžã«ã¶ãäžãã£ãŠããŸãã]
ãŸã㯠`C` ã `A` ãã¡ã€ã«ã·ã¹ãã ã® `A1` ãã£ã¬ã¯ããªã®äžã«çŽæ¥ããŠã³ãã§ããŸãã
image::example-dir5.png[è€éãªãã£ã¬ã¯ããªããªãŒãããŸããŸãªãµããã£ã¬ã¯ããªãã«ãŒã以äžã«ã¶ãäžãã£ãŠããŸãã]
äžã€ã®å€§ããªã«ãŒããã¡ã€ã«ã·ã¹ãã ãçšæããä»ã®ãã¡ã€ã«ã·ã¹ãã ãäœæããå¿
èŠãšããªãããšã¯ãŸã£ãããã£ãŠå¯èœã§ãã
ãã®æ¹æ³ã«ã¯ããã€ãã®çæãšäžã€ã®å©ç¹ããããŸãã
.ãã«ããã¡ã€ã«ã·ã¹ãã ã®å©ç¹
* ç°ãªã£ããã¡ã€ã«ã·ã¹ãã ã¯ç°ãªã£ã _ããŠã³ããªãã·ã§ã³_ ã䜿çšã§ããŸãã
ããšãã°ãã«ãŒããã¡ã€ã«ã·ã¹ãã ãèªã¿ã ãå°çšã§ããŠã³ãããŠãäžæ³šæã«ãã£ãŠãŠãŒã¶ãé倧ãªãã¡ã€ã«ãåé€ããŸãã¯ç·šéã§ããªãããã«ããããšãã§ããŸãã
ãŸãã`/home` ã®ãããªãŠãŒã¶ãæžã蟌ã¿å¯èœãªãã¡ã€ã«ã·ã¹ãã ãä»ã®ãã¡ã€ã«ã·ã¹ãã ãšåããããšã«ãã£ãŠã _nosuid_ ã§ããŠã³ãããããšãå¯èœã«ãªããŸãã
ãã®ãªãã·ã§ã³ã¯ããã¡ã€ã«ã·ã¹ãã ã«èšé²ãããŠãã _suid_/_guid_ ã®å®è¡å¯èœããããæå¹ã«ããªãã®ã§ãå®å
šæ§ãé«ããããšãã§ããã§ãããã
* FreeBSD ã¯ãã¡ã€ã«ã·ã¹ãã ãã©ã®ããã«äœ¿ãããŠãããã«ãã£ãŠãèªåçã«ãã¡ã€ã«ã·ã¹ãã äžã®ãã¡ã€ã«ã®é
眮ãæé©åããŸãã ãããã£ãŠãé£ç¶çã«æžã蟌ãŸããå€ãã®å°ããªãã¡ã€ã«ãå«ãŸããŠãããã¡ã€ã«ã·ã¹ãã ã¯ããã倧ããå°ãªããã¡ã€ã«ãå«ãŸããŠãããã¡ã€ã«ã·ã¹ãã ãšç°ãªãæé©åãããã§ãããã äžã€ã®å€§ããªãã¡ã€ã«ã·ã¹ãã ãäœæãããšããã®æé©åã¯æãç«ããªããªããŸãã
* FreeBSD ã®ãã¡ã€ã«ã·ã¹ãã ã¯ãã©ãã«ãèµ·ããŠã匷åºã§ãã ããããªããèšçç¹ã§ã®ãã©ãã«ã¯ããã¡ã€ã«ã·ã¹ãã ã®æ§é ã«ãŸã æå®³ãäžãããããããŸããã ãã«ããã¡ã€ã«ã·ã¹ãã ãžããŒã¿ãåå²ããŠããããšã§ã å¿
èŠãªãšãã«ããã¯ã¢ããããã¬ã¹ãã¢ããããšããã容æã«ããŠããŸã ã·ã¹ãã ãå埩ãããããããŸããã
.ã·ã³ã°ã«ãã¡ã€ã«ã·ã¹ãã ã®å©ç¹
* ãã¡ã€ã«ã·ã¹ãã ã¯åºå®ãµã€ãºã§ãã FreeBSD ãã€ã³ã¹ããŒã«ãããšãã«ãã¡ã€ã«ã·ã¹ãã ãäœæããŠã åºå®ãµã€ãºãå²ãããŠããªãã åŸã«ãªã£ãŠãã®ããŒãã£ã·ã§ã³ããã倧ããããå¿
èŠããããšæ°ã¥ããããããŸããã ããŒãã£ã·ã§ã³ã®ãµã€ãºã倿Žããã«ã¯ã ããã¯ã¢ãããæ°ãããµã€ãºãæå®ãããã¡ã€ã«ã·ã¹ãã ã®åäœæã ããã¯ã¢ããããããŒã¿ããªã¹ãã¢ããäœæ¥ãå¿
èŠãšãªãã§ãããã
+
[IMPORTANT]
====
FreeBSD ã«ã¯ã man:growfs[8] ã³ãã³ãããããŸãã
ãã®ã³ãã³ãã¯ããã®å¶éãåãé€ããŠããã¡ã€ã«ã·ã¹ãã ã®ãã¡ã€ã«ãçŽã¡ã«å¢å ãããããšãå¯èœã«ããŸãã
ãã¡ã€ã«ã·ã¹ãã ã¯ããã®ãã¡ã€ã«ã·ã¹ãã ã®ããããŒãã£ã·ã§ã³ã®ç©ºããŠããé åã«å¯ŸããŠã®ã¿æ¡åŒµã§ããŸãã
ããŒãã£ã·ã§ã³ãåå²ããåŸã空ããŠããé åãããã°ãman:gpart[8] ãçšããŠããŒãã£ã·ã§ã³ãæ¡åŒµã§ããŸãã
ä»®æ³ãã£ã¹ã¯ã®æåŸã®ããŒãã£ã·ã§ã³ã§ããã°ããã£ã¹ã¯ã倧ãããããšãããŒãã£ã·ã§ã³ãæ¡åŒµã§ããŸãã
====
[[disks-partitions]]
=== ãã£ã¹ã¯ããŒãã£ã·ã§ã³
ãã¡ã€ã«ã·ã¹ãã 㯠_ããŒãã£ã·ã§ã³_ å
ã«å«ãŸããŠããŸãã
ãã£ã¹ã¯ã¯ 1 ã€ã®ããŒãã£ã·ã§ã³ã¹ããŒã (<<bsdinstall-part-manual>>) ãçšããŠããŒãã£ã·ã§ã³ã«åå²ãããŸãã
æ°ããã¹ããŒã 㯠GPT ã§ãå€ã BIOS-ããŒã¹ã®ã³ã³ãã¥ãŒã¿ã¯ MBR ã䜿çšããŸãã
GPT ã¯ããµã€ãºããªãã»ããããã³ã¿ã€ãã«ãããã£ã¹ã¯ã®ããŒãã£ã·ã§ã³åå²ã«å¯Ÿå¿ããŠããŸãã
å€ãã®ããŒãã£ã·ã§ã³ããã³ããŒãã£ã·ã§ã³ã¿ã€ãã«å¯Ÿå¿ããŠãããããGPT ãå©çšã§ããå Žåã¯ãã®ããŒãã£ã·ã§ã³ã¹ããŒã ã䜿çšããããšãæšå¥šãããŸãã
GPT ããŒãã£ã·ã§ã³ã¯ãæ¥å°Ÿèª `p1` ãæåã®ããŒãã£ã·ã§ã³ãæ¥å°Ÿèª `p2` ã 2 çªç®ã®ããŒãã£ã·ã§ã³ãšãã£ããããªæ¥å°Ÿèªã䜿ããŸãã
äžæ¹ MBR ããŒãã£ã·ã§ã³ã¯å°ãªãæ°ã®ããŒãã£ã·ã§ã³ã«ã®ã¿å¯Ÿå¿ããŠããŸãã
MBR ããŒãã£ã·ã§ã³ã¯ãFreeBSD ã§ã¯ `ã¹ã©ã€ã¹` ãšããŠç¥ãããŠããŸãã
ã¹ã©ã€ã¹ã¯ä»ã®ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã§ã䜿ãããšãã§ããŸãã
FreeBSD ã®ã¹ã©ã€ã¹ã¯ããã«ãBSD ã©ãã« (man:bsdlabel[8] åç
§) ãçšããŠããŒãã£ã·ã§ã³ã«åå²ã§ããŸãã
ã¹ã©ã€ã¹çªå·ã¯ 1 ããå§ãŸã `s` ãåã«ã€ããããŠãããã€ã¹åã®åŸã«ç¶ããŸãã
ãããã£ãŠã"da0__s1__" ã¯äžçªç®ã® SCSI ãã©ã€ãäžã®äžçªç®ã®ã¹ã©ã€ã¹ã§ãã
ãã£ã¹ã¯äžã«ååšã§ããç©çã¹ã©ã€ã¹ã¯ã4 ã€ãŸã§ã§ãããé©åãªçš®é¡ã®ç©çã¹ã©ã€ã¹å
ã«è«çã¹ã©ã€ã¹ãäœæã§ããŸãã
ãããã®æ¡åŒµãããã¹ã©ã€ã¹çªå·ã¯ 5 ããå§ãŸããŸãã
ãããã£ãŠã "ada0__s5__" ã¯ãäžçªç®ã® SATA ãã£ã¹ã¯äžã®äžçªç®ã®æ¡åŒµã¹ã©ã€ã¹ã§ãã
ãããã®ããã€ã¹ã¯ãã¹ã©ã€ã¹ãå æããããšãäºæãããã¡ã€ã«ã·ã¹ãã ã«ãã£ãŠäœ¿çšãããŸãã
GPT ãŸã㯠BSD ã®åããŒãã£ã·ã§ã³ã¯ãäžã€ã®ãã¡ã€ã«ã·ã¹ãã ã ããå«ãããšãã§ããŸãã
ãã®ããšã¯ããã¡ã€ã«ã·ã¹ãã ããã¡ã€ã«ã·ã¹ãã ã®éå±€äžã®å
žåçãªããŠã³ããã€ã³ãããŸãã¯å«ãŸããŠããããŒãã£ã·ã§ã³åã«ãã£ãŠèšè¿°ãããããšãæå³ããŸãã
FreeBSD 㯠_ã¹ã¯ããé å_ ã«ããŸããã£ã¹ã¯é åã䜿çšããŸãã
ã¹ã¯ããé å㯠FreeBSD ã« _ä»®æ³ã¡ã¢ãª_ ãæäŸããŸãã
ããã¯ããªãã®ã³ã³ãã¥ãŒã¿ãã å®éã«æèŒããŠãã以äžã®ã¡ã¢ãªããããã®ããã«æ¯èããŸãã
FreeBSD ãã¡ã¢ãªã䜿ãæããããšãã«ãçŸåšäœ¿çšãããŠããªãããŒã¿ã®ããã€ããã¹ã¯ããé åã«ç§»åãããã®ããŒã¿ãå¿
èŠãšãªã£ããšãã« (ãã®ä»ã®ããŒã¿ãã¹ã¯ããé åã«ç§»åãããŠãã) ã¡ã¢ãªå
ã«ç§»åããªãããŸãã
ãã㯠_ããŒãžã³ã°_ ãšåŒã°ããŸãã
ããã€ãã® BSD ããŒãã£ã·ã§ã³ã¯ããæ
£ç¿ãšé¢ä¿ã¥ããããŠããŸãã
[cols="25h,~"]
|===
| ããŒãã£ã·ã§ã³
| æ
£ç¿
|`a`
|éåžžãã«ãŒãããŒãã£ã·ã§ã³ãå«ã¿ãŸãã
|`b`
|éåžžãã¹ã¯ããé åãå«ã¿ãŸãã
|`c`
|éåžžãã¹ã©ã€ã¹å
šäœãšåããµã€ãºã§ãã
ããã¯ãã¹ã©ã€ã¹å
šäœã«ã¢ã¯ã»ã¹å¿
èŠã®ãããŠãŒãã£ãªã㣠(ããšãã°ãã²ã©ããããã¯ã¹ãã£ã) ãã `c` ããŒãã£ã·ã§ã³ã«ã¢ã¯ã»ã¹ããããšãå¯èœã«ããŸãã
éåžžããã®ããŒãã£ã·ã§ã³å
ã«ãã¡ã€ã«ã·ã¹ãã ã¯äœæãããŸããã
|`d`
|`d` ããŒãã£ã·ã§ã³ã¯ã ããã«é¢é£ã¥ããããç¹å¥ãªæå³ãæã£ãŠããŸãããã ä»ã¯ç¡ãã®ã§ãæ®éã®ããŒãã£ã·ã§ã³ãšããŠåäœããã§ãããã
|===
ã¹ã©ã€ã¹ããã³ "å±éºãªå°çš" ã®ç©çãã©ã€ãã ãããŠä»ã®ãã©ã€ã㯠`a` ãã `h` ãŸã§ã®æåãšããŠè¡šããã BSD ããŒãã£ã·ã§ã³ãå«ãã§ããŸãã
ãã®æåã¯ããã€ã¹åã«è¿œå ãããŸãã
ãããã£ãŠã "da0__a__" ã¯äžçªç®ã® "å±éºãªå°çš" `da` ãã©ã€ãäžã® `a` ããŒãã£ã·ã§ã³ã§ãã
"ada1s3__e__" ã¯ã äºçªç®ã® SATA ãã£ã¹ã¯äžã® äžçªç®ã®ã¹ã©ã€ã¹å
ã«ããäºçªç®ã®ããŒãã£ã·ã§ã³ã§ãã
æåŸã«ãã·ã¹ãã äžã®ããããã®ãã£ã¹ã¯ã¯èå¥ãããŸãã
ãã£ã¹ã¯åã¯ã©ã®çš®é¡ã®ãã£ã¹ã¯ã§ãããã瀺ãèšå·ã§ã¯ããŸããã©ã®ãã£ã¹ã¯ããç€ºãæ°åãç¶ããŸãã
ããŒãã£ã·ã§ã³ãã¹ã©ã€ã¹ãšã¯ç°ãªãããã£ã¹ã¯ã®çªå·ã¥ã㯠0 ããå§ãŸããŸãã
å
±éã®èšå·ã¯ <<disks-naming>> ã«ç€ºãããŸãã
ã¹ã©ã€ã¹ã«ããããŒãã£ã·ã§ã³ãåç
§ãããšãã«ã¯ããã£ã¹ã¯åã`s`ãã¹ã©ã€ã¹çªå·ããããŠããŒãã£ã·ã§ã³æåãå«ããŠãã ããã
<<basics-disk-slice-part>> ã«äŸããããŸãã
GPT ããŒãã£ã·ã§ã³ã¯ãã£ã¹ã¯åã`p` ãããŠããŒãã£ã·ã§ã³çªå·ãå«ãŸããŸãã
<<basics-concept-disk-model>> ã¯ãMBR ã¹ã©ã€ã¹ãçšãããã£ã¹ã¯æ§æã®æŠå¿µã®ã¢ãã«ã瀺ããŸãã
FreeBSD ãã€ã³ã¹ããŒã«ããéã«ã¯ãMBR ã䜿çšããå Žåã«ã¯ãã£ã¹ã¯ã¹ã©ã€ã¹ãèšå®ããæ¬¡ã« FreeBSD ã«çšããã¹ã©ã€ã¹å
ã®ããŒãã£ã·ã§ã³ãäœæããŸãã
GPT ã䜿çšããå Žåã«ã¯ãåãã¡ã€ã«ã·ã¹ãã ã«ããŒãã£ã·ã§ã³ãèšå®ããŸãã
ã©ã¡ãã®ã±ãŒã¹ã§ããããããã®ããŒãã£ã·ã§ã³å
ã«ãã¡ã€ã«ã·ã¹ãã ãŸãã¯ã¹ã¯ããé åãäœæãããã¡ã€ã«ã·ã¹ãã ãã©ãã«ããŠã³ãããããæ±ºå®ããŠãã ããã
ããŒãã£ã·ã§ã³ã®æäœã«ã€ããŠã®è©³çŽ°ã¯ man:gpart[8] ãã芧ãã ããã
[[disks-naming]]
.ãã£ã¹ã¯ããã€ã¹å
[cols="1,1", frame="none", options="header"]
|===
| ãã©ã€ãã¿ã€ã
| ãã©ã€ãããã€ã¹å
|SATA ããã³ IDE ããŒããã©ã€ã
|`ada`
|SCSI ããŒããã©ã€ãããã³ USB ã¹ãã¬ãŒãžããã€ã¹
|`da`
|NVMe ã¹ãã¬ãŒãž
|`nvd` ãŸã㯠`nda`
|SATA ããã³ IDE CD-ROM ãã©ã€ã
|`cd`
|SCSI CD-ROM ãã©ã€ã
|`cd`
|ãããããŒãã©ã€ã
|`fd`
|SCSI ããŒããã©ã€ã
|`sa`
|RAID ãã©ã€ã
|`aacd` (Adaptec(R) AdvancedRAID), `mlxd` ããã³ `mlyd` (Mylex(R)), `amrd` (AMI MegaRAID(R)), `idad` (Compaq Smart RAID), `twed` (3ware(R) RAID) ãªã©
|===
[example]
====
[[basics-disk-slice-part]]
.ãã£ã¹ã¯åãã¹ã©ã€ã¹åãããŒãã£ã·ã§ã³åã®ãµã³ãã«
[.informaltable]
[cols="1,1", frame="none", options="header"]
|===
| åå
| æå³
|`ada0s1a`
|äžçªç®ã® SATA ãã£ã¹ã¯ (`ada0`) äžã®äžçªç®ã®ã¹ã©ã€ã¹ (`s1`) å
ã®äžçªç®ã®ããŒãã£ã·ã§ã³ (`a`)ã
|`da1s2e`
|äºçªç®ã® SCSI ãã£ã¹ã¯ (`da1`) äžã®äºçªç®ã®ã¹ã©ã€ã¹ (`s2`) å
ã®äºçªç®ã®ããŒãã£ã·ã§ã³ (`e`)ã
|===
====
[[basics-concept-disk-model]]
.ãã£ã¹ã¯ã®æŠå¿µçæ§æ
[example]
====
ããã¯ã·ã¹ãã ã«æ¥ç¶ãããäžçªç®ã® SATA ãã£ã¹ã¯ã® FreeBSD ããèŠãå³ã瀺ããŸãã
ãã£ã¹ã¯ãµã€ãºã¯ 250 GB ãšä»®å®ãã80 GB ã®ã¹ã©ã€ã¹ (MS-DOS(R) ã§ããããŒãã£ã·ã§ã³) ããã³ 170 GB ã®ã¹ã©ã€ã¹ããããšããŸãã
äžçªç®ã®ã¹ã©ã€ã¹ã¯ Windows(R) NTFS ãã¡ã€ã«ã·ã¹ãã `C:` ãå«ãã§ããŸãã
ãããŠãäºçªç®ã®ã¹ã©ã€ã¹ã¯ FreeBSD ã®ãã£ã¹ã¯ãå«ãã§ããŸãã
ãã㯠FreeBSD ã€ã³ã¹ããŒã©ãåã€ã®ããŒã¿ããŒãã£ã·ã§ã³ãšäžã€ã®ã¹ã¯ããããŒãã£ã·ã§ã³ãäœæããäŸã§ãã
åã€ã®ããŒãã£ã·ã§ã³ã¯ãããããã¡ã€ã«ã·ã¹ãã ãå«ãã§ããŸãã
ããã£ã·ã§ã³ `a` ã¯ã«ãŒããã¡ã€ã«ã·ã¹ãã ã`d` 㯠`/var`, `e` 㯠`/usr`ããã㊠`f` 㯠`/usr` ã«äœ¿çšãããŠããŸãã
ããŒãã£ã·ã§ã³ `c` ã¯ã¹ã©ã€ã¹å
šäœã瀺ããŠãããéåžžã®ããŒãã£ã·ã§ã³ãšã¯ç°ãªã䜿ããæ¹ãããŸãã
image::disk-layout.png[Windows ãš FreeBSD ã 1 ã€ã®ãã©ã€ãã«å
±åãããã¬ã€ã¢ãŠã]
====
[[mount-unmount]]
== ãã¡ã€ã«ã·ã¹ãã ã®ããŠã³ããšã¢ã³ããŠã³ã
ãã¡ã€ã«ã·ã¹ãã 㯠`/` ãã«ãŒã (æ ¹) ãšããæšæ§é ãšããŠèãããšèŠèŠçã«çè§£ããããã§ãããã
ã«ãŒããã£ã¬ã¯ããªã«ãã `/dev` ã `/usr`ããã®ä»ã®ãã£ã¬ã¯ããªã¯æã«çžåœãããããã«ã¯ã`/usr/local` ãªã©ã®ããã«ãããã«æåããããããšãã§ããŸãã
ããŸããŸãªçç±ããããŸããã ãã£ã¬ã¯ããªãããã€ãã®ç°ãªããã¡ã€ã«ã·ã¹ãã äžã«æ§ç¯ããã®ãè¯ãã§ãããã
ããšãã° `/var` ã«ã¯ã `log/` ã `spool/` ãªã©ãããŸããŸãªçš®é¡ã®äžæãã¡ã€ã«ã眮ããã£ã¬ã¯ããªããããããããµããŠããŸãå¯èœæ§ããããŸãã
ã«ãŒããã¡ã€ã«ã·ã¹ãã ãããµããããã®ã¯åŸçã§ã¯ãããŸããã®ã§ãæ®é㯠`/var` ã `/` ããåé¢ããŸãã
ãŸããæ¬¡ã®ãããªå Žåãããã£ã¬ã¯ããªããªãŒãå¥ã®ãã¡ã€ã«ã·ã¹ãã ã«çœ®ãçç±ãšããŠè¯ããããããŸãã
ããã¯ãããšãã°ç©ççã«å¥ã®ãã£ã¹ã¯ã«ãã£ã¬ã¯ããªããªãŒã眮ãå Žåã crossref:advanced-networking[network-nfs, ããããã¯ãŒã¯ãã¡ã€ã«ã·ã¹ãã (NFS)ã] ã§èª¬æãããŠããããã«ãããã¯ãŒã¯ãã¡ã€ã«ã·ã¹ãã ãããŠã³ãããããCDROM ãã©ã€ãã®ãããªå¥ã®ä»®æ³ãã£ã¹ã¯ã«çœ®ããšããå Žåã§ãã
[[disks-fstab]]
=== fstab ãã¡ã€ã«
`/etc/fstab` ã«æžãããŠãããã¡ã€ã«ã·ã¹ãã ã¯ã`noauto` ãªãã·ã§ã³æå®ãããŠãããšã³ããªãé€ã㊠crossref:boot[boot,èµ·åããã»ã¹] ã®éäžã§èªåçã«ããŠã³ããããŸãã
ãã®ãã¡ã€ã«ã¯ã 次ã®ãããªæžåŒã§æžããããšã³ããªãå«ãã§ããŸãã
[.programlisting]
....
device /mount-point fstype options dumpfreq passno
....
`device`::
ããã€ã¹åãcrossref:disks[disks-naming,ãããã€ã¹åã] ã«èª¬æããããŸãã
`mount-point`::
ãã¡ã€ã«ã·ã¹ãã ãããŠã³ããããã£ã¬ã¯ããªã
`fstype`::
man:mount[8] ã«æž¡ããããã¡ã€ã«ã·ã¹ãã ã¿ã€ãã FreeBSD ãã¡ã€ã«ã·ã¹ãã ã®ããã©ã«ã㯠`ufs` ã§ãã
`options`::
èªã¿æžããããã¡ã€ã«ã·ã¹ãã ã«ã¯ `rw`ãèªã¿èŸŒã¿å°çšã®ãã¡ã€ã«ã·ã¹ãã ã«ã¯ `ro` ããå¿
èŠãªä»ã®ãªãã·ã§ã³ã®åã«æå®ããŸãã ãã䜿ããããªãã·ã§ã³ã¯ `noauto` ã§ã èµ·åæã«ã¯ããŠã³ããããªããã¡ã€ã«ã·ã¹ãã ã«äœ¿ããŸãã ãã®ä»ã®ãªãã·ã§ã³ã¯ man:mount[8] ããã¥ã¢ã«ããŒãžã«èŒã£ãŠããŸãã
`dumpfreq`::
ãã㯠man:dump[8] ã䜿ããã®ã§ã ã©ã®ãã¡ã€ã«ã·ã¹ãã ã«ãã³ããå¿
èŠãªã®ããæ±ºããŸãã ãã®é
ç®ããªããã°ã0 ã§ãããã®ãšã¿ãªãããŸãã
`passno`::
ããã¯åèµ·ååŸã« man:fsck[8] ããã§ãã¯ãã UFS ãã¡ã€ã«ã·ã¹ãã ã®é çªã決ããŸãã
ãã¡ã€ã«ã·ã¹ãã ãã§ãã¯ãé£ã°ããããã¡ã€ã«ã·ã¹ãã ã«ã¯ã`passno` ã 0 ã«èšå®ããŠãã ããã
ã«ãŒããã¡ã€ã«ã·ã¹ãã ã¯ã©ããããå
ã«ãã§ãã¯ããå¿
èŠãããã`passno` 㯠1 ã«èšå®ããŠãã ããã ä»ã®ãã¡ã€ã«ã·ã¹ãã ã® `passno` 㯠1 以äžã«èšå®ããŠãã ããã åã `passno` ã®ãã¡ã€ã«ã·ã¹ãã ããã£ãå Žåã man:fsck[8] ã¯å¯èœã§ããã°äžŠè¡ããŠãã¡ã€ã«ã·ã¹ãã ã®ãã§ã㯠ãè¡ãªãããšããŸãã
`/etc/fstab` ã®æžåŒããªãã·ã§ã³ã«é¢ããŠã®è©³çްã¯ã man:fstab[5] ãã芧ãã ããã
[[disks-mount]]
=== man:mount[8] ã®äœ¿ãæ¹
ãã¡ã€ã«ã·ã¹ãã 㯠man:mount[8] ãçšããŠããŠã³ããããŸãã
åºæ¬ãªæ§æã¯ä»¥äžã®ããã«ãªããŸãã
[example]
====
[source,shell]
....
# mount device mountpoint
....
====
`/etc/fstab` ã«èšèŒãããŠãããã¡ã€ã«ã·ã¹ãã ã«ã€ããŠããããŠã³ããã€ã³ããæå®ããããšã§ããŠã³ãã§ããŸãã
man:mount[8] ã§èª¬æãããŠããããã«ããã®ã³ãã³ãã¯ããããã®ãªãã·ã§ã³ãæäŸããŸãã
æããã䜿ãããã®ã¯æ¬¡ã®ãã®ã§ãã
.ããŠã³ããªãã·ã§ã³
`-a`::
`/etc/fstab` ã«ããå
šãŠã®ãã¡ã€ã«ã·ã¹ãã ãããŠã³ãããŸãã äŸå€ã¯ "noauto" ã®å°ãã€ããŠãããã®ãšã `-t` ãã©ã°ã§é€å€ããããã®ãšã ãã§ã«ããŠã³ããããŠãããã¡ã€ã«ã·ã¹ãã ã§ãã
`-d`::
å®éã«ããŠã³ãã·ã¹ãã ã³ãŒã«ãã以å€ã®ãã¹ãŠã®ããšãããŸãã ãã®ãªãã·ã§ã³ã¯ `-v` ãã©ã°ãšçµã¿åãããŠäœ¿ãã man:mount[8] ãå®éãªã«ãããããšããŠããã®ã調ã¹ãã®ã«äŸ¿å©ã§ãã
`-f`::
ã¯ãªãŒã³ã§ãªããã¡ã€ã«ã·ã¹ãã ã匷å¶çã«ããŠã³ãããŸã (å±éºã§ã)ããããã¯ããã¡ã€ã«ã·ã¹ãã ã®ããŠã³ãç¶æ
ã èªã¿æžãå¯èœããèªã¿èŸŒã¿ã®ã¿ã«å€æŽãããšãã æžã蟌ã¿ã¢ã¯ã»ã¹ã匷å¶çã«åãæ¶ããŸãã
`-r`::
ãã¡ã€ã«ã·ã¹ãã ãèªã¿èŸŒã¿å°çšã§ããŠã³ãããŸãã
`-o ro` ã䜿ãã®ãšåãã§ãã
``-t _fstype_``::
æå®ã®ãã¡ã€ã«ã·ã¹ãã ã¿ã€ãã§ããŠã³ãããŸãã ãŸãã¯ã`-a` ã䜿ã£ãå Žåã æå®ããã¿ã€ãã®ãã¡ã€ã«ã·ã¹ãã ã®ã¿ããŠã³ãããŸãã
ããã©ã«ãã®ãã¡ã€ã«ã·ã¹ãã ã¿ã€ã㯠"ufs" ã§ãã
`-u`::
ãã¡ã€ã«ã·ã¹ãã ã®ããŠã³ããªãã·ã§ã³ãæŽæ°ããŸãã
`-v`::
詳现ãªåºåã«ããŸãã
`-w`::
ãã¡ã€ã«ã·ã¹ãã ãèªã¿æžãå¯èœã«ããŠã³ãããŸãã
`-o` ã«ã¯ã 次ã®ãããªãªãã·ã§ã³ãè€æ°ã«ã³ãã§åºåã£ãŠæå®ã§ããŸãã
nosuid::
ãã®ãã¡ã€ã«ã·ã¹ãã äžã® setuid ã setgid ãã©ã°ãè§£éããŸããã ãããã»ãã¥ãªãã£ã®ããã«æçšãªãªãã·ã§ã³ã§ãã
[[disks-umount]]
=== man:umount[8] ã®äœ¿ãæ¹
ãã¡ã€ã«ã·ã¹ãã ãã¢ã³ããŠã³ãããã«ã¯ãman:umount[8] ã䜿ã£ãŠãã ããã
ãã®ã³ãã³ãã¯ããã©ã¡ãŒã¿ãšããŠããŠã³ããã€ã³ãã®äžã€ã ããã€ã¹åãããã㯠`-a` ã `-A` ãšãã£ããªãã·ã§ã³ãåããŸãã
ãããã®åœ¢åŒã§ã `-f` ã§åŒ·å¶çãªã¢ã³ããŠã³ããè¡ãªãã `-v` ã§è©³çްãªåºåãåºããŸãã
ãã ãã»ãšãã©ã®å Žåã`-f` ã¯äœ¿ããªãã»ããããã§ãããã
èšç®æ©ãã¯ã©ãã·ã¥ããããã¡ã€ã«ã·ã¹ãã äžéšã®ããŒã¿ãç Žå£ããããããæãããããŸãã
ããŠã³ããããŠãããã¡ã€ã«ã·ã¹ãã ãã¹ãŠãã¢ã³ããŠã³ãããã«ã¯ã`-a` ãš `-A` ã䜿ã£ãŠãã ããã
`-t` ã«ãã¡ã€ã«ã·ã¹ãã ã¿ã€ããæå®ãããšãæå®ããããã®ã ããã¢ã³ããŠã³ããããŸãã
`-A` ã䜿ããšã«ãŒããã¡ã€ã«ã·ã¹ãã ã¯ã¢ã³ããŠã³ãããŸããã
[[basics-processes]]
== ããã»ã¹ããã³ããŒã¢ã³
FreeBSD ã¯ãã«ãã¿ã¹ã¯ã®ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã§ãã
åäœäžã®ããã°ã©ã ã¯ãããã _ããã»ã¹_ ãšåŒã°ããŸãã
ãã¹ãŠã®ã³ãã³ãã¯å®è¡ãããšãæäœã§ã 1 ã€ã®æ°ããããã»ã¹ãéå§ããŸãã
FreeBSD ã«ããå®è¡ãããŠããã·ã¹ãã ããã»ã¹ããããããããŸãã
åããã»ã¹ã¯ _ããã»ã¹ ID_ (PID) ãšåŒã°ããæ°åã§ãã äžã€ã«èå¥ãããŸãã
ãã¡ã€ã«ã®ããã«åããã»ã¹ã«ã¯ææè
ãšã°ã«ãŒããããã
ææè
ãšã°ã«ãŒãã®èš±å¯å±æ§ã¯ããã®ããã»ã¹ãéãããã¡ã€ã«ãããã€ã¹ã決å®ããããã«äœ¿ãããŸãã
å€ãã®ããã»ã¹ã«ã¯èŠªããã»ã¹ããããŸãã
芪ããã»ã¹ãšã¯ããã®ããã»ã¹ãã¹ã¿ãŒããããããã»ã¹ã®ããšã§ãã
äŸãã°ãã·ã§ã«ãããã»ã¹ã§ãã·ã§ã«ããèµ·åãããã³ãã³ãã¯ãã·ã§ã«ã芪ããã»ã¹ãšããããã»ã¹ãšãªããŸãã
äŸå€ã¯ man:init[8] ãšããç¹å¥ãªããã»ã¹ã§ãã
`init` 㯠FreeBSD ãã¹ã¿ãŒããããšãã«èµ·åãããæåã®ããã»ã¹ã§ãPID ã¯åžžã« `1` ã§ãã
ãŠãŒã¶ããå§çµå
¥åãããããã«èšèšãããŠããªãããã°ã©ã ãããããããã£ãããã°ã©ã ã¯æåãã端æ«ãšåãé¢ãããŠããŸãã
äŸãã°ããŠã§ããµãŒãã¯ãŠãŒã¶ããã®å
¥åã§ã¯ãªããŠã§ãã®ãªã¯ãšã¹ããåŠçããŸãã
ã¡ãŒã«ãµãŒããã ãããã£ãçš®é¡ã®ã¢ããªã±ãŒã·ã§ã³ã®äžäŸã§ãã
ãã®ãããªçš®é¡ã®ããã°ã©ã ã¯ã _ããŒã¢ã³_ ãšåŒã°ããŸãã
ããŒã¢ã³ã¯ã®ãªã·ã£ç¥è©±ããæ¥ãŠãããç®ã«èŠããªãããã«åœ¹ç«ã€ããšãããŠãããåã§ãæªã§ããªãå®äœã衚ããŸãã
ãã®ãããBSD ã®ãã¹ã³ããã¯ã¹ããŒã«ãŒãã¯ããŠãã©ãŒã¯ãæºããããããããå§¿ã®ããŒã¢ã³ãªã®ã§ãã
éåžžããŒã¢ã³ãšããŠåäœããããã°ã©ã ã«ã¯æ«å°Ÿã« "d" ãæã£ãååãã€ããæ
£ç¿ããããŸãã
äŸãã°ãBIND 㯠Berkeley Internet Name Domain ã§ããã å®éå®è¡ãããããã°ã©ã 㯠`named` ã§ãã
ãŸããApache ãŠã§ããµãŒãã®ããã°ã©ã 㯠`httpd`ãã©ã€ã³ããªã³ã¿ã¹ããŒãªã³ã°ããŒã¢ã³ã¯ `lpd` ã§ãã
ããã¯åãªãåœåã«é¢ããæ
£ç¿ã§ãã
äŸãã°ãSendmail ã¢ããªã±ãŒã·ã§ã³ã®äž»ãªã¡ãŒã«ããŒã¢ã³ã¯ `sendmail` ã§ã`maild` ã§ã¯ãããŸããã
=== ããã»ã¹ã確èªãã
ã·ã¹ãã äžã§å®è¡äžã®ããã»ã¹ã確èªããã«ã¯ãman:ps[1] ãŸã㯠man:top[1] ã䜿ã£ãŠãã ããã
çŸåšåäœäžã®ããã»ã¹ã®ãªã¹ããããã»ã¹ã® PID ãããã»ã¹ã䜿ã£ãŠããã¡ã¢ãªã®éãã©ãããã³ãã³ãã©ã€ã³ã§èµ·åãããã®ããªã©ã衚瀺ãããã«ã¯ãman:ps[1] ã䜿ã£ãŠãã ããã
man:top[1] ã䜿çšãããšãåäœäžã®å
šãŠã®ããã»ã¹ã衚瀺ã§ããŸãã
æ°ç§ããšã«è¡šç€ºãæŽæ°ããã®ã§ãèšç®æ©ãäœãããŠããã®ãã€ã³ã¿ã©ã¯ãã£ãã«ç¥ãããšãã§ããŸãã
ããã©ã«ãã§ã¯ãman:ps[1] ã¯ãŠãŒã¶ã«ããåäœäžãã€ææã®ã³ãã³ãã®ã¿ã衚瀺ããŸãã
äŸãã°:
[source,shell]
....
% ps
PID TT STAT TIME COMMAND
8203 0 Ss 0:00.59 /bin/csh
8895 0 R+ 0:00.00 ps
....
man:ps[1] ã®åºåã¯ããã€ãã®åã«æŽåœ¢ãããŠããŸãã
`PID` ã®åã¯ããã»ã¹ ID ã衚瀺ããŸãã
PID 㯠1 ããé ã« 99999 ãŸã§å²ãåœãŠããããã®åŸè¶³ããªããªããšæåã«æ»ã£ãŠäœ¿ãåãããŸãããã ãã䜿çšäžã® PID ã«ã¯å²ãåœãŠãããŸããã
`TT` ã®åã¯ããã°ã©ã ãåããŠãã tty ã瀺ãã`STAT` ã¯ããã°ã©ã ã®ç¶æ
ã瀺ããŸãã
`TIME` ã¯ããã°ã©ã ããã® CPU äžã§åããŠããæéã®é·ãã§ãã
éåžžã¯ããã°ã©ã ãã¹ã¿ãŒãããããšãããã®çµéæéã§ã¯ãããŸããã
å€ãã®ããã°ã©ã ã¯ãCPU äžã§æéã䜿ãå¿
èŠããããŸã§ããªãã®æéãè²»ãããã§ãã
æåŸã«ã`COMMAND` ã¯ãã®ããã°ã©ã ãèµ·åããã®ã«äœ¿ãããã³ãã³ããšãªããŸãã
衚瀺ããæ
å ±ã倿Žãããªãã·ã§ã³ãçšæãããŠããŸãã
ãã¡ã°ã䟿å©ãªã®ã¯ `auxww` ã§ãããã
`a` ã¯ãã¹ãŠã®ãŠãŒã¶ã®åäœäžã®ããã»ã¹å
šéšã«ã€ããŠã®æ
å ±ã衚瀺ããŸãã
`u` ã¯ããã»ã¹ã®ææè
ã®ãŠãŒã¶åãšã¡ã¢ãªäœ¿çšéã衚瀺ããŸãã
`x` ã¯ããŒã¢ã³ããã»ã¹ã«ã€ããŠã®æ
å ±ã衚瀺ãã`ww` ã§ãã¹ã¯ãªãŒã³ã«å
¥ããããªãã»ã©é·ããªã£ãã³ãã³ãã©ã€ã³ã§ãçç¥ãããman:ps[1] ã«åããã»ã¹ã®å
šã³ãã³ãã©ã€ã³ã衚瀺ãããŸãã
man:top[1] ã®åºåãåæ§ã§ãã
[source,shell]
....
% top
last pid: 9609; load averages: 0.56, 0.45, 0.36 up 0+00:20:03 10:21:46
107 processes: 2 running, 104 sleeping, 1 zombie
CPU: 6.2% user, 0.1% nice, 8.2% system, 0.4% interrupt, 85.1% idle
Mem: 541M Active, 450M Inact, 1333M Wired, 4064K Cache, 1498M Free
ARC: 992M Total, 377M MFU, 589M MRU, 250K Anon, 5280K Header, 21M Other
Swap: 2048M Total, 2048M Free
PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND
557 root 1 -21 r31 136M 42296K select 0 2:20 9.96% Xorg
8198 dru 2 52 0 449M 82736K select 3 0:08 5.96% kdeinit4
8311 dru 27 30 0 1150M 187M uwait 1 1:37 0.98% firefox
431 root 1 20 0 14268K 1728K select 0 0:06 0.98% moused
9551 dru 1 21 0 16600K 2660K CPU3 3 0:01 0.98% top
2357 dru 4 37 0 718M 141M select 0 0:21 0.00% kdeinit4
8705 dru 4 35 0 480M 98M select 2 0:20 0.00% kdeinit4
8076 dru 6 20 0 552M 113M uwait 0 0:12 0.00% soffice.bin
2623 root 1 30 10 12088K 1636K select 3 0:09 0.00% powerd
2338 dru 1 20 0 440M 84532K select 1 0:06 0.00% kwin
1427 dru 5 22 0 605M 86412K select 1 0:05 0.00% kdeinit4
....
åºåã¯2ã€ã®ã»ã¯ã·ã§ã³ã«åãããŠããŸãã
ããã (æåã® 5 ãŸã㯠6 è¡) ã¯åäœããŠããææ°ã®ããã»ã¹ã® PIDãã·ã¹ãã ã®å¹³åè² è· (ã·ã¹ãã ãã©ããããå¿ãããã®ææš)ãã·ã¹ãã ã®çšŒåæé (æåŸã®åèµ·åããã®æé) ãšçŸåšã®æå»ã瀺ããŸãã
ãããã®äžã®ä»ã®æ°åã¯åäœäžã®ããã»ã¹ã®æ°ã䜿ãããŠããã¡ã¢ãªãšã¹ã¯ããé åã®éããããŠã·ã¹ãã ãç°ãªã CPU ç¶æ
ã«æ¶è²»ããæéãšé¢ä¿ããŸãã
ZFS ãã¡ã€ã«ã·ã¹ãã ã®ã¢ãžã¥ãŒã«ãããŒãããŠããå Žåã«ã¯ã`ARC` è¡ã«ã¯ãã£ã¹ã¯ã§ã¯ãªãã¡ã¢ãªãã£ãã·ã¥ããèªã¿èŸŒãã ããŒã¿éã衚瀺ãããŸãã
ãããã®äžã«ã¯ãPIDããŠãŒã¶åãæ¶è²» CPU æéãšããã»ã¹ãèµ·åããã³ãã³ããšãã£ã man:ps[1] ã®åºåãšåããããªæ
å ±ãæã£ãè¡ãç¶ããŸãã
man:top[1] ã䜿ããšããã©ã«ãã§ããã»ã¹ã䜿ã£ãŠããã¡ã¢ãªå®¹éã衚瀺ããŸãã
ã¡ã¢ãªäœ¿çšéã®æ¬ã¯ 2 é
ç®ã«åãããŠããã äžæ¹ã¯åèšäœ¿çšéã ãããŠããäžæ¹ã¯å®äœ¿çšéã§ãã
åèšäœ¿çšéã¯ã¢ããªã±ãŒã·ã§ã³ãå¿
èŠãšããŠããã¡ã¢ãªéã§ãå®äœ¿çšéã¯ãã®æç¹ã§å®éã«äœ¿ãããŠããã¡ã¢ãªéã§ãã
man:top[1] ã¯èªåçã« 2 ç§ããšã«ç»é¢ãæŽæ°ããŸãã
`-s` 䜿ããšæŽæ°ééã倿Žããããšãã§ããŸãã
[[basics-daemons]]
=== ããã»ã¹ã®çµäº
åäœäžã®ããã»ã¹ãããã¯ããŒã¢ã³ãšéä¿¡ããäžã€ã®æ¹æ³ã¯ãman:kill[1] ãçšã㊠_ã·ã°ãã«_ ãéä¿¡ããæ¹æ³ã§ãã
éä¿¡å¯èœãªã·ã°ãã«ã¯ãããããããŸãã
ç¹å¥ãªæå³ããããã®ãããã°ãã¢ããªã±ãŒã·ã§ã³ã®æç« ã«èª¬æãããŠãããã®ããããŸãã
ãŠãŒã¶ã¯èªåãææè
ãšãªã£ãŠããããã»ã¹ã«ã®ã¿ã·ã°ãã«ãéãããšãã§ããŸãã
ä»äººã®ããã»ã¹ã«ã·ã°ãã«ãéããšãpermission denied ãšãããšã©ãŒã«ãªãã§ãããã
ãã®äŸå€ã¯ `root` ãŠãŒã¶ã§ã ã«ãŒããŠãŒã¶ã¯èª°ã®ããã»ã¹ã«å¯ŸããŠãã·ã°ãã«ãéãããšãã§ããŸãã
ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãããã»ã¹ã«ã·ã°ãã«ãéãããšãã§ããŸãã
ã¢ããªã±ãŒã·ã§ã³ãäžæã«æžããŠããŸããäºæ³å€ã®ã¡ã¢ãªã«ã¢ã¯ã»ã¹ããããšãããšãFreeBSD ã¯ããã»ã¹ã« "ã»ã°ã¡ã³ããŒã·ã§ã³éå" ã·ã°ãã« (`SIGSEGV`) ãéããŸãã
ããçšåºŠã®æéãçµã£ãã man:alarm[3] ã·ã¹ãã ã³ãŒã«ã䜿ã£ãŠèŠåããŠãããããã«æžãããŠããã¢ããªã±ãŒã·ã§ã³ã«ã¯ã"èŠå" ã·ã°ãã« (`SIGALRM`) ãéä¿¡ãããŸãã
ããã»ã¹ãæ¢ããããã«ã¯2ã€ã®ã·ã°ãã«ã`SIGTERM` ã `SIGKILL` ã䜿ããŸãã
`SIGTERM` ã¯ç©ãã«ããã»ã¹ãçµäºãããæ¹æ³ã§ãã
ããã»ã¹ã¯ã·ã°ãã«ãåãåãããšãã§ããéããŠãããã¹ãŠã®ãã°ãã¡ã€ã«ãéããçµäºåã«ããŠããããšãçµããããã«è©Šã¿ãããšãã§ããŸãã
äžæã§ããªãåŠçã®éäžã ãšã`SIGTERM` ãããã»ã¹ãç¡èŠããããšããããããããŸããã
ããã»ã¹ã¯ `SIGKILL` ãç¡èŠããããšãã§ããŸããã
ããã»ã¹ã« `SIGKILL` ãéããšãããã»ã¹ã¯éåžžãã®æç¹ã§æ¢ãŸããŸãã
ä»ã«è¯ã䜿ãããã·ã°ãã«ã«ã¯ã`SIGHUP`ã`SIGUSR1` ãš `SIGUSR2` ããããŸãã
ãããã¯äžè¬çãªçšéã®ã·ã°ãã«ãªã®ã§ããã®ã·ã°ãã«ãéä¿¡ããããšãã®å¿çã¯ãã¢ããªã±ãŒã·ã§ã³æ¯ã«ç°ãªããŸãã
äŸãšããŠããŠã§ããµãŒãã®èšå®ãã¡ã€ã«ã倿ŽåŸããŠã§ããµãŒãã«èšå®ãåèªã¿èŸŒã¿ãããå¿
èŠããããŸãã
`httpd` ãåèµ·åãããšãŠã§ããµãŒãã¯äžç¬ãªãã忢ããŠããŸããŸãã
ãã®ä»£ããã« `SIGHUP` ã·ã°ãã«ãéããŸãããã
ããŒã¢ã³ããšã«è¡åãéãã®ã§ã`SIGHUP` ãæåŸ
ããçµæãšãªãããã«ããã®ããŒã¢ã³ã®ææžãèªãã§ç¢ºèªããŠãã ããã
[IMPORTANT]
====
ã·ã¹ãã äžã®ã©ã³ãã ããã»ã¹ãçµäºãããã®ã¯ãããããŸããã
ç¹ã«ãPID ã 1 ã® man:init[8] ã¯ç¹å¥ã§ãã
`/bin/kill -s KILL 1` ã¯æšå¥šãããŠããŸããããå®è¡ãããšããšãç°¡åã«ã·ã¹ãã ãã·ã£ããããŠã³ãããããšãã§ããŸãã
kbd:[Return] ãæŒã _å_ ã« man:kill[1] ãå®è¡ããåŒæ°ãäºéã«ãã§ãã¯ãã _ç_ ãã€ããŠãã ããã
====
[[shells]]
== ã·ã§ã«
_ã·ã§ã«_ ã¯ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãå©çšããããã®ã³ãã³ãã©ã€ã³ã€ã³ã¿ãã§ãŒã¹ãæäŸããŸãã
ã·ã§ã«ã¯å
¥åãã£ã³ãã«ããã³ãã³ããåãåããããããå®è¡ããŸãã
倧éšåã®ã·ã§ã«ã¯ãæ¥ã
ã®äœæ¥ããã¡ã€ã«ç®¡çããã¡ã€ã«åã®å±éãã³ãã³ãã©ã€ã³ç·šéãã³ãã³ããã¯ããç°å¢å€æ°ãšãã£ãçµã¿èŸŒã¿ã®æ©èœãæã£ãŠãŸãã
FreeBSD ã«ã¯ Bourne Shell (man:sh[1]) ã 髿©èœ C-shell (man:tcsh[1]) ãå«ãŸããŠããŸãã
ãŸãããã以å€ã«ã `zsh` ã `bash` ãªã©ã®ã·ã§ã«ã FreeBSD Ports Collection ããå©çšå¯èœã§ãã
ã©ã®ã·ã§ã«ã䜿ããã¯ããŸã£ããè¶£å³ã®åé¡ã§ãã
ããªãã C ã®ããã°ã©ãã ã£ããšããã°ãman:tcsh[1] ã®ãã㪠C 颚ã®ã·ã§ã«ã®æ¹ãèœã¡çããããããŸããã
Linux(R) ãŠãŒã¶ã§ããã°ã`bash` ã奜ãŸããã§ãããã
ããããã®ã·ã§ã«ã¯ã ãŠãŒã¶ã®å¥œã¿ã®äœæ¥ç°å¢ã§å©çšã§ãã (ãããã¯ã§ããªã) ç¬èªã®æ©èœãæã£ãŠãããšããããšããããŠãã©ã®ã·ã§ã«ã䜿ãããšã«ããããæ±ºããã®ã¯ãŠãŒã¶èªèº«ãšããããšã§ãã
ã·ã§ã«ã®äžè¬çãªæ©èœã®äžã€ã«ããã¡ã€ã«åã®è£å®ããããŸãã
ã³ãã³ãããã¡ã€ã«åã®æåã®æ°æåãå
¥åã㊠kbd:[Tab] ãæŒããšãã·ã§ã«ã«ã³ãã³ãããã¡ã€ã«åã®æ®ãã®éšåãè£å®ãããããšãã§ããŸãã
äŸãšããŠã`foobar` ããã³ `footbar` ãšããäºã€ã®ãã¡ã€ã«ããããšããŸãã
`foobar` ãåé€ããããã« `rm foo` ãšå
¥åããkbd:[Tab] ãæŒããŠãã¡ã€ã«åãè£å®ããããšããŸãã
ãããã·ã§ã«ã¯ `rm foo` ãšã ãåºåããŸãã
`foobar` ããã³ `football` ã®ãã¡ã€ã«åã¯ãäž¡æ¹ãšã `foo` ããå§ãŸãããããã¡ã€ã«åã®è£å®ãå®å
šã«ã¯è¡ãªããŸããã§ããã
äžã€ä»¥äžã®ãã¡ã€ã«åã«ãããããå ŽåãããŒãé³ãããã·ã§ã«ãããã°ãéžæã§ãããã¹ãŠã®ãã¡ã€ã«åã衚瀺ããã·ã§ã«ããããŸãã
ãã®å Žåãåžæãããã¡ã€ã«åãåå®ããããã«ããŠãŒã¶ã¯ããã«æåãå
¥åããå¿
èŠããããŸãã
`t` ãå
¥åããŠããäžåºŠ kbd:[Tab] ãæŒããšãã·ã§ã«ã¯ãã¡ã€ã«åã確å®ã§ãããã¡ã€ã«åã®æ®ãã®éšåãè£å®ãããŸãã
ããäžã€ãããããã·ã§ã«ã®ç¹åŸŽãšããŠãç°å¢å€æ°ããããŸãã
ç°å¢å€æ°ãšã¯ãã·ã§ã«ã®ç°å¢å€æ°ã«ãããããŒãšå€ãšã®ãã¢ã§ãã
ãã®ç°å¢å€æ°ã¯ããã®ã·ã§ã«ããèµ·åãããããã°ã©ã ããåç
§ã§ãããããå©çšããŠããã°ã©ã ã®èšå®ãä¿åããã®ã«å©çšãããŸãã
<<shell-env-vars>> ã¯ãäžè¬çãªç°å¢å€æ°ãšãã®æå³ã®äžèЧã§ãã
ç°å¢å€æ°ã®ååã¯åžžã«å€§æåã§ãã
[[shell-env-vars]]
.äžè¬çãªç°å¢å€æ°
[cols="25h,~"]
|===
| 倿°å
| æå³
|`USER`
|çŸåšã®ãã°ã€ã³ãŠãŒã¶ã®ãŠãŒã¶åã
|`PATH`
|ã³ãã³ã§åºåãããå®è¡ãã¡ã€ã«æ¢çŽ¢ã®ããã® ãã£ã¬ã¯ããªã®ãªã¹ãã
|`DISPLAY`
|æ¥ç¶ãã Xorg ãã£ã¹ãã¬ã€ã®ãããã¯ãŒã¯å (ååšããå Žåã®ã¿)ã
|`SHELL`
|çŸåšã®ã·ã§ã«ã
|`TERM`
|ãŠãŒã¶ã®ç«¯æ«çš®åã 端æ«ã®ã±ãŒãããªãã£ã決å®ããã®ã«äœ¿ãããã
|`TERMCAP`
|çš®ã
ã®ç«¯æ«ã®æ©èœãå®çŸãã端æ«ã®ãšã¹ã±ãŒãã³ãŒãã® ããŒã¿ããŒã¹ã®ãšã³ããªã
|`OSTYPE`
|ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®çš®å¥ã
|`MACHTYPE`
|ã·ã¹ãã ã® CPU ã¢ãŒããã¯ãã£ã
|`EDITOR`
|ãŠãŒã¶ã®éžãã ããã¹ããšãã£ã¿ã
|`PAGER`
|ãŠãŒã¶ã®éžãã ç»é¢äžã§ããã¹ããèŠãããã®ãŠãŒãã£ãªãã£ã
|`MANPATH`
|ã³ãã³ã§åºåãããããã¥ã¢ã«ããŒãžæ¢çŽ¢ã®ããã® ãã£ã¬ã¯ããªã®ãªã¹ãã
|===
ç°å¢å€æ°ãèšå®ããæ¹æ³ã¯ãã·ã§ã«ããšã«å€å°ç°ãªããŸãã
man:tcsh[1] ã man:csh[1] ã§ã¯ `setenv` ã䜿ããŸãã
man:sh[1] ã `bash` çã® Bourne ã·ã§ã«ã§ã¯ã`export` ã䜿ã£ãŠçŸåšã®ç°å¢å€æ°ãèšå®ããŸãã
以äžã®äŸã§ã¯ã`tcsh` ã·ã§ã«ã§ããã©ã«ãã® `EDITOR` ã `/usr/local/bin/emacs` ã«èšå®ããŸãã
[source,shell]
....
% setenv EDITOR /usr/local/bin/emacs
....
`bash` ã§ã¯æ¬¡ã®ããã«ãªããŸãã
[source,shell]
....
% export EDITOR="/usr/local/bin/emacs"
....
çŸåšã®èšå®ã確èªããããã«ãã³ãã³ãã©ã€ã³äžã®å€æ°åã®åã« `$` æåã眮ãããšã§ãç°å¢å€æ°ãå±éãããããšãã§ããŸãã
ããšãã°ã`echo $TERM` 㯠`$TERM` ã ã»ãããããŠããå
容ã衚瀺ããŸãã
ã·ã§ã«ã¯ç¹æ®æåããç¹å¥ãªããŒã¿ã衚ããã®ãšããŠæ±ããŸãã
ãã®ç¹æ®æåã¯ã¡ã¿ãã£ã©ã¯ã¿ãšåŒã°ããŸãã
ãã£ãšãäžè¬çãªã¡ã¿ãã£ã©ã¯ã¿ã¯ `\*` ã§ãããã¯ãã¡ã€ã«åã«å«ãŸãããããããæåã衚ããŸãã
ã¡ã¿ãã£ã©ã¯ã¿ã¯ãã¡ã€ã«åã®å±éã«äœ¿ãããŸãã
ããšãã°ã`echo *` ãšå
¥åãããš `ls` ãšå
¥åããã®ãšã»ãšãã©åãçµæãåŸãããŸãã
ããã¯ã·ã§ã«ã `*` ãšããããããã¹ãŠã®ãã¡ã€ã«ãåãåã£ãŠ `echo` ã¯ã³ãã³ãã©ã€ã³ã§ãããã衚瀺ããããã§ãã
ç¹æ®æåãã·ã§ã«ã«è§£éãããªãããã«ãããããç¹æ®æåã®åã«ããã¯ã¹ã©ãã·ã¥æå (`\`) ã眮ããŠãšã¹ã±ãŒãããŠãã ããã
äŸãã° `echo $TERM` ã¯ç«¯æ«ã®èšå®ã衚瀺ãã`echo \$TERM` 㯠`$TERM` ãšãã®ãŸãŸè¡šç€ºããŸãã
[[changing-shells]]
=== ã·ã§ã«ã®å€æŽ
ããã©ã«ãã®ã·ã§ã«ã倿Žããäžçªç°¡åãªæ¹æ³ã¯ `chsh` ã䜿ãããšã§ãã
ãã®ã³ãã³ããå®è¡ãããšãç°å¢å€æ° `EDITOR` ã§ç€ºããããšãã£ã¿ (ããã©ã«ãã§ã¯ man:vi[1] ãèšå®ãããŠãã) ãç«ã¡äžãããŸãã
`Shell:` ã®è¡ã倿Žããã·ã§ã«ã®çµ¶å¯Ÿãã¹ã«å€æŽããŠãã ããã
代ããã« `chsh -s` ã䜿ããšããšãã£ã¿ãèµ·åããã«ã·ã§ã«ã倿Žã§ããŸãã
ããšãã°ãã·ã§ã«ã `bash` ã«å€ããããªããæ¬¡ã®ããã«ããŠãã ããã
[source,shell]
....
% chsh -s /usr/local/bin/bash
....
ããã³ããã«å¯ŸããŠãã¹ã¯ãŒããå
¥åããkbd:[Return] ãæŒããšãã·ã§ã«ã倿ŽãããŸãã
æ°ããã·ã§ã«ã䜿ãã«ã¯ãäžåºŠãã°ãªãããŠããåãã°ã€ã³ããŠãã ããã
[NOTE]
====
䜿ãããšæã£ãŠããã·ã§ã«ã¯__å¿
ã__ `/etc/shells` äžã«æžãããŠããªããã°ãªããŸããã
ã·ã§ã«ã crossref:ports[ports,ã¢ããªã±ãŒã·ã§ã³ã®ã€ã³ã¹ããŒã« - packages ãš ports] ã§èª¬æãããŠãã FreeBSD ã® Ports Collection ããã€ã³ã¹ããŒã«ããã®ã§ããã°ãèªåçã«ãã®ãã¡ã€ã«ã«è¿œå ãããŠããŸãã
ããæžãããŠããªããã°ã以äžã®ã³ãã³ãã§ããã¹ãã·ã§ã«ã®ãã¹ã«çœ®ãæããŠäœ¿ã£ãŠè¿œå ããŠãã ããã
[source,shell]
....
# echo /usr/local/bin/bash >> /etc/shells
....
ãã®åŸ man:chsh[1] ãå®è¡ããŠãã ããã
====
=== é«åºŠãªã·ã§ã«ã®æ©èœ
UNIX(R) ã®ã·ã§ã«ã¯åãªãã³ãã³ãã€ã³ã¿ããªã¿ã§ã¯ãªãããŠãŒã¶ãå®è¡ããã³ãã³ãã®åºåããªãã€ã¬ã¯ãããããå
¥åããªãã€ã¬ã¯ãããããšã«ããã³ãã³ãããäºãã«ç¹ããããšã§ãæçµçãªã³ãã³ãã®åºåçµæãæ¹è¯ã§ããŸãã
ãã®æ©èœããã«ãã€ã³ã³ãã³ããšãšãã«çšããããšã§ããŠãŒã¶ã¯æå€§åãããå¹çã®ç°å¢ãå
¥æã§ããŸãã
ã·ã§ã«ã®ãªãã€ã¬ã¯ãæ©èœã䜿ãããšã§ãã³ãã³ãã®åºåãå
¥åãå¥ã®ã³ãã³ãã«éã£ããããã¡ã€ã«ã«éãããšãã§ããŸãã
ããšãã°ã man:ls[1] ã³ãã³ãã®åºåããã£ããã£ããã«ã¯ã
åºåããã¡ã€ã«ã«ãªãã€ã¬ã¯ãããŠãã ããã
以äžã¯ãã®äŸã§ãã
[source,shell]
....
% ls > directory_listing.txt
....
å®è¡ãããšãçŸåšã®äœæ¥ãã£ã¬ã¯ããªã«ãããã¡ã€ã«ã®äžèЧã `directory_listing.txt` ã«åºåãããŸãã
man:sort[1] ã®ãããªã³ãã³ãã¯ãå
¥åãèªã¿èŸŒãããšãã§ããŸãã
å
ã»ã©åŸããã¡ã€ã«ã®äžèЧããœãŒãããã«ã¯ãå
¥åå
ããã¡ã€ã«ã«ãªãã€ã¬ã¯ãããŠãã ããã
[source,shell]
....
% sort < directory_listing.txt
....
å
¥åãããå
容ã¯ãœãŒãããç»é¢ã«åºåãããŸãã
ãã®åºåãä»ã®ãã¡ã€ã«ã«ãªãã€ã¬ã¯ãããã«ã¯ããªãã€ã¬ã¯ãã®åããæ··ããããã« man:sort[1] ã®åºåããªãã€ã¬ã¯ãããŠãã ããã
[source,shell]
....
% sort < directory_listing.txt > sorted.txt
....
ãããŸã§ã®äŸã§ã¯ããã¡ã€ã«ãã£ã¹ã¯ãªãã¿ãçšããŠã³ãã³ãã«å¯Ÿããªãã€ã¬ã¯ããè¡ã£ãŠããŸãã
ãã¹ãŠã® UNIX(R) ã·ã¹ãã ã¯æšæºå
¥å (stdin)ãæšæºåºå (stdout) ããã³æšæºãšã©ãŒ (stderr) ãšãã£ããã¡ã€ã«ãã£ã¹ã¯ãªãã¿ãæã£ãŠããŸãã
ããããã«å¯Ÿè±¡ãããã
å
¥åã¯ããŒããŒããŸãã¯ããŠã¹ãªã©ã®å
¥åãæäŸãããã®ã察象ãåºåã¯ã¹ã¯ãªãŒã³ã§ãã£ããããªã³ã¿çšçŽã察象ã§ãã
ãŸãããšã©ãŒã¯èšºæããšã©ãŒã¡ãã»ãŒãžã«çšãããããã®ã察象ã§ãã
ãããã¯ãI/O ããŒã¹ã®ãã¡ã€ã«ãã£ã¹ã¯ãªãã¿ãæã«ã¯ã¹ããªãŒã ãšèããããŸãã
ãããã®ãã£ã¹ã¯ãªãã¿ã䜿çšããããšã§ãã·ã§ã«ã¯åºåãšå
¥åã«ã€ããŠããŸããŸãªã³ãã³ããçµç±ããããŸãããã¡ã€ã«ã«å¯ŸããŠåºåãããããã¯ãã¡ã€ã«ããèªã¿èŸŒãããã«ãªãã€ã¬ã¯ãã§ããŸãã
ãªãã€ã¬ã¯ãã®ä»ã®æ¹æ³ã¯ããã€ãã®æ©èœã§ãã
UNIX(R) ã®ãã€ãèšå· "|" ã¯ãã³ãã³ãã®åºåãä»ã®ããã°ã©ã ã«çŽæ¥æž¡ããŸãã
åºæ¬çã«ã¯ããã€ãã¯ã³ãã³ãã®æšæºåºåãä»ã®ã³ãã³ãã®æšæºåºåã«æž¡ããŸãã
以äžã¯ãã®äŸã§ãã
[source,shell]
....
% cat directory_listing.txt | sort | less
....
ãã®äŸã§ã¯ã`directory_listing.txt` ã®å
容ããœãŒãããããã®çµæã man:less[1] ã«æž¡ãããŸãã
ãã®ã³ãã³ããå®è¡ãããšãåºåãã¹ã¯ããŒã«ããŠç»é¢ããèŠããªããªãããšããããããšãã§ããŠããŠãŒã¶ã¯åºåãèªåã®ããŒã¹ã§ã¹ã¯ããŒã«ã§ããŸãã
[[editors]]
== ããã¹ããšãã£ã¿
FreeBSD ã®èšå®ã®å€ãã¯ãããã¹ããã¡ã€ã«ã®ç·šéã§è¡ãããŸãã
ãã®ãããããã¹ããšãã£ã¿ã®æ±ãã«æ
£ãããšè¯ãã§ãããã
FreeBSD ã«ã¯ãåºæ¬ã·ã¹ãã ã®äžéšãšããŠäºãäžæäŸããããã®ãšãPorts Collection ããå©çšã§ãããããããã®ããã¹ããšãã£ã¿ãçšæãããŠããŸãã
åŠç¿ãç°¡åãªãšãã£ã¿ã¯ã easy editor ã®ç¥ã§ man:ee[1] ãšåŒã°ãããã®ã§ãã
ãã®ãšãã£ã¿ãç«ã¡äžããã«ã¯ã`ee _filename_` ãšå
¥åããŠãã ããã
ããã§ _filename_ ã¯ã ç·šéããããšããŠãããã¡ã€ã«ã®ååã§ãã
äžæŠãã®ã³ãã³ãã®äžã«å
¥ãã°ã ãšãã£ã¿ã®æ©èœãæäœããã³ãã³ãã¯ãã¹ãŠãã£ã¹ãã¬ã€ã®äžéšã«è¡šç€ºãããŠããŸãã
ãã£ã¬ãã (`^`) 㯠kbd:[Ctrl] ãæå³ããã®ã§ã`^e` 㯠kbd:[Ctrl+e] ãæŒããšããæå³ã«ãªããŸãã
man:ee[1] ãçµäºããã«ã¯ kbd:[Esc] ãæŒãããããŠã¡ã€ã³ã¡ãã¥ãŒãã "leave editor" ãªãã·ã§ã³ãéžæããŠãã ããã
ãã¡ã€ã«ãæŽæ°ãããŠãããšãã¯ããšãã£ã¿ã¯å€æŽãã»ãŒããããã©ããããã³ãããåºããŸãã
FreeBSD ã«ã¯ãããŒã¹ã·ã¹ãã ã®äžéšãšã㊠man:vi[1] ãšãã£ããã匷åãªããã¹ããšãã£ã¿ãçšæãããŠããŸãã
package:editors/emacs[] ããã³ package:editors/vim[] ãšãã£ãä»ã®ãšãã£ã¿ã¯ Ports Collection ã®äžéšãšããŠçšæãããŠããŸãã
ãããã®ãšãã£ã¿ã¯ããåŠç¿ãè€éã§ãããããé«ãæ©èœæ§ãæäŸããŸãã
ããããããªããå€éã®ããã¹ããç·šéããããšãèããŠãããªãã vim ã Emacs ãšãã£ã匷åãªãšãã£ã¿ãç¿åŸããããšã¯ã ããå€ãã®æéãç¯çŽããããšã§ãããã
ãã¡ã€ã«ãç·šéããããæåå
¥åãå¿
èŠãšãããããªã¢ããªã±ãŒã·ã§ã³ã®å€ãã¯ãèªåçã«ããã¹ããšãã£ã¿ãèµ·åããŸãã
<<shells>> ã®ç¯ã§èª¬æããããã«ãããã©ã«ãã®ãšãã£ã¿ã倿Žããã«ã¯ `EDITOR` ç°å¢å€æ°ã«åžæãããšãã£ã¿ãèšå®ããŠãã ããã
[[basics-devices]]
== ããã€ã¹ãšããã€ã¹ããŒã
ããã€ã¹ãšã¯ã·ã¹ãã äžã®ããŒããŠã§ã¢ã«é¢ãããã®ã«å¯ŸããŠãã䜿ãããçšèªã§ããã£ã¹ã¯ãããªã³ã¿ãã°ã©ãã£ãã¯ã«ãŒããããŒããŒããå«ãŸããŸãã
FreeBSD ãèµ·åãããšããããŒãã¡ãã»ãŒãžã®å€§éšåã¯æ€åºãããããã€ã¹ã«ã€ããŠã®ãã®ã§ãã
ããŒãã¡ãã»ãŒãžã¯ `/var/run/dmesg.boot` ã«ä¿åãããŠããŸãã
åããã€ã¹ã¯ããã€ã¹åãšçªå·ãæã¡ãŸãã
äŸãã°ã`ada0` ã¯æåã® SATA CD-ROM ãã©ã€ãã§ã`kbd0` ã¯ããŒããŒãã衚ããŸãã
FreeBSD ã«ãããã»ãšãã©ã®ããã€ã¹ãããã€ã¹ããŒããšåŒã°ãã `/dev` ã«ããã¹ãã·ã£ã«ãã¡ã€ã«ãéããŠã¢ã¯ã»ã¹ããªããã°ãªããŸããã
[[basics-more-information]]
== ããã¥ã¢ã«ããŒãž
FreeBSD ã«ã€ããŠã®ãã£ãšãå
æ¬çãªææžã¯ã ããã¥ã¢ã«ããŒãžã®åœ¢åŒã«ãªã£ãŠãããã®ã§ãã
FreeBSD ã·ã¹ãã äžã®ã»ãšãã©ãã¹ãŠã®ããã°ã©ã ã«ã¯ãåºæ¬çãªæäœæ¹æ³ãšå©çšå¯èœãªåŒæ°ã説æããŠãããªãã¡ã¬ã³ã¹ããã¥ã¢ã«ãæ·»ä»ãããŠããŸãã
ãããã®ããã¥ã¢ã«ã¯ `man` ã䜿ã£ãŠèŠãããšãã§ããŸãã
[source,shell]
....
% man ã³ãã³ãå
....
ããã§ `ã³ãã³ãå` ã®ãšããã«ã¯ãç¥ãããã³ãã³ãã®ååãå
¥ããŸãã
ããšãã° man:ls[1] ã«ã€ããŠç¥ãããå Žåã«ã¯ã次ã®ããã«å
¥åããŸãã
[source,shell]
....
% man ls
....
ããã¥ã¢ã«ã¯ããããã¯ããšã«ã»ã¯ã·ã§ã³çªå·ã§åé¡ãããŠããŸãã
FreeBSD ã§ã¯ã以äžã®ã»ã¯ã·ã§ã³ããããŸãã
. ãŠãŒã¶ã³ãã³ã
. ã·ã¹ãã ã³ãŒã«ãšãšã©ãŒçªå·
. C ã®ã©ã€ãã©ãªé¢æ°
. ããã€ã¹ãã©ã€ã
. ãã¡ã€ã«åœ¢åŒ
. ã²ãŒã ã嚯楜
. ããŸããŸãªæ
å ±
. ã·ã¹ãã ã®ç®¡çãšæäœã®ããã®ã³ãã³ã
. ã·ã¹ãã ã«ãŒãã«ã€ã³ã¿ãã§ãŒã¹
ææã åããããã¯ããªã³ã©ã€ã³ããã¥ã¢ã«ã®è€æ°ã®ã»ã¯ã·ã§ã³ã«èšèŒãããŠããå ŽåããããŸãã
ããšãã°ã`chmod` ãŠãŒã¶ã³ãã³ããš `chmod()` ã·ã¹ãã ã³ãŒã«ã®å Žåãããã«è©²åœããŸãã
man:man[1] ã«ã»ã¯ã·ã§ã³çªå·ãäžããããšã§ã 衚瀺ãããã»ã¯ã·ã§ã³ãæå®ã§ããŸãã
[source,shell]
....
% man 1 chmod
....
äžã®ããã«ããã°ããŠãŒã¶ã³ãã³ã man:chmod[1] ã®ããã¥ã¢ã«ããŒãžã衚瀺ãããŸãã
ãªã³ã©ã€ã³ããã¥ã¢ã«ã®ç¹å®ã»ã¯ã·ã§ã³ãžã®åç
§ã¯ãæ
£ç¿çã«æžãããŠããææžã§æ¬åŒ§ã®äžã«ç€ºãããŸãã
ããªãã¡ãman:chmod[1] ã¯ãŠãŒã¶ã³ãã³ãããman:chmod[2] ã¯ã·ã¹ãã ã³ãŒã«ã®æ¹ã瀺ããŠããŸãã
ããã¥ã¢ã«ããŒãžã®ååãç¥ããªãå Žåã«ã¯ã`man -k` ã䜿ã£ãŠããã¥ã¢ã«ããŒãžã®è§£èª¬ (description) ããããŒã¯ãŒããæ€çŽ¢ããŠãã ããã
[source,shell]
....
% man -k mail
....
ãã®ã³ãã³ãã¯ã"mail" ãšããããŒã¯ãŒããã³ãã³ã解説ã«å«ãã³ãã³ãã®äžèЧã衚瀺ããŸãã
ãã㯠man:apropos[1] ãšåçã®æ©èœã§ãã
`/usr/sbin` ã«ãããã¹ãŠã®ã³ãã³ãã®èª¬æãèªãã«ã¯ã以äžã®ããã«å®è¡ããŠãã ããã
[source,shell]
....
% cd /usr/sbin
% man -f * | more
....
ãŸãã¯ã以äžãå®è¡ããŠãã ããã
[source,shell]
....
% cd /usr/sbin
% whatis * |more
....
[[basics-info]]
=== GNU ã® Info ãã¡ã€ã«
FreeBSD ã«ã¯ Free Software Foundation (FSF) ã«ããã¢ããªã±ãŒã·ã§ã³ããŠãŒãã£ãªãã£ãå«ãŸããŠããŸãã
ãããã®ããã°ã©ã ã«ã¯ãããã¥ã¢ã«ããŒãžã«å ã㊠`info` ãã¡ã€ã«ãšåŒã°ãããã€ããŒããã¹ã圢åŒã®ææžãä»å±ããŠããŸãã
ãã®ææžã¯ man:info[1]ãããã㯠package:editors/emacs[] ãã€ã³ã¹ããŒã«ããŠãããªã emacs ã® info ã¢ãŒãã§èªãããšãã§ããŸãã
man:info[1] ã䜿ãã«ã¯ã次ã®ããã«å
¥åããŠãã ããã
[source,shell]
....
% info
....
`h` ãšå
¥åãããšã ç°¡åãªæåŒããèªãããšãã§ããŸãã ã¯ã€ãã¯ã³ãã³ããªãã¡ã¬ã³ã¹ã¯ `?` ãå
¥åããŠãã ããã