Programming :: Determine Which Device The Web Cam Is Using?
Aug 31, 2010
When I run apps like mplayer to use my web cam it uses /dev/video#. For reason unknown to me this number changes and is usually either 1 or 0. I have looked on the Internet after struggling to find how to know which /dev/video device is used. So far I can only presume I have used the wrong terms to find how to determine which device the web cam is using.
I just compiled my first own kernel (I'm using Arch Linux), following the tutorial on the german site. Now I tried to boot it, I ended up failing with this message: Code: Waiting 10 seconds for device /dev/sda1 ... Root device '/dev/sda1' doesn't exist, Attempting to create it. ERROR: Unable to determine major/minor number of root device '/dev/sda1' Here is the important part of my menu.lst:
[Code]....
I simply copy&pasted the Arch-entry, i.e. I also had the disk by uuid there. The failure message was the same, just the root device name was the different name Also, at first I did not have the initrd line in my menu.lst (as written in my tutorial that I may not need it). In this case I had this error message:
When CentOS boots up, it tries to determine the IP for a network device (eth0) and fails. 'Determining IP information for eth0... failed; no link present.' I'm curious to know how, after booting up, I could set the IP information for a wireless device, wlan0, manually. Another way of putting this questions is: if CentOS is able to determine IP information for a network device on bootup, what settings is it configuring exactly?
Is there a command to determine of a device supports IO Fencing?We are trying to run a Sybase cluster that shares storage. I'm sure the device supports fencing, but don't know how to show that it does.
I'm currently running Ubuntu (w/ GRUB) and Windows XP. I'd like to remove Ubuntu and run the recovery on Windows XP because it has started not running correctly. The computer is about 5 years old and I figured I'd just wipe it clean and start over (read: remove Ubuntu and reinstall windows via the recovery console).
I intend to follow the tutorial here: [URL]
However, I'm confused about determining the boot device number for Windows. I've run "sudo fdisk -l" and I can identify the windows drive in the list it says:
I'm writing a bash script that needs to know whether or not a device node is part of a RAID array. I'm just curious if anyone knows of a good way to determine if a device node is in a RAID array. I know that you can run mdadm -Q or mdadm --examine on the device node and that will tell you. But I don't want to rely on screen scrapping and would rather have something that would return a boolean. Any ideas?
Is there a way to determine the IO size that is being used for reads and writes to an attached storage device? I am trying to pattern the IO sequences to storage. I have seen mentions to max_sectors_kb but the notes indicated that changing this value did not change the IO size to the storage.
I'm having a problem trying to customize Ubuntu 11.04 LiveCD.Everything went well until I tried to run the system updates on the LiveCD.This is the error message output:
Code: root@lkjoel-desktop:/# sudo apt-get -f install Reading package lists... Done Building dependency tree Reading state information... Done The following packages were automatically installed and are no longer required: code....
Is there a library/system call that will return to me what CPU core a thread of execution is running on? I've looked for a bit on the net already and also in /usr/include and couldn't find one.
getcpu() and sched_getcpu() are two that I found, but when I include the appropriate header files (linux/getcpu.h, and sys/sched.h respectively), gcc says getcpu.h doesn't exist and the linker complains it cannot find the implementation in sched.h.
I'm sure I'm doing something really stupid or overthinking...
What I am doing is running an OpenMP application and specifying a list of cpu cores to run on with GOMP_CPU_AFFINITY. I want to make sure that each core is getting the same number of threads.
**UPDATE**
It seems that this code works, but only with glibc >= 2.6, and my machine has 2.5:
I have observed in a process's log file that it is receiving a number of connections from other processes running on the same box.
For example, I see lines of the following:
While I can use "netstat -tlp | egrep '5870|5871'" to see the PID of the listening process. How is it can I find out what PIDs are sending from 23870 and 23548?
I have the following which works but think there must be a easier one-liner way of doing this which involves not writing to a file but have failed to find something that works This is what I have:
Is there any way a non-root user can programmatically determine which days the computer ran during, say, the last month?
The information is in /var/log/messages.* but those files are root:root 640.
Non of the world-readable /var/log files on the Slackware 13.0 development system can be used:boot Not present if boot logging not enabled (default). dmesg No timestamps. lastlog Not enough info. wtmp Rewritten on each boot so not enough info. EDIT: not correct: by default wtmp is rotated weekly and kept for one month as configured in /etc/logrotate.conf xdm.log Not present if xdm not used. Xorg.0.log Not present if X not run.
How can I programmatically determine if my python script is being run with a 32 or 64 bit interpreter? Better yet, is there a one-liner I can run that will print out the word size of the current python session?
I've been requested to modify a perl backup script we use which mounts a networked NAS machine. The actual mount command is called inside a system() command. In testing, I can do a test of the return value, so I'm able to tell whether or not I've mounted properly, but I can't make heads or tails out of the return on deliberate errors. (Such as mounting a non-existent box.) I'm displaying the returned value, which is 256 in my tests. The man page for mount listed error messages with values from 1 to 64, but no higher. Am I drawing this error value from the system command somehow? And what would be the best way to determine what this error means?
I did searched you tube but my results were not great.I have 2 books on KernelProgramming.I feel I need if some where I can get a video tutorial which can help me to understand how to develop a Linux Device driver that will be great.I had a look at Greg Kroah Hartmans video lecture of developing patches on ......I have been reading books and a lot of stuff.So I wish if I could get a video lecture that would be better
Is there any C function that will translate UUIDs into device names? I have a little graphical mount tool that can read user-mountable device names from /etc/fstab and lets you cycle through the list and mount or unmount them. But it doesn't work with UUIDs, which are preferred these days. Is there any way around this?
I am very much new to Linux programming. My question is Is there any way to read UUID of a device or partition in linux programatically. Is there any c/c++ API for user-space applications. I found some commands "sudo vol_id --uuid /dev/sda1", "sudo blkid", "ls -l /dev/disk/by-uuid/". But all are commands which we need to run in terminal. But I need to achieve this from a c/c++ program. (FYI: I need to read uuid of root filesystem ("/") where Linux has been installed.)
Of course, it's Windows only, and XP only at that. However, the data that needs transferred between the device and the computer should be fairly basic, unless it offloads a lot of processing to the computer. I'm not a programmer, nor do I play one on TV, but I have written some fairly complicated microcontroller programs and some basic Java GUIs. Besides writing the actual code, how hard is it to do whatever needs done to make a Linux device driver, apart from the code to make the device work?
I want to try to create my own virtual device in Linux. Something simple, for example, a /dev/fortune virtual device that returns a line from fortune() each time you read from it.
I am willing to do my own research and study, I just need to know where to start. E.g., what to read or what to google, in order to get me where I want to go the fastest. I have some C/C++ and Ruby background.
i want to open and read /dev/pts/o file as a user how can i open? using normal fopen and fread functions? is it possible to open lik dat ? it der any alternate way to open and read the device files in ubuntu
I've a problem with character device mounting. I've a character device module code. Here is the code
Code: /* chardev.c: Creates a read-only char device that says how many times * you've read from the dev file */ #if defined(CONFIG_MODVERSIONS) && ! defined(MODVERSIONS) #include <linux/modversions.h> #define MODVERSIONS
How can I know what number descriptor is used by my usb device indicate via libusb_device_handle structure ? I can't find declaration of libusb_device_handle structure. I need this information to use poll() function where I need decripttion number of device.
I have a usb to serial converter which i plug in to Ubuntu Natty.I see that on every reboot this seems to come up as a different device name, say ttyUSB0, ttyUSB3 etc.I want to write a simple shell script to get the name of the device in a shellscript.