Cuda 5.0 on Debian, first use

Hello, I’ve installed CUDA 5.0 on a new Debian 6.0. It works great, however I have a small issue, every single time I boot the OS, I have to run at least one cuda program as root so that my normal user can actually use it.
Any help on how to fix this?

Thanks you very much!

Are the /dev nodes created at boot time? From the Getting Started Guide at http://docs.nvidia.com/cuda/cuda-getting-started-guide-for-linux/index.html#install-cuda-software, there is a small script to load the NVIDIA driver and create the required dev nodes:

#!/bin/bash

/sbin/modprobe nvidia

if [ "$?" -eq 0 ]; then
  # Count the number of NVIDIA controllers found.
  NVDEVS=`lspci | grep -i NVIDIA`
  N3D=`echo "$NVDEVS" | grep "3D controller" | wc -l`
  NVGA=`echo "$NVDEVS" | grep "VGA compatible controller" | wc -l`

  N=`expr $N3D + $NVGA - 1`
  for i in `seq 0 $N`; do
    mknod -m 666 /dev/nvidia$i c 195 $i
  done

  mknod -m 666 /dev/nvidiactl c 195 255

else
  exit 1
fi

I have that script on boot time, however it always fails, here’s the output I could find o dmesg:

[26167.688569] nvidia 0000:01:00.0: PCI INT A disabled
[26171.334627] nvidia 0000:01:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[26171.334634] nvidia 0000:01:00.0: setting latency timer to 64
[26171.334638] vgaarb: device changed decodes: PCI:0000:01:00.0,olddecodes=none,decodes=none:owns=io+mem
[26171.334730] NVRM: loading NVIDIA UNIX x86_64 Kernel Module  304.54  Sat Sep 29 00:05:49 PDT 2012
[26190.712684] NVRM: Your system is not currently configured to drive a VGA console
[26190.712686] NVRM: on the primary VGA device. The NVIDIA Linux graphics driver
[26190.712688] NVRM: requires the use of a text-mode VGA console. Use of other console
[26190.712690] NVRM: drivers including, but not limited to, vesafb, may result in
[26190.712691] NVRM: corruption and stability problems, and is not supported.

Seeing it now, I wonder if it can be something about the framebuffer?
I have this on the grub.conf:

menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-amd64' --class debian --class gnu-linux --class gnu --class os {
        set gfxpayload=1024x768
        insmod part_msdos
        insmod ext2
        set root='(hd3,msdos1)'
        search --no-floppy --fs-uuid --set cb634d3e-fd3b-4862-8ee6-1816cdbd2f1f
        echo    'Loading Linux 2.6.32-5-amd64 ...'
        linux   /vmlinuz-2.6.32-5-amd64 root=/dev/mapper/hellish-root ro  quiet
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-2.6.32-5-amd64
}

Ok, I’ve finally fixed it.
It appears that it wasn’t about the framebuffer in the end, but I simply could not put the script directly on /etc/rc.local, so instead, I create a /etc/rc.cuda with the script to load it, and /etc/rc.local calls that script.

Thanks for the help Alban.