Di mana istilah "superuser" berasal?

55

Dari mana asal kata "superuser"? Apakah ini kependekan dari "pengguna pengawas", atau itu hanya indikator tingkat kekuatan yang dimiliki pengguna tersebut dalam suatu sistem?

VortixDev
sumber
Saya ingin tahu mengapa superuser.com bernama superuser. Apakah itu koneksi yang sama? Apakah itu berasal dari Unix dan super-user dari sistem operasi itu?
Corporate Geek

Jawaban:

54

Dari mana asal kata "superuser"?

su memungkinkan seseorang untuk menjadi pengguna super, yang memiliki segala macam kekuatan luar biasa.

Dari halaman manual Edisi Pertama Unix :

        11/3/71                                                        SU (I)


NAME              su -- become privileged user

SYNOPSIS          su password

DESCRIPTION       su allows one to become the super--user, who has all sorts
                  of marvelous powers. In order for su to do its magic, the
                  user must pass as an argument a password. If the password
                  is correct, su will execute the shell with the UID set to
                  that of the super--user. To restore normal UID privileges,
                  type an end--of--file to the super--user shell

FILES

SEE ALSO          shell

DIAGNOSTICS       "Sorry" if password is wrong

BUGS

OWNER             dmr, ken

Sumber minnie.tuhs.org/UnixTree/V5/usr/source/s2/su.c.html

su digunakan pada sistem Unix untuk mengubah pengguna, dan biasanya digunakan untuk menjalankan perintah sebagai pengguna root.

Dan ... baca terus

Saya memiliki yayasan gemetar saat lain dengan arti "su". Saya menemukan beberapa kode sumber Unix lama, di mana su.c tersedia . Penasaran, saya melihat sumbernya. Apa yang saya temukan?

/* su -- become super-user */

char    password[100];
char    pwbuf[100];
int ttybuf[3];
main()
{
    register char *p, *q;
    extern fin;

    if(getpw(0, pwbuf))
        goto badpw;
    (&fin)[1] = 0;
    p = pwbuf;
    while(*p != ':')
        if(*p++ == '\0')
            goto badpw;
    if(*++p == ':')
        goto ok;
    gtty(0, ttybuf);
    ttybuf[2] =& ~010;
    stty(0, ttybuf);
    printf("password: ");
    q = password;
    while((*q = getchar()) != '\n')
        if(*q++ == '\0')
            return;
    *q = '\0';
    ttybuf[2] =| 010;
    stty(0, ttybuf);
    printf("\n");
    q = crypt(password);
    while(*q++ == *p++);
    if(*--q == '\0' && *--p == ':')
        goto ok;
    goto error;

badpw:
    printf("bad password file\n");
ok:
    setuid(0);
    execl("/bin/sh", "-", 0);
    printf("cannot execute shell\n");
error:
    printf("sorry\n");
}

Apa komentar pertama dalam file C itu?

/* su -- become super-user */

suditulis hanya untuk mengubah ke pengguna root pada sistem. Itu tidak dirancang untuk beralih ke pengguna lain yang memiliki akun. "su" berarti "pengguna super". Saya perlu duduk sebentar.

Kode di atas berasal dari edisi kelima Unix oleh Dennis Ritchie dan Ken Thompson. Jika Anda mengetahui sejarah Unix Anda, itu benar-benar tidak sampai edisi keenam bahwa segalanya benar-benar mulai lepas landas untuk dunia Unix. Jadi, aman untuk mengatakan bahwa sebagian besar, jika tidak semua, kode dalam edisi kelima dan sebelumnya ditulis oleh Dennis dan Ken sendiri. Edisi kelima Unix dirilis pada tahun 1975, sehingga tidak mendapatkan otoritas lebih dari itu.

Sumber Aaron Toponce: Arti 'su'


Bacaan lebih lanjut

DavidPostill
sumber
Komentar bukan untuk diskusi panjang; percakapan ini telah dipindahkan ke obrolan .
Journeyman Geek
35

OED (paywalled) memberikan etimologi berikut:

super- awalan + pengguna n.

Contoh paling awal yang mereka daftarkan adalah dari K. Thompson & DM Ritchie (1971): "Unix Programmer's Man.":

Hanya pengguna super yang dapat menjalankan perintah ini.

Jukka Suomela
sumber