Идентификатор пользователя, программа C

Достаточно ли индикатора, а не значка в панели запуска (левая боковая панель)? Попробуйте indicator-workspaces здесь.

0
задан 17 September 2017 в 14:17

6 ответов

Это может быть связано с установкой опции mount nosuid в файловой системе, где находится исполняемый файл. Для иллюстрации, учитывая

$ cat uid_demo.c 
#include<stdio.h>
#include <unistd.h>
#include <sys/types.h>

int main(){
    printf("\nreal uid: %d\n", getuid());
    printf("\neffective uid: %d\n", geteuid());
}

, тогда

$ gcc -o uid_demo uid_demo.c 
$ sudo chown root:root uid_demo
$ sudo chmod u+s uid_demo
$ ls -l uid_demo
-rwsrwxr-x 1 root root 8512 Sep 17 07:53 uid_demo
$ 
$ ./uid_demo 

real uid: 1000

effective uid: 0

работает должным образом; однако при повторной установке в качестве nosuid бит suid все еще присутствует, но игнорируется:

$ sudo mount -o remount,nosuid /home
$ ls -l uid_demo
-rwsrwxr-x 1 root root 8512 Sep 17 07:53 uid_demo
$ 
$ ./uid_demo 

real uid: 1000

effective uid: 1000

Если вы знаете точку монтирования, где находится файл, вы можете см. параметры монтирования файловой системы путем grepping вывода команды mount, например

$ mount | grep /home
/dev/sda6 on /home type ext4 (rw,nosuid,relatime,data=ordered)
0
ответ дан 22 May 2018 в 18:23
  • 1
    Спасибо за ответ, возможно, это так, не могли бы вы рассказать мне, как отключить опцию mount nosuid ? – IDK 17 September 2017 в 15:30

Это может быть связано с установкой опции mount nosuid в файловой системе, где находится исполняемый файл. Для иллюстрации, учитывая

$ cat uid_demo.c #include<stdio.h> #include <unistd.h> #include <sys/types.h> int main(){ printf("\nreal uid: %d\n", getuid()); printf("\neffective uid: %d\n", geteuid()); }

, тогда

$ gcc -o uid_demo uid_demo.c $ sudo chown root:root uid_demo $ sudo chmod u+s uid_demo $ ls -l uid_demo -rwsrwxr-x 1 root root 8512 Sep 17 07:53 uid_demo $ $ ./uid_demo real uid: 1000 effective uid: 0

работает должным образом; однако при повторной установке в качестве nosuid бит suid все еще присутствует, но игнорируется:

$ sudo mount -o remount,nosuid /home $ ls -l uid_demo -rwsrwxr-x 1 root root 8512 Sep 17 07:53 uid_demo $ $ ./uid_demo real uid: 1000 effective uid: 1000

Если вы знаете точку монтирования, где находится файл, вы можете см. параметры монтирования файловой системы путем grepping вывода команды mount, например

$ mount | grep /home /dev/sda6 on /home type ext4 (rw,nosuid,relatime,data=ordered)
0
ответ дан 18 July 2018 в 06:41

Это может быть связано с установкой опции mount nosuid в файловой системе, где находится исполняемый файл. Для иллюстрации, учитывая

$ cat uid_demo.c #include<stdio.h> #include <unistd.h> #include <sys/types.h> int main(){ printf("\nreal uid: %d\n", getuid()); printf("\neffective uid: %d\n", geteuid()); }

, тогда

$ gcc -o uid_demo uid_demo.c $ sudo chown root:root uid_demo $ sudo chmod u+s uid_demo $ ls -l uid_demo -rwsrwxr-x 1 root root 8512 Sep 17 07:53 uid_demo $ $ ./uid_demo real uid: 1000 effective uid: 0

работает должным образом; однако при повторной установке в качестве nosuid бит suid все еще присутствует, но игнорируется:

$ sudo mount -o remount,nosuid /home $ ls -l uid_demo -rwsrwxr-x 1 root root 8512 Sep 17 07:53 uid_demo $ $ ./uid_demo real uid: 1000 effective uid: 1000

Если вы знаете точку монтирования, где находится файл, вы можете см. параметры монтирования файловой системы путем grepping вывода команды mount, например

$ mount | grep /home /dev/sda6 on /home type ext4 (rw,nosuid,relatime,data=ordered)
0
ответ дан 24 July 2018 в 18:39

Как вы можете видеть в этом Unix.SE Q & amp; Байт setuid-bit-seem-to-have-no-effect-on-bash

bash обнаруживает, что он был запущен SUID root (UID ! = EUID) и использует свою корневую силу, чтобы выбросить эту мощность, сбросив EUID в UID

Подробнее в setuid-bit-кажется-to-have-no-effect-on-bash [ ! d1]

0
ответ дан 22 May 2018 в 18:23

Как вы можете видеть в этом Unix.SE Q & amp; Байт setuid-bit-seem-to-have-no-effect-on-bash

bash обнаруживает, что он был запущен SUID root (UID ! = EUID) и использует свою корневую силу, чтобы выбросить эту мощность, сбросив EUID в UID

Подробнее в setuid-bit-кажется-to-have-no-effect-on-bash [ ! d1]

0
ответ дан 18 July 2018 в 06:41

Как вы можете видеть в этом Unix.SE Q & amp; Байт setuid-bit-seem-to-have-no-effect-on-bash

bash обнаруживает, что он был запущен SUID root (UID ! = EUID) и использует свою корневую силу, чтобы выбросить эту мощность, сбросив EUID в UID

Подробнее в setuid-bit-кажется-to-have-no-effect-on-bash [ ! d1]

0
ответ дан 24 July 2018 в 18:39

Другие вопросы по тегам:

Похожие вопросы: