Re: bash ctrl+c gondok

2013-10-30 bef zés elsik . gabor

2013-10-30 11:09 keltezéssel, Ferenc Wagner írta:

HISTFILE= strace -f -o /tmp/bash.strace -- /bin/bash --noprofile --norc 
-c 'read -a s /proc/$$/stat; echo ${s[31]}'


eredemenye: 2147155711

lecsekkoltam, sudo su - után nálam is 0.

a strace file:

8924  execve(/bin/bash, [/bin/bash, --noprofile, --norc, -c, 
read -a s /proc/$$/stat; echo $...], [/* 47 vars */]) = 0

8924  brk(0)= 0xfe9000
8924  access(/etc/ld.so.nohwcap, F_OK) = -1 ENOENT (No such file or 
directory)
8924  mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 
-1, 0) = 0x7f4e9fe53000
8924  access(/etc/ld.so.preload, R_OK) = -1 ENOENT (No such file or 
directory)

8924  open(/etc/ld.so.cache, O_RDONLY|O_CLOEXEC) = 3
8924  fstat(3, {st_mode=S_IFREG|0644, st_size=142018, ...}) = 0
8924  mmap(NULL, 142018, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f4e9fe3
8924  close(3)  = 0
8924  access(/etc/ld.so.nohwcap, F_OK) = -1 ENOENT (No such file or 
directory)
8924  open(/lib/x86_64-linux-gnu/libtinfo.so.5, O_RDONLY|O_CLOEXEC) = 
3
8924  read(3, 
\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\0\1\0\0\0\240\302\0\0\0\0\0\0..., 
832) = 832

8924  fstat(3, {st_mode=S_IFREG|0644, st_size=163312, ...}) = 0
8924  mmap(NULL, 2260032, PROT_READ|PROT_EXEC, 
MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4e9fa0b000

8924  mprotect(0x7f4e9fa2f000, 2093056, PROT_NONE) = 0
8924  mmap(0x7f4e9fc2e000, 20480, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x23000) = 0x7f4e9fc2e000

8924  close(3)  = 0
8924  access(/etc/ld.so.nohwcap, F_OK) = -1 ENOENT (No such file or 
directory)

8924  open(/lib/x86_64-linux-gnu/libdl.so.2, O_RDONLY|O_CLOEXEC) = 3
8924  read(3, 
\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\0\1\0\0\0\340\r\0\0\0\0\0\0..., 
832) = 832

8924  fstat(3, {st_mode=S_IFREG|0644, st_size=14792, ...}) = 0
8924  mmap(NULL, 2109736, PROT_READ|PROT_EXEC, 
MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4e9f807000

8924  mprotect(0x7f4e9f809000, 2097152, PROT_NONE) = 0
8924  mmap(0x7f4e9fa09000, 8192, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f4e9fa09000

8924  close(3)  = 0
8924  access(/etc/ld.so.nohwcap, F_OK) = -1 ENOENT (No such file or 
directory)

8924  open(/lib/x86_64-linux-gnu/libc.so.6, O_RDONLY|O_CLOEXEC) = 3
8924  read(3, 
\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\0\1\0\0\0\200\30\2\0\0\0\0\0..., 
832) = 832

8924  fstat(3, {st_mode=S_IFREG|0755, st_size=1815256, ...}) = 0
8924  mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 
-1, 0) = 0x7f4e9fe2f000
8924  mmap(NULL, 3929336, PROT_READ|PROT_EXEC, 
MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4e9f447000

8924  mprotect(0x7f4e9f5fc000, 2097152, PROT_NONE) = 0
8924  mmap(0x7f4e9f7fc000, 24576, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b5000) = 0x7f4e9f7fc000
8924  mmap(0x7f4e9f802000, 17656, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f4e9f802000

8924  close(3)  = 0
8924  mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 
-1, 0) = 0x7f4e9fe2e000
8924  mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 
-1, 0) = 0x7f4e9fe2d000

8924  arch_prctl(ARCH_SET_FS, 0x7f4e9fe2e700) = 0
8924  mprotect(0x7f4e9f7fc000, 16384, PROT_READ) = 0
8924  mprotect(0x7f4e9fa09000, 4096, PROT_READ) = 0
8924  mprotect(0x7f4e9fc2e000, 16384, PROT_READ) = 0
8924  mprotect(0x6e, 4096, PROT_READ) = 0
8924  mprotect(0x7f4e9fe55000, 4096, PROT_READ) = 0
8924  munmap(0x7f4e9fe3, 142018)= 0
8924  rt_sigprocmask(SIG_BLOCK, NULL, ~[KILL CHLD STOP RTMIN RT_1 RT_2 
RT_3 RT_4 RT_5 RT_6 RT_7 RT_8 RT_9 RT_10 RT_11 RT_12 RT_13 RT_14 RT_15 
RT_16 RT_17 RT_18 RT_19 RT_20 RT_21 RT_22 RT_23 RT_24 RT_25 RT_26 RT_27 
RT_28 RT_29 RT_30 RT_31], 8) = 0

8924  open(/dev/tty, O_RDWR|O_NONBLOCK) = 3
8924  close(3)  = 0
8924  brk(0)= 0xfe9000
8924  brk(0xfea000) = 0xfea000
8924  open(/usr/lib/locale/locale-archive, O_RDONLY|O_CLOEXEC) = 3
8924  fstat(3, {st_mode=S_IFREG|0644, st_size=8731024, ...}) = 0
8924  mmap(NULL, 8731024, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f4e9ebf3000
8924  close(3)  = 0
8924  brk(0xfeb000) = 0xfeb000
8924  brk(0xfec000) = 0xfec000
8924  brk(0xfed000) = 0xfed000
8924  getuid()  = 1000
8924  getgid()  = 1000
8924  geteuid() = 1000
8924  getegid() = 1000
8924  rt_sigprocmask(SIG_BLOCK, NULL, ~[KILL CHLD STOP RTMIN RT_1 RT_2 
RT_3 RT_4 RT_5 RT_6 RT_7 RT_8 RT_9 RT_10 RT_11 RT_12 RT_13 RT_14 RT_15 
RT_16 RT_17 RT_18 RT_19 RT_20 RT_21 RT_22 RT_23 RT_24 RT_25 RT_26 RT_27 
RT_28 RT_29 RT_30 RT_31], 8) = 0

8924  brk(0xfee000) = 0xfee000
8924  open(/proc/meminfo, O_RDONLY|O_CLOEXEC) = 3
8924  fstat(3, {st_mode=S_IFREG|0444, 

Re: bash ctrl+c gondok

2013-10-30 bef zés Ferenc Wagner
elsik.ga...@on-line.hu writes:

 2013-10-30 11:09 keltezéssel, Ferenc Wagner írta:

 HISTFILE= strace -f -o /tmp/bash.strace -- /bin/bash --noprofile --norc -c 
 'read -a s /proc/$$/stat; echo ${s[31]}'

 eredemenye: 2147155711

Jó, ez egybevág az strace-szel:

 8924  rt_sigprocmask(SIG_BLOCK, NULL, ~[KILL CHLD STOP RTMIN RT_1 RT_2 RT_3 
 RT_4 RT_5 RT_6 RT_7 RT_8 RT_9 RT_10 RT_11 RT_12 RT_13 RT_14 RT_15 RT_16 RT_17 
 RT_18 RT_19 RT_20 RT_21 RT_22 RT_23 RT_24 RT_25 RT_26 RT_27 RT_28 RT_29 RT_30 
 RT_31], 8) = 0

Tehát a bash örökli a signal maskot a szülőjétől, nem ő állítja be így.
Nézd meg, hogy melyik szülőnél jelent meg ez a teli maszk!  Az echo $$
megmondja a shelled PID-jét, az alábbi parancs pedig minden PID-hez
megadja a szülő PID-jét:

$ ps ax -o pid,ppid,blocked,cmd

Tipikusan egy init(1) - display manager - window manager - terminal
emulator - shell láncra lehet számítani.
-- 
 Feri.
_
linux lista  -  linux@mlf.linux.rulez.org
http://mlf.linux.rulez.org/mailman/listinfo/linux


Re: bash ctrl+c gondok

2013-10-30 bef zés elsik . gabor

2013-10-30 12:25 időpontban Ferenc Wagner ezt írta:


$ ps ax -o pid,ppid,blocked,cmd

Tipikusan egy init(1) - display manager - window manager - terminal
emulator - shell láncra lehet számítani.


a nyomozás eredménye a következő lett:

12765  4375 7ffbfeff bash
...
 4375  2229 7ffbfeff gnome-terminal
...
 2229  1926 7ffbfeff /usr/bin/cinnamon
...
 1926  1604  gnome-session --session cinnamon


tehát, ha jól sejtem, akkor a cinnamon hozza létre a signal maskot.

ilyenkor mit lehet tenni?
_
linux lista  -  linux@mlf.linux.rulez.org
http://mlf.linux.rulez.org/mailman/listinfo/linux


Re: bash ctrl+c gondok

2013-10-30 bef zés Laszlo Baranyai
Udv!

 felraktam virtualboxba ugyanezta verziót, ugyanúgy felfrissítettem, tehát
 ugyanabban az állapotban van, mint a mostani rendszerem. virtualboxon belül
 nincsenek signal maskok. tehát ez valahogy nem a cinnamonban lesz.

Konzol megy, masik ablakkezelo (xfce) megy,
uj felhasznalo gnome alatt nem megy.
Szerintem ez alapjan a Gnome config vagy lib lesz a ludas.

Udv.: Laci

-- 
Laszlo Baranyai laszlo.baran...@laaz.hu
LAAZ Bt.
_
linux lista  -  linux@mlf.linux.rulez.org
http://mlf.linux.rulez.org/mailman/listinfo/linux


Re: bash ctrl+c gondok

2013-10-30 bef zés Kosa Attila
On Wed, Oct 30, 2013 at 03:18:59PM +0100, elsik.ga...@on-line.hu wrote:
 felraktam virtualboxba ugyanezta verziót, ugyanúgy felfrissítettem,
 tehát ugyanabban az állapotban van, mint a mostani rendszerem.
 virtualboxon belül nincsenek signal maskok. tehát ez valahogy nem a
 cinnamonban lesz.

Nyomjal egy rsync --dry-run-t a /etc konyvtarakra, hatha
megtalalod, hogy melyik fajlban van lenyegi kulonbseg...

-- 
Udvozlettel
Zsiga
_
linux lista  -  linux@mlf.linux.rulez.org
http://mlf.linux.rulez.org/mailman/listinfo/linux