¿Por qué utilizamos sudo
para realizar un comando de terminal como administrativo? ¿Por qué no es admin
o algo más? ¿Hay alguna razón para sudo
?
sudo
history-of-ubuntu
Mohammad
fuente
fuente
sudo ls
como "superusuario, hacerls
" (y no, no es tonto, mnemotécnicos son importantes para recordar comandos) (y no, probablemente significa " s bruja u ser y hacer , dado que lossu
medios de conmutación de usuario pero encuentro la antigua mejor.; -))sudo
significa (I) sudar . Me gusta interpretarsudo X
como sudar por miedo a dar el comando incorrecto y borrar todos mis datos . Esto ayuda a tener en cuenta que debe agregarsudo
delante de los comandos solo cuando 1) Es necesario 2) Sabe lo que está haciendo 3) Ha escrito y leído cuidadosamente la línea de comandos para evitar errores tipográficos (especialmente espacios malos que son difíciles de atrapar y puede dar lugar a resultados inesperados realmente horribles).su
originalmente significaba "superusuario", "usuario sustituto" vino más tarde .Respuestas:
De Wikipedia :
Es un comando temporal de una sola vez con privilegios de superusuario (administrador) sin inicio de sesión raíz directo.
fuente
sudo
ysu
, al igual que BSD y Linux.Antes de sudo , la mayoría de los administradores iniciaban sesión como usuario root porque es una forma fácil de configurar su sistema, ya que tiene todos los derechos. Sin embargo, un pequeño error o un enlace de Internet incorrecto y todo su sistema podrían verse afectados o incluso comprometidos.
Debido a este problema, apareció sudo . El objetivo era utilizar los privilegios administrativos solo por un corto período de tiempo, y solo cuando fuera necesario. Además, esto evitaría que el usuario inicie sesión en otra cuenta. Obviamente, esto mejoraría la seguridad del sistema .
Bajo Ubuntu , eligen mejorar la seguridad de su sistema. Por lo tanto, decidieron seguir el camino 'sudo'. El usuario root está deshabilitado; no es necesario y, especialmente, no hay riesgo de que un usuario inicie sesión a través de la interfaz X con el usuario raíz. Además, han permitido que cada comando se inicie con sudo para usuarios autorizados. Lo bueno es que los usuarios avanzados pueden acceder a la cuenta raíz.
Inconvenientes de
sudo
:sudo
antes de cada comando que requiera privilegios administrativosQue
sudo
significa Su nombre es una concatenación de "su" (usuario sustituto) y "do".¿Por qué
sudo
noadmin
? Creo quesudo
significaadmin
para un momento específico y solo cuando lo necesitas.Las personas que vienen del entorno de Windows deberían entender por qué no es así
admin
:)Referencias: Imagen del sitio
: xkcd
fuente
su
ysudo
a este respecto, la única diferencia entre los dos es qué credenciales se utilizan. Usar ensudo
lugar desu
no es más seguro (de hecho, es algo menos seguro); El principal beneficio de sudo (y la razón por la que Ubuntu lo eligió) es la simplicidad para el usuario (solo una contraseña para recordar).Desde Linux.com, un producto de la Fundación Linux:
[Énfasis mío.] Fuente
fuente
superusuario hacer
Hay un comando, su, para convertirse en el superusuario, por lo que podría decir
sudo te permite hacer eso de una sola vez, y no tienes que recordar renunciar a tus poderes mágicos.
fuente
su
("usuario sustituto") le permite convertirse en cualquier usuario: puede especificar un nombre de usuario como argumento.En cuanto a por qué no es "admin", o más indirectamente, por qué su no es "switchUser" o algo así, los comandos tradicionales de Unix tienden a ser abreviaturas mínimas por razones históricas que tienen que ver con los orígenes de Unix.
Por la razón más básica, necesitamos volver a la misma razón por la que se llama Unix en primer lugar. Gran parte de Unix se inspiró en uno de los primeros sistemas operativos multiusuario multitarea, MIT's Multics. (Unix recibe su nombre como "el singular de Multics" o "Multics castrados", dependiendo de a quién le pregunte y su estado de ánimo en este momento).
Entre otras innovaciones de Multics, introdujo el concepto de separar la ubicación real del archivo de la información del directorio, permitiendo que un solo archivo tenga múltiples nombres. ("Enlaces", en términos de Unix.) Multics aprovechó (excesivamente) todo esto; la mayoría de los comandos de Multics tienen ALongNameThatIsImpossibleToType y ASNTOECR (un nombre corto que solo los expertos pueden recordar). La experiencia demostró que los nombres largos realmente no agregaban mucha facilidad de uso ya que, de manera realista, en ese momento todos los usuarios eran o rápidamente se convirtieron en "expertos" y casi nadie usó los nombres largos. Cuando Unix adoptó algunos de los diseños de Multics, una de sus simplificaciones fue descartar los nombres largos no utilizados y mantener solo los nombres cortos amigables para expertos.
Esto también encaja bien con la filosofía de Unix de reducir el sistema operativo y su conjunto de comandos básicos a sus elementos esenciales, lo que le permite funcionar de manera eficiente en sistemas más pequeños. En aquellos días, los programadores todavía conservaban todos los bytes y ciclos posibles. Los procesadores eran tremendamente más lentos, las velocidades de los terminales también eran tremendamente más lentas, y la memoria era tremendamente más costosa (y más lenta, y tenía pequeñas cachés si las hubiera). Es posible que mantener los comandos del sistema a una longitud mínima no haya ahorrado muchos recursos reales (si los hubiera), pero "se sintió bien" para la mentalidad de la época.
Si realmente insiste en nombres de comandos fáciles de usar, la respuesta de Unix sería "Usted sabe cómo escribir un script de shell; impleméntelo usted mismo. Si no sabe cómo escribir un script de shell, necesita aprender cómo hacerlo entonces. Si no te gusta aprender y / o codificar, no estarás contento con Unix y deberías usar algo más ".
fuente
Si " superusuario " es de lo que
su
originalmente se deriva, es inexacto ya que el nombre de usuario que le das no tiene que ser un superusuario. Lo mismo para ejecutar comandos como otro usuario que usasudo -u
." Usuario sustituto " es más preciso, pero suena torpe. Me hace pensar en un maestro sustituto.
Por lo tanto, prefiero pensar
su
simplemente como "cambiar de usuario" y, por losudo
tanto, como "cambiar de usuario y hacer".fuente
Desde el sitio web de Sudo :
"¿Qué es el Sudo?
Sudo (su "do") permite que un administrador del sistema delegue la autoridad para dar a ciertos usuarios (o grupos de usuarios) la capacidad de ejecutar algunos (o todos) comandos como root u otro usuario mientras proporciona una pista de auditoría de los comandos y sus argumentos ".
"Sudo fue concebido e implementado por Bob Coggeshall y Cliff Spencer alrededor de 1980 en el Departamento de Informática de SUNY / Buffalo. Funcionaba con un VAX-11/750 con 4.1BSD. Una versión actualizada, acreditada a Phil Betchel, Cliff Spencer , Gretchen Phillips, John LoVerso y Don Gworek, fueron publicados en el grupo de noticias Usenet de net.sources en diciembre de 1985. "
Dicho esto, aunque no creo que haya ninguna prueba, siempre he creído firmemente que el nombre era una especie de broma de programador geek. Tienes el comando "su" (superusuario) "do" pero en realidad no eres un superusuario: convierte el "doo" en un "doh" y "sudo" se parece / suena mucho a "pseudo" (falso , farsa).
fuente
La mayoría de la gente ha dado la respuesta de que es una combinación de "superusuario do". Me gusta esto, pero puede ser más correcto decir que es una combinación de "usuario sustituto hacer" porque puedes elegir qué usuario "haces" como con la bandera -u.
También lo considero un juego de palabras con el nombre psuedonym porque puedes pretender ser otra persona, ya sea root o cualquier otro usuario que use la bandera -u.
fuente
root
(aunque tiene sentido que sea o al menos uno con uid 0 y generalmente lo es), vea elrunas_default
ensudoers
.