提供: セキュリティ
2013年4月26日 (金) 01:09時点におけるDaemon (トーク | 投稿記録)による版

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索

portmaster は、 portsパッケージを管理するツールです。






% cd /usr/ports/ports-mgmt/portmaster
% sudo make install clean



% portmaster --help
===>>> Version 3.11
Common flags: [--force-config -CGHKgntvw -[B|b] -[f|i] -[D|d]]
    [[[--packages|-P]|[--packages-only|-PP]] | [--packages-build]]
    [--packages-if-newer] [--delete-build-only] [--always-fetch]
    [--local-packagedir=<path>] [--packages-local] [--delete-packages]
    [--no-confirm] [--no-term-title] [--no-index-fetch]
    [--index|--index-first|--index-only] [-m <arguments for make>]
    [-x <glob pattern to exclude from building>]
portmaster [Common flags] <full name of port directory in /var/db/pkg>
portmaster [Common flags] <full path to /usr/ports/foo/bar>
portmaster [Common flags] <glob pattern of directories in /var/db/pkg>
portmaster [Common flags] [--update-if-newer] Multiple full names/paths
         from /var/db/pkg|/usr/ports and/or multiple globs from /var/db/pkg
portmaster [Common flags] . [Use in /usr/ports/foo/bar to build that port]
portmaster [Common flags] -a
portmaster --show-work [-Gv] [-m <args>] <single port, as above>
portmaster [Common flags] -o <new port dir in /usr/ports> <installed port>
portmaster [Common flags] [-R] -r <name/glob of port directory in /var/db/pkg>
         (-r <port> can be specified multiple times)
portmaster -l
portmaster [--index-only [-t]] -L
portmaster --list-origins
portmaster [--force-config|-G] [-P|-PP] [-aftv] -F
portmaster [-n|y] [-b] [-D|d] -e <name/glob of a single port in /var/db/pkg>
portmaster [-n|y] [-b] [-D|d] -s
portmaster [-n|y] [-t] --clean-distfiles
portmaster [-n|y] [--index|--index-only] --clean-packages
portmaster [-n|y] [--index|--index-only] [-v] --check-depends
portmaster [-n|y] [-v] --check-port-dbdir
portmaster -h|--help
portmaster --version
--force-config run 'make config' for all ports (overrides -G)
-C prevents 'make clean' from being run before building
-G prevents 'make config'
-H hide details of the port build and install in a log file
-K prevents 'make clean' from being run after building
-B prevents creation of the backup package for the installed port
-b create and keep a backup package of an installed port
-g create a package of the new port
-n run through all steps, but do not make or install any ports
-t recurse dependencies thoroughly, using all-depends-list
-v verbose output
-w save old shared libraries before deinstall
-i interactive update mode -- ask whether to rebuild ports
-D no cleaning of distfiles
-d always clean distfiles
-m <arguments for the 'make' command line>
-x <avoid building or updating ports that match this pattern>
   Can be specified more than once
--no-confirm do not ask user to confirm list of ports to be
   installed and/or updated before proceeding
--no-term-title do not update the xterm title bar
--no-index-fetch skip fetching the INDEX file
--index use INDEX-[7-9] exclusively to check if a port is up to date
--index-first use the INDEX for status, but double-check with the port
--index-only do not try to use /usr/ports
--delete-build-only delete ports that are build-only dependencies
   after a successful run, only if installed this run
--update-if-newer (only for multiple ports listed on command line)
   do not rebuild/reinstall if the installed version is up to date
-P|--packages use packages, but build port if not available
-PP|--packages-only fail if no package is available
--packages-build use packages for all build dependencies
--packages-if-newer use package if newer than installed even
   if the package is not the latest according to the ports tree
--always-fetch fetch package even if it already exists locally
--local-packagedir=<path> where local packages can be found,
   will fall back to fetching if no local version exists
--packages-local use packages from --local-packagedir only
--delete-packages after installing from a package, delete it
-a check all ports, update as necessary
--show-work list what ports are and would be installed
-o replace the installed port with a port from a different origin
[-R] -r rebuild port, and all ports that depend on it
-R used with -[rf] to skip ports updated on a previous run
-l list all installed ports by category
-L list all installed ports by category, and search for updates
--list-origins list directories from /usr/ports for root and leaf ports
[--force-config|-G] [-aftv] -F fetch distfiles only
-n answer no to all user prompts for the features below
-y answer yes to all user prompts for the features below
[-n|y] [-b] [-D|d] -e expunge one port via pkg_delete, and remove its distfiles
[-n|y] [-b] [-D|d] -s clean out stale ports that used to be depended on
[-t] [-n] --clean-distfiles offer to delete stale distfiles
[-t] -y --clean-distfiles delete stale distfiles without prompting
   with -t distfile is valid from any port, not just those installed
[--index|--index-only] [-n] --clean-packages offer to delete stale packages
[--index|--index-only] -y --clean-packages delete without prompting
   --index-only is required if no ports tree is available
[-n|y] [-v] --check-depends cross-check and update dependency info for all ports
[-n|y] [-v] --check-port-dbdir check for stale entries in /var/db/ports
-h|--help display this help message
--version display the version number
Please see the portmaster(8) man page for more information


nmap をインストールする例です。

% whereis -q -s nmap
% sudo portmaster -y -d /usr/ports/security/nmap



% sudo portmaster -a

アップデートが必要なすべてのportsをアップデートし、アップデート後に、古い distfile を削除します。

% sudo portmaster -aD
% sudo portmaster --clean-distfiles


nmap をアップデートする例です。

% sudo portmaster nmap
% sudo portmaster security/nmap
% sudo portmaster /var/db/pkg/nmap-6.25_1/


% sudo portmaster nmap amap