全部产品
Search
文档中心

:Apa yang harus saya lakukan jika pesan kesalahan "could not set limit for 'nofile': Operation not permitted" muncul saat saya terhubung ke instance ECS Linux menggunakan SSH?

更新时间:Jul 02, 2025

Topik ini menjelaskan penyebab dan solusi untuk masalah di mana pesan kesalahan "could not set limit for 'nofile': Operation not permitted" muncul saat Anda terhubung ke instance Elastic Compute Service (ECS) Linux menggunakan SSH.

Deskripsi Masalah

Saat Anda terhubung ke instance ECS Linux menggunakan SSH, pesan kesalahan berikut muncul:

-bash: fork: retry: Resource temporarily unavailable.
pam_limits(sshd:session): could not sent limit for 'nofile':operation not permitted.
Permission denied.

Penyebab

Nilai nofile dalam file konfigurasi batasan sumber daya /etc/security/limits.conf pada kernel Linux terlalu besar dan melebihi jumlah maksimum file yang dapat dibuka oleh kernel. Akibatnya, Anda tidak dapat menggunakan SSH untuk terhubung ke instance ECS Linux.

Solusi

Anda dapat memodifikasi file konfigurasi /etc/sysctl.conf atau /etc/security/limits.conf sesuai dengan kebutuhan bisnis Anda untuk menyelesaikan masalah ini.

  1. Terhubunglah ke instance ECS Linux menggunakan Virtual Network Computing (VNC).

    Untuk informasi lebih lanjut, lihat Metode untuk terhubung ke instance ECS.

  2. Jalankan perintah berikut untuk melihat nilai parameter fs.file-max dan fs.nr_open.

    • Jika nilai parameter fs.file-max dan fs.nr_open kurang dari atau sama dengan 65.536, lanjutkan ke Langkah 3.

    • Jika nilai parameter fs.file-max dan fs.nr_open lebih besar dari 65.536, lanjutkan ke Langkah 4.

      cat /proc/sys/fs/file-max 
      cat /proc/sys/fs/nr_open 
  3. Modifikasi file konfigurasi /etc/sysctl.conf.

    1. Buka file konfigurasi /etc/sysctl.conf.

      vim /etc/sysctl.conf
    2. Tekan tombol I untuk masuk ke mode Insert.

    3. Ubah nilai parameter fs.file-max dan fs.nr_open.

      Kami merekomendasikan agar Anda mengubah nilai parameter fs.file-max dan fs.nr_open menjadi nilai yang lebih besar dari 65.536.

        Catatan
        • fs.file-max: Jumlah file yang dapat dibuka oleh semua proses di kernel.

        • fs.nr_open: Jumlah file yang dapat dibuka oleh satu proses di kernel.

      fs.file-max = 655360
      fs.nr_open = 655360
  4. Modifikasi file konfigurasi /etc/security/limits.conf.

    1. Buka file konfigurasi /etc/security/limits.conf.

      vim /etc/security/limits.conf
    2. Tekan tombol I untuk masuk ke mode Insert.

    3. Ubah nilai parameter * soft nofile dan * hard nofile.

      Sebagai contoh, ubah nilai parameter * soft nofile dan * hard nofile menjadi nilai yang lebih besar dari 65.535.

      * soft nofile 655350
      * hard nofile 655350
  5. Mulai ulang instance ECS.

    Untuk informasi lebih lanjut, lihat Mulai sebuah instance.

  6. Jalankan perintah berikut secara berurutan untuk memeriksa apakah nilai parameter fs.file-max dan fs.nr_open telah diubah:

    cat /proc/sys/fs/file-max
    cat /proc/sys/fs/nr_open

Referensi

Apa yang harus saya lakukan jika saya tidak dapat terhubung ke instance Linux?