Most network switches are not promiscuous (
link about bridges (switches are a special kind of "bridge")). Occasionally, traffic will leave most ports, but most of the time they are "point-to-point", so a Linux box listening passively to all traffic on a port will typically receive:
* Broadcast frames that every node will get
* Frames destined for that Linux box
Some advanced network switches allow a "copy port" or "monitor" mode where frames from another port(s) on the switch can be sent to a particular place (such as the port that your Linux box is attached to).
If this doesn't work and you need monitoring, it may make sense to reconfigure your Linux box as the default gateway (and configure it as the router), then configure it to forward traffic to your real router on a modified network.
So if you started with a network of:
192.168.0.x with a default gateway of 192.168.0.1
You might change your Linux box to be 192.168.0.1 and then tell it to forward to 192.168.0.217 (the new IP address of the real router). This is definitely a "hack", but a cheap one that can work for some networks.
Pros:
You'll see almost all of the local net traffic
You don't have to change the networking on most of the hosts
Cons:
You have to setup a Linux router (this is usually easy, but there can occasionally be wrinkles in setting this up)
You have to make a change on the "real" router
It is not the same as a copy port (but it all depends on what you hope to capture and why you are doing it).
Hopefully this helps!