[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#806882: libc-bin: unable to set pts permissions (and open a terminal...)



On 2015-12-03 09:50, Domenico Andreoli wrote:
> On Wed, Dec 2, 2015 at 5:44 PM, Aurelien Jarno <aurelien@aurel32.net> wrote:
> 
> > On 2015-12-02 17:13, Domenico Andreoli wrote:
> > > On Wed, Dec 2, 2015 at 5:06 PM, Aurelien Jarno <aurelien@aurel32.net>
> > wrote:
> > >
> > > > On 2015-12-02 13:45, Domenico Andreoli wrote:
> > > > > Package: libc-bin
> > > > > Version: 2.21-1
> > > > >
> > > > > Hi,
> > > > >
> > > > >   I'm unable to open some terminal applications like rxvt and
> > konsole,
> > > > > don't know why but xterm still works.
> > > > >
> > > > > Running rxvt gives this output:
> > > > >
> > > > > $ rxvt
> > > > > rxvt: can't open pseudo-tty
> > > > > rxvt: aborting
> > > > > $ strace rxvt
> > > > > statfs("/dev/pts", {f_type="DEVPTS_SUPER_MAGIC", f_bsize=4096,
> > > > f_blocks=0,
> > > > > f_bfree=0, f_bavail=0, f_files=0, f_ffree=0, f_fsid={0, 0},
> > > > f_namelen=255,
> > > > > f_frsize=4096}) = 0
> > > > > ioctl(4, TCGETS, {B38400 opost isig icanon echo ...}) = 0
> > > > > ioctl(4, TIOCGPTN, [2])                 = 0
> > > > > stat("/dev/pts/2", {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 2),
> > ...})
> > > > = 0
> > > > > getuid()                                = 1000
> > > > > open("/etc/group", O_RDONLY|O_CLOEXEC)  = 5
> > > > > lseek(5, 0, SEEK_CUR)                   = 0
> > > > > fstat(5, {st_mode=S_IFREG|0644, st_size=624, ...}) = 0
> > > > > mmap(NULL, 624, PROT_READ, MAP_SHARED, 5, 0) = 0x7f02d0366000
> > > > > lseek(5, 624, SEEK_SET)                 = 624
> > > > > munmap(0x7f02d0366000, 624)             = 0
> > > > > close(5)                                = 0
> > > > > chown("/dev/pts/2", 1000, 5)            = -1 EPERM (Operation not
> > > > permitted)
> > > > > close(4)                                = 0
> > > > > open("/dev/pty??", O_RDWR|O_NOCTTY)     = -1 ENOENT (No such file or
> > > > > directory)
> > > > > write(2, "rxvt: ", 6rxvt: )                   = 6
> > > > > write(2, "can't open pseudo-tty", 21can't open pseudo-tty)   = 21
> > > > > write(2, "\n", 1
> > > > > )
> > > > > $ ls -l /dev/pts/*
> > > > > crw------- 1 cavok cavok 136, 0 Dec  2  2015 /dev/pts/0
> > > > > crw------- 1 cavok cavok 136, 1 Dec  2 12:38 /dev/pts/1
> > > > >
> > > > > Investigating konsole, the issue looks the same: unable to set pts
> > > > > permission.
> > > > >
> > > > > Downgrading libc6 and libc6-i686 to 2.19-22 doesn't help, but
> > downgrading
> > > > > libc-bin actually does the trick.
> > > > >
> > > > > Could you please help here?
> > > >
> > > > This is due to the changes introduced to fix the bug #717544. Your
> > > > system is supposed to have /dev/pts mounted with some options:
> > > >
> > > >   devpts on /dev/pts type devpts
> > > > (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
> > > >
> > > > This should be the default and can be modified in /etc/default/devpts.
> > > > It looks like in your case /dev/pts is not mounted or mounted with the
> > > > wrong options. Can you send the output of the following command:
> > > >
> > > >   mount | grep devpts
> > > >
> > >
> > > $ mount | grep devpts
> > > devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,mode=600)
> > > none on /mnt/sid64/dev/pts type devpts (rw,relatime,mode=600)
> > > none on /mnt/sid64/home/chernobyl/dev/pts type devpts
> > (rw,relatime,mode=600)
> > > $ grep devpts /etc/fstab
> > > none              /mnt/sid64/dev/pts                 devpts   defaults
> > > 0       0
> > > none              /mnt/sid64/home/chernobyl/dev/pts  devpts   defaults
> > > 0       0
> > >
> > > commenting out TTYGRP in /etc/default/devpts doesn't help.
> >
> > Ok. Do you have a /dev/ptmx device and what are its permissions?
> >
> 
> $ ls -l /dev/ptmx
> crw-rw-rw- 1 root tty 5, 2 Dec  3 08:48 /dev/ptmx

That looks fine.

So far I am lacking ideas. That said if you want to use the glibc 2.21
and try to debug it yourself, you can copy /usr/lib/pt_chown (with mode
4755) from libc-bin 2.19.

Aurelien

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurelien@aurel32.net                 http://www.aurel32.net


Reply to: