node.jsportlinuxbrew

Linuxbrew Nodejs - Bind to port 80


I want to solve the same problem which has been described in this issue.

Therefore I wanted to execute the following command:

$ sudo setcap cap_net_bind_service=+ep /home/username/.linuxbrew/bin/node 

This produced the error:

Failed to set capabilities on file `/home/username/.linuxbrew/bin/node' (Invalid argument)
The value of the capability argument is not permitted for a file. Or the file is not a regular (non-symlink) file

Does this happen because the foldername is .linuxbrew and if yes how do I fix it?


Solution

  • It happens because you are trying to run that on a symlink. Try running this instead:

    sudo setcap cap_net_bind_service=+ep $(readlink -f ~username/.linuxbrew/node)