在python中,如何在将用户更改为su之后执行hadoop命令?

vc9ivgsu  于 2021-05-31  发布在  Hadoop
关注(0)|答案(1)|浏览(283)

我正在尝试使用python脚本将数据从一个节点复制到另一个节点。
我执行以下命令将数据从shell中的一个节点复制到另一个节点。

$sudo su hd

bash-4.1$hadoop distc hdfs://namenode-104/test104/  hdfs://namenode-103/test103/

我能复制数据。
当我试图在python中实现相同的功能时,我无法复制挂起的数据。
下面是我尝试过的代码:

import sys
    import commands as com
    com.getoutput('sudo su hd')
    com.getoutput('hadoop distc hdfs://namenode-104/test104/  hdfs://namenode-103/test103/')
    print("Done")

如何使用python脚本执行以上两个命令。

sbdsn5lh

sbdsn5lh1#

你不应该跑 sudo su 像Python一样
使python脚本仅使用 sudo su - hd -c 'python script.py'

相关问题