作为nologin用户执行一个命令

我最近设置了我的服务器,以便我的suPHP“虚拟”用户不能使用这篇文章login

我现在的问题是,之前当我运行在服务器上运行的Ruby on Rails应用程序的rake命令时,我用su来进入www-data并从那里执行命令 – 显然我不能再那样做了,因为NOLOGIN。

所以作为root用户,即使他们是nologin,我怎样才能像其他用户一样执行命令呢?

    一种方法是为该用户启动一个shell(明确指定shell):

     sudo -u www-data bash 

    这将以指定的用户身份启动(bash)shell。 然后你可以执行你的命令并注销(返回到以前的shell)

    以root身份可以使用su -s /bin/sh $user-s选项覆盖为用户configuration的shell。