Kubuntu and the reluctant upgrader, pt. 2: CVS and Telnet
Despite the vague sense of dis-ease that accompanied my Kubuntu upgrade from Hardy Heron (8.04) to Jaunty Jackalope (9.04), I had, after my earlier struggles with the death of Kaudiocreator and general crapping up of Adept, finally gotten to the point where the system was behaving more or less as I expected. All was right in the land of the penguin.
Until 3 days ago.
A while ago, a co-worker had turned me on to the virtues of CVS -- Concurrent Versions System, a revision control system. I now use it for a variety of things: several writing projects and websites.
I know it sounds dorky, but I swear it's not.
I went to update the local CVS repository on one of the several XP boxes scattered around the house. I use Tortoise CVS, where the sound of breaking glass means a bad thing has happened. It sounded like I fell through a freaking window. The CVS server on the upgraded Kubuntu box is now busted to all bloody hell. The files in the repository are all apparently safe and sound but I can't get to them, defeating the purpose of setting all this crap up in the first place.
In the course of my investigations, I discover Hey presto! Telnet is busted, too!
Quick aside: many people on forums, when asked about setting up telnet, have the annoying habit of pointing out that the person asking the question shouldn't be using telnet anyway--they should be using ssh. Right, dickhead. I'm well aware of telnet's shortcomings. Telling me I should be using ssh though is about as useful as telling me I should be eating vegetarian when I ask how to find the steakhouse.
After another couple of hours screwing (without success) trying to get CVS or a telnet daemon running I decided to call it a night. I slept fitfully, once again questioning what had possessed me to upgrade.
Today I dragged in and confessed my failure to the guy who'd originally turned me on to CVS in the first place. A quick conversation and a few suggestions later I decided to give it another whack this evening.
The main suggestion: use xinetd rather than the default, which was inetutils-inetd. Apparently in Kubuntu 9.04, inetutils-inetd is installed by default (as a successor to inetd). I know that's what I had installed.
After a little more research, I found instructions on how to set up services for xinetd. So armed, I dropped to the shell (sorry folks), ran a few command lines, and, after a reboot, was off and running. Everything is now working like a charm.
For those facing a similar dilemma, here's what I did.
First, back up any config files. For inetd (inetutils-inetd) this means making a copy of /etc/inetd.conf and putting it in a safe place (such as your home directory).
The run the following from the command line:
Again, from the command line, type or paste:
To install cvs, type:
cd to /etc/xinetd.d and create the files needed to start the cvs server and telnetd.
If it doesn't exist, create a file called cvspserver in /etc/xinetd.d/ by typing sudo vi cvspserver, then paste the following in the file:
service cvspserver
{
port = 2401
socket_type = stream
protocol = tcp
wait = no
user = root
passenv = PATH
server = /usr/bin/cvs
server_args = -f --allow-root=/path/to/CVS_repository pserver
}
...and type [ESC] :x
This will save the file. In the above, change "/path/to/CVS_repository" to the location of your repository.
If you want telnet (it is insecure, but occasionally useful if you are behind a firewall in the privacy of your own home)
If it doesn't exist, create a file called telnet in /etc/xinetd.d/ by typing sudo vi telnet, then paste the following in the file:
service telnet
{
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID
disable = no
}
...and type [ESC] :x
When you've finished, restart your machine. You should be off and running.
Until 3 days ago.
A while ago, a co-worker had turned me on to the virtues of CVS -- Concurrent Versions System, a revision control system. I now use it for a variety of things: several writing projects and websites.
I know it sounds dorky, but I swear it's not.
I went to update the local CVS repository on one of the several XP boxes scattered around the house. I use Tortoise CVS, where the sound of breaking glass means a bad thing has happened. It sounded like I fell through a freaking window. The CVS server on the upgraded Kubuntu box is now busted to all bloody hell. The files in the repository are all apparently safe and sound but I can't get to them, defeating the purpose of setting all this crap up in the first place.
In the course of my investigations, I discover Hey presto! Telnet is busted, too!
Quick aside: many people on forums, when asked about setting up telnet, have the annoying habit of pointing out that the person asking the question shouldn't be using telnet anyway--they should be using ssh. Right, dickhead. I'm well aware of telnet's shortcomings. Telling me I should be using ssh though is about as useful as telling me I should be eating vegetarian when I ask how to find the steakhouse.
After another couple of hours screwing (without success) trying to get CVS or a telnet daemon running I decided to call it a night. I slept fitfully, once again questioning what had possessed me to upgrade.
Today I dragged in and confessed my failure to the guy who'd originally turned me on to CVS in the first place. A quick conversation and a few suggestions later I decided to give it another whack this evening.
The main suggestion: use xinetd rather than the default, which was inetutils-inetd. Apparently in Kubuntu 9.04, inetutils-inetd is installed by default (as a successor to inetd). I know that's what I had installed.
After a little more research, I found instructions on how to set up services for xinetd. So armed, I dropped to the shell (sorry folks), ran a few command lines, and, after a reboot, was off and running. Everything is now working like a charm.
_______________________________
For those facing a similar dilemma, here's what I did.
First, back up any config files. For inetd (inetutils-inetd) this means making a copy of /etc/inetd.conf and putting it in a safe place (such as your home directory).
The run the following from the command line:
- sudo apt-get install xinetd
Again, from the command line, type or paste:
- sudo apt-get install telnetd
To install cvs, type:
- sudo apt-get install cvs sudo apt-get install cvsd
- sudo apt-get install --reinstall cvsd
cd to /etc/xinetd.d and create the files needed to start the cvs server and telnetd.
If it doesn't exist, create a file called cvspserver in /etc/xinetd.d/ by typing sudo vi cvspserver, then paste the following in the file:
service cvspserver
{
port = 2401
socket_type = stream
protocol = tcp
wait = no
user = root
passenv = PATH
server = /usr/bin/cvs
server_args = -f --allow-root=/path/to/CVS_repository pserver
}
...and type [ESC] :x
This will save the file. In the above, change "/path/to/CVS_repository" to the location of your repository.
If you want telnet (it is insecure, but occasionally useful if you are behind a firewall in the privacy of your own home)
If it doesn't exist, create a file called telnet in /etc/xinetd.d/ by typing sudo vi telnet, then paste the following in the file:
service telnet
{
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID
disable = no
}
...and type [ESC] :x
When you've finished, restart your machine. You should be off and running.
Comments