domingo, 2 de julio de 2017

Linux: Patch file

Per crear l'arxiu diff:

diff -Naur original_folder_file modified_folder_file > whatever.diff

Per aplicar-lo:

patch file_target < whatever.diff


miércoles, 19 de abril de 2017

Linux: Clonar una disc dur en un altre de diferent capacitat.

NOTA: En cap cas aquest article es cap GUIA, (repeteixo NO es una guia) per a ningú, simplement és el que JO vaig fer i ho anoto per tenir una referència en cas d'haver-ho de tornar a fer.

En el meu cas vaig clonar un disc dur de 120GB a un de capacitat de 250GB. Pel que he llegit no és possible clonar un de major capacitat que el disc dur destí (encara que la capacitat ocupada del disc dur font sigui inferior al disc dur destí).

1. El disc dur de 120GB tenia 6 particions i per a poder tenir les mateixes particions al disc dur destí vaig haver de configurar-lo com a GTP:

parted /dev/sdd_disc_dur_destí
mklabel gpt

2. Vaig provar de fer la clonació amb la comanda dd:

dd if=/dev/sdd_disc_dur_font of=/dev/sdd_disc_dur_desti bs=64K conv=noerror,sync

M'ho va clonar bé al cap d'uns 40 min però el disc de 250GB es va convertir en un disc de 120GB i no hi havia manera de recuperar l'espai perdut. Per provar de recuperar l'espai lliure em vaig carregar TOTES les particions del disc dur nou però no va servir de res. Així vaig executar GParted i només executar-lo em va demanar si volia recuperar l'espai que faltava i al dir que si es van recuperar tots.
NOTA: Ignoro si al fer això abans de carregar-me les particions hagués funcionat igual de bé.

3. Aquesta vegada vaig decidir clonar-ho amb el Clonezilla. Vaig segur el tutorial i Mode Expert amb l'opcio -k1 i aquesta vegada el disc dur tenia tota la capacitat però em va expandir PROPORCIONALMENT les 2 particions de Linux i Windows i jo només volia expandir la Linux.

4. Així, vaig tornar a fer-ho amb el Clonezilla i sense l'opció -k1 i el resultat va ser el mateix que fent dd. Aquesta vegada abans de carregar-me res, vaig executar GParted i vaig poder recuperar l'espai "unallocated", pel que es dedueix que al punt .2 amb dd hagués funcionat igual.

En resum que utilitzant dd o Clonezilla amb Gparted després de completar la clonació, em van solventar el tema.

martes, 28 de marzo de 2017

Linux: File association


Si fent el que la captura suggereix (apart de la pertinent associació 'tipus d'arxiu/app' que es fa amb el menú contextual) no conseguim que el tipus d'arxiu en qüestió sigui obert per defecte per la app desitjada podria ser que el sistema analitzi les capçaleres de l'arxiu i l'obri segons aquestes capçaleres, ignorant l'app que nosaltres volem. Per evitar que el sistema fagi aquest anàlisi:

Utilitzarem l'exemple dels arxius TPL que jo volia que s'obrissin com a arxius de text i no com a HTML.

1. Obrir l'arxiu /usr/share/mime/packages/freedesktop.org.xml

2. Buscar el tipus d'arxiu que diu que es TPL, Documento HTML i Documento XML

3. Borrar tot el contingut de "magic":

    <magic priority="50">
      <match value="&lt;!DOCTYPE HTML" type="string" offset="0:256"/>
      <match value="&lt;!doctype html" type="string" offset="0:256"/>
      <match value="&lt;HEAD" type="string" offset="0:256"/>
      <match value="&lt;head" type="string" offset="0:256"/>
      <match value="&lt;TITLE" type="string" offset="0:256"/>
      <match value="&lt;title" type="string" offset="0:256"/>
      <match value="&lt;HTML" type="string" offset="0:256"/>
      <match value="&lt;html" type="string" offset="0:256"/>
      <match value="&lt;SCRIPT" type="string" offset="0:256"/>
      <match value="&lt;script" type="string" offset="0:256"/>
      <match value="&lt;BODY" type="string" offset="0"/>
      <match value="&lt;body" type="string" offset="0"/>
      <match value="&lt;!--" type="string" offset="0"/>
      <match value="&lt;h1" type="string" offset="0"/>
      <match value="&lt;H1" type="string" offset="0"/>
      <match value="&lt;!doctype HTML" type="string" offset="0"/>
      <match value="&lt;!DOCTYPE html" type="string" offset="0"/>
    </magic>
   
    i
   
    <magic priority="40">
      <match value="&lt;?xml" type="string" offset="0"/>
      <match value="&lt;!--" type="string" offset="0"/>
    </magic>
   
4. Actualitzar-ho amb: sudo update-mime-database /usr/share/mime

5.  Ara el TPL no hauria de tenir cap associacio si no l'hi hem fet previament i ja podem assignar-li l'associació que vulguem.


sábado, 9 de julio de 2016

Linux: Buscar cadena de text dins els arxius d'un directori

xddxdd@debian:~$ grep -lir "cadena--text" /ruta/

miércoles, 8 de junio de 2016

Linux: Importar arxiu SQL a MySQL

xddxdd@debian:~$ mysql -u username -p database_name < file.sql

viernes, 3 de junio de 2016

Linux: Renombrar arxius a majúscules

Per renombrar tots els arxius i directoris del directori actual:

xddxdd@debian:~$ for f in * ; do mv -- "$f" "$(tr [:lower:] [:upper:] <<< "$f")" ; done

domingo, 23 de agosto de 2015