Run Ifconfig Equally Non-Root User For Read-Only Access To Network Interfaces
It is a frequent scenario that you lot are logged inward to the console of a Linux system, in addition to you lot demand to know its IP address.
If you lot are the rootage user, that is easy:
However, if you lot are non root....
At this point, you lot are in all probability develop to laissez passer on up. Don't: at that spot is ever hope.
A non well-publicized fact is that the ifconfig ascendency is executable yesteryear anyone: it is simply NOT on the default PATH for non-root users.
To discovery out where ifconfig is:
Is it truthful that anyone tin strength out operate ifconfig?
The answer is yes.
To operate ifconfig, /sbin needs to last on your PATH, is it?
No, afraid not. No wonder you lot cannot operate the ifconfig command.
It is straight-forward to append that to your PATH.
Let's laissez passer on ifconfig closed to other try.
To relieve closed to typing, you lot tin strength out combine the setting of the PATH, in addition to the ifconfig ascendency every moment follow:
Now, non-root users are happy.
Note that entirely non-root users tin strength out entirely get/read interface data, but non set/write it. Setting interface parameters every moment a non-root user volition generate errors:
If you lot are the rootage user, that is easy:
$ ifconfig
eth0 Link encap:Ethernet HWaddr 00:0B:6B:E1:BC:14
inet addr:192.168.0.103 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20b:6aff:fed0:bb04/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8100 errors:0 dropped:0 overruns:0 frame:0
TX packets:7727 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:5385440 (5.1 MiB) TX bytes:1454259 (1.3 MiB)
Interrupt:177 Base address:0xdc00
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:68 errors:0 dropped:0 overruns:0 frame:0
TX packets:68 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:5204 (5.0 KiB) TX bytes:5204 (5.0 KiB)
However, if you lot are non root....
$ ifconfig
bash: ifconfig: ascendency non found
At this point, you lot are in all probability develop to laissez passer on up. Don't: at that spot is ever hope.
A non well-publicized fact is that the ifconfig ascendency is executable yesteryear anyone: it is simply NOT on the default PATH for non-root users.
To discovery out where ifconfig is:
$ whereis ifconfig
ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz
Is it truthful that anyone tin strength out operate ifconfig?
$ ls -l /sbin/ifconfig
-rwxr-xr-x 1 rootage root 66024 Aug 12 2006 /sbin/ifconfig
The answer is yes.
To operate ifconfig, /sbin needs to last on your PATH, is it?
$ echo $PATH
/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/opt/cdk4msp/bin:/home/peter/bin
No, afraid not. No wonder you lot cannot operate the ifconfig command.
It is straight-forward to append that to your PATH.
$ export PATH=$PATH:/sbin
$ echo $PATH
/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/opt/cdk4msp/bin:/home/peter/bin:/sbin
Let's laissez passer on ifconfig closed to other try.
$ ifconfig
eth0 Link encap:Ethernet HWaddr 00:0B:6B:E1:BC:14
inet addr:192.168.0.103 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20b:6aff:fed0:bb04/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8590 errors:0 dropped:0 overruns:0 frame:0
TX packets:8218 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:5530730 (5.2 MiB) TX bytes:1509759 (1.4 MiB)
Interrupt:177 Base address:0xdc00
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:68 errors:0 dropped:0 overruns:0 frame:0
TX packets:68 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:5204 (5.0 KiB) TX bytes:5204 (5.0 KiB)
To relieve closed to typing, you lot tin strength out combine the setting of the PATH, in addition to the ifconfig ascendency every moment follow:
$ PATH=$PATH:/sbin ifconfig
Now, non-root users are happy.
Note that entirely non-root users tin strength out entirely get/read interface data, but non set/write it. Setting interface parameters every moment a non-root user volition generate errors:
$ ifconfig eth0 192.168.0.155
SIOCSIFADDR: Permission denied
SIOCSIFFLAGS: Permission denied
0 Response to "Run Ifconfig Equally Non-Root User For Read-Only Access To Network Interfaces"
Post a Comment