Sửa lỗi ổ cắm Python 48
Lỗi Socket 48 là một lỗi python được kích hoạt khi quá trình cố gắng liên kết chính nó với một cổng đã được sử dụng.
Nguyên nhân nào gây ra lỗi “socket.error: [Errno 48] Địa chỉ đã được sử dụng”?
Sau khi nghiên cứu ngắn gọn, chúng tôi đã tìm ra nguyên nhân là:
Giải pháp 1: Chỉ định số cổng
Lỗi chủ yếu được kích hoạt khi một người cố gắng ràng buộc một quy trình cụ thể với cổng mặc định và cổng mặc định đã được liên kết với một quy trình khác. Do đó, trong bước này, chúng tôi sẽ chỉ định cổng mà tiến trình sẽ bị giới hạn.
- Rất có thể, bạn đang sử dụng lệnh sau để tạo một quy trình.
$ python -m SimpleHTTPServer
- Thay vì điều này, hãy sử dụng lệnh này để tạo quy trình.
$ python -m SimpleHTTPServer (Số cổng)
- Chờ quá trình được tạo và kiểm tra xem sự cố có tiếp diễn hay không.
Giải pháp 2: Giải phóng cổng
Nếu Hải cảng đã được một quy trình khác sử dụng, quy trình mới sẽ không thể hoạt động trên cổng đó. Do đó, trong bước này, chúng tôi sẽ giải phóng cổng bằng cách chấm dứt quy trình trước đó và sau đó chạy quy trình mới. Vì điều đó:
- Sử dụng lệnh sau để liệt kê một số quy trình sử dụng một cổng cụ thể.
$ ps -fA | trăn grep
- Đối số lệnh sẽ giống như các dòng sau.
601 88234 12788 0 9:53 PM ttys000 0: 00.16 python -m SimpleHTTPServer
- Ngoài ra, mã quy trình mà chúng tôi sẽ sử dụng để giết là “88234”.
- Sử dụng lệnh sau để kết thúc quá trình.
giết 88234
Ngoài ra, bạn có thể sử dụng lệnh sau để giết nó.
sudo kill -9 PID
- Bây giờ bạn có thể ràng buộc quá trình với cổng này bằng cách sử dụng lệnh sau.
$ python -m SimpleHTTPServer (Số cổng)
- Quá trình bây giờ sẽ được tạo.
Giải pháp 3: Khởi động lại Raspberry Pi (Chỉ dành cho Raspberry Pi)
Bạn có thể loại bỏ lỗi này trên Raspberry Pi bằng cách khởi động lại Raspberry Pi hoặc bằng cách giết vỏ thiết bị đầu cuối. Raspberry Pi đôi khi không thể tự động ngắt các quy trình và gây ra lỗi này do các quy trình trước đó đã chạy trên các cổng.