GNU/Linux >> Linux Esercitazione >  >> Linux

Chi è il proprietario del file se il file viene creato utilizzando il comando Sudo?

Ho effettuato l'accesso utilizzando il mio nome utente ravbholua :

[email protetta]:~$ echo $LOGNAME
ravbholua

Creo un file chiamato a1 :

[email protected]:~$ echo>a1
[email protected]:~$ ll a1
-rw-rw-r-- 1 ravbholua ravbholua 1 Oct  8 09:57 a1

Come previsto, il file sopra mi ha (ravbholua ) come proprietario.

Quindi creo a2 usando sudo con echo comando:

[email protected]:~$ sudo echo>a2
[email protected]:~$ ll a2
-rw-rw-r-- 1 ravbholua ravbholua 1 Oct  8 09:57 a2

Il proprietario sono solo io, ovvero ravbholua .

Ora creo a3 usando di nuovo sudo ma con vim comando:

[email protected]:~$ sudo vim a3
[email protected]:~$ ll a3
-rw-r--r-- 1 root root 10 Oct  8 09:57 a3

Oh! come mai il proprietario cambia ora. Non sono io ma root.
Perché tale variazione con echo e vim !
È una sorpresa che con cambio di comandi come può cambiare il proprietario del file creato.

Risposta accettata:

Il secondo esempio esegue echo sotto sudo , ma il reindirizzamento avviene sotto la shell originale.

sudo bash -c "echo > a4"

Linux
  1. Come estrarre il file tar.gz in Linux utilizzando la riga di comando

  2. Utilizzo di Google Drive dalla riga di comando di Linux

  3. Utilizzo del comando mkfs in Linux per formattare il filesystem su un disco o una partizione

  4. Rimuovi un file su Linux usando il numero di inode

  5. comando non trovato quando si utilizza sudo

Usando il comando gratuito di Linux

Come usare Sudo e il file Sudoers

Utilizzo del file di configurazione SSH

Come scaricare un file su Ubuntu usando la riga di comando

Come cancellare in modo sicuro un disco e un file utilizzando il comando shred di Linux

Tutorial sull'uso del comando Timeout su Linux