Hi Can anyone advise? When I run SuSEconfig in SuSE 6.4 I get Error: file texmf.cnf not found in ``/usr/share/texmf/web2c''. TEXMFMAIN ``/usr/share/texmf'' seems to have the wrong value from a texmf.cnf file. among many similar messages. /usr/share/texmf/web2c/texmf.cnf is a broken link to ../../../../etc/texmf.cnf But /usr/share/texmf/web2c is actually a link to /var/lib/texmf/web2c and so the ../'s follow the REAL path up to / via /var, and down to /etc. In /etc sits a file called texmf.cnf , so why the broken link?? The answer is that I have a /tmp partition (shared with another distribution), and my /var is actually a link to /tmp/VAR.SuSE. So the REAL path to /etc/texmf.cnf needs an extra ../ to get back to / and thence to /etc. "find" showed up many other broken links, broken for the same reason. 2 questions: 1. How can the original /var be copied or moved to /tmp/VAR.SuSE without breaking relative symbolic links? 2. How can package updates be done without perhaps breaking these links? 3. (Extra) How many installations are in the same boat? Richard Smith
On 22 Jan, Richard Smith wrote:
The answer is that I have a /tmp partition (shared with another distribution), and my /var is actually a link to /tmp/VAR.SuSE. So the REAL path to /etc/texmf.cnf needs an extra ../ to get back to / and thence to /etc. "find" showed up many other broken links, broken for the same reason. ... 3. (Extra) How many installations are in the same boat?
I've had the same problem with /opt. On my system, /opt is a symlink to /usr/opt. Relative symlinks under /opt (like those in GNOME) break with every upgrade. Took me two weeks to solve it the first time. Now I just remember to fix them after upgrading... Personally, I wish packagers would use absolute paths with symlinks. Or at least with the links that go back to /. What 'find' command did you use to get broken links? -- Robert Wohlfarth rjwohlfar@bigfoot.com "Is not life more important than food, and the body more important than clothes?" -- Matthew 6:25b
To findbroken links I used (with help from a good find man): find / -type l -exec file \{\} \;|grep "broken symbolic" > broken.links Run as root that will list them all in broken.links On Wed, 24 Jan 2001, you wrote: > On 22 Jan, Richard Smith wrote:
The answer is that I have a /tmp partition (shared with another distribution), and my /var is actually a link to /tmp/VAR.SuSE. So the REAL path to /etc/texmf.cnf needs an extra ../ to get back to / and thence to /etc. "find" showed up many other broken links, broken for the same reason. ... 3. (Extra) How many installations are in the same boat?
I've had the same problem with /opt. On my system, /opt is a symlink to /usr/opt. Relative symlinks under /opt (like those in GNOME) break with every upgrade. Took me two weeks to solve it the first time. Now I just remember to fix them after upgrading...
Personally, I wish packagers would use absolute paths with symlinks. Or at least with the links that go back to /.
What 'find' command did you use to get broken links?
-- Robert Wohlfarth rjwohlfar@bigfoot.com
"Is not life more important than food, and the body more important than clothes?" -- Matthew 6:25b
-- To unsubscribe send e-mail to suse-linux-e-unsubscribe@suse.com For additional commands send e-mail to suse-linux-e-help@suse.com Also check the FAQ at http://www.suse.com/support/faq
I hope you don't mind a patch :) find / -type l -path '/proc' -prune -o -exec file \{\} \;|grep "broken symbolic" > broken.links This gets rid of all those /proc entries that you don't want to see or mess with. --Jeremy
To findbroken links I used (with help from a good find man):
find / -type l -exec file \{\} \;|grep "broken symbolic" > broken.links
Run as root that will list them all in broken.links
On Wed, 24 Jan 2001, you wrote: > On 22 Jan, Richard Smith wrote:
The answer is that I have a /tmp partition (shared with another distribution), and my /var is actually a link to /tmp/VAR.SuSE. So the REAL path to /etc/texmf.cnf needs an extra ../ to get back to / and thence to /etc. "find" showed up many other broken links, broken for the same reason. ... 3. (Extra) How many installations are in the same boat?
I've had the same problem with /opt. On my system, /opt is a symlink to /usr/opt. Relative symlinks under /opt (like those in GNOME) break with every upgrade. Took me two weeks to solve it the first time. Now I just remember to fix them after upgrading...
Personally, I wish packagers would use absolute paths with symlinks. Or at least with the links that go back to /.
What 'find' command did you use to get broken links?
-- Robert Wohlfarth rjwohlfar@bigfoot.com
"Is not life more important than food, and the body more important than clothes?" -- Matthew 6:25b
-- To unsubscribe send e-mail to suse-linux-e-unsubscribe@suse.com For additional commands send e-mail to suse-linux-e-help@suse.com Also check the FAQ at http://www.suse.com/support/faq
-- To unsubscribe send e-mail to suse-linux-e-unsubscribe@suse.com For additional commands send e-mail to suse-linux-e-help@suse.com Also check the FAQ at http://www.suse.com/support/faq
Whoops, that's a thinko, this really does work: find / -type l ! -path '/proc*' -exec file {} \; | grep "broken symbolic"
I hope you don't mind a patch :)
find / -type l -path '/proc' -prune -o -exec file \{\} \;|grep "broken symbolic" > broken.links
This gets rid of all those /proc entries that you don't want to see or mess with.
--Jeremy
To findbroken links I used (with help from a good find man):
find / -type l -exec file \{\} \;|grep "broken symbolic" > broken.links
Run as root that will list them all in broken.links
On Wed, 24 Jan 2001, you wrote: > On 22 Jan, Richard Smith wrote:
The answer is that I have a /tmp partition (shared with another distribution), and my /var is actually a link to /tmp/VAR.SuSE. So the REAL path to /etc/texmf.cnf needs an extra ../ to get back to / and thence to /etc. "find" showed up many other broken links, broken for the same reason. ... 3. (Extra) How many installations are in the same boat?
I've had the same problem with /opt. On my system, /opt is a symlink to /usr/opt. Relative symlinks under /opt (like those in GNOME) break with every upgrade. Took me two weeks to solve it the first time. Now I just remember to fix them after upgrading...
Personally, I wish packagers would use absolute paths with symlinks. Or at least with the links that go back to /.
What 'find' command did you use to get broken links?
-- Robert Wohlfarth rjwohlfar@bigfoot.com
"Is not life more important than food, and the body more important than clothes?" -- Matthew 6:25b
-- To unsubscribe send e-mail to suse-linux-e-unsubscribe@suse.com For additional commands send e-mail to suse-linux-e-help@suse.com Also check the FAQ at http://www.suse.com/support/faq
-- To unsubscribe send e-mail to suse-linux-e-unsubscribe@suse.com For additional commands send e-mail to suse-linux-e-help@suse.com Also check the FAQ at http://www.suse.com/support/faq
-- To unsubscribe send e-mail to suse-linux-e-unsubscribe@suse.com For additional commands send e-mail to suse-linux-e-help@suse.com Also check the FAQ at http://www.suse.com/support/faq
On Wednesday 24 January 2001 12:06, Jeremy Buchmann wrote:
Whoops, that's a thinko, this really does work:
find / -type l ! -path '/proc*' -exec file {} \; | grep "broken symbolic"
I hope you don't mind a patch :)
Only if they work! ;-) This one doesn't work for me. I get an 'unexpected token near !" message. jlk -- Scientific theories, according to Sir Karl Popper, can be "falsified," or proven wrong, by experiment. Unscientific theories -Marxist dialectical history and Freudian psychology were Popper's favorites- are formed in such a way that they cannot be falsified by data.
On Wed, 24 Jan 2001, Jerry Kreps wrote: jk> On Wednesday 24 January 2001 12:06, Jeremy Buchmann wrote: jk> > Whoops, that's a thinko, this really does work: jk> > jk> > find / -type l ! -path '/proc*' -exec file {} \; | grep "broken jk> > symbolic" jk> > jk> > > I hope you don't mind a patch :) jk> jk> Only if they work! ;-) jk> This one doesn't work for me. I get an 'unexpected token near !" message. jk> jlk jk> I think someone goofed, that '!' should not be there after the '-type l'. Remove that and it whould work fine. Although somewhere along the line, the above lost the '-prune -o' function, which when removed kinda defeats the purpose of the whole '-path' function. jk> -- S.Toms - tomas@primenet.com - www.primenet.com/~tomas SuSE Linux v7.0+ - Kernel 2.2.18 There's a fine line between courage and foolishness. Too bad it's not a fence.
jk> On Wednesday 24 January 2001 12:06, Jeremy Buchmann wrote: jk> > Whoops, that's a thinko, this really does work: jk> > jk> > find / -type l ! -path '/proc*' -exec file {} \; | grep "broken jk> > symbolic"
I think someone goofed, that '!' should not be there after the '-type l'. Remove that and it whould work fine. Although somewhere along the line, the above lost the '-prune -o' function, which when removed kinda defeats the purpose of the whole '-path' function.
Ummm, no. The ! starts a new expression and negates the -path '/proc'. This goes against what the man page advises...it says to use -prune which is about 10 times slower and just plain doesn't work. I know for sure the above command works, at least on bash 2.03. Mileage on lesser shells may vary. --Jeremy
On Thursday 25 January 2001 11:18, Jeremy Buchmann wrote:
jk> On Wednesday 24 January 2001 12:06, Jeremy Buchmann wrote: jk> > Whoops, that's a thinko, this really does work: jk> > jk> > find / -type l ! -path '/proc*' -exec file {} \; | grep "broken jk> > symbolic"
I think someone goofed, that '!' should not be there after the '-type l'. Remove that and it whould work fine. Although somewhere along the line, the above lost the '-prune -o' function, which when removed kinda defeats the purpose of the whole '-path' function.
Ummm, no. The ! starts a new expression and negates the -path '/proc'. This goes against what the man page advises...it says to use -prune which is about 10 times slower and just plain doesn't work. I know for sure the above command works, at least on bash 2.03. Mileage on lesser shells may vary.
--Jeremy
It doesn't work on my SUSE 7.0. If you put the '!' right beside the '|' it will give you a '/proc*'' not found. When you bring the cmd back from history bash puts a space between '|!'. -- Scientific theories, according to Sir Karl Popper, can be "falsified," or proven wrong, by experiment. Unscientific theories -Marxist dialectical history and Freudian psychology were Popper's favorites- are formed in such a way that they cannot be falsified by data.
On Thursday 25 January 2001 11:18, Jeremy Buchmann wrote:
jk> On Wednesday 24 January 2001 12:06, Jeremy Buchmann wrote: jk> > Whoops, that's a thinko, this really does work: jk> > jk> > find / -type l ! -path '/proc*' -exec file {} \; | grep "broken jk> > symbolic"
I think someone goofed, that '!' should not be there after the '-type l'. Remove that and it whould work fine. Although somewhere along the line, the above lost the '-prune -o' function, which when removed kinda defeats the purpose of the whole '-path' function.
Ummm, no. The ! starts a new expression and negates the -path '/proc'. This goes against what the man page advises...it says to use -prune which is about 10 times slower and just plain doesn't work. I know for sure the above command works, at least on bash 2.03. Mileage on lesser shells may vary.
--Jeremy
It doesn't work on my SUSE 7.0. If you put the '!' right beside the '|' it will give you a '/proc*'' not found. When you bring the cmd back from history bash puts a space between '|!'.
There shouldn't be a "!" next to the pipe symbol "|". I think you're seeing the lower case "L" as a pipe symbol. Here is the whole thing in all caps: FIND / -TYPE L ! -PATH '/PROC*' -EXEC FILE {} \; | GREP "BROKEN > SYMBOLIC" of course, it should be run in all lower case. --Jeremy
On Friday 26 January 2001 11:12, Jeremy Buchmann wrote: <snip>
There shouldn't be a "!" next to the pipe symbol "|". I think you're seeing the lower case "L" as a pipe symbol. Here is the whole thing in all caps:
FIND / -TYPE L ! -PATH '/PROC*' -EXEC FILE {} \; | GREP "BROKEN > SYMBOLIC"
of course, it should be run in all lower case.
--Jeremy
That fixed it. -- Scientific theories, according to Sir Karl Popper, can be "falsified," or proven wrong, by experiment. Unscientific theories -Marxist dialectical history and Freudian psychology were Popper's favorites- are formed in such a way that they cannot be falsified by data.
Richard Smith wrote:
To findbroken links I used (with help from a good find man):
find / -type l -exec file \{\} \;|grep "broken symbolic" > broken.links
Run as root that will list them all in broken.links
SH@t, I wish you hadn't posted that. (JUST KIDDING) I've got a couple hundred of them. Almost all X11 stuff. I hope it's only because of the updating from 3.x,4.0,4.01,4,02. Do I dare remove them????? -- Mark Hounschell markh@compro.net
On Tue, Jan 23, 2001 at 09:21:34PM -0500, rjwohlfar@bigfoot.com wrote:
On 22 Jan, Richard Smith wrote:
The answer is that I have a /tmp partition (shared with another distribution), and my /var is actually a link to /tmp/VAR.SuSE. So the REAL path to /etc/texmf.cnf needs an extra ../ to get back to / and thence to /etc. "find" showed up many other broken links, broken for the same reason. ... 3. (Extra) How many installations are in the same boat?
I've had the same problem with /opt. On my system, /opt is a symlink to /usr/opt. Relative symlinks under /opt (like those in GNOME) break with every upgrade. Took me two weeks to solve it the first time. Now I just remember to fix them after upgrading...
Personally, I wish packagers would use absolute paths with symlinks. Or at least with the links that go back to /.
What 'find' command did you use to get broken links?
Here's a couple of little PERL scripts I wrote to do exactly that... ------------------------- find_bad_links ------------------------ #!/usr/local/bin/perl use File::Find; find(\&wanted, "."); sub wanted { -l and not -e and print "Bad link $File::Find::name\n"; } ------------------------- rm_bad_links ------------------------ #!/usr/local/bin/perl use File::Find; find(\&wanted, "."); sub wanted { -l and not -e and ( unlink or print "Error - cannot delete $File::Find::name\n") and print "Deleted $File::Find::name\n" } --------------------------------------------------------------- -- David Smith Tel: +44 (0)1454 462380 (direct) STMicroelectronics Fax: +44 (0)1454 617910 1000 Aztec West TINA (ST only): (065) 2380 Almondsbury Home: 01454 616963 BRISTOL Mobile: 07932 642724 BS32 4SQ Work Email: Dave.Smith@st.com Home Email: David.Smith@ds-electronics.co.uk
Hi, everytime I install Suse (6.4 and 7.0), Yast 2 only works for a couple of weeks and then just asks me for the root password and then quits. anyone else seen this, anyone know how to get it back? Thanks Matt
participants (8)
-
Dave Smith
-
Jeremy Buchmann
-
Jerry Kreps
-
Mark Hounschell
-
Matthew Stringer
-
Richard Smith
-
rjwohlfar@bigfoot.com
-
S.Toms