Machine: sudo: tidak ada tty yang ada dan tidak ada program askpass yang ditentukan

Dibuat pada 29 Jun 2016  ·  5Komentar  ·  Sumber: docker/machine

Saya menggunakan MacOSX Captain sebagai sistem operasi host
Saya telah membuat wadah dari Gambar Ubuntu
Bash kontainer dijalankan dengan pengguna root secara default

Saya telah menginstal Sudo melalui apt-get
kemudian saya telah membuat pengguna yang tidak memiliki hak istimewa yang disebut pengguna uji

saya menjalankan bash dengan pengguna uji
docker exec -i -t -u test-user container-id bash

ketika saya mencoba menggunakan Sudo apt-get install
Saya mendapatkan kesalahan ini Sudo: no tty present dan tidak ada program askpass yang ditentukan

Saya mencobanya karena saya membaca bahwa saya tidak boleh menggunakan pengguna root atau admin untuk menjalankan program apa pun karena itu akan menjadi masalah keamanan.

Komentar yang paling membantu

Saya memiliki masalah yang sama. Untuk beberapa orang pergi ke /etc/sudoers (sudoers adalah file) dan menambahkan nama pengguna ALL=(ALL) NOPASSWD: ALL (membuatnya sehingga Anda tidak memerlukan kata sandi) berfungsi, jadi mungkin Anda dapat mencobanya, tetapi itu tidak berhasil untuk saya. Adakah yang punya saran lebih baik?

Semua 5 komentar

Saya memiliki masalah yang sama. Untuk beberapa orang pergi ke /etc/sudoers (sudoers adalah file) dan menambahkan nama pengguna ALL=(ALL) NOPASSWD: ALL (membuatnya sehingga Anda tidak memerlukan kata sandi) berfungsi, jadi mungkin Anda dapat mencobanya, tetapi itu tidak berhasil untuk saya. Adakah yang punya saran lebih baik?

Ya itu bekerja untuk saya,
coba edit file menggunakan perintah visudo dan pastikan Anda telah memasukkan nama pengguna dengan benar, tetapi saya tidak yakin bahwa solusi ini aman, jika Anda lupa menutup terminal siapa pun yang menggunakan laptop Anda akan menggunakan perintah sudo tanpa kata sandi untuk menyuntikkan program apapun.

Saya mencoba mencari cara untuk memasukkan kata sandi, tetapi tidak berhasil.

Ini juga berfungsi untuk saya, gunakan nama pengguna Anda yang sebenarnya dan bukan username

Masalah yang sama disini. Meskipun saya memiliki izin sudo pada mesin jarak jauh yang menjalankan buruh pelabuhan, entah bagaimana tampaknya salah untuk mengacaukan konfigurasi sudoers jarak jauh untuk membuat konfigurasi mesin buruh pelabuhan lokal.

Masalah serupa. Saat membangun untuk aws, pengguna ssh docker-machine default adalah _ubuntu_. Saya mencoba membuat pengguna Sudo yang berbeda (sesuatu yang lebih ramah seperti _demouser_) atau mengganti nama pengguna _ubuntu_ setelah saya selesai membuat VM jarak jauh.

Dalam kedua kasus, Anda dapat menggunakan (atau skrip) instruksi serupa seperti dari https://askubuntu.com/questions/34074/how-do-i-change-my-username. Pendeknya:

  • Tambahkan pengguna sudo baru atau sementara
  • Opsional:

    • Login sebagai pengguna baru/sementara dan ubah nama/home direktori pengguna _ubuntu_

Kedua langkah memiliki masalah yang sama, pengguna baru atau pengguna _changed_ "ubuntu" mengharuskan Anda menentukan kata sandi agar sudo berfungsi. Kecuali jika Anda mengedit file sudoers untuk mengatur opsi nopasswd. Ada beberapa saus rahasia dengan pengguna "ubuntu" (default) asli yang memungkinkan sudo tanpa kata sandi meskipun tidak ada konfigurasi tambahan di sudoers.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat