¿Cómo extraer archivos al sistema de archivos en la terminal?

15

Instalé júpiter y utilizo el tema radiance para que el ícono no se vea bien, así que encontré esta respuesta sobre cómo cambiarlo. ¿Cómo puedo cambiar el ícono de Júpiter? . Menciona la necesidad de acceso de superusuario y pensé que usar sudo en la terminal sería más fácil que habilitar root o lo que sea que necesite hacer, pero no puedo encontrar nada aquí que explique cómo extraer un archivo tar.bz a un directorio en la terminal.

Jeff H
fuente
1
sudo tar -xzvf example.tar.bz¡¿Realmente no pudiste encontrar esto buscando en Google ?! : P
adempewolff
Bueno, soy un poco nuevo en Linux, no estaba seguro de si era lo correcto. Y eso no está funcionando. Necesito extraer algunos íconos en la carpeta pixmap
Jeff H
-1: Las preguntas de este básico deben resolverse mediante una búsqueda en la web.
Scott Severance
3
En realidad, hay un poco para pensar aquí, para hacer esto correctamente. Debe asegurarse de que los archivos del archivo lleguen al lugar correcto y tengan la propiedad correcta. ( tarse encargará de los permisos, pero no necesariamente de la propiedad). Y para un novato no es necesariamente obvio qué partes de la tarea necesitan sudoy cuáles no. Esta parece una pregunta valiosa para nuestro sitio.
Eliah Kagan
Lo suficientemente justo. A decir verdad, no pude encontrar una pregunta duplicada en Pregúntele a Ubuntu, así que no veo ningún problema con que se me pregunte ... Personalmente, al menos trataría de encontrar un comando candidato buscando en la web o leyendo man tarantes de hacer la pregunta , pero creo que esta podría ser una pregunta valiosa para el sitio y creo que sé quién debería escribir la respuesta ... (empuje @EliahKagan, jeje)
adempewolff

Respuestas:

25

Método 1: extraer los archivos y luego copiarlos como raíz

Navega en la Terminal a donde esté ubicado el archivo. Por ejemplo, si está ubicado en la Downloadscarpeta dentro de su carpeta de inicio, ejecute este comando:

cd ~/Downloads

El ~carácter en este contexto es una abreviatura para el nombre completo de su carpeta de inicio. (Por ejemplo, si su nombre de usuario es jeff, es una abreviatura de /home/jeff).

Ahora extraiga el archivo con tar. Como ese archivo es un .gzarchivo, usará la zbandera para decir taresto:

tar xvzf Jupiter_Radiance_theme_icons.tar.gz

xsignifica extraer. vsignifica enumerar los archivos a medida que los extrae (puede dejar esto desactivado si lo desea). zsignifica para gunzipél (ya que el .tararchivo está comprimido por sí mismo gzip, eso es lo que .gzdesigna la extensión). fsignifica extraerlo aquí en el sistema de archivos (y su necesidad es un artefacto del uso común anterior de tarcrear y extraer archivos de cinta ).

El archivo que acaba de extraer contiene tres archivos (vio sus nombres de archivo si mantuvo la vbandera en el comando). Sus nombres son bolt1.png, bolt2.pngy bolt4.png. Así que ahora, copie estos archivos a /usr/share/pixmaps. Esta es la parte que requiere rootprivilegios, por lo que aquí es donde debe usar sudo:

sudo cp --no-preserve=ownership bolt1.png bolt2.png bolt4.png /usr/share/pixmaps

Los extrajo como su propio (no root) usuario, lo que le otorgó la propiedad sobre ellos. Pero rootdebería ser el propietario de los archivos /usr/share/pixmaps, razón por la cual debe usar el --no-preserve=ownershipargumento para cp. Dado que está copiando los archivos como rooten un directorio de su propiedad root, la copia que realice será propiedad de la rootforma adecuada.

Método 2: copiar y extraer el archivo como raíz

Puede que le resulte más sencillo hacer todo como root. Luego rootposeerá los archivos inicialmente, porque rootlos extraerá. La forma más fácil de hacer esto es colocar el archivo en la carpeta de destino (si aún no está allí).

Supongamos que el archivo se encuentra en Downloads:

cd ~/Downloads
sudo cp Jupiter_Radiance_theme_icons.tar.gz /usr/share/pixmaps

Tenga en cuenta que podría haber utilizado en mvlugar de cpmoverlo en lugar de copiarlo (siempre que las carpetas de origen y destino estén en la misma partición).

Ahora ve a la carpeta de destino y extrae el archivo:

cd /usr/share/pixmaps
sudo tar xzvf Jupiter_Radiance_theme_icons.tar.gz

Probablemente debería eliminar el archivo, porque no es bueno tener archivos extraños en /usr/share/pixmaps:

sudo rm Jupiter_Radiance_theme_icons.tar.gz

Método 3: simplemente extraer el archivo como raíz

Si lo desea, puede guardar el archivo donde lo haya descargado y simplemente extraerlo /usr/share/pixmapscomo root. (Gracias a adempewolff por sugerir que presente este método).

cd /usr/share/pixmaps
sudo tar xzvf ~/Downloads/Jupiter_Radiance_theme_icons.tar.gz

Esto funciona porque tar, de manera predeterminada, extraerá el archivo a la carpeta en la que se encuentre , en lugar de a la carpeta en la que se encuentra el archivo (si son diferentes).

Otros metodos

Puede realizar fácilmente una variación del Método 1 donde extrae los archivos gráficamente con el Administrador de archivos y luego los copia en la Terminal con sudo. Pero también puede hacer ambas cosas root, ejecutando Nautilus (el explorador de archivos) como root. Si hace esto, puede realizar cualquier tarea de administración de archivos con Nautilus, y cualquier programa que inicie desde Nautilus también se ejecutará como root. Debe tener cuidado con esto, ya que puede dañar su sistema al cometer un error (tal como puede hacerlo al ejecutar el comando incorrecto sudo), y porque sería particularmente malo olvidar que esta ventana de Nautilus se estaba ejecutando rootde manera normal. .

Para ejecutar programas gráficos como root, no lo use sudodirectamente. En cambio, use gksu. Entonces, para ejecutar Nautilus como root, puede presionar Alt+ F2y ejecutar:

gksu nautilus

Si hace esto, asegúrese de cerrar la ventana de Nautilus cuando haya terminado , y de usarla solo para tareas donde sabe que necesita estar root(como hacer cambios en el contenido de /usr/share/pixmaps).

Incluso podría hacer una variación del Método 2 o Método 3 donde no copia nada como root, sino que extrae el archivo de manera rootgráfica, ejecutando el Administrador de archivos como root. Para hacer esto, presione Alt+ F2y ejecute:

gksu file-roller

Sin embargo, a la mayoría de los usuarios les resulta más fácil extraer archivos al iniciar el Administrador de archivos desde Nautilus, porque luego se abre sabiendo qué archivo desea que use. (Puede pasar el nombre del archivo como parte del file-rollercomando ... pero en este punto comienza a perder el beneficio de la facilidad de uso de la GUI sobre la línea de comandos).

Recursos Sugeridos

Para obtener más información sobre cómo extraer archivos con tar, consulte man tar.

Si el archivo hubiera sido .tar.bz2, lo usarías en jlugar de z. Si lo hubiera sido .xz, lo usarías en su Jlugar. Para toda otra información, consulte esa página del manual.

Para obtener más información sobre cómo realizar tareas administrativas en Ubuntu, consulte la documentación desudoroot la comunidad sobre y , y también man sudoy man gksu(o man kdesudosi está utilizando Kubuntu).

La documentación de la comunidad en la compresión de archivos es la pena leer, para aprender más sobre los archivos y compresión de archivos. (Técnicamente, se trata de dos cosas relacionadas y superpuestas, pero diferentes. Por ejemplo: un .tararchivo es un archivo comprimido. Un .gzarchivo está comprimido).

La mayoría de las veces que lo use tarprobablemente no sea para crear y restaurar copias de seguridad, pero puede ser útil para eso, además, comprender cómo funciona mejora su comprensión de lo que tarpuede y no puede hacer y cómo usarlo. Si esto le interesa, consulte la documentación de la comunidad sobre cómo hacer una copia de seguridad de su sistematar .

Eliah Kagan
fuente
1
+1, pero ¿no puedes eliminar el cppaso? algo así cd /usr/share/pixmapsy entonces sudo tar xzvf ~/Downloads/Jupiter_Radiance_theme_icons.tar.gz?
adempewolff
Probaré la GUI, gracias. ACTUALIZACIÓN: ese método funcionó perfectamente, gracias
Jeff H
@adempewolff Eso es cierto, esto funcionará. Creo que la forma en que presenté es conceptualmente similar ... pero continuaré y agregaré de esta manera también, ya que ahorra un poco de tipeo y puede ser preferible.
Eliah Kagan
Estoy de acuerdo que es un tomate Tom- aw -toes distinción. ¡Solo soy flojo al escribir múltiples comandos!
adempewolff
1
@ B1KMusic Right, normalmente no es necesario z. Teóricamente podría haber archivos corruptos que se pueden extraer (quizás solo parcialmente) pero solo cuando dices tarqué tipo de archivo tratar de extraer, pero en la práctica creo que tienes razón: incluso los archivos corruptos probablemente no se beneficiarán de eso. En cuanto al rendimiento y la vbandera: explico lo que hace la vbandera, la gente no tiene que usarla. Los archivos de muchos archivos, esta situación en la que el rendimiento disminuiría, también producirían resultados de desplazamiento rápido y poco interesantes. Cada vez que alguien realmente quiera usar v, la desaceleración es poco probable.
Eliah Kagan