O erro inteiro que eu estava recebendo foi devido a um erro de maiúsculas no caminho do arquivo. Você está se dando bem. Problema resolvido.
Estou automatizando um sistema para criar usuários em python e executar um script python por meio do usuário. Aqui está o código que estou correndo junto com o erro. A raiz está criando um usuário e, em seguida, executando o arquivo como raiz. A pasta que está sendo copiada do skel é semelhante a este / etc / skel / newFolder. variável de nome de usuário é 'newUser'
os.system('sudo adduser --disabled-password --gecos "" ' + username)
path = '/home/'+username+'/newFolder'
path.replace("'", r"\'")
print(subprocess.run("test -e '{}'".format(path), shell=True))
subprocess.run("sudo python3 '{}'".format(path), shell=True)
print(os.path.isfile(path))
Erro
Adding user 'newUser' ...
Adding new group 'newUser' (1000) ...
Adding new user 'newUser' (1000) with group 'newUser' ...
Creating home directory '/home/newUser' ...
Copying files from '/etc/skel' ...
CompletedProcess(args="test -e '/home/newUser/newFolder'", returncode=1)
python3: can't open file '/home/newUser/newFolder/pythonFile.py': [Errno 2] No such file or directory
O código de retorno 1 significa que o teste disse que 'newFolder' copiado de skel não existe. E é claro que o python3 não consegue encontrar o arquivo python. Se eu passar pelo terminal e procurar por este diretório, ele existe. Muito frustrante por favor ajude.
O erro inteiro que eu estava recebendo foi devido a um erro de maiúsculas no caminho do arquivo. Você está se dando bem. Problema resolvido.