I am trying to remotely change the cwd via socket lib on existing client, but I am running into the trouble every time I send the actual command "cd ..".
Server:
import socket, subprocess, os, sys
s = socket.socket()
host = socket.gethostname()
ip = socket.gethostbyname(host)
port = 8080
s.bind((ip,port))
s.listen(5)
c, a = s.accept()
fr = c.recv(10000)
cwd = fr
print("IP: "+str(a[0])+":"+str(a[1])+"\tCONNECTED")
while True:
    cmd = raw_input("\n"+cwd+"> ")
    if cmd != "":
        c.sendall(cmd)
        data = c.recv(1024)
        print("\n"+data)
    if cmd == "cd ..":
        c.sendall(cmd)
        cwd = c.recv(1024)
Client:
import socket, subprocess, os, sys
i = 1
cwd = os.getcwd()
while 1:
    s = socket.socket()
    host = socket.gethostname()
    ip = socket.gethostbyname(host)
    port = 8080
    try:
        s.settimeout(5)
        s.connect((ip,port))
        s.settimeout(None)
        s.sendall(cwd)
        i = 1
        while i == 1:
            cmd = s.recv(10000)
            if cmd != "over":
                sp = subprocess.Popen(cmd, shell=True, cwd=cwd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
                out = sp.stdout.read()+"_________________________________"
                msg = out + sp.stderr.read()
                s.sendall(msg)
            if cmd == "over":
                s.close()
                i = 0
            if cmd == "cd ..":
                j = 0
                k = 0
                for i in cwd:
                    if i == '/':
                        k = j
                    j = j + 1
                cd = cwd[0:k]
                subprocess.Popen('echo', shell=True, cwd=cd)
                s.sendall(cd)
                print(cd)
    except socket.error:
        continue
Here is the error I get:
Traceback (most recent call last):
  File "PycharmProjects/server-client/test_hq.py", line 25, in <module>
    c.sendall(cmd)
  File "/usr/lib/python2.7/socket.py", line 228, in meth
    return getattr(self._sock,name)(*args)
socket.error: [Errno 104] Connection reset by peer
I can't figure it out what seems to be the problem...
 
     
    