Lưu ý: Vui lòng đọc thông tin cập nhật bắt đầu bằng "EDIT" gần điểm giữa của bài đăng này - môi trường và bối cảnh của vấn đề này đã thay đổi
Tôi đã có một bản cài đặt Debian 6.0 tiêu chuẩn không có thật ở đây mà tôi đã quyết định chuyển sang kho lưu trữ Thử nghiệm Debian. Tôi đã làm điều này bằng cách hoán đổi các tham chiếu đến các repos Squeeze trong nguồn của tôi để sử dụng các repos thử nghiệm thay thế.
Sau khi cài đặt gói và khởi động lại, tôi gặp lỗi sau khi thử su - cho người dùng khác:
root@skaia:~# su joebloggs -
bash: cannot set terminal process group (-1): Inappropriate ioctl for device
bash: no job control in this shell
Nếu tôi bỏ qua -, điều này không xảy ra.
Lưu ý rằng người dùng có thể trở thành root chính xác, điều này dường như chỉ xảy ra khi chuyển từ root sang người khác và sử dụng - để có được môi trường của người dùng đó.
Google chủ yếu là vô dụng ở đây. Những điều duy nhất tôi có thể tìm thấy là các tài liệu tham khảo từ năm 2011 liên quan đến sux
gói, dường như đã được sửa trong thời gian trung bình.
Điều này trông và có mùi rất giống như một lỗi nâng cấp, có thể sửa chữa bằng cách điều chỉnh đúng gói theo đúng cách. Tôi chỉ không biết bắt đầu từ đâu - ngoài việc này, hệ thống của tôi hoạt động hoàn toàn bình thường và như mong đợi.
BIÊN TẬP
Điều này hiện đang xảy ra với tôi trên một máy ổn định Debian như được mô tả ở trên. Không nâng cấp hoặc bất cứ điều gì thời gian này, chỉ cần thẳng lên ổn định.
Yup, một năm sau. Vẫn không biết vấn đề là cái quái gì.
Đây là những gì nó trông giống như bây giờ (không có nhiều thay đổi):
bash: cannot set terminal process group (-1): Inappropriate ioctl for device
bash: no job control in this shell
terraria@skaianet:~$ tty
/dev/pts/0
terraria@skaianet:~$ ls -l /dev/pts/0
crw--w---- 1 root root 136, 0 Oct 10 19:21 /dev/pts/0
terraria@skaianet:~$ ls -l /dev/pts/
crw--w---- 1 root root 136, 0 Oct 10 19:21 0
crw--w---- 1 root root 136, 2 Sep 22 17:47 2
crw--w---- 1 root root 136, 3 Sep 26 19:30 3
c--------- 1 root root 5, 2 Sep 7 10:50 ptmx
Một bước tiến được tạo ra như thế này:
root@skaianet:~$ strace -f -o tracelog su terraria -
.. cũng bật lên một số hành vi khó hiểu. Những tin nhắn này khá khó hiểu. Một số dòng được chọn:
readlink("/proc/self/fd/0", "/dev/pts/0", 4095) = 10
#Error code 10?
15503 open("/dev/tty", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
#Yes there is, and I can interact with it normally
15503 ioctl(255, TIOCGPGRP, [32561]) = -1 ENOTTY (Inappropriate ioctl for device)
Tôi đã liên kết đầu ra đầy đủ của phiên strace này - tất cả những gì tôi đã làm là chạy lệnh su, sau đó ngay lập tức ctrl + d ra khỏi thiết bị đầu cuối.