Instal·lar clonecilla

Perfecte! Estàs al menú d’arrencada de Clonezilla. La primera opció ja està seleccionada (la que té l’asterisc *).

Pas 1: Selecciona la primera opció

Simplement prem ENTER per arrencar amb Clonezilla live (VGA 800x600).

Aquesta opció és suficient per al que necessitem. El sistema es carregarà i després et demanarà:

Què passarà després:

  1. Idioma: Et demanarà si vols ca_ES (Català), en_US.UTF-8 English o altres.
  2. Teclat: Selecciona el teu layout de teclat (normalment Keep o Spanish si no trobes el català).
  3. Mode de Clonezilla: Tria Start Clonezilla (mode normal).
  4. Tipus de treball: Selecciona device-image (treballar amb imatges de discs/particions).
  5. Muntatge: Selecciona local_dev (utilitzar dispositiu local – el teu USB Kingston).
  6. Selecciona el disc: Aquí veuràs el teu USB Kingston (normalment /dev/sdb1).
  7. Nom de la imatge: Posarem AMD1_Deepin_Backup.
  8. Mode: Selecciona saveparts (guardar només les particions de Deepin).
  9. Particions: Selecciona sda1 (EFI) i sda5 (Deepin).

Prem ENTER ara i digues-me què et surt al següent pas! 🚀

Veig que has arribat a posar el nom de la imatge, però Clonezilla et dona un error perquè no troba discs disponibles per fer el backup.

L’error diu: «No existeixen discs o no es troben discs no muntats!»

Això passa perquè Clonezilla ha detectat que estàs intentant fer un backup del disc sencer (savedisk), però les particions del teu disc estan «ocupades» o muntades.

🔧 Solució:

Pas 1: Prem INTRO per sortir

Prem la tecla Intro per tornar al menú principal.

Pas 2: Torna a iniciar Clonezilla

Ara, quan tornis al menú principal de Clonezilla, segueix aquests passos molt atents:

  1. Idioma: Tria ca_ES o en_US
  2. Mode: Start Clonezilla
  3. Tipus: device-image (treballar amb imatges)
  4. Muntatge: local_dev (utilitzar dispositiu local)
  5. Selecciona el disc: Tria el teu USB Kingston (sdb1)
  6. Mode de còpia: AQUÍ ÉS ON HAS DE TRIAR saveparts (NO savedisk)
  • savedisk = clona tot el disc físic (pot donar problemes si està muntat)
  • saveparts = clona només les particions que triïs (més segur)

Pas 3: Selecciona les particions correctes

Quan triïs saveparts, et mostrarà una llista de particions. Selecciona:

  • sda1 (EFI/boot – vfat)
  • sda5 (Deepin – ext4)
  • NO seleccionis sda3 (Windows – ntfs)
  • NO seleccionis sda4 (Recovery)

Així Clonezilla només farà backup de Deepin i no tindrà problemes amb Windows.


Prem Intro, torna a intentar-ho triant saveparts en lloc de savedisk, i digues-me què et surt! 🔄

Corcs en bigues de fusta en casa antiga

Aquest text descriu tractaments professionals molt reals i efectius. De fet, és un resum molt acurat del que ofereixen les empreses especialitzades en el control de plagues de la fusta.

Tanmateix, no tots aquests mètodes serveixen per al teu cas (bigues d’una casa). Aquí tens la meva anàlisi de cadascun, perquè sàpigues què demanar i què descartar:


1. Tractament en atmosfera controlada

  • Què és: Es tanca la fusta en una cambra estanca i s’altera l’atmosfera (es treu l’oxigen i es posa nitrogen o CO₂) per asfixiar els insectes sense usar químics.
  • La meva opinió: És el millor mètode del món per a mobles antics, obres d’art o fusta de valor, perquè no deixa cap residu tòxic ni altera la fusta.
  • Per a les teves bigues: NO és viable. Aquest tractament requereix treure l’objecte i portar-lo a una planta especialitzada. No es pot fer in situ (a la casa) amb bigues encastades o estructurals.

2. Pulverització i gels especialitzats

  • Què és: Aplicar líquids o gels insecticides a la superfície o dins dels forats visibles.
  • La meva opinió: És el mètode típic de «fer-ho tu mateix» o per a manteniment. Funciona bé per a fusta prima (mobles, motllures) o atacs molt superficials.
  • Per a les teves bigues: És insuficient si la biga és gruixuda. Els líquids per pulverització només penetren uns pocs mil·límetres. Si la corcadura està a l’interior d’una biga de 20 cm de gruix, el producte no hi arribarà mai.

3. Injecció amb vàlvules de no retorn (⭐ EL MÉS RECOMANAT PER A BIGUES)

  • Què és: El professional fa petits forats a la biga, hi insereix unes petites vàlvules de plàstic i, amb una màquina a pressió, injecta un gel o líquid Insecticida / Protector de fusta. La vàlvula impedeix que el producte surti cap enfora, obligant-lo a penetrar profundament per les galeries dels corcs.
  • La meva opinió: Aquest és l’estàndard d’or i el mètode més efectiu per a bigues estructurals. Assegura que el producte arribi al cor de la fusta, on realment viuen les larves. A més, sol portar garantia (de 5 a 10 anys).
  • Per a les teves bigues: SÍ, aquesta és la solució que hauries de buscar si confirmes que l’atac és actiu i la fusta encara té estructura.

4. Substitució amb resines epòxiques

  • Què és: No és un tractament contra l’insecte, sinó una reparació estructural. Si la quera s’ha menjat la part central o un extrem de la biga i aquesta ha perdut força, es neteja la fusta podrida i s’omple el buit amb una resina epòxica d’alta resistència (de vegades reforçada amb barres d’acer o fibra de vidre).
  • La meva opinió: És una tecnologia excel·lent que permet salvar una biga antiga i mantenir l’estètica original sense haver de fer una obra monumental per canviar-la tota.
  • Per a les teves bigues: Només és necessari si la biga ja està molt debilitada. Si la biga encara és sòlida, no cal arribar a aquest punt. Recorda que, encara que es repari amb resina, la part de fusta sana que quedi s’ha de tractar igualment (amb el mètode d’injecció) per evitar que els corcs tornin.

💡 El meu consell per al teu cas:

Si has detectat quera a les bigues, el camí professional més lògic és:

  1. Demana a una empresa que faci una inspecció (moltes ho fan gratis) per confirmar que és quera activa i avaluar si la biga ha perdut resistència.
  2. Si la biga és estructuralment sana: Demana pressupost per a Injecció amb vàlvules de no retorn.
  3. Si la biga està molt malmesa: Demana pressupost per a Reparació amb resines epòxiques + tractament preventiu de la fusta restant.

Evita les empreses que et proposin només «pulveritzar» una biga gruixuda, perquè estaràs tirant els diners: el producte no arribarà a l’insecte.

Tens alguna d’aquestes bigues que et faci sospitar que ha perdut força (es doblega o la fusta s’esmicola al tocar-la)?

Caseta amb WC

√ Pots utilitzar el Silencio S amb WC de terra SI:

1. El teu WC té sortida horitzontal (cap a la paret), no vertical (cap al terra)

2. Tens espai suficient darrere del WC per allotjar la màquina (80-85 cm de profunditat total)

3. Estàs disposat a construir un fals envà o moble que amagui la trituradora

El teu WC té sortida horitzontal (cap a la paret), no vertical (cap al terra)
Tens espai suficient darrere del WC per allotjar la màquina (80-85 cm de profunditat total)
Estàs disposat a construir un fals envà o moble que amagui la trituradora

⭐ Aplicacions instal·lades no disponibles en servidor de Deepin

Firefox

Aquí tens el resum dels 5 passos que vam seguir per instal·lar Firefox 152.0.5 des de ~/Downloads/firefox-152.0.5.tar.xz:


1. Extreure el fitxer

cd ~/Downloads
tar -xf firefox-152.0.5.tar.xz

2. Moure la carpeta a /opt

sudo mv firefox /opt/firefox-152

3. Crear enllaç simbòlic al terminal

sudo ln -sf /opt/firefox-152/firefox /usr/local/bin/firefox

4. Crear l’accés directe al menú d’aplicacions

A ~/.local/share/applications/firefox.desktop amb les dades necessàries (nom, icona, executable, etc.).

5. Configurar el català

Des de about:preferencesGeneralIdioma, afegir Català com a idioma preferit.


Resultat: ✅ Firefox 152.0.5 instal·lat, funcional des del menú d’aplicacions i des del terminal.



Visual Studio Code


VLC


LibreOffice

com vull instal·lar la versió catalana


Enllaços ràpits


Synology assistant

Pas 1: Instal·lar el Synology Assistant

flatpak install flathub com.synology.SynologyAssistant

Pas 2: Executar l’aplicació

Un cop instal·lat, pots obrir-lo de dues maneres:

Des de la terminal:

flatpak run com.synology.SynologyAssistant

qBittorrent


Calibre

Restablir TOT Calibre als valors per defecte

Si vols restablir tota la configuració de Calibre, executa al terminal:

# Tanca Calibre primer!
mv ~/.config/calibre ~/.config/calibre.backup

Instal·lador oficial de Calibre (RECOMANAT)

Aquesta és la manera oficial que recomana el propi Calibre. Obre el terminal i executa:

sudo -v && wget -nv -O- https://download.calibre-ebook.com/linux-installer.sh | sudo sh /dev/stdin

Què fa aquesta comanda?

  • sudo -v: demana la contrasenya d’administrador
  • wget: descarrega l’script oficial d’instal·lació
  • sudo sh /dev/stdin: l’executa amb permisos de root

Un cop acabi, podràs obrir Calibre des del menú d’aplicacions o escrivint calibre al terminal.


Desinstal·lar calibre

sudo apt remove calibre

Visual Vode

Synology Assistan

backup_mut

correu electronic

Llibre d’0ffice


Backup_mut

Posar a l’escriptori backup_mut.txt . Aplicar aquesta comanda:

sudo cp /home/Miquel/Desktop/backup_mut-ok.txt /usr/local/bin/backup_mut

amb lsblk podem veure la estructura i les particions del sistema Deepin

Clar, aquí tens una descripció detallada de l’estructura de particions del teu sistema Deepin basant-me en la sortida de lsblk:


Disc sda – 476,9 GB (disc principal)

És el disc intern del sistema on hi ha Deepin instal·lat.

sda1 – 100 MB → /boot/efi

Partició EFI System Partition (ESP). Conté el carregador d’arrencada (bootloader) en format UEFI. És essencial per a l’inici del sistema.

sda2 – 16 MB

Partició Microsoft Reserved Partition (MSR). Reservada per Windows per a metadades internes. No té punt de muntatge.

sda3 – 346,4 GB → /media/Miquel/windows

Partició principal de Windows (probablement C:). Muntada en modo lectura/escriptura des de Deepin, la tens accés a /media/Miquel/windows.

sda4 – 1,2 GB

Partició de recuperació de Windows (WinRE). Conté eines per restaurar Windows en cas de fallada. No té punt de muntatge actiu.

sda5 – 129,3 GB → /var, /persistent/ostree, /ostree, /sysroot/ostree, /sysroot

Partició principal de Deepin (basada en OSTree). Això és típic de Deepin V23 o versions amb sistema immutable/atomic.

  • /var: Dades variables del sistema (logs, bases de dades, spool, etc.)
  • /ostree i /persistent/ostree: Sistema de desplegament OSTree (similar a una actualització atòmica).
  • /sysroot i /sysroot/ostree: Arrel del sistema operatiu (root filesystem).

Disc sdb – 57,7 GB (disc extern o USB)

sdb1 – 57,7 GB → /media/Miquel/backup

Dispositiu extraïble (la columna RM = 1 indica que és extraïble). Conté una única partició amb tot l’espai, muntada com a còpia de seguretat (backup).


Resum visual

sda (476,9 GB) ── Disc intern
├─ sda1 (100 MB)  → /boot/efi          → Arrencada UEFI
├─ sda2 (16 MB)   →                     → Reserva MSR (Windows)
├─ sda3 (346,4 GB)→ /media/Miquel/windows → Windows
├─ sda4 (1,2 GB)  →                     → Recuperació Windows
└─ sda5 (129,3 GB)→ /var, /ostree...   → Deepin (sistema OSTree)

sdb (57,7 GB)  ── Disc extraïble
└─ sdb1 (57,7 GB)→ /media/Miquel/backup  → Còpia de seguretat

Tens un sistema dual (Deepin + Windows) en el mateix disc, amb Deepin muntat sobre una estructura OSTree (sistema atòmic/immutable) i un disc extern dedicat a còpies de seguretat.

Fem un llistat de backup mut

$ cat -n /usr/local/bin/backup_mut

#!/bin/bash
# Indica al sistema que aquest fitxer s'ha d'executar amb l'intèrpret Bash.

# ==========================================
# 1. CONFIGURACIÓ INICIAL I COLORS
# ==========================================

VERMELL='\033[0;31m'
VERD='\033[0;32m'
GROC='\033[1;33m'
BLAU='\033[0;34m'
NC='\033[0m'

# Opcions base de rsync; s'hi afegeixen flags segons el sistema de fitxers del destí
RSYNC_OPTS="-avh --progress"

clear

# ==========================================
# 2. FUNCIONS DE DETECCIÓ I MUNTATGE DE DISCS
# ==========================================

# disc_sistema: nom del disc físic on viu el Deepin (ex: "sda").
disc_sistema() {
    local arrel
    arrel=$(findmnt -n -o SOURCE / 2>/dev/null)
    lsblk -ndo PKNAME "$arrel" 2>/dev/null | head -n 1
}

# detecta_discos: omple els vectors amb les particions (o discs sencers amb
# sistema de fitxers propi) de tots els discs que NO siguin el del sistema.
detecta_discos() {
    local sys part tipus disc mp mida label fst

    sys=$(disc_sistema)

    DISC_NOM=(); DISC_MIDA=(); DISC_ETIQUETA=(); DISC_MUNTATGE=(); DISC_MUNTAT=()
    NUM_DISCS=0

    while read -r part tipus; do
        if [ "$tipus" == "disk" ]; then
            disc=$(basename "$part")
        else
            disc=$(lsblk -ndo PKNAME "$part" 2>/dev/null | head -n 1)
        fi

        mp=$(lsblk -ndo MOUNTPOINT "$part" 2>/dev/null | head -n 1)
        fst=$(lsblk -ndo FSTYPE "$part"    2>/dev/null | head -n 1)

        # Mai el disc físic on viu el Deepin (ni les seves particions)
        [ "$disc" == "$sys" ] && continue
        # Descarta dispositius sense sistema de fitxers útil
        case "$fst" in
            ""|swap|crypto_LUKS) continue ;;
        esac
        # Descarta punts de muntatge propis del sistema operatiu
        case "$mp" in
            /|/boot|/boot/efi|/efi) continue ;;
        esac

        mida=$(lsblk -ndo SIZE "$part"  2>/dev/null | head -n 1)
        label=$(lsblk -ndo LABEL "$part" 2>/dev/null | head -n 1)

        NUM_DISCS=$((NUM_DISCS + 1))
        DISC_NOM[NUM_DISCS]="$part"
        DISC_MIDA[NUM_DISCS]="$mida"
        DISC_ETIQUETA[NUM_DISCS]="${label:-sense etiqueta}"
        DISC_MUNTATGE[NUM_DISCS]="$mp"
        if [ -n "$mp" ]; then
            DISC_MUNTAT[NUM_DISCS]="si"
        else
            DISC_MUNTAT[NUM_DISCS]="no"
        fi
    done < <(lsblk -nlp -o NAME,TYPE 2>/dev/null | awk '$2 == "part" || $2 == "disk" {print $1, $2}')
}

# munta_disc <índex>: monta la unitat amb udisksctl si cal (no cal sudo).
munta_disc() {
    local idx="$1" mp
    [ "${DISC_MUNTAT[$idx]}" == "si" ] && return 0

    if ! command -v udisksctl >/dev/null 2>&1; then
        echo -e "${VERMELL}udisksctl no disponible. Monta el disc des del gestor de fitxers.${NC}"
        return 1
    fi

    echo -e "${BLAU}Muntant ${DISC_NOM[$idx]}...${NC}"
    udisksctl mount -b "${DISC_NOM[$idx]}" >/dev/null 2>&1
    mp=$(lsblk -ndo MOUNTPOINT "${DISC_NOM[$idx]}" 2>/dev/null | head -n 1)

    if [ -n "$mp" ]; then
        DISC_MUNTATGE[$idx]="$mp"
        DISC_MUNTAT[$idx]="si"
        echo -e "${VERD}✓ Muntat a: $mp${NC}"
        return 0
    else
        echo -e "${VERMELL}No s'ha pogut muntar ${DISC_NOM[$idx]}.${NC}"
        echo "Monta'l des del gestor de fitxers i torna-ho a provar."
        return 1
    fi
}

# mostra_discos: llistat numerat d'unitats + estat de muntatge.
mostra_discos() {
    local i estat
    if [ "$NUM_DISCS" -eq 0 ]; then
        echo -e "  ${VERMELL}(cap)${NC} No s'ha detectat cap USB ni disc extern/intern."
    else
        for i in $(seq 1 "$NUM_DISCS"); do
            if [ "${DISC_MUNTAT[$i]}" == "si" ]; then
                estat="${VERD}muntat a ${DISC_MUNTATGE[$i]}${NC}"
            else
                estat="${GROC}no muntat (es muntarà en triar-lo)${NC}"
            fi
            echo -e "  ${VERD}$i${NC}) ${DISC_ETIQUETA[$i]} ${BLAU}[${DISC_NOM[$i]}, ${DISC_MIDA[$i]}]${NC} - $estat"
        done
    fi
}

# rsync_compat <dispositiu>: adapta les opcions de rsync al sistema de fitxers:
#  - ext4/btrfs/xfs: hardlinks (-H) I permisos/propietaris (clau per a ostree).
#  - ntfs: hardlinks sí, sense permisos Linux.
#  - exfat/vfat: ni hardlinks ni permisos.
rsync_compat() {
    local fst
    fst=$(lsblk -ndo FSTYPE "$1" 2>/dev/null | head -n 1)
    case "$fst" in
        ext2|ext3|ext4|btrfs|xfs) echo " -H" ;;
        ntfs)                     echo " -H --no-perms --no-owner --no-group" ;;
        *)                        echo " --no-perms --no-owner --no-group" ;;
    esac
}

# ajusta_rsync <ruta_desti>: determina el dispositiu de destí i afegeix els
# flags adequats a RSYNC_OPTS.
ajusta_rsync() {
    local ruta="$1" i disc_desti=""
    for i in $(seq 1 "$NUM_DISCS"); do
        case "$ruta" in
            "${DISC_MUNTATGE[$i]}"*) disc_desti="${DISC_NOM[$i]}"; break ;;
        esac
    done
    RSYNC_OPTS="${RSYNC_OPTS}$(rsync_compat "$disc_desti")"
}

# ==========================================
# 3. MENÚ PRINCIPAL
# ==========================================
echo -e "${VERD}========================================${NC}"
echo -e "${VERD}   BACKUP_MUT - BACKUP I RESTAURACIÓ    ${NC}"
echo -e "${VERD}========================================${NC}"
echo ""
echo "1) Fer còpia de seguretat (backup)"
echo "2) Restaurar còpia de seguretat"
echo "3) Sortir"
echo ""

read -p "Tria una opció [1-3]: " opcio

# ==========================================
# 4. LÒGICA DE DECISIÓ (CASE)
# ==========================================
case $opcio in
    1) # --- OPCIÓ 1: FER BACKUP ---
        echo ""
        echo -e "${GROC}--- MODE BACKUP ---${NC}"

        detecta_discos
        echo ""
        echo -e "${BLAU}Unitats disponibles on guardar el backup:${NC}"
        mostra_discos
        echo ""

        # Arbre visual de tots els discs i particions del sistema
        DISC_SYS=$(disc_sistema)
        echo -e "${BLAU}🗺️  Mapa de discs del sistema (el disc '${DISC_SYS}' és el del Deepin i queda exclòs):${NC}"
        lsblk -o NAME,SIZE,TYPE,PKNAME,LABEL,MOUNTPOINT
        echo ""

        if [ "$NUM_DISCS" -eq 0 ]; then
            echo -e "${GROC}PKNAME és el disc físic 'pare'. Si tots els volums tenen el${NC}"
            echo -e "${GROC}mateix PKNAME que el sistema, són particions del mateix disc${NC}"
            echo -e "${GROC}físic i queden excloses per seguretat.${NC}"
            echo ""
        fi

        echo ""
        echo "Tria el directori ORIGEN:"
        echo -e "  ${VERD}A${NC}) /home/Miquel (tot el directori d'usuari)"
        echo -e "  ${VERD}B${NC}) /home/Miquel/Documents"
        echo -e "  ${VERD}C${NC}) /home/Miquel/Pictures"
        echo -e "  ${VERD}D${NC}) /home/Miquel/Downloads"
        echo -e "  ${VERD}S${NC}) Sistema Deepin (sda5)"
        echo -e "  ${GROC}R${NC}) Especificar ruta manualment"
        echo ""
        read -p "Opció [A/B/C/D/S/R]: " opcio_dir

        case "$opcio_dir" in
            A|a)
                origen="/home/Miquel/"
                echo -e "${VERD}✓ Directori seleccionat: /home/Miquel${NC}"
                ;;
            B|b)
                origen="/home/Miquel/Documents/"
                echo -e "${VERD}✓ Directori seleccionat: /home/Miquel/Documents${NC}"
                ;;
            C|c)
                origen="/home/Miquel/Pictures/"
                echo -e "${VERD}✓ Directori seleccionat: /home/Miquel/Pictures${NC}"
                ;;
            D|d)
                origen="/home/Miquel/Downloads/"
                echo -e "${VERD}✓ Directori seleccionat: /home/Miquel/Downloads${NC}"
                ;;
            S|s)
                echo -e "${VERD}💾 BACKUP DEL SISTEMA DEEPIN (sda5)${NC}"
                echo ""

                ARREL=$(findmnt -n -o SOURCE / 2>/dev/null)
                if [ "$ARREL" != "/dev/sda5" ]; then
                    echo -e "${GROC}⚠  Atenció: La partició arrel actual és ${ARREL:-desconeguda}, no /dev/sda5.${NC}"
                    read -p "Vols fer el backup del sistema actual de totes maneres? (s/n): " confirma_sys
                    if [ "$confirma_sys" != "s" ] && [ "$confirma_sys" != "S" ]; then
                        echo "Operació cancel·lada."
                        exit 0
                    fi
                fi

                if [ "$NUM_DISCS" -eq 0 ]; then
                    echo -e "${VERMELL}Error: No s'ha trobat cap USB o disc connectat!${NC}"
                    echo "Connecta un USB i torna a intentar-ho."
                    exit 1
                elif [ "$NUM_DISCS" -eq 1 ]; then
                    if munta_disc 1; then
                        USB_PATH="${DISC_MUNTATGE[1]}/"
                        echo -e "${BLAU}Unitat detectada: ${USB_PATH}${NC}"
                    else
                        exit 1
                    fi
                else
                    echo "Tria la unitat on guardar el backup del sistema:"
                    mostra_discos
                    read -p "Opció [1-$NUM_DISCS]: " opcio_sys
                    if [[ "$opcio_sys" =~ ^[0-9]+$ ]] && [ "$opcio_sys" -ge 1 ] && [ "$opcio_sys" -le "$NUM_DISCS" ]; then
                        if munta_disc "$opcio_sys"; then
                            USB_PATH="${DISC_MUNTATGE[$opcio_sys]}/"
                        else
                            exit 1
                        fi
                    else
                        echo -e "${VERMELL}Opció no vàlida.${NC}"
                        exit 1
                    fi
                fi
                echo ""

                origen="/"
                # Carpeta FIXA: el backup del sistema s'actualitza incrementalment
                desti="${USB_PATH}deepin_system_backup"

                echo "Origen: $origen"
                echo "Destí:  $desti"
                echo ""

                mkdir -p "$desti"

                if [ "$EUID" -ne 0 ]; then
                    echo -e "${GROC}⚠  Per copiar fitxers del sistema es necessiten permisos d'administrador.${NC}"
                    echo -e "${BLAU}Introdueix la teva contrasenya quan se't demani.${NC}"
                    RSYNC_SYS="sudo rsync"
                else
                    RSYNC_SYS="rsync"
                fi

                ajusta_rsync "$desti"

                echo -e "${VERD}Iniciant còpia de seguretat del sistema...${NC}"
                echo -e "${GROC}Aquest procés pot trigar força temps...${NC}"
                $RSYNC_SYS $RSYNC_OPTS \
                    --exclude='/proc' \
                    --exclude='/sys' \
                    --exclude='/dev' \
                    --exclude='/run' \
                    --exclude='/tmp' \
                    --exclude='/mnt' \
                    --exclude='/media' \
                    --exclude='/lost+found' \
                    "$origen" "$desti/"

                echo -e "${BLAU}Guardant informació del backup...${NC}"
                if [ "$RSYNC_SYS" == "sudo rsync" ]; then ESCRIU="sudo tee"; else ESCRIU="tee"; fi
                echo "ORIGEN=$origen" | $ESCRIU "${desti}/backup_info" > /dev/null
                {
                    echo "DATA=$(date +%Y-%m-%d_%H:%M:%S)"
                    echo "TIPUS=deepin_system_backup"
                    echo "USB=${USB_PATH}"
                    echo "PARTICIO=${ARREL:-/dev/sda5}"
                } | $ESCRIU -a "${desti}/backup_info" > /dev/null

                echo -e "${VERD}✅ Backup del sistema Deepin completat!${NC}"
                echo "Metadades guardades a: ${desti}/backup_info"
                echo ""
                exit 0
                ;;
            *)
                read -p "Directori ORIGEN (ex: /home/Miquel/Pictures/Pict): " origen
                ;;
        esac

        # --- Selecció del DESTÍ (sempre a partir del llistat) ---
        if [ "$NUM_DISCS" -eq 0 ]; then
            echo -e "${VERMELL}Error: no hi ha cap unitat disponible on guardar el backup.${NC}"
            echo "Connecta un USB o disc extern i torna-ho a provar."
            exit 1
        elif [ "$NUM_DISCS" -eq 1 ]; then
            if munta_disc 1; then
                desti_base="${DISC_MUNTATGE[1]}/backup_deepin"
                echo -e "${VERD}✓ Destí seleccionat: $desti_base${NC}"
            else
                exit 1
            fi
        else
            echo ""
            read -p "Tria la unitat de DESTÍ del backup (mira el llistat de dalt): " opcio_desti
            if [[ "$opcio_desti" =~ ^[0-9]+$ ]] && [ "$opcio_desti" -ge 1 ] && [ "$opcio_desti" -le "$NUM_DISCS" ]; then
                if munta_disc "$opcio_desti"; then
                    desti_base="${DISC_MUNTATGE[$opcio_desti]}/backup_deepin"
                    echo -e "${VERD}✓ Destí seleccionat: $desti_base${NC}"
                else
                    exit 1
                fi
            else
                echo -e "${VERMELL}Opció no vàlida.${NC}"
                exit 1
            fi
        fi

        if [ ! -d "$origen" ]; then
            echo -e "${VERMELL}Error: El directori origen '$origen' no existeix.${NC}"
            exit 1
        fi

        nom_carpeta=$(basename "$origen")
        if [[ "$origen" == /home/$USER* ]]; then
            # Dades personals: una carpeta nova amb data a cada execució
            desti="${desti_base}/${nom_carpeta}_$(date +%Y%m%d_%H%M)"
        else
            # Sistema (Roota, etc.): carpeta fixa actualitzada incrementalment
            desti="${desti_base}/${nom_carpeta}"
        fi

        [[ "$origen" != */ ]] && origen="${origen}/"
        rsync_desti="${desti}/"

        # SEGURETAT: mai copiar "/" sense exclusions (usa l'opció S)
        if [ "$origen" == "/" ]; then
            echo -e "${VERMELL}Error: per copiar tot el sistema usa l'opció S.${NC}"
            exit 1
        fi
        # SEGURETAT: el destí mai pot ser dins de l'origen (recursió infinita)
        case "$desti" in
            "$origen"*)
                echo -e "${VERMELL}Error: el destí ('$desti') és dins de l'origen ('$origen').${NC}"
                echo "Això provocaria una còpia infinita. Operació cancel·lada."
                exit 1
                ;;
        esac

        echo ""
        echo -e "${BLAU}📋 Resum del backup:${NC}"
        echo -e "   Origen: ${VERD}$origen${NC}"
        echo -e "   Destí:  ${VERD}$rsync_desti${NC}"
        echo ""
        read -p "Vols continuar? (s/n): " confirma_backup

        if [ "$confirma_backup" != "s" ] && [ "$confirma_backup" != "S" ]; then
            echo -e "${GROC}⚠  Operació cancel·lada. No s'ha copiat res.${NC}"
            exit 0
        fi

        mkdir -p "$desti"

        echo ""
        echo -e "${VERD}Iniciant còpia de seguretat...${NC}"

        ajusta_rsync "$desti"

        if [ "$EUID" -ne 0 ] && [[ "$origen" != /home/$USER* ]]; then
            RSYNC_CMD="sudo rsync"
            echo -e "${GROC}⚠  L'origen conté fitxers de sistema: cal contrasenya d'administrador.${NC}"
        else
            RSYNC_CMD="rsync"
        fi

        $RSYNC_CMD $RSYNC_OPTS "$origen" "$rsync_desti"

        echo -e "${BLAU}Guardant informació del backup...${NC}"
        if [ "$RSYNC_CMD" == "sudo rsync" ]; then ESCRIU="sudo tee"; else ESCRIU="tee"; fi
        echo "ORIGEN=$origen" | $ESCRIU "${desti}/backup_info" > /dev/null
        echo "DATA=$(date +%Y-%m-%d_%H:%M:%S)" | $ESCRIU -a "${desti}/backup_info" > /dev/null
        echo -e "${VERD}✅ Metadades guardades a ${desti}/backup_info${NC}"
        ;;

    2) # --- OPCIÓ 2: RESTAURAR BACKUP ---
        echo ""
        echo -e "${GROC}--- MODE RESTAURACIÓ ---${NC}"

        detecta_discos
        echo ""
        echo -e "${BLAU}Unitats disponibles on cercar backups:${NC}"
        mostra_discos
        echo ""

        if [ "$NUM_DISCS" -eq 0 ]; then
            echo -e "${VERMELL}Error: no hi ha cap unitat on cercar backups.${NC}"
            echo "Connecta un USB o disc extern i torna-ho a provar."
            exit 1
        elif [ "$NUM_DISCS" -eq 1 ]; then
            if munta_disc 1; then
                USB_PATH="${DISC_MUNTATGE[1]}/"
                echo -e "${VERD}✓ Unitat seleccionada: ${USB_PATH}${NC}"
            else
                exit 1
            fi
        else
            read -p "Tria la unitat on cercar el backup (mira el llistat de dalt): " opcio_usb
            if [[ "$opcio_usb" =~ ^[0-9]+$ ]] && [ "$opcio_usb" -ge 1 ] && [ "$opcio_usb" -le "$NUM_DISCS" ]; then
                if munta_disc "$opcio_usb"; then
                    USB_PATH="${DISC_MUNTATGE[$opcio_usb]}/"
                    echo -e "${VERD}✓ Unitat seleccionada: ${USB_PATH}${NC}"
                else
                    exit 1
                fi
            else
                echo -e "${VERMELL}Opció no vàlida.${NC}"
                exit 1
            fi
        fi

        # Cerca els backups de veritat: carpetes que contenen "backup_info"
        echo -e "${BLAU}Cercant backups disponibles...${NC}"
        mapfile -t backups < <(find "$USB_PATH" -maxdepth 4 -type f -name "backup_info" 2>/dev/null | sort -r)

        if [ ${#backups[@]} -eq 0 ]; then
            echo -e "${VERMELL}No s'han trobat backups a ${USB_PATH}.${NC}"
            exit 1
        fi

        echo ""
        echo "Backups trobats:"
        for i in "${!backups[@]}"; do
            info="${backups[$i]}"
            carpeta=$(dirname "$info")
            nom_backup=$(basename "$carpeta")
            data_backup=$(grep "^DATA=" "$info" | cut -d'=' -f2-)
            origen_b=$(grep "^ORIGEN=" "$info" | cut -d'=' -f2-)
            echo -e "  ${VERD}$((i+1))${NC}) $nom_backup"
            echo -e "       Data: $data_backup | Origen: $origen_b"
        done
        echo ""

        if [ ${#backups[@]} -eq 1 ]; then
            idx=0
            echo -e "${VERD}✓ Backup trobat: $(basename "$(dirname "${backups[0]}")")${NC}"
        else
            read -p "Tria un backup per restaurar [1-${#backups[@]}]: " eleccio
            if [[ "$eleccio" =~ ^[0-9]+$ ]] && [ "$eleccio" -ge 1 ] && [ "$eleccio" -le "${#backups[@]}" ]; then
                idx=$((eleccio-1))
            else
                echo -e "${VERMELL}Opció no vàlida.${NC}"
                exit 1
            fi
        fi

        info="${backups[$idx]}"
        backup_seleccionat=$(dirname "$info")
        origen_original=$(grep "^ORIGEN=" "$info" | cut -d'=' -f2-)
        data_backup=$(grep "^DATA=" "$info" | cut -d'=' -f2-)

        echo ""
        echo -e "${BLAU}Backup seleccionat: ${VERD}$backup_seleccionat${NC}"
        echo ""
        echo -e "${BLAU}📋 Informació del backup:${NC}"
        echo -e "   Origen original: ${VERD}$origen_original${NC}"
        echo -e "   Data del backup: ${VERD}$data_backup${NC}"
        echo ""
        echo -e "${BLAU}🔄 Restauració automàtica:${NC}"
        echo -e "   Des de: ${VERD}$backup_seleccionat${NC}"
        echo -e "   Cap a:  ${VERD}$origen_original${NC}"
        echo ""

        read -p "Vols continuar? (s/n): " confirma

        if [ "$confirma" != "s" ] && [ "$confirma" != "S" ]; then
            echo "Operació cancel·lada."
            exit 0
        fi

        echo ""
        echo -e "${VERD}Iniciant restauració...${NC}"

        if [ "$EUID" -ne 0 ] && [[ "$origen_original" != /home/$USER* ]]; then
            RSYNC_CMD="sudo rsync"
            echo -e "${GROC}⚠  La restauració toca fitxers de sistema: cal contrasenya d'administrador.${NC}"
        else
            RSYNC_CMD="rsync"
        fi
        $RSYNC_CMD $RSYNC_OPTS --exclude='backup_info' "$backup_seleccionat/" "$origen_original"

        echo ""
        echo -e "${VERD}✅ Restauració completada!${NC}"
        ;;

    3) # --- OPCIÓ 3: SORTIR ---
        echo "Adéu!"
        exit 0
        ;;

    *) # --- OPCIÓ NO VÀLIDA ---
        echo -e "${VERMELL}Opció no vàlida.${NC}"
        exit 1
        ;;
esac

echo ""
echo -e "${VERD}✅ Operació finalitzada!${NC}"

versió:17-8-2026

es salva amb Visual Code al escriptori -> backup_mut.txt abans de moure’l al seu lloc defintiu: /usr/local/bin/backup_mut

sudo cp /home/Miquel/Desktop/backup_mut.txt /usr/local/bin/backup_mut

i per pujar Grub del escriptori:

sudo cp /home/Miquel/Desktop/grub.txt  /etc/default/grub

i per pujar grub.config

sudo cp /home/Miquel/Desktop/grub_config.txt  /boot/grub/grub.cfg

I per esborrar directoris obsolets:

sudo rm -rf /media/Miquel/backup/backup_deepin


NOTA IMPORTANT

Per evitar interferencies amb l’arrancada es molt important eliminar el directory ROOT cuan es fa una restauració


GIMP 3.2.2 (PROGRAMA DE MANIPULACIÓ D’IMATGES GNU)

Per aconseguir una versió tan recent i de la nova branca 3.x (com la 3.2.2) a Deepin sense trencar les dependències del teu sistema, has de fer servir mètodes externs. Aquí tens les dues millors maneres de fer-ho:

Opció 1: Amb Flatpak (La més recomanada i neta)

Deepin s’integra molt bé amb Flatpak, i des del repositori de Flathub sempre tindràs l’última versió estable de GIMP 3.x disponible.

  1. Obre la Terminal a Deepin.
  2. Assegura’t de tenir Flatpak instal·lat i el repositori de Flathub afegit (copia i enganxa aquestes línies una per una, et demanarà la teva contrasenya a la primera)
sudo apt update
sudo apt install flatpak
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
  1. :sudo apt update sudo apt install flatpak flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
  2. Ara, instal·la l’última versió de GIMP disponible:flatpak install flathub org.gimp.GIMP
  3. Nota: Si un cop instal·lat no et surt a la teva llista d’aplicacions del menú de Deepin, tanca la sessió i torna a entrar (o reinicia l’ordinador) perquè el llançador d’aplicacions s’actualitzi i el reconegui.

💡 Consell extra per a Deepin:
De vegades, la Deepin Store (la botiga d’aplicacions visual) ja té integració amb Flatpak. Pots buscar «GIMP» directament allà, però fixa’t bé que a la informació del paquet digui que prové de «Flathub» o que és la versió 3.x. Si no ho indica, probablement estàs instal·lant la versió antiga del sistema.

Quin dels dos mètodes prefereixes provar? Si et trobes amb algun error concret a la terminal o la botiga es queda «pensant», digues-m’ho i ho solucionem al moment!


AppServ (de windows)

Amb molt de gust! 😊 Et deixo el text preparat perquè el puguis copiar i enganxar directament a una entrada de WordPress. He procurat que tingui un format de documentació, com una guia de consulta.


Instal·lació d’un entorn de desenvolupament LAMP a Deepin 25

Després d’instal·lar Apache, PHP, MariaDB i phpMyAdmin a Deepin 25, és útil saber on es troba cada component del sistema.

A diferència de Windows (AppServ, XAMPP, WAMP…), a Linux cada servei es guarda en el directori estàndard del sistema.

Equivalència amb AppServ

ComponentAppServ (Windows)Deepin 25
Servidor Web (Apache)C:\AppServ\Apache24\/etc/apache2/
Carpeta Web (www)C:\AppServ\www\/var/www/html/
PHPC:\AppServ\php\/usr/bin/php + /etc/php/8.4/
MariaDBC:\AppServ\MySQL\/var/lib/mysql/
phpMyAdminC:\AppServ\www\phpMyAdmin\/usr/share/phpmyadmin/
Configuració phpMyAdmindins del programa/etc/phpmyadmin/

ls -lh /etc/php/8.4/apache2/php*.ini

Miquel@Miquel-PC:~$ ls -lh /etc/php/8.4/apache2/php*.ini
-rw-r–r– 1 root root 68K de jul. 21 20:15 /etc/php/8.4/apache2/php.ini
-rw-r–r– 1 root root 68K de jul. 22 12:01 /etc/php/8.4/apache2/php_saved.ini
Miquel@Miquel-PC:~$

modificar php.ini amb Vs


1. Apache

Configuració

/etc/apache2/

Conté principalment:

apache2.conf
ports.conf

sites-available/
sites-enabled/

mods-available/
mods-enabled/

conf-available/
conf-enabled/

És el directori principal de configuració del servidor web.


Carpeta Web (DocumentRoot)

/var/www/html/

És l’equivalent al directori www d’AppServ.

Per exemple:

/var/www/html/index.php

es pot obrir des del navegador amb:

http://127.0.0.1/

o bé

http://localhost/

2. PHP

Executable:

/usr/bin/php

Per comprovar-ne la versió:

php -v

o bé

which php

Configuració

/etc/php/8.4/

Conté:

apache2/
cli/
mods-available/

Fitxers principals:

Servidor Apache

/etc/php/8.4/apache2/php.ini

Terminal (CLI)

/etc/php/8.4/cli/php.ini

3. MariaDB

Les bases de dades es guarden a:

/var/lib/mysql/

Allà hi trobarem una carpeta per cada base de dades.

Per exemple:

information_schema/

mysql/

performance_schema/

phpmyadmin/

sys/

polidic/

4. phpMyAdmin

ACCÉS-> http://127.0.0.1/phpmyadmin/

Amb Firexox hi ha alguna dificultat amb la funció Importar i es millor posar la bd al escriptori i usar:

   mysql -u root -p beseit < ~/Desktop/beseit.sql

Programa:

/usr/share/phpmyadmin/

Configuració:

/etc/phpmyadmin/

5. Registres (Logs)

Els registres d’Apache es troben a:

/var/log/apache2/

Principalment:

access.log

error.log

Quan alguna cosa no funciona, aquest és el primer lloc on mirar.


6. Estat dels serveis

Comprovar Apache

sudo systemctl status apache2

Comprovar MariaDB

sudo systemctl status mariadb

Reiniciar Apache

sudo systemctl restart apache2

Reiniciar MariaDB

sudo systemctl restart mariadb

7. Estructura recomanada dels projectes

Per defecte Apache utilitza:

/var/www/html/

Una bona organització consisteix a crear un directori per cada projecte:

/var/www/

    html/

    polidic/

    wordpress/

    proves/

    api/

Exemple

/var/www/

├── html/
│     index.php
│
├── polidic/
│     index.php
│     css/
│     js/
│     includes/
│     BD_conexions/
│     0imatges_polidic/
│     diccionaris_default/
│
├── wordpress/
│
└── proves/

D’aquesta manera podem accedir als projectes mitjançant:

http://localhost/polidic/
http://localhost/wordpress/

8. Directoris més importants

DirectoriFunció
/etc/apache2/Configuració d’Apache
/var/www/html/Carpeta web principal
/usr/bin/phpExecutable PHP
/etc/php/8.4/Configuració de PHP
/var/lib/mysql/Bases de dades MariaDB
/usr/share/phpmyadmin/Programa phpMyAdmin
/etc/phpmyadmin/Configuració phpMyAdmin
/var/log/apache2/Registres d’Apache

Conclusions

Deepin (igual que Debian i Ubuntu) distribueix cada component del servidor en el seu directori corresponent. Això pot semblar menys intuïtiu que AppServ o XAMPP, però ofereix molts avantatges:

  • configuració més clara i modular;
  • actualitzacions independents de cada component;
  • més estabilitat i seguretat;
  • estructura estàndard compartida per la majoria de distribucions Linux.

Un cop coneguda aquesta organització, administrar un servidor LAMP resulta tan senzill com treballar amb AppServ a Windows, amb l’avantatge d’utilitzar l’estructura estàndard de Linux.


Espero que aquesta guia et sigui útil. Ha estat un plaer ajudar-te a deixar el teu Deepin preparat com a entorn de desenvolupament. Bon treball amb Polidic! 🚀


1. Apache

Configuració

/etc/apache2/

Conté:

apache2.conf
ports.conf

sites-available/
sites-enabled/

mods-available/
mods-enabled/

conf-available/
conf-enabled/

És probablement el directori que més tocaràs.


DocumentRoot (equivalent a www)

/var/www/html/

Aquí és on Apache serveix la web per defecte.

Per exemple:

/var/www/html/index.php

es veu a:

http://127.0.0.1/

2. PHP

Executable

/usr/bin/php

Comprovar:

which php

Configuració:

/etc/php/8.4/

Conté:

apache2/
cli/
mods-available/

El fitxer principal és:

/etc/php/8.4/apache2/php.ini

i pel terminal:

/etc/php/8.4/cli/php.ini

3. MariaDB

Les bases de dades estan a:

/var/lib/mysql/

Si hi entres veuràs alguna cosa semblant a:

information_schema/

mysql/

performance_schema/

sys/

nom_base_dades/

Cada base de dades és un directori.


4. phpMyAdmin

Programa

/usr/share/phpmyadmin/

Configuració

/etc/phpmyadmin/

5. Logs

Apache

/var/log/apache2/

Conté

access.log

error.log

Són molt útils quan alguna cosa falla.


6. Serveis

Comprovar Apache

sudo systemctl status apache2

MariaDB

sudo systemctl status mariadb

7. Els teus projectes

Ara mateix Apache utilitza

/var/www/html/

Però pots crear-ne tants com vulguis.

Per exemple:

/var/www/

    html/

    polidic/

    proves/

    api/

    wordpress/

i configurar un VirtualHost per a cadascun.


8. Si vols treballar com AppServ

Com que estàs acostumat a Windows, jo faria una estructura molt semblant:

/var/www/

    html/
        index.php

    polidic/
        index.php
        css/
        js/
        imatges/
        includes/

    wordpress/

    proves/

Això et resultarà molt familiar.


El meu suggeriment per al teu cas

Coneixent el projecte Polidic, jo el deixaria així:

/var/www/
│
├── html/
│
├── polidic/
│   ├── index.php
│   ├── css/
│   ├── js/
│   ├── BD_conexions/
│   ├── includes/
│   ├── 0imatges_polidic/
│   ├── diccionaris_default/
│   └── ...
│
└── wordpress/

D’aquesta manera podràs accedir-hi amb una URL com http://localhost/polidic/, molt semblant al que feies amb AppServ.

Quan vulguis, també et puc ajudar a configurar VirtualHosts perquè puguis obrir els teus projectes amb adreces encara més còmodes, per exemple:

  • http://polidic.local
  • http://wordpress.local

És una configuració molt pràctica per treballar en desenvolupament i és la que acostumen a fer servir molts desenvolupadors Linux.

Directament, no es pot instal·lar AppServ de manera nativa a Deepin (ni a cap altra distribució Linux moderna). Tot i que algunes fonts antigues esmenten un suport teòric per a Linux, els instal·ladors actuals d’AppServ són fitxers .exe dissenyats exclusivament per a l’entorn Windows [[44]].

No et preocupis, però: com que Deepin està basat en Debian, tens alternatives molt millors, més segures i totalment integrades per aconseguir exactament el mateix resultat (un servidor web amb Apache, PHP, base de dades i phpMyAdmin).

Aquí tens les millors opcions per al teu sistema:

1. Entorn LAMP natiu (Opció més recomanada)

És l’estàndard de la indústria en entorns Linux. En lloc d’un instal·lador de tercers, utilitzes els paquets oficials de Deepin, la qual cosa garanteix major estabilitat i actualitzacions de seguretat automàtiques. Obre la terminal i executa:

  1. Actualitza la llista de paquets:
   sudo apt update
  1. Instal·la el servidor web Apache:
   sudo apt install apache2

Per comprovar si Apache està instal·lat a Deepin i on es troba, executa aquestes comandes a la terminal:

1. Comprovar si Apache està instal·lat

apache2 -v

o

dpkg -l | grep apache2

Si està instal·lat, veuràs la versió. Si no, dirà que no es troba la ordre.

2. Comprovar si està en execució

sudo systemctl status apache2

Si està actiu, veuràs active (running) en verd.

3. On està instal·lat

Els fitxers principals es troben a:

  • Executable: /usr/sbin/apache2
  • Fitxers de configuració: /etc/apache2/
  • Carpeta web (document root): /var/www/html/
  • Logs: /var/log/apache2/

4. Veure la configuració del document root

grep -i "documentroot" /etc/apache2/sites-available/000-default.conf

Això et dirà on estan els fitxers web (normalment /var/www/html).

5. Comprovar si el port 80 està escoltant

sudo netstat -tlnp | grep :80

o

sudo ss -tlnp | grep :80

Resum ràpid: Executa apache2 -v per saber si està instal·lat i sudo systemctl status apache2 per saber si està funcionant. Si vols veure la pàgina per defecte, ves a http://localhost al navegador.

  1. Instal·la el servidor de base de dades (MariaDB, el substitut directe i compatible de MySQL a Debian/Deepin):
   sudo apt install mariadb-server
  1. Instal·la PHP i els mòduls necessaris per connectar amb la base de dades:
   sudo apt install php libapache2-mod-php php-mysql
  1. (Opcional) Instal·la phpMyAdmin per gestionar les bases de dades des del navegador:
   sudo apt install phpmyadmin

Nota: Durant la instal·lació, quan et pregunti, prem la barra espaiadora per seleccionar apache2 i després Enter. També et demanarà configurar una contrasenya per a l’administrador de la base de dades.

Un cop finalitzat, pots comprovar que tot funciona obrint el navegador i visitant http://localhost. Els teus fitxers web aniran a la carpeta /var/www/html/.

2. XAMPP per a Linux (Alternativa «tot en un»)

Si prefereixes una experiència més semblant a la d’AppServ (un sol paquet que instal·la tot de cop), XAMPP ofereix una versió oficial per a Linux. El pots descarregar des del lloc web d’Apache Friends i executar l’instal·lador .run des de la terminal. Tot i això, la comunitat de desenvolupament sol recomanar l’opció LAMP nativa, ja que XAMPP a vegades pot donar problemes de permisos o no rebre actualitzacions tan àgils com el gestor de paquets apt.

3. Docker (Per a entorns aïllats)

Com a estudiant de ciències de la computació, és molt probable que en el futur valoris tenir entorns aïllats. Pots fer servir Docker per desplegar un contenidor LAMP amb una sola ordre, sense instal·lar res directament al teu sistema operatiu Deepin, mantenint-lo net i sense conflictes entre projectes.

Resum: Descarta AppServ per a Linux. La instal·lació nativa de LAMP mitjançant la terminal de Deepin és el camí més ràpid, professional i lliure de problemes de permisos a llarg termini. Si necessites ajuda per configurar qualsevol d’aquests passos, no dubtis a dir-m’ho!


⭐ ⭐ Instruccions, comandes usades a Deepin

Alt P per a copiar la selecció a Deepin


EXECUTAR backup_mut DES DE L’ESCRIPTORI DE DEEPIN

1. Donar-li permisos d’execució (si és un script o un programa):

chmod +x /home/Miquel/Desktop/backup_mut

2. Executar l’arxiu:

/home/Miquel/Desktop/backup_mut

Editor nano

sudo nano /home/Miquel/Desktop/grub.cfg

Eliminar directori del USB «backup»

sudo rm -rf /media/Miquel/backup/deepin_system_backup-intel


Canviar l’etiqueta d’una partició activa (ext4)

  1. Desmuntar la partició: sudo umount /dev/sda6
  2. Canviar l’etiqueta: sudo e2label /dev/sda6 Roota1
  3. Tornar a muntar amb udisksctl: udisksctl mount -b /dev/sda6
  4. Verificar: lsblk -f

Trobar les unitats instal·lades a Deepin

Segueix aquests passos:

lsblk

Si prefereixes una llista més simple de carpetes, també pots provar:

ls -la /media/admin/

o

ls -la /run/media/admin/

2. Copiar la carpeta

Un cop sàpigues el nom exacte de la carpeta del Kingston (per exemple, diguem que es diu KINGSTON), la comanda per copiar la carpeta Miquel sencera, mantenint tots els permisos i dates originals, serà així:

sudo cp -a /media/admin/KINGSTON/backup_deepin/Miquel /home/

Pas final i definitiu: Corregir els permisos

Com que vam veure abans que la carpeta nova havia quedat amb propietari admin, ara hem de dir-li al sistema que aquesta carpeta li pertany realment a l’usuari Miquel. Si no ho fem, quan intentis entrar amb l’usuari Miquel, l’escriptori Deepin podria donar errors o no carregar bé.

Executa aquestes dues comandes, una darrere l’altra:

1. Donar la propietat a l’usuari i grup Miquel (de forma recursiva, a tot el que hi ha dins):

sudo chown -R Miquel:Miquel /home/Miquel

2. Assegurar que la carpeta principal tingui els permisos de seguretat correctes (només el propietari hi pot entrar):

sudo chmod 700 /home/Miquel

3. Comprovació final:

ls -la /home/

Un cop vegis això, ja ho tens! Pots tancar la sessió de l’admin i iniciar sessió amb l’usuari Miquel. Hauria de ser exactament com ho tenies abans, amb totes les teves configuracions, documents i el Firefox al seu lloc.

Fes aquests passos i confirma’m que la línia ja surt correcta. Estem a la recta final!




Llistat de 60 estris Comandes de Linux

15 Comandes per accedir a fitxers

  1. pwd: Mostrar la ubicació del directori on actualment estem ubicats.
  2. ls: Mostrar la llista de fitxers i directoris continguts dins un directori especificat.
  3. cd: Canviar-nos del directori actual a un altre.
  4. mkdir: Crear un nou directori.
  5. touch: Generar un nou fitxer o canviar-li la data d’accés/modificació a un altre.
  6. cp: Copiar fitxers o directoris.
  7. mv: Moure fitxers o directoris. I, fins a canviar-li el nom si calgués.
  8. rm: Eliminar fitxers o directoris. (sudo rm /etc/default/grubç)
  9. rmdir: Eliminar un únic directori, sempre que estigui buit.
  10. cat: Mostrar el contingut de qualsevol tipus de fitxer a la pantalla.
  11. head: Mostra les primeres línies d’un fitxer, especificant el nombre de línies a mostrar.
  12. tail: Mostra les darreres línies d’un fitxer, especificant el nombre de línies a mostrar.
  13. less: Cerca dins del contingut d’un fitxer de forma interactiva.
  14. more: Cerca dins del contingut d’un fitxer forma interactiva.
  15. grep: Buscar i visualitzar cadenes de caràcters en fitxers o en resultats d’ordres.

11 Comandes per administrar el Sistema Operatiu

  1. uname: Mostrar informació sobre el SO, incloent el Kernel carregat en aquell moment.
  2. df: Mostrar informació sobre el SA, les particions i l’ús de l’espai del disc actual.
  3. free: Mostrar informació variada sobre la utilització de la memòria del sistema operatiu gestionat.
  4. top: Mostrar els processos en execució, més informació sobre el CPU, la Memòria RAM i més.
  5. htop: Similar a l’ordre top, però amb una interfície visual CLI renovada, millorada i interactiva.
  6. ps: Mostrar els processos en execució al SO de forma detallada i no interactiva.
  7. kill: Ieliminar processos en execució, mitjançant el nombre de processos (PID) assignat.
  8. shutdown: Gestionar el SO per realitzar accions, com ara: Apagar-lo, Reiniciar-lo, i Aturar-lo.
  9. reboot: Una versió nova i millorada dl’ordre shutdown, amb més opcions disponibles.
  10. uptime: Visualitzar quant de temps ha estat funcionant el SO des de la darrera arrencada.
  11. last: Mostra una llista d’inicis de sessió (d’usuaris) recents al sistema operatiu.

10 Ordres per gestionar informació d’elements i dispositius de HW

  1. lsblk: Mostra informació sobre tots els dispositius demmagatzematge disponibles.
  2. fdisk: Gestionar (crea, elimina i modifica) particions sobre els dispositius disponibles.
  3. mount: Muntar (conecta) un sistema de fitxers sobre el directori d’un dispositiu existent.
  4. umount: Desmuntar (desconnecta) un sistema de fitxers gestionat amb l’ordre umount.
  5. hdparm: Administrar els paràmetres de maquinari dels dispositius de disc disponibles.
  6. lshw: Veure la informació del HW del SO, inclosa la informació sobre els dispositius actuals.
  7. lsusb: Veure informació específica sobre els dispositius USB actuals al SO.
  8. lspci: Mostrar informació específica sobre els dispositius PCI actuals al SO.
  9. lscpu: Mostrar informació específica sobre el CPU utilitzat al SO i la seva arquitectura.
  10. dmesg: Mostrar informació interna gestionada pel Kernel, incloent-hi l’associada al HW.

14 Comandes per gestionar la informació d’elements i processos de xarxa

  1. ip: Gestionar tota la informació associada a les interfícies de xarxa, en SO moderns.
  2. ifconfig: Gestionar tota la informació associada a les interfícies de xarxa a SO antics.
  3. iwconfig: Gestionar la informació associada a les interfícies sense fil d’un sistema operatiu.
  4. nmcli: Gestionar la informació de les interfícies de xarxa via NetworkManager.
  5. wpa_cli: Gestionar la informació de les interfícies de xarxa sense fils via WPASupplicant.
  6. ping: Verificar la connexió actual cap a altres amfitrions de la xarxa mitjançant el protocol ICMP.
  7. route: Gestionar la taula d’encaminament IP per establir rutes estàtiques cap a host i xarxes.
  8. traceroute: Inrutar paquets de dades dun sistema a un altre host a través duna xarxa.
  9. nslookup: Comprovar la informació de DNS sobre altres hosts, de manera interactiva.
  10. dig: Consulteu servidors de noms DNS per solucionar problemes de DNS.
  11. netstat: Veure la informació sobre les connexions de xarxa actualment actives al sistema, i més.
  12. iptables: Gestionar les taules de regles de filtratge de paquets IPv4 i IPv6 del nucli Linux.
  13. resolvctl: Gestionar noms de domini, adreces IPv4 /IPv6 i registres de recursos DNS.
  14. mii-tool: Gestionar l’estat de la unitat d’interfície independent de mitjans (MII) d’una interfície de xarxa per negociar automàticament la velocitat de lenllaç i la configuració dúplex.

10 Comandes per gestionar els processos en execució i la informació relacionada

  1. fg: Activar en un procés determinat la seva execució en primer pla (foreground).
  2. bg: Activar en un procés determinat la seva execució en segon pla (background).
  3. pstree: Mostrar la llista de processos en forma d’arbre mostrant les relacions entre ells.
  4. nice: Establir la prioritat dels processos en execució en un SO.
  5. renice: Canviar la prioritat dels processos, establertes amb l’ordre nice.
  6. nohup: Executar un procés en segon pla (background) sense veure’s afectat per la senyal HUP.
  7. disown: Dconnecteu els processos que s’executen en segon pla i el terminal que els executa.
  8. fork: Crear processos (fills) a partir de la duplicació de la trucada d’un altre procés (pare).
  9. pidfd_open: Facilitar la obtenció dun descriptor de fitxer que es refereixi a un procés.
  10. clone:Ggenerar processos (fills) d’una forma similar a la usada amb l’ordre fork, però amb la diferència que, aquestes trucades al sistema brinden un control més precís sobre el desitjat.

Fins aquí, els nostres 60 Comandes de Linux idonis per conèixer, aprendre i utilitzar per aquest any 2023. No obstant això, en cas de desitjar saber més sobre cadascun daquests, simplement sha de fer clic sobre el nom de cada ordre. I si no, per a aquests i altres més, es pot explorar directament la secció oficial a les Manpages de Debian GNU/Linux, la qual té diverses documentacions en diferents idiomes.

LlibreOffice writer linux

Modifica tema: Eines/opcions/opcions/llibre office/aspecte.

Eines → Opcions → LibreOffice → Aparença. Clica Afegeix més temes. (es un botonet extrany que hi ha a la dreta. Potser el tema s’ha de descarregar e instal·lar. Cerca Light Teal. Instal·la’l i reinicia LibreOffice.

Impresionat… supera al Word

Partició disc Linux per a backups amb ‘Respaldar y restaurar «

Partició Mida Contingut
sda2 16 MB Partició de sistema (EFI o similar)
sda3 346,4 GB Windows (muntat a /media/Miquel/Windows)
sda4 1,2 GB Partició de recuperació o OEM
sda5 🔵 129,3 GB Deepin (sistema operatiu principal)
sdb1 57,7 GB Disc USB/extern de backup

Tens tota la raó! Si sda3 està en NTFS, podria ser la partició de Windows o una partició de dades compartida. No la formategis fins que estiguem segurs del que hi ha.

Opció més segura: Crear una nova partició ext4 dins de l’espai de Linux

Pas 1: Identificar les particions actuals

Obre una terminal i executa:

sudo fdisk -l

o

lsblk -f

Això ens mostrarà totes les particions i quin sistema de fitxers té cadascuna.


Device         Start        End   Sectors   Size Type
/dev/sda1       2048     206847    204800   100M EFI System
/dev/sda2     206848     239615     32768    16M Microsoft reserved
/dev/sda3     239616  726601727 726362112 346,4G Microsoft basic data
/dev/sda4  997756928 1000214527   2457600   1,2G Windows recovery environment
/dev/sda5  726601728  997756927 271155200 129,3G Linux filesystem

Perfecte! Tenies tota la raó! Mira l’estructura del teu disc:

  • /dev/sda3 (346,4G) → WINDOWS ⚠️
  • /dev/sda5 (129,3G) → LINUX/DEEPIN

Si formateges sda3, esborraràs Windows!

De moment ho possaré a un USB abans de trobar de afegir una partició amb Live USB

Solucions segures:

Opció 1: Crear una partició nova dins de Linux (Recomanat)

Has de redimensionar sda5 (Linux) per crear espai per al backup:

  1. Necessitaràs un Live USB de Deepin/Ubuntu per modificar la partició arrel
  2. Redimensiona sda5: redueix-la uns 50-100 GB
  3. Crea una nova partició ext4 amb l’espai alliberat
  4. Format ext4 i l’etiquetes com «Backups»

Opció 2: Utilitzar un disc extern USB

Connecta un disc dur extern o USB amb prou espai i fes el backup allà.

Opció 3: Comprovar espai lliure a sda5

Executa això per veure quant espai lliure tens ja dins de Linux:

df -h /home

Si tens prou espai lliure dins de la teva partició de Linux, pots crear una carpeta específica per als backups allà mateix.

Quina opció prefereixes?


Pas 2: Redimensionar la partició de Linux

  1. Obre GParted (necessitaràs un Live USB si vols modificar la partició arrel mentre el sistema està en ús)
  2. Redimensiona la partició ext4 de Linux per alliberar espai (per exemple, 50-100 GB per als backups)
  3. Crea una nova partició ext4 en l’espai alliberat

Pas 3: Alternativament, utilitzar una partició existent

Si ja tens una partició ext4 amb espai lliure, simplement selecciona-la a l’eina de backup en lloc de sda3.


Abans de fer res, executa lsblk -f a la terminal i enganxa’m el resultat. Així podrem veure exactament quines particions tens i quina és la més segura per utilitzar.

Adequar Deepin a les meves necessitat

Un cop instalat deepin 25.1, el primer programa que instalem es Deepin 25.1

sudo apt update
sudo apt install firefox

El panell lateral (gestor de fitxers) mostra tots els recursos del Deepin.

1 afegir al panell lateral el equip synology (192.168.1.41)


es pot posat el teclat cat però segurament es necessitarà ajud : XULETA: Configurar el teclat a Deepin 25 Minimal (sense interfície gràfica)


Comprovar que ja el tenim a la plataforma de llan\ament


Activar WebDAV

Permisos WebDAV a carpetes compartides de Synology

Aquí tens els passos, però hi ha un detall important que pot ser la clau del problema:

️ Punt clau: WebDAV només funciona amb carpetes compartides

A Synology, WebDAV només exposa carpetes compartides (shared folders), no subcarpetes. Si BibliotecaCalibre és una subcarpeta dins de OneDriveS, no podràs accedir-hi directament via WebDAV.

Opció A: Connectar-te a la carpeta compartida i després navegar

  • Carpeta: /OneDriveS (sense /BibliotecaCalibre)
  • Un cop connectat, navega dins de Nemo fins a BibliotecaCalibre

Opció B: Crear una carpeta compartida nova

Si vols accedir directament, hauries de crear BibliotecaCalibre com a carpeta compartida independent al Synology.


Com verificar/activar permisos WebDAV:

1. Panel de Control → Carpeta compartida

  • Obre el Panel de Control al DSM
  • Vés a Carpeta compartida
  • Selecciona OneDriveS
  • Fes clic a Editar

2. Pestanya «Permisos»

  • Assegura’t que l’usuari urqtejmi té permís de Lectura/Escriptura (o com a mínim Lectura)

3. Pestanya «Aplicacions» (important!)

  • Dins d’Editar, busca la pestanya Aplicacions
  • Assegura’t que WebDAV Server està marcat/activat per a aquesta carpeta

4. Verificar permisos de l’usuari al WebDAV Server

  • Obre l’aplicació WebDAV Server
  • Vés a Configuració → Permisos
  • Assegura’t que urqtejmi té accés habilitat

Recomanació:

Prova primer l’Opció A (canviar la carpeta a /OneDriveS) i veure si connecta. Si funciona, després ja navegaràs dins de Nemo fins a BibliotecaCalibre. És la solució més ràpida. 🚀

Restaurar Miquel_copia per degeneració de Miquel

Ara ho entenc! El gestor de fitxers mostra noms «bonics» però els noms reals són:

  • «Carpeta de l’usuari» (🏠) = /home/Miquel (la teva carpeta home real)
  • «Miquel copia» = /home/Miquel copia
  • «Miquel_original» = /home/Miquel_original

⚠️ Important

No pots reanomenar /home/Miquel mentre estàs loguejat com a «Miquel», perquè el sistema l’està utilitzant.

Opcions:

Opció A: Copiar el contingut (més segura)

En lloc de canviar noms, copia el contingut de «Miquel copia» dins de «Miquel» sobreescrivint:

sudo cp -rn "/home/Miquel copia/." "/home/Miquel/"

La flag -r copia recursivament, -n no sobreescriu fitxers existents. Si vols sobreescriure tot, treu la -n:

sudo cp -r "/home/Miquel copia/." "/home/Miquel/"

Opció B: Canviar noms (requereix tancar sessió)

  1. Tanca la sessió completament
  2. A la pantalla de login, prem Ctrl + Alt + F3 per anar a una terminal
  3. Logueja’t i executa:
sudo mv /home/Miquel /home/Miquel_old
sudo mv "/home/Miquel copia" /home/Miquel
  1. Reinicia amb sudo reboot

Opció C: Fer-ho des d’un Live USB

Encara més segur, però més complex.

Quina opció prefereixes? Et recomano l’Opció A si només vols substituir el contingut.