Простите, что спрашиваю здесь про Solaris:
Есть некая проблема, предположительно заключающаяся в отсутствии доступа к сетевым интерфейсам для процессов, запущенных от определённого пользователя. Косвенно выражается это таким образом:
1. Вывод 'ifconfig -a' от определённого пользователя не содержит сведений о MAC-адресах сетевых интерфейсов:
% ifconfig -a
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
inet 127.0.0.1 netmask ff000000
bge0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
inet 192.168.160.6 netmask ffffff00 broadcast 192.168.160.255
bge2: flags=1000842<BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 4
inet 0.0.0.0 netmask 0
ce0: flags=1000842<BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 3
inet 0.0.0.0 netmask 0
2. В тоже время, от root'а MAC-адреса отображаются правильно:
# ifconfig -a
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
inet 127.0.0.1 netmask ff000000
bge0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
inet 192.168.160.6 netmask ffffff00 broadcast 192.168.160.255
ether 0:14:4f:c3:e0:b0
bge2: flags=1000842<BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 4
inet 0.0.0.0 netmask 0
ether 0:14:4f:c3:e0:b2
ce0: flags=1000842<BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 3
inet 0.0.0.0 netmask 0
ether 0:14:4f:44:93:ad
3. Также, сведения о MAC-адресах отображаются от непривилегированного пользователя на другой, с виду такой же, машине. Права на устройства у этих машин одинаковые:
% ls -l /dev | grep bge
lrwxrwxrwx 1 root root 29 Oct 28 2008 bge -> ../devices/pseudo/clone@0:bge
lrwxrwxrwx 1 root root 57 Oct 28 2008 bge0 -> ../devices/pci@1e,600000/pci@0/pci@9/pci@0/network@4:bge0
lrwxrwxrwx 1 root root 59 Oct 28 2008 bge1 -> ../devices/pci@1e,600000/pci@0/pci@9/pci@0/network@4,1:bge1
lrwxrwxrwx 1 root root 57 Oct 28 2008 bge2 -> ../devices/pci@1e,600000/pci@0/pci@a/pci@0/network@4:bge2
lrwxrwxrwx 1 root root 59 Oct 28 2008 bge3 -> ../devices/pci@1e,600000/pci@0/pci@a/pci@0/network@4,1:bge3
% ls -l /dev/ce
lrwxrwxrwx 1 root root 28 Oct 28 2008 /dev/ce -> ../devices/pseudo/clone@0:ce
% ls -l /devices/pseudo | grep bge
crw-rw-rw- 1 root sys 11, 202 Nov 13 08:43 clone@0:bge
% ls -l /devices/pseudo/clone\@0\:ce
crw-rw-rw- 1 root sys 11, 94 Oct 28 2008 /devices/pseudo/clone@0:ce
% ls -l /devices/pci\@1e\,600000/pci\@0/pci\@9/pci\@0 | grep bge
crw-rw-rw- 1 root sys 202, 2 Nov 13 08:47 network@4,1:bge1
crw-rw-rw- 1 root sys 202, 1 Nov 13 08:44 network@4:bge0
% ls -l /devices/pci\@1e\,600000/pci\@0/pci\@a/pci\@0 | grep bge
crw-rw-rw- 1 root sys 202, 4 Nov 13 08:47 network@4,1:bge3
crw-rw-rw- 1 root sys 202, 3 Nov 13 08:44 network@4:bge2
Подскажите, что может быть здесь не так? Существуют ли в Solaris какие-то дополнительные механизмы, регулирующие права доступа к устройствам сетевых интерфейсов, помимо разрешений на файлы в /dev и /device?