От владельца, т.е. обычный непривелигированный юзер.
Но, я уже похоже разобрался.
Ошибка возникает из-за разницы в реализации самой команды pwd, в одном случае она использует системный вызов open, в другом getcwd (там, где работает). Соответственно для open необходимы помимо прав исполнения еще и чтение.