tty giriş zaman aşımını değiştir - ArchLinux


10

Varsayılan olarak Arch linux kutuma bir tty ile giriş yaptığımda, kullanıcı adımı yazdıktan sonra ancak şifremi yazmadan önce bir zaman aşımı var.

Yani böyle gidiyor

Login:  mylogin <enter>
Password:
(+ 60 seconds)
Login:

Gördüğünüz gibi, şifreyi yazmazsam istemi geri dönüştürür - Giriş istemini geri dönüştürmek yerine şifrem için süresiz olarak beklemesini istiyorum.

Mümkün mü?

Gibi görünüyor --timeoutseçeneği agettyİstediğimi olurdu. Ancak, bu bayrağı getty dosyalarına eklemeyi denedim /usr/lib/systemd/system/(seçenek varsayılan olarak kullanılmıyor) ve yeniden önyükleme - hiçbir etkisi yok gibi görünüyordu.

Yanıtlar:


11

agettyloginkullanıcı adını okuduktan sonra çağırır , bu nedenle parolayı okurken herhangi bir zaman aşımı yapılır login.

Bunu değiştirmek /etc/login.defsiçin LOGIN_TIMEOUT değerini düzenleyin ve değiştirin.

#
# Max time in seconds for login
#
LOGIN_TIMEOUT       60

2
Sonsuz sürmesini nasıl sağlarsın?
Dereham

3
Bu belgelenmiş değil @AnEpicPerson, bildiğim kadarıyla gördüğünüz gibi, ama kodunu gözden yoktur #define ALARM 60ve timeout = getdef_unum ("LOGIN_TIMEOUT", ALARM); if (timeout > 0) { (void) alarm (timeout); }. Bu yüzden LOGIN_TIMEOUT 0login.defs koymak herhangi bir zaman aşımını devre dışı bırakmalıdır.
Mark Plotnick

2
  1. Arch'de, programlar yükleme varsayılanlarıdır /usr/lib. Oralarda el ile karışıklık yapmamalısınız (neredeyse hiç); kesinlikle değil systemd. systemdbir nedenle varsayılan birimlerin geçersiz kılınmasını sağlar ( "Birim Yükleme Yolu" bölümüne bakın ).

  2. Bunun bir kısmı bir güvenlik sorunudur. Zaman aşımı ihmali kontrol eder (örneğin, tüm şifrenizi girersiniz, ancak enter tuşuna basmayı unutmayın ve dikkatinizi dağıtacak bir şey vardır). Bunu devre dışı bırakmanın burada en güvenli karar olmadığının farkında olmalısınız.

  3. Bir birimi düzenlediğinizde veya geçersiz kıldığınızda, systemctl daemon-reloadsystemd'in değişikliği tam olarak tanıması için çalıştırmanız gerekir . Yeni birimini oluşturduktan sonra /etc/systemd/yapmanız gerekir, daemon-reloadve sonra disablevarsayılan birimi ve enableyeni birimin. Daha sonra, yeniden başlatma istediğiniz sonuçları vermelidir. ( Not : Yine de bunu yapmamanızı tavsiye ederim; 2. maddeye bakınız.)


1
2. noktanıza gelince, - bunu yapmanın pratik ithalatı, 4 yaşındaki çocuğumun engellenmeden önce 9 harfli şifresini yazmayı başarabilmesidir. Cevabınızı tamamen yeniden verin, lütfen soruma bir çözüm vermek için kalbinizde bulun .
g33kz0r

Aslında --timeoutseçenekle doğru yolda olduğunuzu düşünmüştüm , ancak daha ileriye baktığımızda (yani agettyman sayfası), --timeoutseçenek parola yerine kullanıcı adının girilmesini ifade ediyor gibi görünüyor .
HalosGhost

@HalosGhost Mesajları düzenlerken komutların önüne '$' koymanıza gerek yoktur, boşa harcanır ve bu da kesip yapıştırmayı zorlaştırır. Yalnızca komutlar ve çıktılar tek bir blokta karıştırıldığında yapın
Zelda

1
@Zelda, bunu neden buraya gönderdiğini bilmiyorum. Ama bunu aklımda tutacağım.
HalosGhost
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.