- 19 Şub 2022
- 1,136
- 833
C dili ile işletim sistemleri dersin de en çok gelen sorular arasında bulunur. "C ile kullanıcı grup idsini alın yönetici ise değiştirin"klasik lisans sorusu!
hadi başlayalım.
öncelikle ben linux distrosu kullanıyorum gcc derleyicisini yüklemek lazım
ardından terminale bir c dosyası oluşturalım.
kodları yazmaya başlayabiliriz.
şimdi ctrl+s ile kayıt edip derleme işlemine geçelim ve ardından çalıştırma izni verip çalıştıralım.
gördüğünüz gibi yönetici olmadığımız için hata aldık.
eğer programı sudo veya root hesabında başlatırsanız grup id değişecektir.
hadi başlayalım.
öncelikle ben linux distrosu kullanıyorum gcc derleyicisini yüklemek lazım
Bash:
sudo apt update && suda apt upgrade && sudo apt install gcc
ardından terminale bir c dosyası oluşturalım.
Bash:
nano chil.c
kodları yazmaya başlayabiliriz.
C:
#include<stdio.h>
#include<unistd.h>
int main()
{
int id_degeri;
printf("grup id si %d",getgid());
id_degeri=setgid(2000);
if(id_degeri==-1)
{
printf("yönetici değilsiniz! lütfen root hesabına geçiniz...");
}
else
{
printf("root hesabındasınız!");
}
}
şimdi ctrl+s ile kayıt edip derleme işlemine geçelim ve ardından çalıştırma izni verip çalıştıralım.
Bash:
chmod +x ./test && ./test
gördüğünüz gibi yönetici olmadığımız için hata aldık.
eğer programı sudo veya root hesabında başlatırsanız grup id değişecektir.