-
Notifications
You must be signed in to change notification settings - Fork 0
/
symlinks.1
128 lines (127 loc) · 3.03 KB
/
symlinks.1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
.TH SYMLINKS 1 "Jan 2020" "Version 1.7"
.SH NAME
symlinks \- symbolic link maintenance utility
.SH SYNOPSIS
.B symlinks
[
.B -cdorstvC
]
.I LINK|DIR\fR ...
.SH DESCRIPTION
.BI symlinks
is a useful utility for maintainers of FTP sites, CDROMs,
and Linux software distributions.
It scans directories for symbolic links and lists them on stdout,
often revealing flaws in the filesystem tree.
.PP
Each link is output with a classification of
.B relative,
.B absolute,
.B dangling,
.B messy,
.B lengthy,
or
.B other_fs.
.PP
.B relative
links are those expressed as paths relative to the directory in which
the links reside, usually independent of the mount point of the filesystem.
.PP
.B absolute
links are those given as an absolute path from the root directory
as indicated by a leading slash (/).
.PP
.B dangling
links are those for which the target of the link does not currently exist.
This commonly occurs for
.B absolute
links when a filesystem is mounted at other than its
customary mount point (such as when the normal root filesystem is
mounted at /mnt after booting from alternative media).
.PP
.B messy
links are links which contain unnecessary slashes or dots in the path.
These are cleaned up as well when
.B -c
is specified.
.PP
.B lengthy
links are links which use "../" more than necessary in the path
(eg. /bin/vi -> ../bin/vim)
These are only detected when
.B -s
is specified, and are only cleaned up when
.B -c
is also specified.
.PP
.B other_fs
are those links whose target currently resides on a different filesystem
from where symlinks was run (most useful with
.B -r
).
.PP
.SH OPTIONS
.TP
.I -c
convert absolute links (within the same filesystem) to relative links.
This permits links to maintain their validity regardless of the mount
point used for the filesystem -- a desirable setup in most cases.
This option also causes any
.B messy
links to be cleaned up, and, if
.B -s
was also specified, then
.B lengthy
links are also shortened.
Links affected by
.B -c
are prefixed with
.B changed
in the output.
.TP
.I -d
causes
.B dangling
links to be removed.
.TP
.I -o
fix links on other filesystems encountered while recursing.
Normally, other filesystems encountered are not modified by symlinks.
.TP
.I -r
recursively operate on subdirectories within the same filesystem.
.TP
.I -s
causes
.B lengthy
links to be detected.
.TP
.I -t
is used to test for what
.B symlinks
would do if
.B -c
were specified, but without really changing anything.
.TP
.I -v
show all symbolic links. By default,
.B relative
links are not shown unless
.B -v
is specified.
.TP
.I -C
chroot to current directory before looking at dirlist.
You need to be root for the chroot() call to work,
and all paths given as args must be relative to the current directory.
.PP
.SH BUGS
.B symlinks
does not recurse or change links across filesystems.
.PP
.SH AUTHOR
.B symlinks
has been written by Mark Lord <[email protected]>, the original developer and maintainer
of the IDE Performance Package for linux, the Linux IDE Driver subsystem, hdparm, and a current day libata hacker.
.SH SEE ALSO
.BR symlink (2)