Gentoo Archives: gentoo-user-hu

From: cjvt <cjvt@××××××××.hu>
To: gentoo-user-hu@l.g.o
Subject: Re: [gentoo-user-hu] revdep-rebuild
Date: Tue, 07 Oct 2008 09:02:01
Message-Id: 200810071100.50204.cjvt@inebhedj.hu
In Reply to: Re: [gentoo-user-hu] revdep-rebuild by George Hron
1 Üdv,
2
3 a nehézség az, hogy ez 1 élesben működő szerver, mindenesetre egy kis
4 szolgáltatás felfüggesztéssel egybekötve megoldottam, az egész /var könyvtár
5 mindenestül más partícióra került.
6
7 nem azt írtam, hogy az a gond, hogy nem /-el azonos partíció.
8
9 azt írtam az a gond, hogy eddig ez nem volt gond, ti. hogy symlink mutat a
10 könyvtárra, eddig mindenki magasról letojta, most viszont 1xre gond lett, ezt
11 pedig koloti tulzassal tovabb gorgettem, hogy ennyi erovel akkor a jovoben
12 akarmi mas is gond lehet, pl. hogy nem / alatt van, vagy tul nagy, vagy, hogy
13 penteken akarok revdep-rebuildelni.
14 :)
15
16 vt
17
18 2008. október 7. dátummal George Hron ezt írta:
19 > Varj-varj, itt nem az a gond, hogy nem a /-el azonos particion van, azt
20 > mindenki magasrol tojja le, hanem hogy a /var/mnt a helye a /var helyett.
21 > Tehat a valodi megoldas az lenne, amit irtam, hogy ne a /var/mnt ala, hanem
22 > a /var ala mountold be a cuccot, ami meg nem oda valo, azt
23 > konfiguralassal/egyeb megoldasokkal vonszold el.
24 >
25 > A tmp_target-et nem fogod felulbiralni, mert fuggveny-lokalis valtozo (help
26 > local). Tehat a hatokore a fuggvenyen belulre terjed ki.
27 >
28 > Udv:
29 > --
30 > G.
31 >
32 > 2008/10/6 cjvt <cjvt@××××××××.hu>
33 >
34 > > 2008. október 6. dátummal George Hron ezt írta:
35 > > > Hat nem tudom, ez igy nem tunik a legjobb otletnek. Valoszinu, hogy
36 > > > kiolvassa a symlinket. Szerintem a /var/cache -t szedd le a /var/mnt
37 > >
38 > > alol.
39 > >
40 > > > Masik lehetoseg a /var/mnt helyett a /var-ba mountolni, a szerverek
41 > >
42 > > cuccait
43 > >
44 > > > meg szepen eltenni onnan, mondjuk a /srv konyvtarba (en ezt szoktam
45 > > > eleve csinalni).
46 > >
47 > > Igen, ez eddig vilagos, csak ez esetben az erdekelne, hogy vajon miert is
48 > > dontott igy barmely fejleszto (merthogy az elmult par ev gentoolkitjei
49 > > bekeben megfertek ezzel a megoldassal).
50 > >
51 > > Tovabba, ennyi erovel akar legkozelebb az lehet a problemaja, hogy teszem
52 > > azt
53 > > a /var vagy /var/cache nem a /-al azonos particion helyezkedik el, tagabb
54 > > ertelemben pedig barmi mas is lehet kotozkodni valoja (mondjuk tul nagy a
55 > > particio, vagy raid-ban van, vagy akarmi), hiszen miert is ne?
56 > >
57 > > Olyba tunik nekem a debug kimenetbol, hogy
58 > >
59 > > local uid=root
60 > > + [[ root == \r\o\o\t ]]
61 > > + local tmp_target=/var/cache/revdep-rebuild
62 > > + verify_tmpdir /var/cache/revdep-rebuild root
63 > > + umask 007
64 > >
65 > > a tmp_target nevu, userhez kotott kornyezeti valtozot olvassa ki
66 > > valahonnan (mar ti. feltetelezve, hogy igazam van). Ezt vajon felul
67 > > tudnam biralni a bash env-ben, vagy barhol mashol?
68 > >
69 > >
70 > > vagy proba-cseresznye? :)
71 > >
72 > > vt
73 > >
74 > > > 2008/10/4 cjvt <cjvt@××××××××.hu>
75 > > >
76 > > > > Üdv,
77 > > > >
78 > > > > elöljáróban:
79 > > > >
80 > > > > az érintett rendszeren a következő symlinkek léteznek (mármint
81 > > > > adekvát)
82 > >
83 > > a
84 > >
85 > > > > /var
86 > > > > könyvtár alatt:
87 > > > >
88 > > > > lrwxrwxrwx 1 amavis amavis 15 jún 11 14.26 amavis ->
89 > > > > /var/mnt/amavis lrwxrwxrwx 1 root root 14 jún 11 14.26 cache
90 > > > > -> /var/mnt/cache lrwxrwxrwx 1 root root 12 jún 11 14.26 tmp
91 > > > > -> /var/mnt/tmp
92 > > > >
93 > > > > A /var/mnt tartalma
94 > > > >
95 > > > > # ls -la /var/mnt/
96 > > > > összesen 20
97 > > > > drwxr-xr-x 5 root root 4096 jún 11 14.32 .
98 > > > > drwxr-xr-x 14 root root 4096 jún 11 14.26 ..
99 > > > > drwxr-xr-x 8 amavis amavis 4096 szept 28 15.34 amavis
100 > > > > drwxr-xr-x 9 root root 4096 okt 4 09.56 cache
101 > > > > drwxrwxrwt 8 root root 4096 okt 4 10.27 tmp
102 > > > >
103 > > > > A /var könyvtár a /-el megegyező, a /var/mnt egy másik partíció.
104 > > > >
105 > > > > Ezzel eleddig semmiféle probléma nem akadt.
106 > > > >
107 > > > > A mai napom azonban frissítettem
108 > > > >
109 > > > > app-portage/gentoolkit-0.2.4.2 -re
110 > > > >
111 > > > > azota a revdep-rebuild a következő hibát dobja:
112 > > > >
113 > > > > # revdep-rebuild
114 > > > > * Configuring search environment for revdep-rebuild
115 > > > > * Working directory expected to be /var/cache/revdep-rebuild, but it
116 > > > > is /var/mnt/cache/revdep-rebuild
117 > > > >
118 > > > > Van vkinek ötlete, hogy miért, és hogyan is lehetne lebeszélni a
119 > > > > hibaüzenetről?
120 > > > >
121 > > > >
122 > > > > vt
123 > > > >
124 > > > >
125 > > > > a revdep-rebuild -d kimenete (a közvetlenül erintett rész a
126 > > > > legvégén):
127 > > > >
128 > > > > + getopts :CdehikL:loPpqu:vX OPT
129 > > > > + unset args
130 > > > > + [[ -n '' ]]
131 > > > > + setup_color
132 > > > > portageq envvar NOCOLOR
133 > > > > ++ portageq envvar NOCOLOR
134 > > > > + export NOCOLOR=
135 > > > > + NOCOLOR=
136 > > > > + [[ '' = yes ]]
137 > > > > + [[ '' = true ]]
138 > > > > + . /etc/init.d/functions.sh
139 > > > > # Copyright 1999-2007 Gentoo Foundation
140 > > > > # Distributed under the terms of the GNU General Public License v2
141 > > > >
142 > > > > RC_GOT_FUNCTIONS="yes"
143 > > > > ++ RC_GOT_FUNCTIONS=yes
144 > > > >
145 > > > > # Override defaults with user settings ...
146 > > > > [[ -f /etc/conf.d/rc ]] && source /etc/conf.d/rc
147 > > > > ++ [[ -f /etc/conf.d/rc ]]
148 > > > > ++ source /etc/conf.d/rc
149 > > > > # /etc/conf.d/rc: Global config file for the Gentoo RC System
150 > > > >
151 > > > > # This is the number of tty's used in most of the rc-scripts (like
152 > > > > # consolefont, numlock, etc ...)
153 > > > >
154 > > > > RC_TTY_NUMBER=11
155 > > > > +++ RC_TTY_NUMBER=11
156 > > > >
157 > > > > # Set to "yes" if you want the rc system to try and start services
158 > > > > # in parallel for a slight speed improvement. NOTE: When
159 > > > > RC_PARALLEL_STARTUP
160 > > > > # is enabled, init script output is replaced with simple "service foo
161 > > > > # starting/stopping" messages so that output is not mixed up.
162 > > > > # You can stop this from happening on the command line by passing
163 > > > > --verbose # to the init script or by setting RC_VERBOSE="yes" below.
164 > > > >
165 > > > > RC_PARALLEL_STARTUP="no"
166 > > > > +++ RC_PARALLEL_STARTUP=no
167 > > > >
168 > > > > # Set RC_INTERACTIVE to "yes" and you'll be able to press the I key
169 > > > > during # boot so you can choose to start specific services. Set to
170 > > > > "no" to disable # this feature.
171 > > > >
172 > > > > RC_INTERACTIVE="yes"
173 > > > > +++ RC_INTERACTIVE=yes
174 > > > >
175 > > > > # Do we allow services to be hotplugged? If not, set to
176 > > > > RC_HOTPLUG="no" # NOTE: This does not affect anything hotplug/udev
177 > > > > related, just the # starting/stopping of the init.d service triggered
178 > > > > by hotplug.
179 > > > >
180 > > > > RC_HOTPLUG="yes"
181 > > > > +++ RC_HOTPLUG=yes
182 > > > >
183 > > > > # Dynamic /dev managers can trigger coldplug events which cause
184 > >
185 > > services
186 > >
187 > > > > to # start before we are ready for them. If this happens, we can
188 > > > > defer these # services to start in the boot runlevel. Set
189 > > > > RC_COLDPLUG="no" if you don't # want this.
190 > > > > # NOTE: This also affects module coldplugging in udev-096 and higher
191 > > > > # If you want module coldplugging but not coldplugging of services
192 > > > > then you # can set RC_COLDPLUG="yes" and RC_PLUG_SERVICES="!*"
193 > > > >
194 > > > > RC_COLDPLUG="yes"
195 > > > > +++ RC_COLDPLUG=yes
196 > > > >
197 > > > > # Some people want a finer grain over hotplug/coldplug.
198 > >
199 > > RC_PLUG_SERVICES
200 > >
201 > > > > is a
202 > > > > # list of services that are matched in order, either allowing or not.
203 > >
204 > > By
205 > >
206 > > > > # default we allow services through as RC_COLDPLUG/RC_HOTPLUG has to
207 > > > > be yes # anyway.
208 > > > > # Example - RC_PLUG_SERVICES="net.wlan !net.*"
209 > > > > # This allows net.wlan and any service not matching net.* to be
210 > >
211 > > plugged.
212 > >
213 > > > > RC_PLUG_SERVICES=""
214 > > > > +++ RC_PLUG_SERVICES=
215 > > > >
216 > > > > # RC_NET_STRICT_CHECKING allows some flexibility with the 'net'
217 > >
218 > > service.
219 > >
220 > > > > # The following values are allowed:
221 > > > > # none - The 'net' service is always considered up.
222 > > > > # no - This basically means that at least one net.* service
223 > > > > besides net.lo
224 > > > > # must be up. This can be used by notebook users that have
225 > > > > a wifi and
226 > > > > # a static nic, and only wants one up at any given time to
227 > >
228 > > have
229 > >
230 > > > > the
231 > > > > # 'net' service seen as up.
232 > > > > # lo - This is the same as the 'no' option, but net.lo is also
233 > > > > counted. # This should be useful to people that do not care
234 > > > > about any specific
235 > > > > # interface being up at boot.
236 > > > > # yes - For this ALL network interfaces MUST be up for the 'net'
237 > > > > service to
238 > > > > # be considered up.
239 > > > >
240 > > > > RC_NET_STRICT_CHECKING="no"
241 > > > > +++ RC_NET_STRICT_CHECKING=no
242 > > > >
243 > > > > # RC_DOWN_INTERFACE allows you to specify if RC will bring the
244 > >
245 > > interface
246 > >
247 > > > > # completely down when it stops. The default is yes, but there are
248 > > > > some # instances where you may not want this to happen such as using
249 > > > > Wake On LAN.
250 > > > >
251 > > > > RC_DOWN_INTERFACE="yes"
252 > > > > +++ RC_DOWN_INTERFACE=yes
253 > > > >
254 > > > > # RC_VOLUME_ORDER allows you to specify, or even remove the volume
255 > >
256 > > setup
257 > >
258 > > > > # for various volume managers (MD, EVMS2, LVM, DM, etc). Note that
259 > >
260 > > they
261 > >
262 > > > > are
263 > > > > # stopped in reverse order.
264 > > > >
265 > > > > RC_VOLUME_ORDER="raid evms lvm dm"
266 > > > > +++ RC_VOLUME_ORDER='raid evms lvm dm'
267 > > > >
268 > > > > # RC_VERBOSE will make init scripts more verbose. Only networking
269 > >
270 > > scripts
271 > >
272 > > > > # really use this at this time, and this is useful for trouble
273 > > > > shooting # any issues you may have.
274 > > > > # This is also used to re-enable init script output for init scripts
275 > > > > # started or stopped from the command line.
276 > > > >
277 > > > > RC_VERBOSE="no"
278 > > > > +++ RC_VERBOSE=no
279 > > > >
280 > > > > # RC_BOOTLOG will generate a log of the boot messages shown on the
281 > > > > console. # Useful for headless machines or debugging. You need to
282 > >
283 > > emerge
284 > >
285 > > > > the # app-admin/showconsole package for this to work. Note that this
286 > > > > probably # won't work correctly with boot splash.
287 > > > >
288 > > > > RC_BOOTLOG="no"
289 > > > > +++ RC_BOOTLOG=no
290 > > > >
291 > > > > # Set to "yes" if you want to benchmark system boot with bootchart.
292 > > > > # You'll need to emerge the app-benchmarks/bootchart package for this
293 > >
294 > > to
295 > >
296 > > > > work.
297 > > > >
298 > > > > RC_BOOTCHART="no"
299 > > > > +++ RC_BOOTCHART=no
300 > > > >
301 > > > > # RC_USE_FSTAB allows you to override the default mount options for
302 > > > > the # standard /proc, /sys, /dev, and /dev/pts mount points. Note
303 > > > > that
304 > >
305 > > this
306 > >
307 > > > > # is the new way for selecting ramfs/tmpfs/etc... for udev mounting.
308 > > > >
309 > > > > RC_USE_FSTAB="no"
310 > > > > +++ RC_USE_FSTAB=no
311 > > > >
312 > > > > # RC_USE_CONFIG_PROFILE allows you to have different /etc/conf.d
313 > > > > files # based on your runlevel - if a conf.d file for your profile
314 > > > > does not exist # then we try and use the default one.
315 > > > > # To enable runlevel selection at boot, append "softlevel=foobar" to
316 > >
317 > > your
318 > >
319 > > > > # kernel line to change to the foobar runlevel. Here we would search
320 > >
321 > > for
322 > >
323 > > > > # /etc/conf.d/<service>.foobar config files before trying to use the
324 > > > > default
325 > > > > # /etc/conf.d/<service>.
326 > > > > # Note that it is only active if 'softlevel' was specified via the
327 > >
328 > > kernel
329 > >
330 > > > > line,
331 > > > > # and it is intended to use for different grub/lilo entries to
332 > > > > specify config
333 > > > > # changes for say laptops between home and work, where you would have
334 > > > > setup # 'work' and 'home' runlevels, with /etc/conf.d/*.<runlevel> as
335 > > > > needed.
336 > > > >
337 > > > > RC_USE_CONFIG_PROFILE="yes"
338 > > > > +++ RC_USE_CONFIG_PROFILE=yes
339 > > > >
340 > > > > # RC_FORCE_AUTO tries its best to prevent user interaction during the
341 > > > > boot and
342 > > > > # shutdown process. For example, fsck will automatically be run or
343 > > > > volumes # remounted to create proper directory trees. This feature
344 > > > > can be dangerous
345 > > > > # and is meant ONLY for headless machines where getting a physical
346 > > > > console # hooked up is a huge pita.
347 > > > >
348 > > > > RC_FORCE_AUTO="no"
349 > > > > +++ RC_FORCE_AUTO=no
350 > > > >
351 > > > > # Use this variable to control the /dev management behavior.
352 > > > > # auto - let the scripts figure out what's best at boot
353 > > > > # devfs - use devfs (requires sys-fs/devfsd)
354 > > > > # udev - use udev (requires sys-fs/udev)
355 > > > > # static - let the user manage /dev (YOU need to create ALL device
356 > > > > nodes)
357 > > > >
358 > > > > RC_DEVICES="auto"
359 > > > > +++ RC_DEVICES=auto
360 > > > >
361 > > > > # UDEV OPTION:
362 > > > > # Set to "yes" if you want to save /dev to a tarball on shutdown
363 > > > > # and restore it on startup. This is useful if you have a lot of
364 > > > > # custom device nodes that udev does not handle/know about.
365 > > > >
366 > > > > RC_DEVICE_TARBALL="no"
367 > > > > +++ RC_DEVICE_TARBALL=no
368 > > > >
369 > > > > # RC_DMESG_LEVEL sets the level at which logging of messages is done
370 > > > > to the # console. See dmesg(8) for more info.
371 > > > >
372 > > > > RC_DMESG_LEVEL="1"
373 > > > > +++ RC_DMESG_LEVEL=1
374 > > > >
375 > > > >
376 > > > >
377 > > > >
378 > > > >
379 > > > > #
380 > > > > # Controlling start-stop-daemon behavior
381 > > > >
382 > > > > # Set to "yes" if start-stop-daemon should always retry killing the
383 > > > > # service with sig KILL if it fails the first time.
384 > > > >
385 > > > > RC_RETRY_KILL="yes"
386 > > > > +++ RC_RETRY_KILL=yes
387 > > > >
388 > > > >
389 > > > > # Set the amount of seconds start-stop-daemon should wait between
390 > > > > # retries.
391 > > > >
392 > > > > RC_RETRY_TIMEOUT=1
393 > > > > +++ RC_RETRY_TIMEOUT=1
394 > > > >
395 > > > >
396 > > > > # Set the amount of times start-stop-daemon should try to kill
397 > > > > # a service before giving up.
398 > > > >
399 > > > > RC_RETRY_COUNT=5
400 > > > > +++ RC_RETRY_COUNT=5
401 > > > >
402 > > > >
403 > > > > # Set to "yes" if start-stop-daemon should fail if the service
404 > > > > # is marked as started, but not actually running on stop.
405 > > > >
406 > > > > RC_FAIL_ON_ZOMBIE="no"
407 > > > > +++ RC_FAIL_ON_ZOMBIE=no
408 > > > >
409 > > > >
410 > > > > # Set to "yes" if start-stop-daemon should attempt to kill
411 > > > > # any children left in the system.
412 > > > > # Be careful with this as it really does what it was on the tin.
413 > > > > # fex, if you're in an ssh process and you restart a service on which
414 > >
415 > > ssh
416 > >
417 > > > > # depends then your terminal will be killed also.
418 > > > >
419 > > > > RC_KILL_CHILDREN="no"
420 > > > > +++ RC_KILL_CHILDREN=no
421 > > > >
422 > > > >
423 > > > > # Set the amount of seconds start-stop-daemon waits after starting
424 > > > > # the daemon to check it is still running. If it's not then we
425 > > > > # try and stop any children if possible.
426 > > > > RC_WAIT_ON_START="0.1"
427 > > > > +++ RC_WAIT_ON_START=0.1
428 > >
429 > > #########################################################################
430 > >
431 > > > >##### # SERVICE CONFIGURATION VARIABLES
432 > > > > # These variables are documented here, but should be configured in
433 > > > > # /etc/conf.d/foo for service foo and NOT enabled here unless you
434 > > > > # really want them to work on a global basis.
435 > > > >
436 > > > > # Some daemons are started and stopped via start-stop-daemon.
437 > > > > # We can launch them through other daemons here, for example
438 > > > > valgrind. # This is only useful for serious debugging of the daemon
439 > > > > # WARNING: If the script's "stop" function does not supply a PID file
440 > > > > then # all processes using the same daemon will be killed.
441 > > > > #RC_DAEMON="/usr/bin/valgrind --tool=memcheck
442 > > > > --log-file=/tmp/valgrind.syslog-ng"
443 > > > >
444 > > > > # strace needs to be prefixed with --background as it does not detach
445 > > > > when # it's following
446 > > > > #RC_DAEMON="--background /usr/sbin/strace -f -o
447 > > > > /tmp/strace.syslog-ng"
448 > > > >
449 > > > > # Pass ulimit parameters
450 > > > > #RC_ULIMIT="-u 30"
451 > >
452 > > #########################################################################
453 > >
454 > > > >#####
455 > > > >
456 > > > >
457 > > > > #
458 > > > > # Internal configuration variables
459 > > > > #
460 > > > > # NB: These are for advanced users, and you should really
461 > > > > # know what you are doing before changing them!
462 > > > > #
463 > > > >
464 > > > > # rc-scripts dep-cache directory
465 > > > > #
466 > > > > # NOTE: Do not remove the next line, as its needed by the baselayout
467 > > > > ebuild!
468 > > > > #
469 > > > > # svcdir="/var/lib/init.d"
470 > > > >
471 > > > > svcdir="/var/lib/init.d"
472 > > > > +++ svcdir=/var/lib/init.d
473 > > > >
474 > > > > # Should we mount $svcdir in a ram disk for some speed increase
475 > > > > # for slower machines, or for the more extreme setups ?
476 > > > >
477 > > > > svcmount="no"
478 > > > > +++ svcmount=no
479 > > > >
480 > > > > # FS type that should be used for $svcdir. Note that you need
481 > > > > # $svcmount above set to "yes" for this to work ... Currently
482 > > > > # tmpfs, ramfs, and ramdisk are supported (tmpfs is the default).
483 > > > >
484 > > > > svcfstype="tmpfs"
485 > > > > +++ svcfstype=tmpfs
486 > > > >
487 > > > > # Size of $svcdir in KB. Note that ramfs doesn't support this
488 > > > > # due to kernel limitations.
489 > > > >
490 > > > > svcsize=2048
491 > > > > +++ svcsize=2048
492 > > > >
493 > > > > # Check /etc/conf.d/rc for a description of these ...
494 > > > > declare -r svclib="/lib/rcscripts"
495 > > > > ++ declare -r svclib=/lib/rcscripts
496 > > > > declare -r svcdir="${svcdir:-/var/lib/init.d}"
497 > > > > ++ declare -r svcdir=/var/lib/init.d
498 > > > > svcmount="${svcmount:-no}"
499 > > > > ++ svcmount=no
500 > > > > svcfstype="${svcfstype:-tmpfs}"
501 > > > > ++ svcfstype=tmpfs
502 > > > > svcsize="${svcsize:-1024}"
503 > > > > ++ svcsize=2048
504 > > > >
505 > > > > # Different types of dependencies
506 > > > > deptypes="need use"
507 > > > > ++ deptypes='need use'
508 > > > > # Different types of order deps
509 > > > > ordtypes="before after"
510 > > > > ++ ordtypes='before after'
511 > > > >
512 > > > > #
513 > > > > # Internal variables
514 > > > > #
515 > > > >
516 > > > > # Dont output to stdout?
517 > > > > RC_QUIET_STDOUT="${RC_QUIET_STDOUT:-no}"
518 > > > > ++ RC_QUIET_STDOUT=no
519 > > > > RC_VERBOSE="${RC_VERBOSE:-no}"
520 > > > > ++ RC_VERBOSE=no
521 > > > >
522 > > > > # Should we use color?
523 > > > > RC_NOCOLOR="${RC_NOCOLOR:-no}"
524 > > > > ++ RC_NOCOLOR=no
525 > > > > # Can the terminal handle endcols?
526 > > > > RC_ENDCOL="yes"
527 > > > > ++ RC_ENDCOL=yes
528 > > > >
529 > > > > #
530 > > > > # Default values for rc system
531 > > > > #
532 > > > > RC_TTY_NUMBER="${RC_TTY_NUMBER:-11}"
533 > > > > ++ RC_TTY_NUMBER=11
534 > > > > RC_PARALLEL_STARTUP="${RC_PARALLEL_STARTUP:-no}"
535 > > > > ++ RC_PARALLEL_STARTUP=no
536 > > > > RC_NET_STRICT_CHECKING="${RC_NET_STRICT_CHECKING:-no}"
537 > > > > ++ RC_NET_STRICT_CHECKING=no
538 > > > > RC_USE_FSTAB="${RC_USE_FSTAB:-no}"
539 > > > > ++ RC_USE_FSTAB=no
540 > > > > RC_USE_CONFIG_PROFILE="${RC_USE_CONFIG_PROFILE:-yes}"
541 > > > > ++ RC_USE_CONFIG_PROFILE=yes
542 > > > > RC_FORCE_AUTO="${RC_FORCE_AUTO:-no}"
543 > > > > ++ RC_FORCE_AUTO=no
544 > > > > RC_DEVICES="${RC_DEVICES:-auto}"
545 > > > > ++ RC_DEVICES=auto
546 > > > > RC_DOWN_INTERFACE="${RC_DOWN_INTERFACE:-yes}"
547 > > > > ++ RC_DOWN_INTERFACE=yes
548 > > > > RC_VOLUME_ORDER="${RC_VOLUME_ORDER:-raid evms lvm dm}"
549 > > > > ++ RC_VOLUME_ORDER='raid evms lvm dm'
550 > > > >
551 > > > > #
552 > > > > # Default values for e-message indentation and dots
553 > > > > #
554 > > > > RC_INDENTATION=''
555 > > > > ++ RC_INDENTATION=
556 > > > > RC_DEFAULT_INDENT=2
557 > > > > ++ RC_DEFAULT_INDENT=2
558 > > > > #RC_DOT_PATTERN=' .'
559 > > > > RC_DOT_PATTERN=''
560 > > > > ++ RC_DOT_PATTERN=
561 > > > >
562 > > > > # bool has_addon(addon)
563 > > > > #
564 > > > > # See if addon exists.
565 > > > > #
566 > > > > has_addon() {
567 > > > > [[ -e ${svclib}/addons/$1 ]]
568 > > > > }
569 > > > >
570 > > > > # void import_addon(char *addon)
571 > > > > #
572 > > > > # Import code from the specified addon if it exists
573 > > > > #
574 > > > > import_addon() {
575 > > > > local addon="${svclib}/addons/$1"
576 > > > > if has_addon $1 ; then
577 > > > > source "${addon}"
578 > > > > return 0
579 > > > > fi
580 > > > > return 1
581 > > > > }
582 > > > >
583 > > > > # void splash(...)
584 > > > > #
585 > > > > # Notify bootsplash/splashutils/gensplash/whatever about
586 > > > > # important events.
587 > > > > #
588 > > > > splash() {
589 > > > > return 0
590 > > > > }
591 > > > > # This will override the splash() function...
592 > > > > if ! import_addon splash-functions.sh ; then
593 > > > > [[ -f /sbin/splash-functions.sh ]] && source
594 > > > > /sbin/splash-functions.sh
595 > > > > fi
596 > > > > ++ import_addon splash-functions.sh
597 > > > > ++ local addon=/lib/rcscripts/addons/splash-functions.sh
598 > > > > ++ has_addon splash-functions.sh
599 > > > > ++ [[ -e /lib/rcscripts/addons/splash-functions.sh ]]
600 > > > > ++ return 1
601 > > > > ++ [[ -f /sbin/splash-functions.sh ]]
602 > > > >
603 > > > > # void profiling(...)
604 > > > > #
605 > > > > # Notify bootsplash/whatever about important events.
606 > > > > #
607 > > > > profiling() {
608 > > > > return 0
609 > > > > }
610 > > > > import_addon profiling-functions.sh
611 > > > > ++ import_addon profiling-functions.sh
612 > > > > ++ local addon=/lib/rcscripts/addons/profiling-functions.sh
613 > > > > ++ has_addon profiling-functions.sh
614 > > > > ++ [[ -e /lib/rcscripts/addons/profiling-functions.sh ]]
615 > > > > ++ return 1
616 > > > >
617 > > > > # void bootlog(...)
618 > > > > #
619 > > > > # Notify bootlogger about important events.
620 > > > > bootlog() {
621 > > > > return 0
622 > > > > }
623 > > > > [[ ${RC_BOOTLOG} == "yes" ]] && import_addon bootlogger.sh
624 > > > > ++ [[ no == \y\e\s ]]
625 > > > >
626 > > > > # void get_bootconfig()
627 > > > > #
628 > > > > # Get the BOOTLEVEL and SOFTLEVEL by setting
629 > > > > # 'bootlevel' and 'softlevel' via kernel
630 > > > > # parameters.
631 > > > > #
632 > > > > get_bootconfig() {
633 > > > > local copt=
634 > > > > local newbootlevel=
635 > > > > local newsoftlevel=
636 > > > >
637 > > > > if [[ -r /proc/cmdline ]] ; then
638 > > > > for copt in $(</proc/cmdline) ; do
639 > > > > case "${copt%=*}" in
640 > > > > bootlevel)
641 > > > > newbootlevel="${copt##*=}"
642 > > > > ;;
643 > > > > softlevel)
644 > > > > newsoftlevel="${copt##*=}"
645 > > > > ;;
646 > > > > esac
647 > > > > done
648 > > > > fi
649 > > > >
650 > > > > if [[ -n ${newbootlevel} ]] ; then
651 > > > > export BOOTLEVEL="${newbootlevel}"
652 > > > > else
653 > > > > export BOOTLEVEL="boot"
654 > > > > fi
655 > > > >
656 > > > > if [[ -n ${newsoftlevel} ]] ; then
657 > > > > export DEFAULTLEVEL="${newsoftlevel}"
658 > > > > else
659 > > > > export DEFAULTLEVEL="default"
660 > > > > fi
661 > > > >
662 > > > > return 0
663 > > > > }
664 > > > >
665 > > > > setup_defaultlevels() {
666 > > > > get_bootconfig
667 > > > >
668 > > > > if get_bootparam "noconfigprofile" ; then
669 > > > > export RC_USE_CONFIG_PROFILE="no"
670 > > > >
671 > > > > elif get_bootparam "configprofile" ; then
672 > > > > export RC_USE_CONFIG_PROFILE="yes"
673 > > > > fi
674 > > > >
675 > > > > if [[ ${RC_USE_CONFIG_PROFILE} == "yes" && -n ${DEFAULTLEVEL}
676 > > > > ]] && \
677 > > > > [[ -d "/etc/runlevels/${BOOTLEVEL}.${DEFAULTLEVEL}" || \
678 > > > > -L "/etc/runlevels/${BOOTLEVEL}.${DEFAULTLEVEL}" ]] ;
679 > > > > then export BOOTLEVEL="${BOOTLEVEL}.${DEFAULTLEVEL}" fi
680 > > > >
681 > > > > if [[ -z ${SOFTLEVEL} ]] ; then
682 > > > > if [[ -f "${svcdir}/softlevel" ]] ; then
683 > > > > export SOFTLEVEL=$(< "${svcdir}/softlevel")
684 > > > > else
685 > > > > export SOFTLEVEL="${BOOTLEVEL}"
686 > > > > fi
687 > > > > fi
688 > > > >
689 > > > > return 0
690 > > > > }
691 > > > >
692 > > > > # void get_libdir(void)
693 > > > > #
694 > > > > # prints the current libdir {lib,lib32,lib64}
695 > > > > #
696 > > > > get_libdir() {
697 > > > > if [[ -n ${CONF_LIBDIR_OVERRIDE} ]] ; then
698 > > > > CONF_LIBDIR="${CONF_LIBDIR_OVERRIDE}"
699 > > > > elif [[ -x /usr/bin/portageq ]] ; then
700 > > > > CONF_LIBDIR="$(/usr/bin/portageq envvar CONF_LIBDIR)"
701 > > > > fi
702 > > > > echo "${CONF_LIBDIR:=lib}"
703 > > > > }
704 > > > >
705 > > > > # void esyslog(char* priority, char* tag, char* message)
706 > > > > #
707 > > > > # use the system logger to log a message
708 > > > > #
709 > > > > esyslog() {
710 > > > > local pri=
711 > > > > local tag=
712 > > > >
713 > > > > if [[ -x /usr/bin/logger ]] ; then
714 > > > > pri="$1"
715 > > > > tag="$2"
716 > > > >
717 > > > > shift 2
718 > > > > [[ -z "$*" ]] && return 0
719 > > > >
720 > > > > /usr/bin/logger -p "${pri}" -t "${tag}" -- "$*"
721 > > > > fi
722 > > > >
723 > > > > return 0
724 > > > > }
725 > > > >
726 > > > > # void eindent(int num)
727 > > > > #
728 > > > > # increase the indent used for e-commands.
729 > > > > #
730 > > > > eindent() {
731 > > > > local i="$1"
732 > > > > (( i > 0 )) || (( i = RC_DEFAULT_INDENT ))
733 > > > > esetdent $(( ${#RC_INDENTATION} + i ))
734 > > > > }
735 > > > >
736 > > > > # void eoutdent(int num)
737 > > > > #
738 > > > > # decrease the indent used for e-commands.
739 > > > > #
740 > > > > eoutdent() {
741 > > > > local i="$1"
742 > > > > (( i > 0 )) || (( i = RC_DEFAULT_INDENT ))
743 > > > > esetdent $(( ${#RC_INDENTATION} - i ))
744 > > > > }
745 > > > >
746 > > > > # void esetdent(int num)
747 > > > > #
748 > > > > # hard set the indent used for e-commands.
749 > > > > # num defaults to 0
750 > > > > #
751 > > > > esetdent() {
752 > > > > local i="$1"
753 > > > > (( i < 0 )) && (( i = 0 ))
754 > > > > RC_INDENTATION=$(printf "%${i}s" '')
755 > > > > }
756 > > > >
757 > > > > # void einfo(char* message)
758 > > > > #
759 > > > > # show an informative message (with a newline)
760 > > > > #
761 > > > > einfo() {
762 > > > > einfon "$*\n"
763 > > > > LAST_E_CMD="einfo"
764 > > > > return 0
765 > > > > }
766 > > > >
767 > > > > # void einfon(char* message)
768 > > > > #
769 > > > > # show an informative message (without a newline)
770 > > > > #
771 > > > > einfon() {
772 > > > > [[ ${RC_QUIET_STDOUT} == "yes" ]] && return 0
773 > > > > [[ ${RC_ENDCOL} != "yes" && ${LAST_E_CMD} == "ebegin" ]] &&
774 > > > > echo echo -ne " ${GOOD}*${NORMAL} ${RC_INDENTATION}$*"
775 > > > > LAST_E_CMD="einfon"
776 > > > > return 0
777 > > > > }
778 > > > >
779 > > > > # void ewarn(char* message)
780 > > > > #
781 > > > > # show a warning message + log it
782 > > > > #
783 > > > > ewarn() {
784 > > > > if [[ ${RC_QUIET_STDOUT} == "yes" ]] ; then
785 > > > > echo " $*"
786 > > > > else
787 > > > > [[ ${RC_ENDCOL} != "yes" && ${LAST_E_CMD} == "ebegin"
788 > > > > ]] && echo
789 > > > > echo -e " ${WARN}*${NORMAL} ${RC_INDENTATION}$*"
790 > > > > fi
791 > > > >
792 > > > > local name="rc-scripts"
793 > > > > [[ $0 != "/sbin/runscript.sh" ]] && name="${0##*/}"
794 > > > > # Log warnings to system log
795 > > > > esyslog "daemon.warning" "${name}" "$*"
796 > > > >
797 > > > > LAST_E_CMD="ewarn"
798 > > > > return 0
799 > > > > }
800 > > > >
801 > > > > # void eerror(char* message)
802 > > > > #
803 > > > > # show an error message + log it
804 > > > > #
805 > > > > eerror() {
806 > > > > if [[ ${RC_QUIET_STDOUT} == "yes" ]] ; then
807 > > > > echo " $*" >/dev/stderr
808 > > > > else
809 > > > > [[ ${RC_ENDCOL} != "yes" && ${LAST_E_CMD} == "ebegin"
810 > > > > ]] && echo
811 > > > > echo -e " ${BAD}*${NORMAL} ${RC_INDENTATION}$*"
812 > > > > fi
813 > > > >
814 > > > > local name="rc-scripts"
815 > > > > [[ $0 != "/sbin/runscript.sh" ]] && name="${0##*/}"
816 > > > > # Log errors to system log
817 > > > > esyslog "daemon.err" "rc-scripts" "$*"
818 > > > >
819 > > > > LAST_E_CMD="eerror"
820 > > > > return 0
821 > > > > }
822 > > > >
823 > > > > # void ebegin(char* message)
824 > > > > #
825 > > > > # show a message indicating the start of a process
826 > > > > #
827 > > > > ebegin() {
828 > > > > local msg="$*" dots spaces="${RC_DOT_PATTERN//?/ }"
829 > > > > [[ ${RC_QUIET_STDOUT} == "yes" ]] && return 0
830 > > > >
831 > > > > if [[ -n ${RC_DOT_PATTERN} ]] ; then
832 > > > > dots="$(printf "%$((COLS - 3 - ${#RC_INDENTATION} -
833 > > > > ${#msg} -
834 > > > > 7))s" '')"
835 > > > > dots="${dots//${spaces}/${RC_DOT_PATTERN}}"
836 > > > > msg="${msg}${dots}"
837 > > > > else
838 > > > > msg="${msg} ..."
839 > > > > fi
840 > > > > einfon "${msg}"
841 > > > > [[ ${RC_ENDCOL} == "yes" ]] && echo
842 > > > >
843 > > > > LAST_E_LEN="$(( 3 + ${#RC_INDENTATION} + ${#msg} ))"
844 > > > > LAST_E_CMD="ebegin"
845 > > > > return 0
846 > > > > }
847 > > > >
848 > > > > # void _eend(int error, char *efunc, char* errstr)
849 > > > > #
850 > > > > # indicate the completion of process, called from eend/ewend
851 > > > > # if error, show errstr via efunc
852 > > > > #
853 > > > > # This function is private to functions.sh. Do not call it from a
854 > > > > # script.
855 > > > > #
856 > > > > _eend() {
857 > > > > local retval="${1:-0}" efunc="${2:-eerror}" msg
858 > > > > shift 2
859 > > > >
860 > > > > if [[ ${retval} == "0" ]] ; then
861 > > > > [[ ${RC_QUIET_STDOUT} == "yes" ]] && return 0
862 > > > > msg="${BRACKET}[ ${GOOD}ok${BRACKET} ]${NORMAL}"
863 > > > > else
864 > > > > if [[ -c /dev/null ]] ; then
865 > > > > rc_splash "stop" &>/dev/null &
866 > > > > else
867 > > > > rc_splash "stop" &
868 > > > > fi
869 > > > > if [[ -n $* ]] ; then
870 > > > > ${efunc} "$*"
871 > > > > fi
872 > > > > msg="${BRACKET}[ ${BAD}!!${BRACKET} ]${NORMAL}"
873 > > > > fi
874 > > > >
875 > > > > if [[ ${RC_ENDCOL} == "yes" ]] ; then
876 > > > > echo -e "${ENDCOL} ${msg}"
877 > > > > else
878 > > > > [[ ${LAST_E_CMD} == ebegin ]] || LAST_E_LEN=0
879 > > > > printf "%$(( COLS - LAST_E_LEN - 6 ))s%b\n" ''
880 > > > > "${msg}" fi
881 > > > >
882 > > > > return ${retval}
883 > > > > }
884 > > > >
885 > > > > # void eend(int error, char* errstr)
886 > > > > #
887 > > > > # indicate the completion of process
888 > > > > # if error, show errstr via eerror
889 > > > > #
890 > > > > eend() {
891 > > > > local retval="${1:-0}"
892 > > > > shift
893 > > > >
894 > > > > _eend "${retval}" eerror "$*"
895 > > > >
896 > > > > LAST_E_CMD="eend"
897 > > > > return ${retval}
898 > > > > }
899 > > > >
900 > > > > # void ewend(int error, char* errstr)
901 > > > > #
902 > > > > # indicate the completion of process
903 > > > > # if error, show errstr via ewarn
904 > > > > #
905 > > > > ewend() {
906 > > > > local retval="${1:-0}"
907 > > > > shift
908 > > > >
909 > > > > _eend "${retval}" ewarn "$*"
910 > > > >
911 > > > > LAST_E_CMD="ewend"
912 > > > > return ${retval}
913 > > > > }
914 > > > >
915 > > > > # v-e-commands honor RC_VERBOSE which defaults to no.
916 > > > > # The condition is negated so the return value will be zero.
917 > > > > veinfo() { [[ ${RC_VERBOSE} != "yes" ]] || einfo "$@"; }
918 > > > > veinfon() { [[ ${RC_VERBOSE} != "yes" ]] || einfon "$@"; }
919 > > > > vewarn() { [[ ${RC_VERBOSE} != "yes" ]] || ewarn "$@"; }
920 > > > > veerror() { [[ ${RC_VERBOSE} != "yes" ]] || eerror "$@"; }
921 > > > > vebegin() { [[ ${RC_VERBOSE} != "yes" ]] || ebegin "$@"; }
922 > > > > veend() {
923 > > > > [[ ${RC_VERBOSE} == "yes" ]] && { eend "$@"; return $?; }
924 > > > > return ${1:-0}
925 > > > > }
926 > > > > vewend() {
927 > > > > [[ ${RC_VERBOSE} == "yes" ]] && { ewend "$@"; return $?; }
928 > > > > return ${1:-0}
929 > > > > }
930 > > > >
931 > > > > # char *KV_major(string)
932 > > > > #
933 > > > > # Return the Major (X of X.Y.Z) kernel version
934 > > > > #
935 > > > > KV_major() {
936 > > > > [[ -z $1 ]] && return 1
937 > > > >
938 > > > > local KV="$@"
939 > > > > echo "${KV%%.*}"
940 > > > > }
941 > > > >
942 > > > > # char *KV_minor(string)
943 > > > > #
944 > > > > # Return the Minor (Y of X.Y.Z) kernel version
945 > > > > #
946 > > > > KV_minor() {
947 > > > > [[ -z $1 ]] && return 1
948 > > > >
949 > > > > local KV="$@"
950 > > > > KV="${KV#*.}"
951 > > > > echo "${KV%%.*}"
952 > > > > }
953 > > > >
954 > > > > # char *KV_micro(string)
955 > > > > #
956 > > > > # Return the Micro (Z of X.Y.Z) kernel version.
957 > > > > #
958 > > > > KV_micro() {
959 > > > > [[ -z $1 ]] && return 1
960 > > > >
961 > > > > local KV="$@"
962 > > > > KV="${KV#*.*.}"
963 > > > > echo "${KV%%[^[:digit:]]*}"
964 > > > > }
965 > > > >
966 > > > > # int KV_to_int(string)
967 > > > > #
968 > > > > # Convert a string type kernel version (2.4.0) to an int (132096)
969 > > > > # for easy compairing or versions ...
970 > > > > #
971 > > > > KV_to_int() {
972 > > > > [[ -z $1 ]] && return 1
973 > > > >
974 > > > > local KV_MAJOR="$(KV_major "$1")"
975 > > > > local KV_MINOR="$(KV_minor "$1")"
976 > > > > local KV_MICRO="$(KV_micro "$1")"
977 > > > > local KV_int="$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO
978 > >
979 > > ))"
980 > >
981 > > > > # We make version 2.2.0 the minimum version we will handle as
982 > > > > # a sanity check ... if its less, we fail ...
983 > > > > if [[ ${KV_int} -ge 131584 ]] ; then
984 > > > > echo "${KV_int}"
985 > > > > return 0
986 > > > > fi
987 > > > >
988 > > > > return 1
989 > > > > }
990 > > > >
991 > > > > # int get_KV()
992 > > > > #
993 > > > > # Return the kernel version (major, minor and micro concated) as
994 > > > > an integer.
995 > > > > # Assumes X and Y of X.Y.Z are numbers. Also assumes that some
996 > > > > leading # portion of Z is a number.
997 > > > > # e.g. 2.4.25, 2.6.10, 2.6.4-rc3, 2.2.40-poop, 2.0.15+foo
998 > > > > #
999 > > > > _RC_GET_KV_CACHE=""
1000 > > > > ++ _RC_GET_KV_CACHE=
1001 > > > > get_KV() {
1002 > > > > [[ -z ${_RC_GET_KV_CACHE} ]] \
1003 > > > > && _RC_GET_KV_CACHE="$(uname -r)"
1004 > > > >
1005 > > > > echo "$(KV_to_int "${_RC_GET_KV_CACHE}")"
1006 > > > >
1007 > > > > return $?
1008 > > > > }
1009 > > > >
1010 > > > > # bool get_bootparam(param)
1011 > > > > #
1012 > > > > # return 0 if gentoo=param was passed to the kernel
1013 > > > > #
1014 > > > > # EXAMPLE: if get_bootparam "nodevfs" ; then ....
1015 > > > > #
1016 > > > > get_bootparam() {
1017 > > > > local x copt params retval=1
1018 > > > >
1019 > > > > [[ ! -r /proc/cmdline ]] && return 1
1020 > > > >
1021 > > > > for copt in $(< /proc/cmdline) ; do
1022 > > > > if [[ ${copt%=*} == "gentoo" ]] ; then
1023 > > > > params=$(gawk -v PARAMS="${copt##*=}" '
1024 > > > > BEGIN {
1025 > > > > split(PARAMS, nodes, ",")
1026 > > > > for (x in nodes)
1027 > > > > print nodes[x]
1028 > > > > }')
1029 > > > >
1030 > > > > # Parse gentoo option
1031 > > > > for x in ${params} ; do
1032 > > > > if [[ ${x} == "$1" ]] ; then
1033 > > > > # echo "YES"
1034 > > > > retval=0
1035 > > > > fi
1036 > > > > done
1037 > > > > fi
1038 > > > > done
1039 > > > >
1040 > > > > return ${retval}
1041 > > > > }
1042 > > > >
1043 > > > > # Safer way to list the contents of a directory,
1044 > > > > # as it do not have the "empty dir bug".
1045 > > > > #
1046 > > > > # char *dolisting(param)
1047 > > > > #
1048 > > > > # print a list of the directory contents
1049 > > > > #
1050 > > > > # NOTE: quote the params if they contain globs.
1051 > > > > # also, error checking is not that extensive ...
1052 > > > > #
1053 > > > > dolisting() {
1054 > > > > local x=
1055 > > > > local y=
1056 > > > > local tmpstr=
1057 > > > > local mylist=
1058 > > > > local mypath="$*"
1059 > > > >
1060 > > > > if [[ ${mypath%/\*} != "${mypath}" ]] ; then
1061 > > > > mypath=${mypath%/\*}
1062 > > > > fi
1063 > > > >
1064 > > > > for x in ${mypath} ; do
1065 > > > > [[ ! -e ${x} ]] && continue
1066 > > > >
1067 > > > > if [[ ! -d ${x} ]] && [[ -L ${x} || -f ${x} ]] ; then
1068 > > > > mylist="${mylist} $(ls "${x}" 2> /dev/null)"
1069 > > > > else
1070 > > > > [[ ${x%/} != "${x}" ]] && x=${x%/}
1071 > > > >
1072 > > > > cd "${x}"; tmpstr=$(ls)
1073 > > > >
1074 > > > > for y in ${tmpstr} ; do
1075 > > > > mylist="${mylist} ${x}/${y}"
1076 > > > > done
1077 > > > > fi
1078 > > > > done
1079 > > > >
1080 > > > > echo "${mylist}"
1081 > > > > }
1082 > > > >
1083 > > > >
1084 > > > > # char *add_suffix(char * configfile)
1085 > > > > #
1086 > > > > # Returns a config file name with the softlevel suffix
1087 > > > > # appended to it. For use with multi-config services.
1088 > > > > add_suffix() {
1089 > > > > if [[ ${RC_USE_CONFIG_PROFILE} != "yes" ]] ; then
1090 > > > > echo "$1"
1091 > > > > return 0
1092 > > > > fi
1093 > > > >
1094 > > > > local suffix="${SOFTLEVEL}"
1095 > > > > [[ ${SOFTLEVEL} == "${BOOTLEVEL}" \
1096 > > > >
1097 > > > > || ${SOFTLEVEL} == "reboot" \
1098 > > > > || ${SOFTLEVEL} == "shutdown" \
1099 > > > > || ${SOFTLEVEL} == "single" ]] \
1100 > > > >
1101 > > > > && suffix="${DEFAULTLEVEL}"
1102 > > > > if [[ -e "$1.${suffix}" ]] ; then
1103 > > > > echo "$1.${suffix}"
1104 > > > > else
1105 > > > > echo "$1"
1106 > > > > fi
1107 > > > >
1108 > > > > return 0
1109 > > > > }
1110 > > > >
1111 > > > > # char *get_base_ver()
1112 > > > > #
1113 > > > > # get the version of baselayout that this system is running
1114 > > > > #
1115 > > > > get_base_ver() {
1116 > > > > [[ ! -r /etc/gentoo-release ]] && return 0
1117 > > > > local ver="$(</etc/gentoo-release)"
1118 > > > > echo "${ver##* }"
1119 > > > > }
1120 > > > >
1121 > > > > # Network filesystems list for common use in rc-scripts.
1122 > > > > # This variable is used in is_net_fs and other places such as
1123 > > > > # localmount.
1124 > > > > NET_FS_LIST="afs cifs coda davfs fuse gfs ncpfs nfs nfs4 ocfs2 shfs
1125 > > > > smbfs" ++ NET_FS_LIST='afs cifs coda davfs fuse gfs ncpfs nfs nfs4
1126 > >
1127 > > ocfs2
1128 > >
1129 > > > > shfs smbfs'
1130 > > > >
1131 > > > > # bool is_net_fs(path)
1132 > > > > #
1133 > > > > # return 0 if path is the mountpoint of a networked filesystem
1134 > > > > #
1135 > > > > # EXAMPLE: if is_net_fs / ; then ...
1136 > > > > #
1137 > > > > is_net_fs() {
1138 > > > > local fstype
1139 > > > > # /proc/mounts is always accurate but may not always be
1140 > >
1141 > > available
1142 > >
1143 > > > > if [[ -e /proc/mounts ]] ; then
1144 > > > > fstype="$( sed -n -e '/^rootfs/!s:.* '"$1"' \([^
1145 > > > > ]*\).*: \1:p' /proc/mounts )"
1146 > > > > else
1147 > > > > fstype="$( mount | sed -n -e 's:.* on '"$1"' type \([^
1148 > > > > ]*\).*:
1149 > > > > \1:p' )"
1150 > > > > fi
1151 > > > > [[ " ${NET_FS_LIST} " == *" ${fstype} "* ]]
1152 > > > > return $?
1153 > > > > }
1154 > > > >
1155 > > > > # bool is_net_fs(path)
1156 > > > > #
1157 > > > > # return 0 if path is under unionfs control
1158 > > > > #
1159 > > > > # EXAMPLE: if is_union_fs / ; then ...
1160 > > > > #
1161 > > > > is_union_fs() {
1162 > > > > [[ ! -x /sbin/unionctl ]] && return 1
1163 > > > > unionctl "$1" --list &>/dev/null
1164 > > > > }
1165 > > > >
1166 > > > > # bool is_uml_sys()
1167 > > > > #
1168 > > > > # return 0 if the currently running system is User Mode Linux
1169 > > > > #
1170 > > > > # EXAMPLE: if is_uml_sys ; then ...
1171 > > > > #
1172 > > > > is_uml_sys() {
1173 > > > > grep -qs 'UML' /proc/cpuinfo
1174 > > > > }
1175 > > > >
1176 > > > > # bool is_vserver_sys()
1177 > > > > #
1178 > > > > # return 0 if the currently running system is a Linux VServer
1179 > > > > #
1180 > > > > # EXAMPLE: if is_vserver_sys ; then ...
1181 > > > > #
1182 > > > > is_vserver_sys() {
1183 > > > > grep -qs '^s_context:[[:space:]]*[1-9]' /proc/self/status
1184 > > > > }
1185 > > > >
1186 > > > > # bool is_vz_sys()
1187 > > > > #
1188 > > > > # return 0 if the currently running system is OpenVZ container
1189 > > > > #
1190 > > > > # EXAMPLE: if is_vz_sys ; then ...
1191 > > > > #
1192 > > > > is_vz_sys() {
1193 > > > > grep -qs '^envID:[[:space:]]*[1-9]' /proc/self/status
1194 > > > > }
1195 > > > >
1196 > > > > # bool is_xenU_sys()
1197 > > > > #
1198 > > > > # return 0 if the currently running system is an unprivileged Xen
1199 > > > > domain #
1200 > > > > # EXAMPLE: if is_xenU_sys ; then ...
1201 > > > > #
1202 > > > > is_xenU_sys() {
1203 > > > > [[ ! -d /proc/xen ]] && return 1
1204 > > > > [[ ! -r /proc/xen/capabilities ]] && return 1
1205 > > > > grep -q "control_d" /proc/xen/capabilities && return 1
1206 > > > > return 0
1207 > > > > }
1208 > > > >
1209 > > > > # bool get_mount_fstab(path)
1210 > > > > #
1211 > > > > # return the parameters to pass to the mount command generated from
1212 > > > > fstab #
1213 > > > > # EXAMPLE: cmd=$( get_mount_fstab /proc )
1214 > > > > # cmd=${cmd:--t proc none /proc}
1215 > > > > # mount -n ${cmd}
1216 > > > > #
1217 > > > > get_mount_fstab() {
1218 > > > > gawk '$1 ~ "^#" { next }
1219 > > > > $2 == "'$*'" { stab="-t "$3" -o "$4" "$1" "$2; }
1220 > > > > END { print stab; }
1221 > > > > ' /etc/fstab
1222 > > > > }
1223 > > > >
1224 > > > > # char *reverse_list(list)
1225 > > > > #
1226 > > > > # Returns the reversed order of list
1227 > > > > #
1228 > > > > reverse_list() {
1229 > > > > for (( i = $# ; i > 0 ; --i )) ; do
1230 > > > > echo -n "${!i} "
1231 > > > > done
1232 > > > > }
1233 > > > >
1234 > > > > # void start_addon(addon)
1235 > > > > #
1236 > > > > # Starts addon.
1237 > > > > #
1238 > > > > start_addon() {
1239 > > > > local addon="$1"
1240 > > > > (import_addon "${addon}-start.sh")
1241 > > > > return 0
1242 > > > > }
1243 > > > >
1244 > > > > # void stop_addon(addon)
1245 > > > > #
1246 > > > > # Stops addon.
1247 > > > > #
1248 > > > > stop_addon() {
1249 > > > > local addon=$1
1250 > > > > (import_addon "${addon}-stop.sh")
1251 > > > > return 0
1252 > > > > }
1253 > > > >
1254 > > > > # bool is_older_than(reference, files/dirs to check)
1255 > > > > #
1256 > > > > # return 0 if any of the files/dirs are newer than
1257 > > > > # the reference file
1258 > > > > #
1259 > > > > # EXAMPLE: if is_older_than a.out *.o ; then ...
1260 > > > > is_older_than() {
1261 > > > > local x=
1262 > > > > local ref="$1"
1263 > > > > shift
1264 > > > >
1265 > > > > for x in "$@" ; do
1266 > > > > [[ ${x} -nt ${ref} ]] && return 0
1267 > > > > [[ -d ${x} ]] && is_older_than "${ref}" "${x}"/* &&
1268 > >
1269 > > return
1270 > >
1271 > > > > 0 done
1272 > > > >
1273 > > > > return 1
1274 > > > > }
1275 > > > >
1276 > > > > # char* bash_variable(char *variable)
1277 > > > > #
1278 > > > > # Turns the given variable into something that bash can use
1279 > > > > # Basically replaces anything not a-z,A-Z into a _
1280 > > > > #
1281 > > > > bash_variable() {
1282 > > > > local args="$@"
1283 > > > > LC_ALL=C echo "${args//[![:word:]]/_}"
1284 > > > > }
1285 > > > >
1286 > > > > # void requote()
1287 > > > > #
1288 > > > > # Requotes params so they're suitable to be eval'd, just like this
1289 > > > > would: # set -- 1 2 "3 4"
1290 > > > > # /usr/bin/getopt -- '' "$@" | sed 's/^ -- //'
1291 > > > > #
1292 > > > > requote() {
1293 > > > > local q=\'
1294 > > > > set -- "${@//\'/$q\'$q}" # quote inner instances of '
1295 > > > > set -- "${@/#/$q}" # add ' to start of
1296 > > > > each param
1297 > > > > set -- "${@/%/$q}" # add ' to end of each
1298 > > > > param echo "$*"
1299 > > > > }
1300 > > > >
1301 > > > > # char* uniqify(char *arg, ...)
1302 > > > > #
1303 > > > > # Ensure that params are unique
1304 > > > > #
1305 > > > > uniqify() {
1306 > > > > local result= x=
1307 > > > > while [[ -n "$1" ]] ; do
1308 > > > > [[ " ${result} " != *" $1 "* ]] && result="${result}
1309 > > > > $1" shift
1310 > > > > done
1311 > > > > echo "${result# *}"
1312 > > > > }
1313 > >
1314 > > #########################################################################
1315 > >
1316 > > > >##### #
1317 > > > > #
1318 > > > > # This should be the last code in here, please add all functions
1319 > >
1320 > > above!!
1321 > >
1322 > > > > #
1323 > > > > #
1324 > > > > #
1325 > > > > # *** START LAST CODE ***
1326 > > > > #
1327 > > > > #
1328 > > > > #
1329 > >
1330 > > #########################################################################
1331 > >
1332 > > > >#####
1333 > > > >
1334 > > > > if [[ -z ${EBUILD} ]] ; then
1335 > > > > # Setup a basic $PATH. Just add system default to existing.
1336 > > > > # This should solve both /sbin and /usr/sbin not present when
1337 > > > > # doing 'su -c foo', or for something like: PATH= rcscript
1338 > >
1339 > > start
1340 > >
1341 > > > > PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/sbin:${PATH}"
1342 > > > >
1343 > > > > # Cache the CONSOLETYPE - this is important as backgrounded
1344 > >
1345 > > shells
1346 > >
1347 > > > > don't
1348 > > > > # have a TTY. rc unsets it at the end of running so it
1349 > > > > shouldn't hang
1350 > > > > # around
1351 > > > > if [[ -z ${CONSOLETYPE} ]] ; then
1352 > > > > export CONSOLETYPE="$( /sbin/consoletype 2>/dev/null
1353 > > > > )" fi
1354 > > > > if [[ ${CONSOLETYPE} == "serial" ]] ; then
1355 > > > > RC_NOCOLOR="yes"
1356 > > > > RC_ENDCOL="no"
1357 > > > > fi
1358 > > > >
1359 > > > > for arg in "$@" ; do
1360 > > > > case "${arg}" in
1361 > > > > # Lastly check if the user disabled it with
1362 > > > > --nocolor
1363 > > > > argument
1364 > > > > --nocolor|-nc)
1365 > > > > RC_NOCOLOR="yes"
1366 > > > > ;;
1367 > > > > esac
1368 > > > > done
1369 > > > >
1370 > > > > setup_defaultlevels
1371 > > > >
1372 > > > > # If we are not /sbin/rc then ensure that we cannot change
1373 > > > > level variables
1374 > > > > if [[ -n ${BASH_SOURCE} \
1375 > > > > && ${BASH_SOURCE[${#BASH_SOURCE[@]}-1]} != "/sbin/rc"
1376 > > > > ]]
1377 > >
1378 > > ;
1379 > >
1380 > > > > then
1381 > > > > declare -r BOOTLEVEL DEFAULTLEVEL SOFTLEVEL
1382 > > > > fi
1383 > > > > else
1384 > > > > # Should we use colors ?
1385 > > > > if [[ $* != *depend* ]] ; then
1386 > > > > # Check user pref in portage
1387 > > > > RC_NOCOLOR="$(portageq envvar NOCOLOR 2>/dev/null)"
1388 > > > > [[ ${RC_NOCOLOR} == "true" ]] && RC_NOCOLOR="yes"
1389 > > > > else
1390 > > > > # We do not want colors during emerge depend
1391 > > > > RC_NOCOLOR="yes"
1392 > > > > # No output is seen during emerge depend, so this is
1393 > > > > not needed.
1394 > > > > RC_ENDCOL="no"
1395 > > > > fi
1396 > > > > fi
1397 > > > > ++ [[ -z '' ]]
1398 > > > > ++
1399 > >
1400 > > PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/sbin:/sbin:/bin:/usr/sbin:/
1401 > >
1402 > > > >usr/bin ++ [[ -z '' ]]
1403 > > > > /sbin/consoletype 2>/dev/null
1404 > > > > +++ /sbin/consoletype
1405 > > > > ++ export CONSOLETYPE=pty
1406 > > > > ++ CONSOLETYPE=pty
1407 > > > > ++ [[ pty == \s\e\r\i\a\l ]]
1408 > > > > ++ setup_defaultlevels
1409 > > > > ++ get_bootconfig
1410 > > > > ++ local copt=
1411 > > > > ++ local newbootlevel=
1412 > > > > ++ local newsoftlevel=
1413 > > > > ++ [[ -r /proc/cmdline ]]
1414 > > > > </proc/cmdline
1415 > > > > ++ for copt in '$(</proc/cmdline)'
1416 > > > > ++ case "${copt%=*}" in
1417 > > > > ++ for copt in '$(</proc/cmdline)'
1418 > > > > ++ case "${copt%=*}" in
1419 > > > > ++ for copt in '$(</proc/cmdline)'
1420 > > > > ++ case "${copt%=*}" in
1421 > > > > ++ for copt in '$(</proc/cmdline)'
1422 > > > > ++ case "${copt%=*}" in
1423 > > > > ++ for copt in '$(</proc/cmdline)'
1424 > > > > ++ case "${copt%=*}" in
1425 > > > > ++ [[ -n '' ]]
1426 > > > > ++ export BOOTLEVEL=boot
1427 > > > > ++ BOOTLEVEL=boot
1428 > > > > ++ [[ -n '' ]]
1429 > > > > ++ export DEFAULTLEVEL=default
1430 > > > > ++ DEFAULTLEVEL=default
1431 > > > > ++ return 0
1432 > > > > ++ get_bootparam noconfigprofile
1433 > > > > ++ local x copt params retval=1
1434 > > > > ++ [[ ! -r /proc/cmdline ]]
1435 > > > > < /proc/cmdline
1436 > > > > ++ for copt in '$(< /proc/cmdline)'
1437 > > > > ++ [[ root == \g\e\n\t\o\o ]]
1438 > > > > ++ for copt in '$(< /proc/cmdline)'
1439 > > > > ++ [[ init == \g\e\n\t\o\o ]]
1440 > > > > ++ for copt in '$(< /proc/cmdline)'
1441 > > > > ++ [[ ramdisk == \g\e\n\t\o\o ]]
1442 > > > > ++ for copt in '$(< /proc/cmdline)'
1443 > > > > ++ [[ real_root == \g\e\n\t\o\o ]]
1444 > > > > ++ for copt in '$(< /proc/cmdline)'
1445 > > > > ++ [[ udev == \g\e\n\t\o\o ]]
1446 > > > > ++ return 1
1447 > > > > ++ get_bootparam configprofile
1448 > > > > ++ local x copt params retval=1
1449 > > > > ++ [[ ! -r /proc/cmdline ]]
1450 > > > > < /proc/cmdline
1451 > > > > ++ for copt in '$(< /proc/cmdline)'
1452 > > > > ++ [[ root == \g\e\n\t\o\o ]]
1453 > > > > ++ for copt in '$(< /proc/cmdline)'
1454 > > > > ++ [[ init == \g\e\n\t\o\o ]]
1455 > > > > ++ for copt in '$(< /proc/cmdline)'
1456 > > > > ++ [[ ramdisk == \g\e\n\t\o\o ]]
1457 > > > > ++ for copt in '$(< /proc/cmdline)'
1458 > > > > ++ [[ real_root == \g\e\n\t\o\o ]]
1459 > > > > ++ for copt in '$(< /proc/cmdline)'
1460 > > > > ++ [[ udev == \g\e\n\t\o\o ]]
1461 > > > > ++ return 1
1462 > > > > ++ [[ yes == \y\e\s ]]
1463 > > > > ++ [[ -n default ]]
1464 > > > > ++ [[ -d /etc/runlevels/boot.default ]]
1465 > > > > ++ [[ -L /etc/runlevels/boot.default ]]
1466 > > > > ++ [[ -z '' ]]
1467 > > > > ++ [[ -f /var/lib/init.d/softlevel ]]
1468 > > > > < "${svcdir}/softlevel"
1469 > > > > ++ export SOFTLEVEL=default
1470 > > > > ++ SOFTLEVEL=default
1471 > > > > ++ return 0
1472 > > > > ++ [[ -n /etc/init.d/functions.sh ]]
1473 > > > > ++ [[ /usr/bin/revdep-rebuild != \/\s\b\i\n\/\r\c ]]
1474 > > > > ++ declare -r BOOTLEVEL DEFAULTLEVEL SOFTLEVEL
1475 > > > >
1476 > > > > if [[ -n ${EBUILD} && $* == *depend* ]] ; then
1477 > > > > # We do not want stty to run during emerge depend
1478 > > > > COLS=80
1479 > > > > else
1480 > > > > # Setup COLS and ENDCOL so eend can line up the [ ok ]
1481 > > > > COLS="${COLUMNS:-0}" # bash's internal COLUMNS
1482 > >
1483 > > variable
1484 > >
1485 > > > > (( COLS == 0 )) && COLS="$(set -- `stty size 2>/dev/null` ;
1486 > > > > echo "$2")"
1487 > > > > (( COLS > 0 )) || (( COLS = 80 )) # width of [ ok ] == 7
1488 > > > > fi
1489 > > > > ++ [[ -n '' ]]
1490 > > > > ++ COLS=0
1491 > > > > ++ (( COLS == 0 ))
1492 > > > > set -- `stty size 2>/dev/null` ; echo "$2"
1493 > > > > stty size 2>/dev/null
1494 > > > > ++++ stty size
1495 > > > > +++ set -- 56 172
1496 > > > > +++ echo 172
1497 > > > > ++ COLS=172
1498 > > > > ++ (( COLS > 0 ))
1499 > > > >
1500 > > > > if [[ ${RC_ENDCOL} == "yes" ]] ; then
1501 > > > > ENDCOL=$'\e[A\e['$(( COLS - 8 ))'C'
1502 > > > > else
1503 > > > > ENDCOL=''
1504 > > > > fi
1505 > > > > ++ [[ yes ==
1506 > > > > \y\e\s ]]
1507 > > > >
1508 > > > > '
1509 > > > > ++ ENDCOL='
1510 > > > > # Setup the colors so our messages all look pretty
1511 > > > > if [[ ${RC_NOCOLOR} == "yes" ]] ; then
1512 > > > > unset GOOD WARN BAD NORMAL HILITE BRACKET
1513 > > > > else
1514 > > > > GOOD=$'\e[32;01m'
1515 > > > > WARN=$'\e[33;01m'
1516 > > > > BAD=$'\e[31;01m'
1517 > > > > HILITE=$'\e[36;01m'
1518 > > > > BRACKET=$'\e[34;01m'
1519 > > > > NORMAL=$'\e[0m'
1520 > > > > fi
1521 > > > > ++ [[ no == \y\e\s ]]
1522 > > > > ++ GOOD=''
1523 > > > > ++ WARN=''
1524 > > > > ++ BAD=''
1525 > > > > ++ HILITE=''
1526 > > > > ++ BRACKET=''
1527 > > > > ++ NORMAL=''
1528 > >
1529 > > #########################################################################
1530 > >
1531 > > > >##### #
1532 > > > > #
1533 > > > > # *** END LAST CODE ***
1534 > > > > #
1535 > > > > #
1536 > > > > #
1537 > > > > # This should be the last code in here, please add all functions
1538 > >
1539 > > above!!
1540 > >
1541 > > > > #
1542 > > > > #
1543 > > > > #
1544 > >
1545 > > #########################################################################
1546 > >
1547 > > > >#####
1548 > > > >
1549 > > > >
1550 > > > > # vim:ts=4
1551 > > > > + normalize_emerge_opts
1552 > > > > + EMERGE_OPTIONS=(${EMERGE_OPTIONS[@]/%-p/--pretend})
1553 > > > > + EMERGE_OPTIONS=(${EMERGE_OPTIONS[@]/%-f/--fetchonly})
1554 > > > > + EMERGE_OPTIONS=(${EMERGE_OPTIONS[@]/%-f/--verbose})
1555 > > > > + [[ '' != *--pretend* ]]
1556 > > > > + [[ 0 -ne 0 ]]
1557 > > > > + setup_portage
1558 > > > > portageq envvar PORTAGE_NICENESS
1559 > > > > ++ portageq envvar PORTAGE_NICENESS
1560 > > > > + local PORTAGE_NICENESS=
1561 > > > > portageq envvar ROOT
1562 > > > > ++ portageq envvar ROOT
1563 > > > > + PORTAGE_ROOT=/
1564 > > > > + [[ -n '' ]]
1565 > > > > + PORTAGE_ROOT=/
1566 > > > > + setup_search_paths_and_masks
1567 > > > > + local configfile sdir mdir skip_me filter_SEARCH_DIRS
1568 > > > > + einfo 'Configuring search environment for revdep-rebuild'
1569 > > > > + einfon 'Configuring search environment for revdep-rebuild\n'
1570 > > > > + [[ no == \y\e\s ]]
1571 > > > > + [[ yes != \y\e\s ]]
1572 > > > > + echo -ne ' * Configuring search environment for revdep-rebuild\n'
1573 > > > > + LAST_E_CMD=einfon
1574 > > > > + return 0
1575 > > > > + LAST_E_CMD=einfo
1576 > > > > + return 0
1577 > > > > unset SEARCH_DIRS; portageq envvar SEARCH_DIRS
1578 > > > > ++ unset SEARCH_DIRS
1579 > > > > ++ portageq envvar SEARCH_DIRS
1580 > > > > + SEARCH_DIRS+=' '
1581 > > > > unset SEARCH_DIRS_MASK; portageq envvar SEARCH_DIRS_MASK
1582 > > > > ++ unset SEARCH_DIRS_MASK
1583 > > > > ++ portageq envvar SEARCH_DIRS_MASK
1584 > > > > + SEARCH_DIRS_MASK+=' '
1585 > > > > unset LD_LIBRARY_MASK; portageq envvar LD_LIBRARY_MASK
1586 > > > > ++ unset LD_LIBRARY_MASK
1587 > > > > ++ portageq envvar LD_LIBRARY_MASK
1588 > > > > + LD_LIBRARY_MASK+=' '
1589 > > > > + [[ -d /etc/revdep-rebuild ]]
1590 > > > > + for configfile in '/etc/revdep-rebuild/*'
1591 > > > > . $configfile; echo $SEARCH_DIRS
1592 > > > > ++ . /etc/revdep-rebuild/60-java
1593 > > > > # The VM dynamically loads these at runtime so they will end up as
1594 > > > > missing # but actually work just fine. See for example
1595 > > > > # https://bugs.gentoo.org/show_bug.cgi?id=152039
1596 > > > > #
1597 > > > > # This file should only have files the are used by things like swt.
1598 > > > > If there
1599 > > > > # are "broken" links inside the jre itself, the jre should install
1600 > > > > it's own # control file.
1601 > > > >
1602 > > > > LD_LIBRARY_MASK="libjvm.so libjawt.so"
1603 > > > > +++ LD_LIBRARY_MASK='libjvm.so libjawt.so'
1604 > > > > ++ echo
1605 > > > > + SEARCH_DIRS+=' '
1606 > > > > . $configfile; echo $SEARCH_DIRS_MASK
1607 > > > > ++ . /etc/revdep-rebuild/60-java
1608 > > > > # The VM dynamically loads these at runtime so they will end up as
1609 > > > > missing # but actually work just fine. See for example
1610 > > > > # https://bugs.gentoo.org/show_bug.cgi?id=152039
1611 > > > > #
1612 > > > > # This file should only have files the are used by things like swt.
1613 > > > > If there
1614 > > > > # are "broken" links inside the jre itself, the jre should install
1615 > > > > it's own # control file.
1616 > > > >
1617 > > > > LD_LIBRARY_MASK="libjvm.so libjawt.so"
1618 > > > > +++ LD_LIBRARY_MASK='libjvm.so libjawt.so'
1619 > > > > ++ echo
1620 > > > > + SEARCH_DIRS_MASK+=' '
1621 > > > > . $configfile; echo $LD_LIBRARY_MASK
1622 > > > > ++ . /etc/revdep-rebuild/60-java
1623 > > > > # The VM dynamically loads these at runtime so they will end up as
1624 > > > > missing # but actually work just fine. See for example
1625 > > > > # https://bugs.gentoo.org/show_bug.cgi?id=152039
1626 > > > > #
1627 > > > > # This file should only have files the are used by things like swt.
1628 > > > > If there
1629 > > > > # are "broken" links inside the jre itself, the jre should install
1630 > > > > it's own # control file.
1631 > > > >
1632 > > > > LD_LIBRARY_MASK="libjvm.so libjawt.so"
1633 > > > > +++ LD_LIBRARY_MASK='libjvm.so libjawt.so'
1634 > > > > ++ echo libjvm.so libjawt.so
1635 > > > > + LD_LIBRARY_MASK+=' libjvm.so libjawt.so'
1636 > > > > + for configfile in '/etc/revdep-rebuild/*'
1637 > > > > . $configfile; echo $SEARCH_DIRS
1638 > > > > ++ . /etc/revdep-rebuild/61-sun-jdk-1.6
1639 > > > > SEARCH_DIRS_MASK="/opt/sun-jdk-1.6.0.07"
1640 > > > > +++ SEARCH_DIRS_MASK=/opt/sun-jdk-1.6.0.07
1641 > > > > ++ echo
1642 > > > > + SEARCH_DIRS+=' '
1643 > > > > . $configfile; echo $SEARCH_DIRS_MASK
1644 > > > > ++ . /etc/revdep-rebuild/61-sun-jdk-1.6
1645 > > > > SEARCH_DIRS_MASK="/opt/sun-jdk-1.6.0.07"
1646 > > > > +++ SEARCH_DIRS_MASK=/opt/sun-jdk-1.6.0.07
1647 > > > > ++ echo /opt/sun-jdk-1.6.0.07
1648 > > > > + SEARCH_DIRS_MASK+=' /opt/sun-jdk-1.6.0.07'
1649 > > > > . $configfile; echo $LD_LIBRARY_MASK
1650 > > > > ++ . /etc/revdep-rebuild/61-sun-jdk-1.6
1651 > > > > SEARCH_DIRS_MASK="/opt/sun-jdk-1.6.0.07"
1652 > > > > +++ SEARCH_DIRS_MASK=/opt/sun-jdk-1.6.0.07
1653 > > > > ++ echo libjvm.so libjawt.so
1654 > > > > + LD_LIBRARY_MASK+=' libjvm.so libjawt.so'
1655 > > > > + for configfile in '/etc/revdep-rebuild/*'
1656 > > > > . $configfile; echo $SEARCH_DIRS
1657 > > > > ++ . /etc/revdep-rebuild/99revdep-rebuild
1658 > > > > # Default revdep-rebuild configuration file
1659 > > > > #
1660 > > > > # revdep-rebuild no longer uses hardcoded paths. To change the
1661 > > > > default # behavior the following variables can be changed:
1662 > > > > #
1663 > > > > # LD_LIBRARY_MASK - Mask of specially evaluated libraries
1664 > > > > #
1665 > > > > # SEARCH_DIRS - List of directories to search for executables and
1666 > > > > libraries # Use this for directories that are not included in
1667 > >
1668 > > PATH
1669 > >
1670 > > > > or ld.so.conf.
1671 > > > > # An application should normally not have to set this variable
1672 > > > > #
1673 > > > > # SEARCH_DIRS_MASK - List of directories to not search
1674 > > > > # Use this for directories that should not be searched by
1675 > > > > revdep-rebuild
1676 > > > > # This is normally used by binary packages such as
1677 > > > > openoffice-bin #
1678 > > > > # Note: This file is sourced using bash by the revdep-rebuild script
1679 > > > >
1680 > > > > LD_LIBRARY_MASK="libodbcinst.so libodbc.so libjava.so libjvm.so"
1681 > > > > +++ LD_LIBRARY_MASK='libodbcinst.so libodbc.so libjava.so libjvm.so'
1682 > > > > SEARCH_DIRS="/bin /sbin /usr/bin /usr/sbin /lib* /usr/lib*"
1683 > > > > +++ SEARCH_DIRS='/bin /sbin /usr/bin /usr/sbin /lib* /usr/lib*'
1684 > > > > SEARCH_DIRS_MASK="/lib*/modules"
1685 > > > > +++ SEARCH_DIRS_MASK='/lib*/modules'
1686 > > > >
1687 > > > > ++
1688 > > > > echo /bin /sbin /usr/bin /usr/sbin /lib /lib32 /lib64 /usr/lib
1689 > >
1690 > > /usr/lib32
1691 > >
1692 > > > > /usr/lib64 /usr/libexec
1693 > > > > +
1694 > > > > SEARCH_DIRS+=' /bin /sbin /usr/bin /usr/sbin /lib /lib32 /lib64
1695 > >
1696 > > /usr/lib
1697 > >
1698 > > > > /usr/lib32 /usr/lib64 /usr/libexec'
1699 > > > > . $configfile; echo $SEARCH_DIRS_MASK
1700 > > > > ++ . /etc/revdep-rebuild/99revdep-rebuild
1701 > > > > # Default revdep-rebuild configuration file
1702 > > > > #
1703 > > > > # revdep-rebuild no longer uses hardcoded paths. To change the
1704 > > > > default # behavior the following variables can be changed:
1705 > > > > #
1706 > > > > # LD_LIBRARY_MASK - Mask of specially evaluated libraries
1707 > > > > #
1708 > > > > # SEARCH_DIRS - List of directories to search for executables and
1709 > > > > libraries # Use this for directories that are not included in
1710 > >
1711 > > PATH
1712 > >
1713 > > > > or ld.so.conf.
1714 > > > > # An application should normally not have to set this variable
1715 > > > > #
1716 > > > > # SEARCH_DIRS_MASK - List of directories to not search
1717 > > > > # Use this for directories that should not be searched by
1718 > > > > revdep-rebuild
1719 > > > > # This is normally used by binary packages such as
1720 > > > > openoffice-bin #
1721 > > > > # Note: This file is sourced using bash by the revdep-rebuild script
1722 > > > >
1723 > > > > LD_LIBRARY_MASK="libodbcinst.so libodbc.so libjava.so libjvm.so"
1724 > > > > +++ LD_LIBRARY_MASK='libodbcinst.so libodbc.so libjava.so libjvm.so'
1725 > > > > SEARCH_DIRS="/bin /sbin /usr/bin /usr/sbin /lib* /usr/lib*"
1726 > > > > +++ SEARCH_DIRS='/bin /sbin /usr/bin /usr/sbin /lib* /usr/lib*'
1727 > > > > SEARCH_DIRS_MASK="/lib*/modules"
1728 > > > > +++ SEARCH_DIRS_MASK='/lib*/modules'
1729 > > > >
1730 > > > > ++ echo /lib64/modules /lib/modules
1731 > > > > + SEARCH_DIRS_MASK+=' /lib64/modules /lib/modules'
1732 > > > > . $configfile; echo $LD_LIBRARY_MASK
1733 > > > > ++ . /etc/revdep-rebuild/99revdep-rebuild
1734 > > > > # Default revdep-rebuild configuration file
1735 > > > > #
1736 > > > > # revdep-rebuild no longer uses hardcoded paths. To change the
1737 > > > > default # behavior the following variables can be changed:
1738 > > > > #
1739 > > > > # LD_LIBRARY_MASK - Mask of specially evaluated libraries
1740 > > > > #
1741 > > > > # SEARCH_DIRS - List of directories to search for executables and
1742 > > > > libraries # Use this for directories that are not included in
1743 > >
1744 > > PATH
1745 > >
1746 > > > > or ld.so.conf.
1747 > > > > # An application should normally not have to set this variable
1748 > > > > #
1749 > > > > # SEARCH_DIRS_MASK - List of directories to not search
1750 > > > > # Use this for directories that should not be searched by
1751 > > > > revdep-rebuild
1752 > > > > # This is normally used by binary packages such as
1753 > > > > openoffice-bin #
1754 > > > > # Note: This file is sourced using bash by the revdep-rebuild script
1755 > > > >
1756 > > > > LD_LIBRARY_MASK="libodbcinst.so libodbc.so libjava.so libjvm.so"
1757 > > > > +++ LD_LIBRARY_MASK='libodbcinst.so libodbc.so libjava.so libjvm.so'
1758 > > > > SEARCH_DIRS="/bin /sbin /usr/bin /usr/sbin /lib* /usr/lib*"
1759 > > > > +++ SEARCH_DIRS='/bin /sbin /usr/bin /usr/sbin /lib* /usr/lib*'
1760 > > > > SEARCH_DIRS_MASK="/lib*/modules"
1761 > > > > +++ SEARCH_DIRS_MASK='/lib*/modules'
1762 > > > >
1763 > > > > ++ echo libodbcinst.so libodbc.so libjava.so libjvm.so
1764 > > > > + LD_LIBRARY_MASK+=' libodbcinst.so libodbc.so libjava.so libjvm.so'
1765 > > > > + [[ -r /etc/profile.env ]]
1766 > > > > + [[ -s /etc/profile.env ]]
1767 > > > > . /etc/profile.env; /usr/bin/tr ':' ' ' <<< "$ROOTPATH $PATH"
1768 > > > > ++ . /etc/profile.env
1769 > > > > # THIS FILE IS AUTOMATICALLY GENERATED BY env-update.
1770 > > > > # DO NOT EDIT THIS FILE. CHANGES TO STARTUP PROFILES
1771 > > > > # GO INTO /etc/profile NOT /etc/profile.env
1772 > > > >
1773 > > > > export CLASSPATH='.'
1774 > > > > +++ export CLASSPATH=.
1775 > > > > +++ CLASSPATH=.
1776 > > > > export CONFIG_PROTECT='/var/bind'
1777 > > > > +++ export CONFIG_PROTECT=/var/bind
1778 > > > > +++ CONFIG_PROTECT=/var/bind
1779 > > > > export
1780 > > > > CONFIG_PROTECT_MASK='/etc/env.d/java/ /etc/php/cli-php5/ext-active/
1781 > > > > /etc/php/cgi-php5/ext-active/ /etc/php/apache2-php5/ext-active/
1782 > > > > /etc/udev/rules.d /etc/terminfo /etc/ca-certificates.conf
1783 > > > > /etc/revdep-rebuild'
1784 > > > > +++
1785 > > > > export 'CONFIG_PROTECT_MASK=/etc/env.d/java/
1786 > > > > /etc/php/cli-php5/ext-active/ /etc/php/cgi-php5/ext-active/
1787 > > > > /etc/php/apache2-php5/ext-active/
1788 > > > > /etc/udev/rules.d /etc/terminfo /etc/ca-certificates.conf
1789 > > > > /etc/revdep-rebuild'
1790 > > > > +++
1791 > > > > CONFIG_PROTECT_MASK='/etc/env.d/java/ /etc/php/cli-php5/ext-active/
1792 > > > > /etc/php/cgi-php5/ext-active/ /etc/php/apache2-php5/ext-active/
1793 > > > > /etc/udev/rules.d /etc/terminfo /etc/ca-certificates.conf
1794 > > > > /etc/revdep-rebuild'
1795 > > > > export CVS_RSH='ssh'
1796 > > > > +++ export CVS_RSH=ssh
1797 > > > > +++ CVS_RSH=ssh
1798 > > > > export GCC_SPECS=''
1799 > > > > +++ export GCC_SPECS=
1800 > > > > +++ GCC_SPECS=
1801 > > > > export
1802 > >
1803 > > INFOPATH='/usr/share/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.
1804 > >
1805 > > > >18/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.1.2/info' +++ export
1806 > >
1807 > > INFOPATH=/usr/share/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.1
1808 > >
1809 > > > >8/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.1.2/info +++
1810 > >
1811 > > INFOPATH=/usr/share/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.1
1812 > >
1813 > > > >8/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.1.2/info export
1814 > > > > LANG='hu_HU.UTF-8'
1815 > > > > +++ export LANG=hu_HU.UTF-8
1816 > > > > +++ LANG=hu_HU.UTF-8
1817 > > > > export LANGUAGE='hu_HU.UTF-8:hu'
1818 > > > > +++ export LANGUAGE=hu_HU.UTF-8:hu
1819 > > > > +++ LANGUAGE=hu_HU.UTF-8:hu
1820 > > > > export LC_ADDRESS='hu_HU.UTF-8'
1821 > > > > +++ export LC_ADDRESS=hu_HU.UTF-8
1822 > > > > +++ LC_ADDRESS=hu_HU.UTF-8
1823 > > > > export LC_ALL='hu_HU.UTF-8'
1824 > > > > +++ export LC_ALL=hu_HU.UTF-8
1825 > > > > +++ LC_ALL=hu_HU.UTF-8
1826 > > > > export LC_COLLATE='hu_HU.UTF-8'
1827 > > > > +++ export LC_COLLATE=hu_HU.UTF-8
1828 > > > > +++ LC_COLLATE=hu_HU.UTF-8
1829 > > > > export LC_CTYPE='hu_HU.UTF-8'
1830 > > > > +++ export LC_CTYPE=hu_HU.UTF-8
1831 > > > > +++ LC_CTYPE=hu_HU.UTF-8
1832 > > > > export LC_IDENTIFICATION='hu_HU.UTF-8'
1833 > > > > +++ export LC_IDENTIFICATION=hu_HU.UTF-8
1834 > > > > +++ LC_IDENTIFICATION=hu_HU.UTF-8
1835 > > > > export LC_MEASUREMENT='hu_HU.UTF-8'
1836 > > > > +++ export LC_MEASUREMENT=hu_HU.UTF-8
1837 > > > > +++ LC_MEASUREMENT=hu_HU.UTF-8
1838 > > > > export LC_MESSAGES='hu_HU.UTF-8'
1839 > > > > +++ export LC_MESSAGES=hu_HU.UTF-8
1840 > > > > +++ LC_MESSAGES=hu_HU.UTF-8
1841 > > > > export LC_MONETARY='hu_HU.UTF-8'
1842 > > > > +++ export LC_MONETARY=hu_HU.UTF-8
1843 > > > > +++ LC_MONETARY=hu_HU.UTF-8
1844 > > > > export LC_NAME='hu_HU.UTF-8'
1845 > > > > +++ export LC_NAME=hu_HU.UTF-8
1846 > > > > +++ LC_NAME=hu_HU.UTF-8
1847 > > > > export LC_NUMERIC='hu_HU.UTF-8'
1848 > > > > +++ export LC_NUMERIC=hu_HU.UTF-8
1849 > > > > +++ LC_NUMERIC=hu_HU.UTF-8
1850 > > > > export LC_PAPER='hu_HU.UTF-8'
1851 > > > > +++ export LC_PAPER=hu_HU.UTF-8
1852 > > > > +++ LC_PAPER=hu_HU.UTF-8
1853 > > > > export LC_TELEPHONE='hu_HU.UTF-8'
1854 > > > > +++ export LC_TELEPHONE=hu_HU.UTF-8
1855 > > > > +++ LC_TELEPHONE=hu_HU.UTF-8
1856 > > > > export LC_TIME='hu_HU.UTF-8'
1857 > > > > +++ export LC_TIME=hu_HU.UTF-8
1858 > > > > +++ LC_TIME=hu_HU.UTF-8
1859 > > > > export LESS='-R -M --shift 5'
1860 > > > > +++ export 'LESS=-R -M --shift 5'
1861 > > > > +++ LESS='-R -M --shift 5'
1862 > > > > export LESSOPEN='|lesspipe.sh %s'
1863 > > > > +++ export 'LESSOPEN=|lesspipe.sh %s'
1864 > > > > +++ LESSOPEN='|lesspipe.sh %s'
1865 > > > > export
1866 > >
1867 > > MANPATH='/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/x86
1868 > >
1869 > > >_64-pc-linux-gnu/2.18/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.1.2/
1870 > > >ma
1871 > > >
1872 > > > >n:/etc/java-config/system-vm/man/:/usr/lib64/php5/man/' +++ export
1873 > >
1874 > > MANPATH=/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/x86_
1875 > >
1876 > > >64-pc-linux-gnu/2.18/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.1.2/m
1877 > > >an
1878 > > >
1879 > > > >:/etc/java-config/system-vm/man/:/usr/lib64/php5/man/ +++
1880 > >
1881 > > MANPATH=/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/x86_
1882 > >
1883 > > >64-pc-linux-gnu/2.18/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.1.2/m
1884 > > >an
1885 > > >
1886 > > > >:/etc/java-config/system-vm/man/:/usr/lib64/php5/man/ export
1887 > > > >
1888 > > > > PAGER='/usr/bin/less'
1889 > > > > +++ export PAGER=/usr/bin/less
1890 > > > > +++ PAGER=/usr/bin/less
1891 > > > > export
1892 > > > > PATH='/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2:/usr/games/bin'
1893 > > > > +++ export
1894 > > > > PATH=/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2:/usr/games/bin
1895 > > > > +++
1896 > > > > PATH=/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2:/usr/games/bin
1897 > > > > export PYTHONPATH='/usr/lib64/portage/pym'
1898 > > > > +++ export PYTHONPATH=/usr/lib64/portage/pym
1899 > > > > +++ PYTHONPATH=/usr/lib64/portage/pym
1900 > > > > export ROOTPATH='/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2'
1901 > > > > +++ export ROOTPATH=/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2
1902 > > > > +++ ROOTPATH=/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2
1903 > > > > ++ /usr/bin/tr : ' '
1904 > > > > +
1905 > > > > SEARCH_DIRS+=' /opt/bin /usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2
1906 > > > > /opt/bin /usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2 /usr/games/bin'
1907 > > > > + [[ -r /etc/ld.so.conf ]]
1908 > > > > + [[ -s /etc/ld.so.conf ]]
1909 > > > > sed '/^#/d;s/#.*$//' /etc/ld.so.conf
1910 > > > > ++ sed '/^#/d;s/#.*$//' /etc/ld.so.conf
1911 > > > > + SEARCH_DIRS+=' /usr/local/lib
1912 > > > > /lib
1913 > > > > /usr/lib
1914 > > > > /lib64
1915 > > > > /usr/lib64
1916 > > > > /usr/local/lib64
1917 > > > > /lib32
1918 > > > > /usr/lib32
1919 > > > > /usr/local/lib32
1920 > > > > /usr/x86_64-pc-linux-gnu/lib
1921 > > > > /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2
1922 > > > > /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32
1923 > > > > /usr/games/lib
1924 > > > > /usr/games/lib32
1925 > > > > /usr/lib64/libstdc++-v3/'
1926 > > > > clean_var <<< "$SEARCH_DIRS"
1927 > > > > ++ clean_var
1928 > > > > ++ awk 'BEGIN {RS="[[:space:]]"}
1929 > > > > /-\*/ {exit}
1930 > > > > /[^[:space:]]/ {gsub(/\/\/+/, "/"); print}'
1931 > > > > ++ sort -u
1932 > > > > + SEARCH_DIRS='/bin
1933 > > > > /lib
1934 > > > > /lib32
1935 > > > > /lib64
1936 > > > > /opt/bin
1937 > > > > /sbin
1938 > > > > /usr/bin
1939 > > > > /usr/games/bin
1940 > > > > /usr/games/lib
1941 > > > > /usr/games/lib32
1942 > > > > /usr/lib
1943 > > > > /usr/lib32
1944 > > > > /usr/lib64
1945 > > > > /usr/lib64/libstdc++-v3/
1946 > > > > /usr/libexec
1947 > > > > /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2
1948 > > > > /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32
1949 > > > > /usr/local/lib
1950 > > > > /usr/local/lib32
1951 > > > > /usr/local/lib64
1952 > > > > /usr/sbin
1953 > > > > /usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2
1954 > > > > /usr/x86_64-pc-linux-gnu/lib'
1955 > > > > clean_var <<< "$SEARCH_DIRS_MASK"
1956 > > > > ++ clean_var
1957 > > > > ++ awk 'BEGIN {RS="[[:space:]]"}
1958 > > > > /-\*/ {exit}
1959 > > > > /[^[:space:]]/ {gsub(/\/\/+/, "/"); print}'
1960 > > > > ++ sort -u
1961 > > > > + SEARCH_DIRS_MASK='/lib64/modules
1962 > > > > /lib/modules
1963 > > > > /opt/sun-jdk-1.6.0.07'
1964 > > > > clean_var <<< "$LD_LIBRARY_MASK"
1965 > > > > ++ clean_var
1966 > > > > ++ awk 'BEGIN {RS="[[:space:]]"}
1967 > > > > /-\*/ {exit}
1968 > > > > /[^[:space:]]/ {gsub(/\/\/+/, "/"); print}'
1969 > > > > ++ sort -u
1970 > > > > + LD_LIBRARY_MASK='libjava.so
1971 > > > > libjawt.so
1972 > > > > libjvm.so
1973 > > > > libodbcinst.so
1974 > > > > libodbc.so'
1975 > > > > + for sdir in '${SEARCH_DIRS}'
1976 > > > > + skip_me=
1977 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
1978 > > > > + [[ /bin == /lib64/modules/* ]]
1979 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
1980 > > > > + [[ /bin == /lib/modules/* ]]
1981 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
1982 > > > > + [[ /bin == /opt/sun-jdk-1.6.0.07/* ]]
1983 > > > > + [[ -n '' ]]
1984 > > > > + filter_SEARCH_DIRS+=' /bin'
1985 > > > > + for sdir in '${SEARCH_DIRS}'
1986 > > > > + skip_me=
1987 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
1988 > > > > + [[ /lib == /lib64/modules/* ]]
1989 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
1990 > > > > + [[ /lib == /lib/modules/* ]]
1991 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
1992 > > > > + [[ /lib == /opt/sun-jdk-1.6.0.07/* ]]
1993 > > > > + [[ -n '' ]]
1994 > > > > + filter_SEARCH_DIRS+=' /lib'
1995 > > > > + for sdir in '${SEARCH_DIRS}'
1996 > > > > + skip_me=
1997 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
1998 > > > > + [[ /lib32 == /lib64/modules/* ]]
1999 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2000 > > > > + [[ /lib32 == /lib/modules/* ]]
2001 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2002 > > > > + [[ /lib32 == /opt/sun-jdk-1.6.0.07/* ]]
2003 > > > > + [[ -n '' ]]
2004 > > > > + filter_SEARCH_DIRS+=' /lib32'
2005 > > > > + for sdir in '${SEARCH_DIRS}'
2006 > > > > + skip_me=
2007 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2008 > > > > + [[ /lib64 == /lib64/modules/* ]]
2009 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2010 > > > > + [[ /lib64 == /lib/modules/* ]]
2011 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2012 > > > > + [[ /lib64 == /opt/sun-jdk-1.6.0.07/* ]]
2013 > > > > + [[ -n '' ]]
2014 > > > > + filter_SEARCH_DIRS+=' /lib64'
2015 > > > > + for sdir in '${SEARCH_DIRS}'
2016 > > > > + skip_me=
2017 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2018 > > > > + [[ /opt/bin == /lib64/modules/* ]]
2019 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2020 > > > > + [[ /opt/bin == /lib/modules/* ]]
2021 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2022 > > > > + [[ /opt/bin == /opt/sun-jdk-1.6.0.07/* ]]
2023 > > > > + [[ -n '' ]]
2024 > > > > + filter_SEARCH_DIRS+=' /opt/bin'
2025 > > > > + for sdir in '${SEARCH_DIRS}'
2026 > > > > + skip_me=
2027 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2028 > > > > + [[ /sbin == /lib64/modules/* ]]
2029 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2030 > > > > + [[ /sbin == /lib/modules/* ]]
2031 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2032 > > > > + [[ /sbin == /opt/sun-jdk-1.6.0.07/* ]]
2033 > > > > + [[ -n '' ]]
2034 > > > > + filter_SEARCH_DIRS+=' /sbin'
2035 > > > > + for sdir in '${SEARCH_DIRS}'
2036 > > > > + skip_me=
2037 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2038 > > > > + [[ /usr/bin == /lib64/modules/* ]]
2039 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2040 > > > > + [[ /usr/bin == /lib/modules/* ]]
2041 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2042 > > > > + [[ /usr/bin == /opt/sun-jdk-1.6.0.07/* ]]
2043 > > > > + [[ -n '' ]]
2044 > > > > + filter_SEARCH_DIRS+=' /usr/bin'
2045 > > > > + for sdir in '${SEARCH_DIRS}'
2046 > > > > + skip_me=
2047 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2048 > > > > + [[ /usr/games/bin == /lib64/modules/* ]]
2049 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2050 > > > > + [[ /usr/games/bin == /lib/modules/* ]]
2051 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2052 > > > > + [[ /usr/games/bin == /opt/sun-jdk-1.6.0.07/* ]]
2053 > > > > + [[ -n '' ]]
2054 > > > > + filter_SEARCH_DIRS+=' /usr/games/bin'
2055 > > > > + for sdir in '${SEARCH_DIRS}'
2056 > > > > + skip_me=
2057 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2058 > > > > + [[ /usr/games/lib == /lib64/modules/* ]]
2059 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2060 > > > > + [[ /usr/games/lib == /lib/modules/* ]]
2061 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2062 > > > > + [[ /usr/games/lib == /opt/sun-jdk-1.6.0.07/* ]]
2063 > > > > + [[ -n '' ]]
2064 > > > > + filter_SEARCH_DIRS+=' /usr/games/lib'
2065 > > > > + for sdir in '${SEARCH_DIRS}'
2066 > > > > + skip_me=
2067 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2068 > > > > + [[ /usr/games/lib32 == /lib64/modules/* ]]
2069 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2070 > > > > + [[ /usr/games/lib32 == /lib/modules/* ]]
2071 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2072 > > > > + [[ /usr/games/lib32 == /opt/sun-jdk-1.6.0.07/* ]]
2073 > > > > + [[ -n '' ]]
2074 > > > > + filter_SEARCH_DIRS+=' /usr/games/lib32'
2075 > > > > + for sdir in '${SEARCH_DIRS}'
2076 > > > > + skip_me=
2077 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2078 > > > > + [[ /usr/lib == /lib64/modules/* ]]
2079 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2080 > > > > + [[ /usr/lib == /lib/modules/* ]]
2081 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2082 > > > > + [[ /usr/lib == /opt/sun-jdk-1.6.0.07/* ]]
2083 > > > > + [[ -n '' ]]
2084 > > > > + filter_SEARCH_DIRS+=' /usr/lib'
2085 > > > > + for sdir in '${SEARCH_DIRS}'
2086 > > > > + skip_me=
2087 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2088 > > > > + [[ /usr/lib32 == /lib64/modules/* ]]
2089 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2090 > > > > + [[ /usr/lib32 == /lib/modules/* ]]
2091 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2092 > > > > + [[ /usr/lib32 == /opt/sun-jdk-1.6.0.07/* ]]
2093 > > > > + [[ -n '' ]]
2094 > > > > + filter_SEARCH_DIRS+=' /usr/lib32'
2095 > > > > + for sdir in '${SEARCH_DIRS}'
2096 > > > > + skip_me=
2097 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2098 > > > > + [[ /usr/lib64 == /lib64/modules/* ]]
2099 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2100 > > > > + [[ /usr/lib64 == /lib/modules/* ]]
2101 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2102 > > > > + [[ /usr/lib64 == /opt/sun-jdk-1.6.0.07/* ]]
2103 > > > > + [[ -n '' ]]
2104 > > > > + filter_SEARCH_DIRS+=' /usr/lib64'
2105 > > > > + for sdir in '${SEARCH_DIRS}'
2106 > > > > + skip_me=
2107 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2108 > > > > + [[ /usr/lib64/libstdc++-v3/ == /lib64/modules/* ]]
2109 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2110 > > > > + [[ /usr/lib64/libstdc++-v3/ == /lib/modules/* ]]
2111 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2112 > > > > + [[ /usr/lib64/libstdc++-v3/ == /opt/sun-jdk-1.6.0.07/* ]]
2113 > > > > + [[ -n '' ]]
2114 > > > > + filter_SEARCH_DIRS+=' /usr/lib64/libstdc++-v3/'
2115 > > > > + for sdir in '${SEARCH_DIRS}'
2116 > > > > + skip_me=
2117 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2118 > > > > + [[ /usr/libexec == /lib64/modules/* ]]
2119 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2120 > > > > + [[ /usr/libexec == /lib/modules/* ]]
2121 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2122 > > > > + [[ /usr/libexec == /opt/sun-jdk-1.6.0.07/* ]]
2123 > > > > + [[ -n '' ]]
2124 > > > > + filter_SEARCH_DIRS+=' /usr/libexec'
2125 > > > > + for sdir in '${SEARCH_DIRS}'
2126 > > > > + skip_me=
2127 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2128 > > > > + [[ /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2 == /lib64/modules/* ]]
2129 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2130 > > > > + [[ /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2 == /lib/modules/* ]]
2131 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2132 > > > > + [[ /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2 ==
2133 > > > > /opt/sun-jdk-1.6.0.07/*
2134 > >
2135 > > ]]
2136 > >
2137 > > > > + [[ -n '' ]]
2138 > > > > + filter_SEARCH_DIRS+=' /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2'
2139 > > > > + for sdir in '${SEARCH_DIRS}'
2140 > > > > + skip_me=
2141 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2142 > > > > + [[ /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32 == /lib64/modules/* ]]
2143 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2144 > > > > + [[ /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32 == /lib/modules/* ]]
2145 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2146 > > > > + [[ /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32 ==
2147 > >
2148 > > /opt/sun-jdk-1.6.0.07/*
2149 > >
2150 > > > > ]]
2151 > > > > + [[ -n '' ]]
2152 > > > > + filter_SEARCH_DIRS+=' /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32'
2153 > > > > + for sdir in '${SEARCH_DIRS}'
2154 > > > > + skip_me=
2155 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2156 > > > > + [[ /usr/local/lib == /lib64/modules/* ]]
2157 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2158 > > > > + [[ /usr/local/lib == /lib/modules/* ]]
2159 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2160 > > > > + [[ /usr/local/lib == /opt/sun-jdk-1.6.0.07/* ]]
2161 > > > > + [[ -n '' ]]
2162 > > > > + filter_SEARCH_DIRS+=' /usr/local/lib'
2163 > > > > + for sdir in '${SEARCH_DIRS}'
2164 > > > > + skip_me=
2165 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2166 > > > > + [[ /usr/local/lib32 == /lib64/modules/* ]]
2167 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2168 > > > > + [[ /usr/local/lib32 == /lib/modules/* ]]
2169 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2170 > > > > + [[ /usr/local/lib32 == /opt/sun-jdk-1.6.0.07/* ]]
2171 > > > > + [[ -n '' ]]
2172 > > > > + filter_SEARCH_DIRS+=' /usr/local/lib32'
2173 > > > > + for sdir in '${SEARCH_DIRS}'
2174 > > > > + skip_me=
2175 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2176 > > > > + [[ /usr/local/lib64 == /lib64/modules/* ]]
2177 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2178 > > > > + [[ /usr/local/lib64 == /lib/modules/* ]]
2179 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2180 > > > > + [[ /usr/local/lib64 == /opt/sun-jdk-1.6.0.07/* ]]
2181 > > > > + [[ -n '' ]]
2182 > > > > + filter_SEARCH_DIRS+=' /usr/local/lib64'
2183 > > > > + for sdir in '${SEARCH_DIRS}'
2184 > > > > + skip_me=
2185 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2186 > > > > + [[ /usr/sbin == /lib64/modules/* ]]
2187 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2188 > > > > + [[ /usr/sbin == /lib/modules/* ]]
2189 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2190 > > > > + [[ /usr/sbin == /opt/sun-jdk-1.6.0.07/* ]]
2191 > > > > + [[ -n '' ]]
2192 > > > > + filter_SEARCH_DIRS+=' /usr/sbin'
2193 > > > > + for sdir in '${SEARCH_DIRS}'
2194 > > > > + skip_me=
2195 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2196 > > > > + [[ /usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2 == /lib64/modules/* ]]
2197 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2198 > > > > + [[ /usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2 == /lib/modules/* ]]
2199 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2200 > > > > + [[ /usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2 ==
2201 > > > > /opt/sun-jdk-1.6.0.07/*
2202 > >
2203 > > ]]
2204 > >
2205 > > > > + [[ -n '' ]]
2206 > > > > + filter_SEARCH_DIRS+=' /usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2'
2207 > > > > + for sdir in '${SEARCH_DIRS}'
2208 > > > > + skip_me=
2209 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2210 > > > > + [[ /usr/x86_64-pc-linux-gnu/lib == /lib64/modules/* ]]
2211 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2212 > > > > + [[ /usr/x86_64-pc-linux-gnu/lib == /lib/modules/* ]]
2213 > > > > + for mdir in '${SEARCH_DIRS_MASK}'
2214 > > > > + [[ /usr/x86_64-pc-linux-gnu/lib == /opt/sun-jdk-1.6.0.07/* ]]
2215 > > > > + [[ -n '' ]]
2216 > > > > + filter_SEARCH_DIRS+=' /usr/x86_64-pc-linux-gnu/lib'
2217 > > > > clean_var <<< "${filter_SEARCH_DIRS}"
2218 > > > > ++ clean_var
2219 > > > > ++ awk 'BEGIN {RS="[[:space:]]"}
2220 > > > > /-\*/ {exit}
2221 > > > > /[^[:space:]]/ {gsub(/\/\/+/, "/"); print}'
2222 > > > > ++ sort -u
2223 > > > > + SEARCH_DIRS='/bin
2224 > > > > /lib
2225 > > > > /lib32
2226 > > > > /lib64
2227 > > > > /opt/bin
2228 > > > > /sbin
2229 > > > > /usr/bin
2230 > > > > /usr/games/bin
2231 > > > > /usr/games/lib
2232 > > > > /usr/games/lib32
2233 > > > > /usr/lib
2234 > > > > /usr/lib32
2235 > > > > /usr/lib64
2236 > > > > /usr/lib64/libstdc++-v3/
2237 > > > > /usr/libexec
2238 > > > > /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2
2239 > > > > /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32
2240 > > > > /usr/local/lib
2241 > > > > /usr/local/lib32
2242 > > > > /usr/local/lib64
2243 > > > > /usr/sbin
2244 > > > > /usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2
2245 > > > > /usr/x86_64-pc-linux-gnu/lib'
2246 > > > > + [[ -n /bin
2247 > > > > /lib
2248 > > > > /lib32
2249 > > > > /lib64
2250 > > > > /opt/bin
2251 > > > > /sbin
2252 > > > > /usr/bin
2253 > > > > /usr/games/bin
2254 > > > > /usr/games/lib
2255 > > > > /usr/games/lib32
2256 > > > > /usr/lib
2257 > > > > /usr/lib32
2258 > > > > /usr/lib64
2259 > > > > /usr/lib64/libstdc++-v3/
2260 > > > > /usr/libexec
2261 > > > > /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2
2262 > > > > /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32
2263 > > > > /usr/local/lib
2264 > > > > /usr/local/lib32
2265 > > > > /usr/local/lib64
2266 > > > > /usr/sbin
2267 > > > > /usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2
2268 > > > > /usr/x86_64-pc-linux-gnu/lib ]]
2269 > > > > + get_search_env
2270 > > > > + local new_env
2271 > > > > + local old_env
2272 > > > > python -c 'import os; import pwd; print pwd.getpwuid(os.getuid())[0]'
2273 > > > > ++ python -c 'import os; import pwd; print
2274 > >
2275 > > pwd.getpwuid(os.getuid())[0]'
2276 > >
2277 > > > > + local uid=root
2278 > > > > + [[ root == \r\o\o\t ]]
2279 > > > > + local tmp_target=/var/cache/revdep-rebuild
2280 > > > > + verify_tmpdir /var/cache/revdep-rebuild root
2281 > > > > + umask 007
2282 > > > > + [[ ! -n /var/cache/revdep-rebuild ]]
2283 > > > > + [[ -d /var/cache/revdep-rebuild ]]
2284 > > > > find "$1" -type d ! \( -user $2 -perm -0700 \)
2285 > > > > ++ find /var/cache/revdep-rebuild -type d '!' '(' -user root -perm
2286 > >
2287 > > -0700
2288 > >
2289 > > > > ')'
2290 > > > > ++ hash find
2291 > > > > type -P find
2292 > > > > +++ type -P find
2293 > > > > ++ local testsubject=/usr/bin/find
2294 > > > > command find "$testsubject" -executable 2> /dev/null
2295 > > > > +++ command find /usr/bin/find -executable
2296 > > > > ++ [[ -n /usr/bin/find ]]
2297 > > > > ++ unset -f find
2298 > > > > ++ find /var/cache/revdep-rebuild -type d '!' '(' -user root -perm
2299 > >
2300 > > -0700
2301 > >
2302 > > > > ')'
2303 > > > > + [[ -n '' ]]
2304 > > > > + cd /var/cache/revdep-rebuild
2305 > > > > + builtin cd -P /var/cache/revdep-rebuild
2306 > > > > + [[ /var/cache/revdep-rebuild != /var/mnt/cache/revdep-rebuild ]]
2307 > > > > + die 1 'Working directory expected to be /var/cache/revdep-rebuild,
2308 > >
2309 > > but
2310 > >
2311 > > > > it is /var/mnt/cache/revdep-rebuild'
2312 > > > > + local status=1
2313 > > > > + shift
2314 > > > > + eerror 'Working directory expected to be /var/cache/revdep-rebuild,
2315 > >
2316 > > but
2317 > >
2318 > > > > it
2319 > > > > is /var/mnt/cache/revdep-rebuild'
2320 > > > > + [[ no == \y\e\s ]]
2321 > > > > + [[ yes != \y\e\s ]]
2322 > > > > + echo -e ' * Working directory expected to be
2323 > >
2324 > > /var/cache/revdep-rebuild,
2325 > >
2326 > > > > but
2327 > > > > it is /var/mnt/cache/revdep-rebuild'
2328 > > > > + local name=rc-scripts
2329 > > > > + [[ /usr/bin/revdep-rebuild != \/\s\b\i\n\/\r\u\n\s\c\r\i\p\t\.\s\h
2330 > > > > ]] + name=revdep-rebuild
2331 > > > > + esyslog daemon.err rc-scripts 'Working directory expected to
2332 > > > > be /var/cache/revdep-rebuild, but it is
2333 > > > > /var/mnt/cache/revdep-rebuild' + local pri=
2334 > > > > + local tag=
2335 > > > > + [[ -x /usr/bin/logger ]]
2336 > > > > + pri=daemon.err
2337 > > > > + tag=rc-scripts
2338 > > > > + shift 2
2339 > > > > + [[ -z Working directory expected to be /var/cache/revdep-rebuild,
2340 > > > > but it is /var/mnt/cache/revdep-rebuild ]]
2341 > > > > + /usr/bin/logger -p daemon.err -t rc-scripts -- 'Working directory
2342 > > > > expected
2343 > > > > to be /var/cache/revdep-rebuild, but it is
2344 > >
2345 > > /var/mnt/cache/revdep-rebuild'
2346 > >
2347 > > > > + return 0
2348 > > > > + LAST_E_CMD=eerror
2349 > > > > + return 0
2350 > > > > + exit 1