Python Soket Hatası 48'i Düzeltin

Soket Hatası 48, işlem kendisini halihazırda kullanımda olan bir bağlantı noktasına bağlamayı denediğinde tetiklenen bir python hatasıdır.

“Socket.error: [Errno 48] Adres zaten kullanımda” Hatasına Neden Olan Nedir?

Kısa bir araştırmadan sonra, nedenleri bulduk:

1.Çözüm: Bağlantı Noktası Numarasını Belirleme

Hata çoğunlukla, bir kişi belirli bir işlemi varsayılan bağlantı noktasına bağlamaya çalıştığında ve varsayılan bağlantı noktası zaten farklı bir işleme bağlandığında tetiklenir. Bu nedenle, bu adımda, işlemin sınırlanacağı bağlantı noktasını belirleyeceğiz.

  1. Muhtemelen, bir işlem oluşturmak için aşağıdaki komutu kullanıyorsunuz.
     $ python -m SimpleHTTPServer
  2. Bunun yerine, bir işlem oluşturmak için bu komutu kullanın.
     $ python -m SimpleHTTPServer (Bağlantı Noktası Numarası)
  3. İşlemin oluşturulmasını bekleyin ve sorunun devam edip etmediğini kontrol edin.

2.Çözüm: Bağlantı Noktasını Serbest Bırakma

Eğer Liman zaten farklı bir işlem tarafından kullanılıyorsa, yeni işlem bu bağlantı noktasında çalışamayacaktır. Bu nedenle, bu adımda önceki işlemi sonlandırıp yenisini çalıştırarak portu serbest bırakacağız. Bunun için:

  1. Belirli bir bağlantı noktasını kullanan bir dizi işlemi listelemek için aşağıdaki komutu kullanın.
    $ ps -fA | grep python
  2. Komut argümanı aşağıdaki satırlara benzeyecektir.
     601 88234 12788 0 9:53 PM ttys000 0: 00.16 python -m SimpleHTTPServer
  3. Bunun dışında öldürmek için kullanacağımız işlem kodu “88234” dür.
  4. İşlemi sonlandırmak için aşağıdaki komutu kullanın.
    88234'ü öldür

    Alternatif olarak, onu öldürmek için aşağıdaki komutu kullanabilirsiniz.

    sudo öldürme -9 PID
  5. Şimdi aşağıdaki komutu kullanarak işlemi bu bağlantı noktasına bağlayabilirsiniz.
      $ python -m SimpleHTTPServer (Bağlantı Noktası Numarası)
  6. İşlem şimdi oluşturulacak.

3. Çözüm: Raspberry Pi'yi Yeniden Başlatma (Yalnızca Raspberry Pi İçin)

Bu hatadan kurtulabilirsiniz Ahududu Pi Raspberry Pi'yi yeniden başlatarak veya terminal kabuğunu öldürerek. Raspberry Pi bazen işlemleri otomatik olarak öldüremez ve bağlantı noktalarında zaten çalışan önceki işlemler nedeniyle bu hatayı tetikler.

Facebook Twitter Google Plus Pinterest