import os def close_file_descriptors(fd_min=3, fd_max=-1, debug=False): import resource fd_top = resource.getrlimit(resource.RLIMIT_NOFILE)[1] - 1 if fd_max == -1 or fd_max > fd_top: fd_max = fd_top if debug: print "closing fds from %s to %s" % (fd_min, fd_max) for fd in range(fd_min, fd_max+1): try: os.close(fd) except OSError: pass close_file_descriptors(debug=True)