Hola, soy nuevo en ubuntu world. Tengo algunas preguntas sobre la instalación del software en ubuntu:
¿Cuál es la diferencia entre instalar un software en ubuntu software center y línea de comandos?
¿Por qué algunos programas que instalé con la línea de comandos no se pueden buscar en el centro de software (presione la tecla de la ventana)?
¿Cuáles son los comandos correctos para instalar un software desde la línea de comandos para poder buscarlos?
Realicé una copia de seguridad y restauré mi sistema una vez, pero algunos comandos funcionaron antes (como "subl") no funcionan después de restaurar el sistema.
Creo que estas preguntas son sobre $ PATH de alguna manera, pero no puedo encontrar material sobre esto. Cualquier material extra sería apreciado. :)
Respuestas:
TL; DR : hay muchas áreas grises y depende de lo que estés haciendo. Principalmente, el Centro de software y los métodos de línea de comandos hacen cosas similares cuando se trata de
.deb
paquetes, pero otros paquetes de software pueden requerir diferentes pasos.Aquí está la realidad: la instalación no es más que lanzar los archivos que vienen con el paquete de software en los directorios apropiados. No importa si se hace a través de la línea de comandos o del Centro de software; hacen lo mismo: arroja los archivos a sus respectivos directorios. Sin embargo, lo que importa es el paquete y cómo lo maneja. Aquí repasaré algunos de los paquetes básicos con los que puede lidiar en Ubuntu. En cuanto a la diferencia entre la línea de comandos y el Centro de software, la diferencia más básica es que en el Centro de software hace clic en los botones; en la línea de comandos escribe comandos. Sé que Software Center usa mucho código de Python, pero en la línea de comandos depende de la utilidad que uses. También hay una cantidad de cuánto puede eliminar Software Center (lea a continuación sobre eso)
Los paquetes de software para Ubuntu pueden venir de tres maneras:
.deb
archivo,.run
archivo y solo código fuente sin procesar en comprimidozip
otar
archivo. Dependiendo de con quién esté tratando, la instalación de la línea de comandos puede ser más o menos dolorosa. Esto no es algo de lo que realmente deba preocuparse como nuevo usuario, al menos no en el primer año de uso de Linux.Verá principalmente
.deb
archivos: son paquetes de software precompilados, listos para usar. Estos son menos dolorosos. También a menudo especifican dependencias, otro software sin el cual su programa no se ejecutará. Las utilidades de línea de comandos comoapt
eapt-get
instalarán dependencias automáticamente para usted. De hecho, Software Center lo utilizaapt-get
como back-end, por lo que también instala dependencias automáticamente..run
Los archivos son típicamente archivos binarios codificados y propietarios. Realmente no puedes ver lo que están haciendo.Con el código fuente sin formato, debe hacer todo usted mismo: crear software e instalar dependencias.
También hay formas de instalar paquetes desde otras distribuciones, como
.rpm
paquetes, pero esto se hace muy raramente.También existe una clase de software conocida como contenedores. Hay docker y
lxd
contenedores. Recientemente, Ubuntu ha introducido algo conocido comosnap
paquetes. ¿Qué tiene de bueno todo eso? Pueden ejecutarse en cualquier lugar, de forma segura y aislada de su sistema principal, y pueden instalarse / reinstalarse con bastante rapidez. Estos tipos de software no se pueden instalar a través del Centro de software y, en general, para administradores de sistemas profesionales o usuarios avanzados o técnicos. Como nuevo usuario no tiene que preocuparse por ellos, solo tenga en cuenta que existen y que son increíbles :)Finalmente, algo así como un script (y típicamente un solo archivo) también se puede considerar una aplicación y, una vez más, la instalación no es más que arrojar ese archivo donde pertenece o se supone que pertenece.
Nuevamente, esto realmente depende del paquete. Si los desarrolladores del software decidieron incluir el
.desktop
archivo con su paquete, podrá buscarlo en el Tablero..desktop
los archivos son como atajos de Windows, aunque hacen mucho más. Un buen ejemplo de la utilidad de línea de comandos que viene con el.desktop
archivo es Byobu, un programa muy útil para dividir el terminal en pestañas / ventanas adicionales.Sin embargo, puede crear su propio
.desktop
archivo para cada programa y colocarlo en la~/.local/share/applications/
carpeta.Nuevamente, esto no tiene nada que ver con que la aplicación sea de línea de comandos o GUI. Depende de las elecciones que hagan los desarrolladores de aplicaciones
De nuevo, depende de lo que estés haciendo. Si está instalando software desde repositorios oficiales de Ubuntu, simplemente puede hacer
sudo apt-get install my-software
Si está instalando un
.deb
paquete, puede usar eldpkg
comando oapt-get
. Aquí hay un ejemplo de mí instalando el paquete deb de google-chrome con apt-get. NOTA : en el momento de la instalación estoy en el mismo directorio que el.deb
archivo, por lo tanto, tengo que especificar./
parte¿De qué es bueno
apt-get
? Tiene la--purge
opción, que le permite eliminar todo lo relacionado con un programa. Por ejemplo, si solo lo eliminosudo apt-get remove google-chrome-stable
o lo hago a través del Centro de software, puede dejar archivos de configuración, de modo que cuando vuelva a instalar el software, esté listo para usar como antes.--purge
La opción también eliminará los archivos de configuración. Eso es conveniente si su software se rompió y desea una instalación completamente nueva. Software Center no hace eso, así que esa es otra diferencia.Si está tratando con un
.run
archivo, deberá hacer que ese archivo sea ejecutable y ejecutarlo. Me gusta esto:Depende del tipo de copia de seguridad que haya hecho. Si su copia de seguridad incluye todos los archivos que son necesarios para que
subl
funcione, entonces debería haber funcionado. También podría ser que su copia de seguridad ocurriera antes desubl
instalarse. Asegúrese de configurar su copia de seguridad correctamenteLa
$PATH
variable es relevante para shell (el intérprete de comandos donde coloca los comandos). No es realmente relevante para Unity Dash.$PATH
La variable es realmente una lista de directorios, donde Shell buscará programas que tengan un conjunto de permisos ejecutables. Dash está realmente preocupado.desktop
solo por los archivos. Por ejemplo, puedo tener un programa en la/usr/bin
carpeta y poder abrirlo a través de la línea de comando, pero Dash no lo hará, porque no hay un.desktop
archivo correspondiente para él.Si desea encontrar material adicional sobre
$PATH
, literalmente tome cualquier libro sobre scripts de shell de Linux. Es uno de los elementos básicos de conocimiento para cualquier usuario de Linux que quiera usar la línea de comandos.Algunas reflexiones finales : la complejidad de la instalación de software para Linux a veces puede ser impactante para los nuevos usuarios que provienen del mundo de Windows o Mac. En realidad, son los mismos principios: arrojar todo a donde pertenece y funcionará. ¿No encuentras acceso directo a tu programa? Haga uno, ¡es solo un archivo de texto! Las computadoras son máquinas y están destinadas a ser operadas. Windows también tiene una
%PATH%
variable para su línea de comandos, simplemente nunca lo supiste, porque la línea de comandos de Windows es menos versátil y menos utilizada que en Linux. En resumen, no se deje intimidar por todo lo que pueda ver, porque en el día a día se trata del 20% de los comandos o acciones más utilizados, y le brindan el 80% del trabajo realizado.fuente
The complexity of software installation for Linux may sometimes be shocking to new users who come from Windows or Mac world
depende de cómo los hayan usado también. He "instalado" muchas aplicaciones descomprimiéndolas en Windows y he visto que muchos instaladores literalmente simplemente estaban descomprimiendo en algún lugarProgram Files
. En Linux, la instalación en su mayor parte es tan fácil como, por ejemplo, en Windows. Solo que en lugar de descargar y ejecutar un.exe
archivo, lo hará con un.deb
. O lo que sea. Y la ejecución de la línea de comandos simplemente hace ese proceso por usted. Software Center es una GUI en la parte superior.No hay diferencia en cómo se instala el software. Pero solía haber alguna diferencia en qué software podría instalarse antes de 15.10. Ubuntu Software Center en Trusty solía permitir a los usuarios comprar aplicaciones a través de él, y estas aplicaciones generalmente no se pueden instalar
apt-get
.Creo que te estás refiriendo a la búsqueda usando Dash aquí (usando la súper tecla). Dash generalmente muestra solo aquellos programas que vienen con una interfaz gráfica de usuario y tienen algún tipo de ícono (más específicamente con un archivo .desktop ). Estos son buenos para el uso diario y se muestran en la búsqueda de Dash. Pero estas no son todas sus aplicaciones instaladas; Ubuntu tiene muchas aplicaciones de línea de comandos que no aparecen en Dash, porque no son adecuadas para su uso como aplicaciones gráficas independientes (y porque generalmente no vienen con el archivo .desktop). Por ejemplo, no verá el
tar
programa en Dash.Por lo tanto, si instala una aplicación de línea de comandos, generalmente no aparecerá en la búsqueda de tablero (tecla de Windows). Como no ha especificado qué aplicación no aparece, esta podría ser la respuesta general.
Nota: como señaló Serg en un comentario, la aparición de iconos en Dash depende de los archivos .desktop. Si una aplicación de línea de comandos viene con un archivo .desktop, también aparecerá en el tablero. Estoy de acuerdo con él. Pero es cierto que las aplicaciones de línea de comandos generalmente no vienen con un archivo .desktop .
Como ya se dijo, no hay un comando para instalar un software desde la línea de comando que lo obligará a aparecer en la búsqueda de tablero. Algún software aparecerá automáticamente, otros no. Si instala atom-text-editor a través de la línea de comando, aparecerá. Si instala el
p7zip
paquete, no aparecerá en la búsqueda de tablero. Depende de la disponibilidad de los iconos gráficos del software (y la configuración de los iconos del iniciador en su entorno de escritorio, como Unity, Xfce, etc.). No depende de cómo los instales.Depende de cómo hiciste una copia de seguridad y restauraste.
subl
es el nombre del programa para Sublime Text Editor. Si aún no lo ha instalado, instálelo. Elsubl
comando debería comenzar a funcionar.fuente
.desktop
archivo, solo tendría un ícono con signo de interrogación, pero aún así funcionaría. El ícono es realmente opcional. Depende de los desarrolladores incluir iconos o no.Estoy adivinando que está utilizando ya sea
apt
oapt-get
desde la línea de comandos. apt es un administrador de paquetes en el que se basa el centro de software GUI. Digamos, por ejemplo, que desea instalar el paquete "gimp". Para hacerlo a través de la línea de comando, usaTodo lo que hace el Centro de software es que, cuando selecciona GIMP para instalar, ejecuta ese comando en segundo plano para que no tenga que escribirlo.
Para buscar un programa instalable a través de la línea de comando, use este comando:
fuente