Reply
Thread Tools
qwerty12's Avatar
Posts: 4,274 | Thanked: 5,358 times | Joined on Sep 2007 @ Looking at y'all and sighing
#1
This problem is when the rc2 folder messes up. No idea how, or why it happens but when you install deb files the install messes up with these messages (for example):
invoke-rc.d: not a symlink: "/etc/rc2.d/S20ssh"
invoke-rc.d: dangling symlink: "/etc/rc2.d/S20ssh"

Usually, when that happened to me, I'd wait for application manager to say unable to install and I'd close it down and I'd open a root xterm and type apt-get -f install and move the file in mention and run apt-get install and move it back. But then I realised that invoke-rc.d is a script and I should remove those p**** lines that mess up everything else. So I did.

Edit /usr/sbin/invoke-rc.d

Replace this:
Code:
## Verifies the existance of proper S??initscriptID and K??initscriptID 
## *links* in the proper /etc/rc?.d/ directory
verifyrclink () {
  #
  # verifies if parameters are non-dangling symlinks
  # all parameters are verified
  #
  doexit=
  while test $# -gt 0 ; do
    if test ! -L "$1" ; then
        printerror not a symlink: $1
        doexit=102
    fi
    if test ! -f "$1" ; then
        printerror dangling symlink: $1
        doexit=102
    fi
    shift
  done
  if test x${doexit} != x && test x${RETRY} = x; then
     exit ${doexit}
  fi
  return 0
}
with this:

Code:
## Verifies the existance of proper S??initscriptID and K??initscriptID 
## *links* in the proper /etc/rc?.d/ directory
verifyrclink () {
  echo "Carrying on anywayz"
  #echo not a symlink: $1
  #echo dangling symlink: $1
}
Now, when you install an app, you will still get those messages but now, it will still carry on making the right links and everything will still install, work and load on bootup fine without having to move anything.

If this proves to be useful for people, I'll repack the mini-rc to have this mod in it as a deb.

Last edited by qwerty12; 2008-07-05 at 18:09. Reason: Thanks Bundyo
 

The Following 11 Users Say Thank You to qwerty12 For This Useful Post:
terrencegf's Avatar
Posts: 221 | Thanked: 182 times | Joined on Jul 2007 @ Central Illinois
#2
Originally Posted by qwerty12 View Post
This problem is when the rc2 folder messes up. No idea how, or why it happens but when you install deb files the install messes up with these messages (for example):
invoke-rc.d: not a symlink: "/etc/rc2.d/S20ssh"
invoke-rc.d: dangling symlink: "/etc/rc2.d/S20ssh"
One question for you: do you have KDE installed? I get this same error on my partition with KDE. I do NOT see this error on my built-in partition without KDE, or my backup partition on MMC without KDE.
 
qwerty12's Avatar
Posts: 4,274 | Thanked: 5,358 times | Joined on Sep 2007 @ Looking at y'all and sighing
#3
No KDE, but I know it's a package in a repo somewhere. I've managed to get it from restoring a backup and going through packages in application manager.
 
Bundyo's Avatar
Posts: 4,708 | Thanked: 4,649 times | Joined on Oct 2007 @ Bulgaria
#4
Qwerty, your hack will print errors for every check... regardless right or wrong
__________________
Technically, there are three determinate states the cat could be in: Alive, Dead, and Bloody Furious.
 

The Following User Says Thank You to Bundyo For This Useful Post:
qwerty12's Avatar
Posts: 4,274 | Thanked: 5,358 times | Joined on Sep 2007 @ Looking at y'all and sighing
#5
Doh, you are right >.<

I don't actually have the 2nd + 3rd echo line on my device, time to edit.
 
allnameswereout's Avatar
Posts: 3,397 | Thanked: 1,212 times | Joined on Jul 2008 @ Netherlands
#6
Same problem here. Wondering which package it is.

No KDE here.

Changed it back afterwards.

Oh, and nano segfaulted when ^W to search for the verifyrclink string. Pretty bad IMO...
 
Posts: 6 | Thanked: 27 times | Joined on Jul 2008
#7
This is my changes to /usr/sbin/invoke-rc.d :
Code:
  doexit=
  while test $# -gt 0 ; do
    if test ! -L "$1" ; then
        printerror not a symlink: $1
        doexit=102
    fi
    if test ! -f "$1" ; then
        printerror dangling symlink: $1
        doexit=102
    fi
    shift
  done
to
Code:
  doexit=
  while test $# -gt 0 ; do
    f=`eval "echo $1"`
    if test ! -L "$f" ; then
        printerror not a symlink: $1
        doexit=102
    fi
    if test ! -f "$f" ; then
        printerror dangling symlink: $1
        doexit=102
    fi
    shift
  done
 

The Following 16 Users Say Thank You to reiv For This Useful Post:
Reply


 
Forum Jump


All times are GMT. The time now is 12:51.