Cannot open your terminal ‘/dev/pts/0’ – please check.

I always get this error when I am working i a chroot trying to use screen. In the past I have fixed it using the following command.

mount -t devpts devpts /usr/CHROOT/dev/pts

When this fails another alternative is the following:

script /dev/null
screen

Its a bit of a hack but it gets the job done.

Atom Schema or DTD

There is none. Stop looking!

Neither W3C Schema’s or Relax NG are capable of describing the the Atom specification so if you want a compliant validator you’ll need to write your own.

For a thread on the issue see:

No W3C Schema for Atom

I also ran into an interesting thread where James Clark puts forward Relax NG as a serious alternative to W3C Schema.

Relax NG vs W3C Schema

Having dealt with both I can say I prefer Relax NG. Its simpler.

SSH stdin is not a tty

I started getting the following error when trying to ssh into a chroot on a debian machine.

stdin: is not a tty

I fixed it using the following entry in /etc/fstab

devpts /dev/pts devpts mode=0620,gid=5 0 0

I’m positive this is not the way I should have fixed it but it works!

Debian alternatives and Java

The alternaitives system in Debian is a pain in the arse! It’s one of those things that when you need to use it you spend twenty minutes trying to figure out why various paths etc have changed and then you need to figure out the syntax to change to the path that was working before you installed Tomcat or some other related system that downloads a bunch of stuff and sets itself up as default for the rest of the system. It’s a tad irritating.

I am not saying I know a better way to do it but it still pisses me off. Anyway to use a sane version of java I had to run the following command to get eclipse working again.

$:~# update-alternatives –install /usr/bin/java java /usr/local/sdk-5_05/jdk 1
$:~# update-alternatives –list java
/usr/lib/jvm/java-gcj/jre/bin/java
/usr/local/sdk-5_05/jdk
$:~# update-alternatives –remove java /usr/lib/jvm/java-gcj/jre/bin/java

I now have eclipse working again and tomcat installed. I was going to use jetty6 over tomcat but because Debian comes bundled with a binary tomcat distribution I have decided  to use it. This decision may cost me dearly later.

Glibc Double free or Corruption

Don’t go blaming Glibc. You wouldn’t catch me thinking I had something wrong with my c-libs etc. No Way!

Anyway I was getting glibc errors that appeared randomg etc. It turned out I was using HTML::Strip in a non standard way. When you have finished with parse method call you need to call (eof) on the HTML::Strip instance or it all goes horribly wrong.

BASH set comment output

If you ever run the set command and get any of the function definitions listed at the bottom of this entry then check your .bashrc file for the following entry.

# enable programmable completion features (you don’t need to enable
# this, if it’s already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi

If it is not commented out then it is likely that name completion has been activated elsewhere. Comment it out and start a new shell to see if it helps.

_alias                         _lvresize
_apt_cache                     _lvs
_apt_get                       _lvscan
_aptitude                      _make
_args                          _man
_aspell                        _mkisofs
_aspell_dictionary             _modules
_available_interfaces          _mount
_bzip2                         _mplayer
_cancel                        _mplayer_options_list
_cardctl                       _nslookup
_cd                            _ntpdate
_cdrecord                      _ooexp_
_chgrp                         _openssl
_chown                         _openssl_sections
_chsh                          _perl
_command                       _perldoc………etc

w00tw00t.at.ISC.SANS.DFind

If you see an error in your http logs similar to this.

client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /w00tw00t.at.ISC.SANS.DFind:)

Don’t worry too much about it. Someone is just probing your machine.

For more information of the tool that is generating the log entry have a look at Dfind. Dfind is a tool kids use to check for exploits.

Debian netinst and a Dell Vostro 400

I got a new Dell Vostro 400 this week and have been trying to get Debian Etch stable on it. This has proved a bit of a pain.
debian-logo.png
The following facts might help.

  • Dell are using a new Intel Ethernet Controller
  • They are also using a modern SATA controller
  • The stock Debian netinst cd does not have the correct drivers for these.

To get it all to work you will need to get the Backported Images. The point to note for etch is the addition of the E1000E Intel Ethernet Driver. This is not currently in the latest kernel (2.6.23.12) so no point going to kernel.org to get the latest kernel, this may be fixed by the time you read this.

Thanks to Kenshi Muto I was able to get Debian installed but this is where it all went bad.

My next job was to get Gnome running on the machine. I have a Nvidia card installed so I went to the Nvidia Unix Driver Page and got the latest driver. I tried to install this but it is incompatible with the rivafb and nvidifb modules so if I stick with Kenshi’s kernel I cannot have a desktop but if I install a new kernel I cannot have networking.

At this point you are probably hoping there is some smart fix for this problem. Unfortunately I didn’t find one. I ended up installing a separate network card to get the system running. I would imagine in the near future that the Linux Kernel will have support for E1000E and when it does I will recompile the kernel.