xref: /freebsd/sbin/savecore/savecore.8 (revision 7dc5b440)
18fae3551SRodney W. Grimes.\" Copyright (c) 1980, 1991, 1993
28fae3551SRodney W. Grimes.\"	The Regents of the University of California.  All rights reserved.
38fae3551SRodney W. Grimes.\"
48fae3551SRodney W. Grimes.\" Redistribution and use in source and binary forms, with or without
58fae3551SRodney W. Grimes.\" modification, are permitted provided that the following conditions
68fae3551SRodney W. Grimes.\" are met:
78fae3551SRodney W. Grimes.\" 1. Redistributions of source code must retain the above copyright
88fae3551SRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer.
98fae3551SRodney W. Grimes.\" 2. Redistributions in binary form must reproduce the above copyright
108fae3551SRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer in the
118fae3551SRodney W. Grimes.\"    documentation and/or other materials provided with the distribution.
12fbbd9655SWarner Losh.\" 3. Neither the name of the University nor the names of its contributors
138fae3551SRodney W. Grimes.\"    may be used to endorse or promote products derived from this software
148fae3551SRodney W. Grimes.\"    without specific prior written permission.
158fae3551SRodney W. Grimes.\"
168fae3551SRodney W. Grimes.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
178fae3551SRodney W. Grimes.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
188fae3551SRodney W. Grimes.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
198fae3551SRodney W. Grimes.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
208fae3551SRodney W. Grimes.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
218fae3551SRodney W. Grimes.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
228fae3551SRodney W. Grimes.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
238fae3551SRodney W. Grimes.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
248fae3551SRodney W. Grimes.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
258fae3551SRodney W. Grimes.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
268fae3551SRodney W. Grimes.\" SUCH DAMAGE.
278fae3551SRodney W. Grimes.\"
284be4929cSGarrett Wollman.\"     From: @(#)savecore.8	8.1 (Berkeley) 6/5/93
297f3dea24SPeter Wemm.\" $FreeBSD$
308fae3551SRodney W. Grimes.\"
3164a16434SMark Johnston.Dd October 24, 2017
328fae3551SRodney W. Grimes.Dt SAVECORE 8
339fe48c6eSRuslan Ermilov.Os
348fae3551SRodney W. Grimes.Sh NAME
358fae3551SRodney W. Grimes.Nm savecore
368fae3551SRodney W. Grimes.Nd "save a core dump of the operating system"
378fae3551SRodney W. Grimes.Sh SYNOPSIS
387c7fb079SRuslan Ermilov.Nm
398fae3551SRodney W. Grimes.Fl c
40349d039bSPawel Jakub Dawidek.Op Fl v
41349d039bSPawel Jakub Dawidek.Op Ar device ...
427c7fb079SRuslan Ermilov.Nm
43628d16a3SDoug Barton.Fl C
44628d16a3SDoug Barton.Op Fl v
45349d039bSPawel Jakub Dawidek.Op Ar device ...
46628d16a3SDoug Barton.Nm
4706691045SCraig Rodrigues.Op Fl -libxo
484c98f36dSDag-Erling Smørgrav.Op Fl fkvz
49eeff0b1bSPawel Jakub Dawidek.Op Fl m Ar maxdumps
50edc4f96eSBill Fenner.Op Ar directory Op Ar device ...
518fae3551SRodney W. Grimes.Sh DESCRIPTION
521fa8142dSRuslan ErmilovThe
531fa8142dSRuslan Ermilov.Nm
541fa8142dSRuslan Ermilovutility
55edc4f96eSBill Fennercopies a core dump into
561fa8142dSRuslan Ermilov.Ar directory ,
57edc4f96eSBill Fenneror the current working directory if no
581fa8142dSRuslan Ermilov.Ar directory
59edc4f96eSBill Fennerargument is given,
608fae3551SRodney W. Grimesand enters a reboot message and information about the core dump into
618fae3551SRodney W. Grimesthe system log.
628fae3551SRodney W. Grimes.Pp
638fae3551SRodney W. GrimesThe options are as follows:
64eeff0b1bSPawel Jakub Dawidek.Bl -tag -width ".Fl m Ar maxdumps"
6506691045SCraig Rodrigues.It Fl -libxo
6606691045SCraig RodriguesGenerate output via
6706691045SCraig Rodrigues.Xr libxo 3
6806691045SCraig Rodriguesin a selection of different human and machine readable formats.
6906691045SCraig RodriguesSee
7006691045SCraig Rodrigues.Xr xo_parse_args 3
7106691045SCraig Rodriguesfor details on command line arguments.
72628d16a3SDoug Barton.It Fl C
73628d16a3SDoug BartonCheck to see if a dump exists,
74628d16a3SDoug Bartonand display a brief message to indicate the status.
75628d16a3SDoug BartonAn exit status of 0 indicates that a dump is there,
76628d16a3SDoug Barton1 indicates that none exists.
77628d16a3SDoug BartonThis option is compatible only with the
78628d16a3SDoug Barton.Op Fl v
79628d16a3SDoug Bartonoption.
808fae3551SRodney W. Grimes.It Fl c
81f9b52c93SPhilippe CharnierClear the dump, so that future invocations of
82f9b52c93SPhilippe Charnier.Nm
838fae3551SRodney W. Grimeswill ignore it.
848fae3551SRodney W. Grimes.It Fl f
855fb7027cSDavid E. O'BrienForce a dump to be taken even if either the dump was cleared or if the
865fb7027cSDavid E. O'Briendump header information is inconsistent.
874c98f36dSDag-Erling Smørgrav.It Fl k
884c98f36dSDag-Erling SmørgravDo not clear the dump after saving it.
89eeff0b1bSPawel Jakub Dawidek.It Fl m Ar maxdumps
90eeff0b1bSPawel Jakub DawidekMaximum number of dumps to store.
91eeff0b1bSPawel Jakub DawidekOnce the number of stored dumps is equal to
92eeff0b1bSPawel Jakub Dawidek.Ar maxdumps
93eeff0b1bSPawel Jakub Dawidekthe counter will restart from
94eeff0b1bSPawel Jakub Dawidek.Dv 0 .
958fae3551SRodney W. Grimes.It Fl v
96f9b52c93SPhilippe CharnierPrint out some additional debugging information.
97ff869641SPhilip PaepsSpecify twice for more information.
988fae3551SRodney W. Grimes.It Fl z
9964a16434SMark JohnstonCompress the dump (see
100dff462c3SKris Kennaway.Xr gzip 1 ) .
10164a16434SMark JohnstonThe dump may already be compressed if the kernel was configured to
10264a16434SMark Johnstondo so by
10364a16434SMark Johnston.Xr dumpon 8 .
10464a16434SMark JohnstonIn this case, the option has no effect.
1058fae3551SRodney W. Grimes.El
1068fae3551SRodney W. Grimes.Pp
1071fa8142dSRuslan ErmilovThe
1081fa8142dSRuslan Ermilov.Nm
1091fa8142dSRuslan Ermilovutility
110edc4f96eSBill Fennerlooks for dumps on each device specified by the
111edc4f96eSBill Fenner.Ar device
112edc4f96eSBill Fennerargument(s), or on each device in
113edc4f96eSBill Fenner.Pa /etc/fstab
1141fa8142dSRuslan Ermilovmarked as
1151fa8142dSRuslan Ermilov.Dq dump
1161fa8142dSRuslan Ermilovor
1171fa8142dSRuslan Ermilov.Dq swap .
1181fa8142dSRuslan ErmilovThe
1191fa8142dSRuslan Ermilov.Nm
1201fa8142dSRuslan Ermilovutility
121edc4f96eSBill Fennerchecks the core dump in various ways to make sure that it is complete.
1228fae3551SRodney W. GrimesIf it passes these checks, it saves the core image in
1238fae3551SRodney W. Grimes.Ar directory Ns Pa /vmcore.#
124edc4f96eSBill Fennerand information about the core in
12520ba6b0dSRuslan Ermilov.Ar directory Ns Pa /info.# .
126480f31c2SKonrad WitaszczykIf the core is encrypted, it saves the dump key in
127480f31c2SKonrad Witaszczyk.Ar directory Ns Pa /key.# .
128480f31c2SKonrad WitaszczykThe core can be later decrypted using
129480f31c2SKonrad Witaszczyk.Xr decryptcore 8 .
13010187caeSRobert WatsonFor kernel textdumps generated with the
13110187caeSRobert Watson.Xr textdump 4
13210187caeSRobert Watsonfacility, output will be stored in the
13310187caeSRobert Watson.Xr tar 5
13410187caeSRobert Watsonformat and named
13520ba6b0dSRuslan Ermilov.Ar directory Ns Pa /textdump.tar.# .
13620ba6b0dSRuslan ErmilovThe
13720ba6b0dSRuslan Ermilov.Dq #
13820ba6b0dSRuslan Ermilovis the number from the first line of the file
1398fae3551SRodney W. Grimes.Ar directory Ns Pa /bounds ,
1408fae3551SRodney W. Grimesand it is incremented and stored back into the file each time
141f9b52c93SPhilippe Charnier.Nm
1428fae3551SRodney W. Grimessuccessfully runs.
1438fae3551SRodney W. Grimes.Pp
1441fa8142dSRuslan ErmilovThe
1451fa8142dSRuslan Ermilov.Nm
1461fa8142dSRuslan Ermilovutility
1478fae3551SRodney W. Grimesalso checks the available disk space before attempting to make the copies.
1488fae3551SRodney W. GrimesIf there is insufficient disk space in the file system containing
1498fae3551SRodney W. Grimes.Ar directory ,
1508fae3551SRodney W. Grimesor if the file
1518fae3551SRodney W. Grimes.Ar directory Ns Pa /minfree
1528fae3551SRodney W. Grimesexists and the number of free kilobytes (for non-superusers) in the
1538fae3551SRodney W. Grimesfile system after the copies were made would be less than the number
1548fae3551SRodney W. Grimesin the first line of this file, the copies are not attempted.
1558fae3551SRodney W. Grimes.Pp
1568fae3551SRodney W. GrimesIf
157f9b52c93SPhilippe Charnier.Nm
1588fae3551SRodney W. Grimessuccessfully copies the kernel and the core dump, the core dump is cleared
1598fae3551SRodney W. Grimesso that future invocations of
160f9b52c93SPhilippe Charnier.Nm
1618fae3551SRodney W. Grimeswill ignore it.
1628fae3551SRodney W. Grimes.Pp
1631fa8142dSRuslan ErmilovThe
1641fa8142dSRuslan Ermilov.Nm
1651fa8142dSRuslan Ermilovutility
1668fae3551SRodney W. Grimesis meant to be called near the end of the initialization file
1678fae3551SRodney W. Grimes.Pa /etc/rc
1688fae3551SRodney W. Grimes(see
1698fae3551SRodney W. Grimes.Xr rc 8 ) .
1708fae3551SRodney W. Grimes.Sh SEE ALSO
171dff462c3SKris Kennaway.Xr gzip 1 ,
172e8ae41c3SRuslan Ermilov.Xr getbootfile 3 ,
17306691045SCraig Rodrigues.Xr libxo 3 ,
17406691045SCraig Rodrigues.Xr xo_parse_args 3 ,
17510187caeSRobert Watson.Xr textdump 4 ,
176138f7e4bSTom Rhodes.Xr tar 5 ,
1777dc5b440SEdward Tomasz Napierala.Xr crashinfo 8 ,
178480f31c2SKonrad Witaszczyk.Xr decryptcore 8 ,
179e2fb2db5SNick Hibma.Xr dumpon 8 ,
1808fae3551SRodney W. Grimes.Xr syslogd 8
1818fae3551SRodney W. Grimes.Sh HISTORY
1828fae3551SRodney W. GrimesThe
1838fae3551SRodney W. Grimes.Nm
184629e80efSPhilippe Charnierutility appeared in
1858fae3551SRodney W. Grimes.Bx 4.1 .
18610187caeSRobert Watson.Pp
18710187caeSRobert WatsonSupport for kernel textdumps appeared in
1882a72feb4SChristian Brueffer.Fx 7.1 .
1896087df9eSRuslan Ermilov.Sh BUGS
1906087df9eSRuslan ErmilovThe minfree code does not consider the effect of compression or sparse files.
191