[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: BUG or OPERATOR error? - was [Re: Measuring aggregate internet useage?]



On 04/26/2017 10:02 AM, Lisi Reisz wrote:
On Wednesday 26 April 2017 15:36:36 Richard Owlett wrote:
On 04/26/2017 07:50 AM, Darac Marjal wrote:
On Wed, Apr 26, 2017 at 08:35:44AM -0400, Greg Wooledge wrote:
On Wed, Apr 26, 2017 at 01:25:18PM +0100, Darac Marjal wrote:
For interface statistics from ip, try "ip -s link [interface]".

On stretch:

wooledg:~$ ip -s link eth0
Command "eth0" is unknown, try "ip link help".

wooledg:~$ ip -s link dev eth0
Command "dev" is unknown, try "ip link help".

wooledg:~$ ip link help
[... enormous BNF dump, entirely missing -s, or any reference whatsoever
    to the fact that you can stick options between "ip" and "link" ...]

wooledg:~$ ip -s link show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
state UP mode DEFAULT group default qlen 1000
   link/ether a0:8c:fd:c3:89:e0 brd ff:ff:ff:ff:ff:ff
   RX: bytes  packets  errors  dropped overrun mcast
   380719013  1442490  0       0       0       4731
   TX: bytes  packets  errors  dropped carrier collsns
   57971257   614586   0       0       0       0

Aha!

My bad. I actually only got as far as discovering "ip -s link" on my own
system. As I was typing up the email I remembered that Richard was after
statistics for a specific interface. I should have been more diligent in
working out the correct format.

(Sadly, this is my *typical* experience with the ip command -- trying
random things until one of them works, because the documentation
is impenetrable, and the syntax barely guessable, and certainly not
predictable.)

ip *could* do a lot better, it's true. As a monolithic tool, there's not
really much excuse for the different sub-tools to parse the commands
differently. As you say, "ip address" expects the device to be expressed
as "dev eth0", so why doesn't "ip link" handle it the same way? I don't
know.

I would go further saying iproute2 is non-functional due to being
functionally un-documented.

https://manpages.debian.org/jessie/iproute2/ip.8.en.html is useless.

Functional commands, for this thread's topic would be
   ip -s link
or
   ip -s link ls usb0

No hint of either in so-called man page.

I accidentally discovered it by following up links when doing DuckDuckGo
search for "documentation iproute2" (w/o quotes).

I then did another netinst of testing. There is some subset of the "ip"
command available after the network has been configured. The help is too
abbreviated to be useful.

But did /sbin/ifconfig work?


<chuckle> Had no reason to try.
Whenever I come across a command that *SHOULD* work, but does not, the first diagnostic step is attempt to run the *IDENTICAL* command as root. In the *MAJORITY* of cases that it runs demonstrates that someone at sometime decided to restrict some computer owners from using their own computer in a reasonable manner.

Remember Linux borrows heavily from an OS designed in another era for a another audience. I have yet to run across a case where any distinction should be made between "user richard" and "user root". I do not take that as necessary and sufficient conditions to abolish questionable conventions. They might be occasionally valuable.

In the age of laptops, tablets, and so-called "smart phones" I think the more relevant basic distinction would be between "physically local user" and "physically external user".

Haven't yet figured out what to propose that wouldn't "throw baby out with the bath water".

<previous was a free opinion piece ;>






Reply to: