thay đổi thời gian chờ đăng nhập tty - ArchLinux


10

Theo mặc định khi tôi đăng nhập vào hộp Arch linux của mình trong một tty, có một khoảng thời gian chờ sau khi tôi nhập tên người dùng nhưng trước khi tôi nhập mật khẩu của mình.

Vì vậy, nó đi như thế này

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

Như bạn có thể thấy, nếu tôi không gõ mật khẩu, nó sẽ tái chế lời nhắc - tôi muốn nó chờ vô thời hạn mật khẩu của mình thay vì tái chế lời nhắc đăng nhập.

Điều này có thể không?

Có vẻ như --timeouttùy chọn agettysẽ là những gì tôi muốn. Tuy nhiên, tôi đã thử thêm cờ này vào các tệp getty trong /usr/lib/systemd/system/(tùy chọn không được sử dụng theo mặc định) và khởi động lại - dường như không có tác dụng.

Câu trả lời:


11

agettygọi loginsau khi đọc tên người dùng, vì vậy bất kỳ thời gian chờ nào khi đọc mật khẩu đều được thực hiện bởi login.

Để thay đổi điều này, hãy chỉnh sửa /etc/login.defsvà thay đổi giá trị LOGIN_TIMEOUT.

#
# Max time in seconds for login
#
LOGIN_TIMEOUT       60

2
Làm thế nào bạn sẽ có được nó để kéo dài vô tận?
Will Dereham

3
@AnEpicPerson Nó không được ghi lại, theo như tôi có thể thấy, nhưng xem qua mã có #define ALARM 60timeout = getdef_unum ("LOGIN_TIMEOUT", ALARM); if (timeout > 0) { (void) alarm (timeout); }. Vì vậy, đặt LOGIN_TIMEOUT 0trong login.defs nên vô hiệu hóa bất kỳ thời gian chờ.
Đánh dấu Plotnick

2
  1. Trong Arch, các chương trình cài đặt mặc định thành /usr/lib. Bạn không nên lộn xộn trong đó (gần như không bao giờ); chắc chắn không với systemd. systemdcung cấp ghi đè các đơn vị mặc định vì một lý do (xem phần "Đường dẫn tải đơn vị" ).

  2. Một phần của vấn đề này là vấn đề bảo mật. Thời gian chờ kiểm tra lại do sơ suất (ví dụ: bạn nhập toàn bộ mật khẩu của mình, nhưng quên nhấn enter và bị phân tâm bởi một cái gì đó). Bạn nên lưu ý rằng việc vô hiệu hóa nó không phải là quyết định an toàn nhất ở đây.

  3. Khi bạn chỉnh sửa hoặc ghi đè lên một đơn vị, bạn cần chạy systemctl daemon-reloadđể systemd nhận ra đầy đủ thay đổi. Sau khi tạo đơn vị mới /etc/systemd/, bạn phải daemon-reloaddisableđơn vị mặc định và enableđơn vị mới của bạn. Sau đó, khởi động lại sẽ mang lại kết quả bạn muốn. ( Lưu ý : Tôi khuyên bạn không nên làm như vậy; xem điểm 2.)


1
Về quan điểm của bạn 2. - nhập khẩu thực tế để làm điều này là để đứa con 4 tuổi của tôi có thể quản lý để nhập mật khẩu 9 chữ cái trước khi bị cản trở. Trả lời toàn bộ câu trả lời của bạn, xin vui lòng tìm nó trong trái tim của bạn để cho tôi một giải pháp cho câu hỏi của tôi.
g33kz0r

Tôi đã nghĩ rằng bạn thực sự đang đi đúng hướng với --timeouttùy chọn, nhưng nhìn sâu hơn vào nó (cụ thể là agettytrang man), có vẻ như --timeouttùy chọn này đề cập đến việc nhập tên người dùng, không phải mật khẩu.
HalosGhost

@HalosGhost Không cần đặt '$' trước các lệnh khi chỉnh sửa bài đăng, điều này thật lãng phí và điều đó làm cho việc cắt và dán khó khăn hơn. Chỉ thực hiện khi các lệnh và đầu ra được trộn lẫn trong một khối
Zelda

1
@Zelda, tôi thực sự không chắc tại sao bạn lại đăng nó ở đây. Nhưng, tôi sẽ ghi nhớ điều đó.
HalosGhost
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.