Sprint 2. Instal·lació, Configuració de Programari de Base i Gestió de Fitxers
1. Sistemes de fitxers i Particions
Mida sector
És la unitat mínima física on es guarden les dades en un disc. Per defecte, la mida del sector és de 512 bytes i no es pot modificar.
Mida block o clúster
És la unitat mínima lògica on es guarden les dades a nivell de sistema operatiu. Per defecte, la mida és de 4096 bytes (8 sectors) i sí que es pot modificar quan es formateja la partició. Cada partició del disc pot tenir una mida de bloc i un sistema de fitxers diferent.
La fragmentació interna
és l'espai no utilitzat dins del darrer bloc assignat a un fitxer. És l'espai perdut dins de les unitats d'emmagatzematge del disc. Aquest concepte s'origina per la manera com els sistemes operatius gestionen l'espai del disc dur.
La fragmentació externa
es refereix a l'espai lliure d'emmagatzematge que no és contigu, sinó que es troba dispers en molts petits forats separats per fitxers que s'han mantingut al disc. A diferència de la fragmentació interna (que és espai perdut dins d'un bloc), la fragmentació externa és espai lliure totalment utilitzable, però està tan segmentat que pot ser massa petit per allotjar eficaçment fitxers nous i grans.
La comanda e4defrag -c /home s'utilitza en sistemes Linux que fan servir el sistema de fitxers ext4 (el més comú) per comprovar el nivell de fragmentació del directori /home o del sistema de fitxers on es troba.
Sistemes de fitxers
Sistemes Robustos i Moderns (Linux/Unix)
ext4 (Fourth Extended Filesystem): És l'estàndard de facto actual en la majoria de distribucions Linux. Ofereix un excel·lent rendiment i és molt fiable. La seva característica principal és el journaling (registre per diari), que prevé la corrupció de dades en cas de fallada del sistema.
Btrfs (B-Tree Filesystem): Considerat el futur de Linux. És un sistema Copy-on-Write (CoW), el que significa que cada vegada que es modifica una dada, s'escriu en una nova ubicació, mantenint la versió antiga intacta. Això permet la creació de snapshots (instantànies) molt ràpides i la autocuració d'errors.
XFS: Destaca per la seva escalabilitat i alt rendiment, especialment amb fitxers i volums de dades molt grans. És molt utilitzat en entorns de servidors on es treballa amb arxius massius.
ZFS: Un sistema de fitxers i un gestor de volums integrats que es caracteritza per una gran integritat de dades gràcies a l'ús de sumes de comprovació (checksumming) per detectar i corregir errors de dades. També utilitza el principi CoW.
Sistemes Propietaris (Windows/Mac)
NTFS (New Technology Filesystem): L'estàndard utilitzat per Windows. Incorpora journaling, suport per a ACLs (Llistes de Control d'Accés) per a permisos de seguretat detallats i la capacitat d'encriptació de fitxers.
APFS (Apple File System): El sistema modern d'Apple (macOS, iOS), optimitzat per a dispositius amb memòria flash (SSDs). Està centrat en l'eficiència i la creació d'instantànies ràpides i lleugeres.
Sistemes per a Compatibilitat (Transferència)
exFAT (Extended File Allocation Table): Creat per Microsoft, és l'opció preferida per a memòries USB i targetes SD. El seu avantatge és la compatibilitat universal entre Windows, Linux i macOS, a més d'eliminar la limitació de mida de fitxer de 4 GB que tenia el seu predecessor (FAT32).
FAT32 (File Allocation Table 32): Un sistema antic, però encara utilitzat per la seva compatibilitat amb gairebé qualsevol dispositiu (càmeres, consoles, reproductors). La seva limitació clau és que no pot emmagatzemar fitxers individuals de més de 4 GB.
Ubuntu EXT4
Windows NTFS
Comprovem que se han creat amb el format correcte amb lsblk -f
Baix Nivell (Low-Level)
Què fa: Aquest procés realitza una neteja total del disc.
Resultat: Segons la teva definició, “Borra sistema de fitxers, borra formateig, etc.”, eliminant totes les dades i totes les estructures lògiques prèvies. El disc queda en un estat de fàbrica, “com a nou”, sense cap mena d’organització lògica (sense particions ni sistemes de fitxers). Accessibilitat: No es pot fer des del sistema operatiu (SO) operatiu normal. Requereix programes adients i especialitzats, ja que treballa directament amb el firmware del disc dur.</p>
Mig Nivell (Mid-Level)
Què fa: Aquesta és una operació que se centra en la capa lògica i la integritat del disc.
Resultat: “Només borra el sistema de fitxers” (igual que el format d’Alt Nivell Ràpid), deixant les dades antigues presents però irrellevants per al SO. La funció distintiva és la comprovació de la integritat: si hi ha sectors defectuosos, els marca per evitar que el sistema operatiu els utilitzi en el futur, però “no els arregla”.</p>
Alt Nivell (High-Level)
Què fa: Aquesta és l'operació més comuna i ràpida. Resultat: "Només borra el sistema de fitxers". El disc es prepara amb la creació del sistema de fitxers nou (p. ex., ext4 o NTFS) i el directori arrel. El contingut de les dades antigues roman al disc fins que es sobreescriu, cosa que permet la seva recuperació.
GPARTED
Desde el Gparted podem veure les particions de una manera grafica i crear modificar redimiencionar i etc...
Com la particio de ntfs no ha quedat ve i es de 4gb enves de 5gb redimencionarem la particio selecionarem el GB de espai que queda lliure i apretarem redimensiona
Apretarem el tick verd i aplicarem els canvis
Ara pasarem a un altre disc este te 25 GB nou i crearem una nova taula de particions gpt
i assignarem els 25 GB tots a una particio apretant nova i selecionant els 25 GB
Aplicariem els canvis i ja estaria
Ara montarem la particio sdb1 a /mnt/f1 carpeta creada amb mkdir dintre de mnt
Crearem una carpeta per provar que funcioni correctament
Afegim la partició /dev/sdb1 al fitxer /etc/fstab per muntar-la automàticament com a ext4 al punt `/mnt/f1` cada vegada que el sistema s'engegui
2. Gestió de Procesos
Un procés és un programa que s’està executant en aquell moment, juntament amb tots els recursos que necessita per funcionar
pstree
Pstree serveix per mostrar tots els procesos de el sistema operatiu en forma de arbre indicant quins procesos son pare i quins fill
top
Top serveix per mostrar en temps real els processos que s’estan executant i els recursos que utilitzen.
Quan executes top, veuràs informació com:
PID → identificador del procés
USER → usuari que executa el procés
%CPU → percentatge de CPU que està utilitzant
%MEM → percentatge de memòria RAM que utilitza
COMMAND → nom del procés
Control de procesos
CTRL C
ctrl c serveix per interrompre un procés que s’està executant envia el senyal SIGINT
En aquest exemple el ping para quan el usuari introdueix ctrl c sino es executara infinitament
CTRL Z
ctrl z serveix per aturar temporalment un procces i enviar-lo al “background” en estat suspès
JOBS
jobs Mostra els processos que tens en estat suspès o en segon pla
FG
fg % Torna en primer pla el proces amb el numero
Com es mostra a la imatge continua el ping i mostra que 6 paquets se han transmitit 2 avans de aturarlo i 4 despres
HTOP
htop mostra els processos del sistema en temps real, igual que top però amb una interfície més amigable: colors, barres de CPU/memòria i navegació amb el teclat i permet ordenar, filtrar i matar processos fàcilment sense escriure PID
BTOP
btop és una evolució moderna de htop i top, amb encara més gràfics i informació visual sobre el sistema
Mostra els processos del sistema, CPU, memòria, swap, discs i xarxa amb gràfics molt visuals.
Permet monitoritzar recursos en temps real de manera intuïtiva.
Té interfície de colors i menús interactius, amb navegació amb fletxes i tecles.
PS AUX
ps aux s’utilitza per veure tots els processos que s’estan executant al sistema, amb informació detallada.
kill
kill serveix per enviar senyals a processos. No només serveix per “matar” un procés; també pots suspendre-lo o reprendre’l. Cada procés té un PID (identificador únic) que és necessari per enviar-li un senyal.
kill [opció] PID PID → número del procés (el veus amb ps aux, jobs, top, htop) Opcions → senyals que vols enviar (SIGTERM, SIGKILL, etc.)
| Senyal | Número | Efecte |
| ------- | ------ | --------------------------------------------------------- |
| SIGTERM | 15 | Demana al procés que es tanqui de manera neta |
| SIGKILL | 9 | Mata immediatament el procés (no neteja recursos) |
| SIGSTOP | 19 | Suspèn el procés (equivalent a Ctrl+Z) |
| SIGCONT | 18 | Torna un procés suspès a executar-se (equivalent a fg/bg) |
Per exemple firefox te el pid 2344 i volem tancar el proces inmediatament utilizarem kill -9 2344 i inmediatament es ha tancat firefox
3. Gestió d'usuaris i grups i permisos
Gestio de Usuaris per interficie grafica amb gnome-system-tools
Fitxers implicats
El arxiu Passwd emmagatzema informació bàsica sobre tots els usuaris del sistema
El arxiu groups gestiona els grups d’usuaris
El arxiu shadow emmagatzema les contrasenyes xifrades dels usuaris i informació addicional de seguretat
El arxiu gshadow es equivalent a shadow pero amb grups
Comandes basiques
Crearem el usuari gina amb adduser
Iniciem sesio amb el usuari gina i apareixerant les carpetes
Crearem el usuari gina2 amb useradd
Comprovarem que gina no es administradora (sudo) i la afegirem a el grup sudo (administradors)
Eliminarem el usuari gina amb deluser que elimina tot el relacionat amb el usuari i eliminarem gina2 amb userdel que es una comanda que sol elimina el usuari i no les carptes
Bloquejar i desbloquejar un Usuari
Modificar un Grup i eliminarlo
Crear un grup Nou
Afegir Usuaris a un grup de 3 diferentes maneres
Afegir Usuari administrador de un grup
Afegir el grup principal de el Usuari
Crearem els usuaris roig,blau,groc i verd
Crearem el grup dames
Modificarem el nom de el grup amb groupmod de dames a parchis
Agregarem el usuari groc i roig com a grup principal a el grup parchis
Ara intentarem eliminar el grup parchis pero no ens deixara perque te un usuari principal que es roig
Despres entrarem a cd /etc/skel i veurem que tenim varios arxius mos centrarem en 3 de ells .bash_logout,bashrc i .profile els canvis que fesem en aquestos arxius es aplicaran als usauris futurs
Entrarem a el arxiu adduser.conf que serveix per a modificar els determinats de adduser i editarem el shell a bash i que la carpeta home del usuari estigui ubicada a /var i modificarem el UDI de creacio de els usuaris que comencigue a partir de 3000
Ara pasarem a el segon arxiu login.dfs que modifica els parametres de quan un usuari incia sesio i modificarem el maxim de dies que estara el minim i el avis
Un grup es por esborrar i a els usuaris no els pasa res a no ser que algun usuari el tingui com a grup principal
tot el que es posi a la carpeta /etc/skel es copiara a la home de el usuari
Ara entrarem a el arxiu adduser.conf que son els parametres de la comanda adduser que serveix per crear usuaris introduirem que la Shell la volem en bash i que la carpeta home la volem a /var
i canviarem que crei els id de els usuaris a partir de 3000
Despres obrerem el arxiu login.defs que modifica es regles generals del sistema per a: contrasenyes creació d’usuaris permisos comportament del login
Introduirem que la contrasenya tingui un maxim de 20 dies i un minim de 15 dies i que te avise als 3 dies
Crearem el usuari gris i comprovarem que tot el anterior es hagui aplicat correctament
Si comenca a assignar a partir de el 3000
Si la contrasenya la caducitat assignada a el arxiu login.defs
I tambe es ha creat la carpeta prova que haviem creat a etc/skel
Ara modificarem el useradd i canviarem el shell a bash
Crearem el usuari negre amb useradd i comprovarem el id que es 3001 i que esta en bash
Comprovarem la caducitat de la contrasenya
Ara entrarem a .profile i introduirem que els usuaris cuan facin login estiguin ven situats al directori /var
Ara a el archiu .bashrc afegirem un alias quan escriguen alias connexio es fara un ls -la
Despres entrarem a el arxiu bash_logout i introduirem que cuan el usuari tanqui la sesio es elimini el seu directori personal
Ara entrarem a el usuari rosa i comprovarem que estigui a la carpeta correcta /var/rosa
Tancarem la sesio i tornarem a obrirla i es haura eliminat tot per el introduit anteriorment a el arxiu bash_logout
Gestio permisos
Primer de tot crearem la carpeta palomes i el grup palomes i afegirem a el usuari nick com a propietari amb chown -R tambe assignarem paloma com a grup de la carpeta
Despres modificarem els permisos de la carpeta amb chmod 750 que simifica permisos totals per a el usuari permisos de lectura i execucio per a el grup i no permisos per als altres
Ara amb chmod o+r donarem permisos als altres per a lectura i en chmod o-r llevarem el permis de llectura als altres i amb ls -l | grep palomes veurem els permisos sol de la carpeta palomes
Ara comprovarem els permisos primer amb el usuari nick que podrar entrar a la carpeta crear el arxiu sdfsdf i escriure dints despues pasarem a el usuari cire podra entrar dints de la carpeta pero no podra crear cap arxiu i despues provarem amb el usuari ferran que no podrar entrar dints de la carpeta perque nick es el propietari i te permisos totals cire es un usuari de el gurp paloma i ferran es altres que no tenen cap permis
Ara afegirem a ferran i a deivy a el grup paloma amb adduser el nom de el usuari i el grup en el que el vols afegir
Despres en chmod g+w afegirem a el grup paloma el permis de escriptura i ho comprovarem amb ls -l
Devy creara el arxiu practicavaras i ferran el eliminara
Per evitar que ferran elimini arxius que no son de ell introduirem chmod o+t a la carpeta palomes simifica que sol el propietari de el arxiu el pugi eliminar aquesta regla es nombra sticky bit
Ara torarem a crear el arxiu practicavaras i ferran el intentara tornar a elminiar pero ya no podrar
Traurem el sticky amb chmod o-t i ho tornare a posar amb un chmod 1770 pero ara amb numeros
Ara amb chmod g+s el usuari que execute el arxiu el executara amb els permisos de el grup no de el propi usuari
ACL
Crearem la carpeta proves i el arxiu proves2
Comprovarem els permisos per defecte que son:
proves:755 (rwxr-xr-x): El propietari té tots els permisos (7), i el grup i els altres només poden llegir i executar/accedir (5).
proves2: 644 (rw-r--r--): El propietari pot llegir i escriure (6), i el grup i els altres només poden llegir (4).
Ara canviarem els permisos i els comprovarem en getfacl que mostra la llista de control d’accessos (ACL)
És a dir, et mostra:
Permisos normalSprint 2. Instal·lació, Configuració de Programari de Base i Gestió de Fitxerss (rwx)
Permisos extensos (ACL) si n’hi ha
Propietari i grup
Entrades especials com mask i permisos heretats
amb setfacl, atorgant a l'usuari específic roig permisos addicionals de Lectura i Escriptura (rw-) sobre el fitxer proves2, sense modificar els permisos estàndards del grup o d'altres.
Si entro a el arxiu com a el usuari roig el puc modificar
i si entro com a el usuari blau no perque es altres i no te permisos com demostra el getfacl
Si volem eliminar totes les ACL de proves2 podem ferho amb la comanda setfacl -b proves2
Crearem una carpeta que es dira compartida i tindra permisos 777 que son tots els permisos a tothom pero ara modificarem perque volem que el usuari roig no tingui cap permis amb setfacl -m user:roig --- compartida/
(Els tres gions simifica cap permis)
Mascara
Explicar la mascara de el usuari cuan el usuari crea una carpeta els permisos que es creen per defecte
Primer de tot veurem en la comanda unmask la mascara de el usuari i la mascara quan el usuari es root
Despres entrarem a el arxiu login.defs que defineix els parametres globals de els usuaris i podrem modificar la mascara de els usuaris que es creein despres de la modificacio
Per a canviar la mascara de el usuari actual entrarem a el arxiu .profile i canviarem la mascara
Ara si volem canviar la mascara de un usuari temporalment hasta que reinici i comprovarem creant una carpeta i un arxiu que la mascara
Ara Modificarem el arxiu login.defs i canviarem la mascara de 22 a 33
Crearem el usuari prova
Crearem una carpeta i un axiu i comprovarem que la mascara 33 es ha aplicat
4. Còpies de seguretat i automatització de tasques
1.Teoria copies de seguretat
Una còpia de seguretat és una còpia de les dades importants per poder recuperar-les en cas de pèrdua, corrupció o fallada del sistema.
Hi ha tres tipus principals:
Completa: copia totes les dades seleccionades i només necessita ella mateixa per recuperar-se.
Diferencial: copia només les dades que han canviat des de l’última còpia completa i necessita aquesta còpia completa per poder restaurar les dades.
Incremental: copia només les dades que han canviat des de l’última còpia, sigui completa o incremental, i necessita aquesta última còpia (completa o incremental) per poder recuperar tota la informació.
En resum, la còpia completa és la base, la diferencial depèn de la completa i l’incremental depèn de l’última còpia feta.
2.Teoria commandes Backups
CP es una copia simple que no es inteligent transfereix arxius nomes localment i no optimiza ni temps ni espai
RSYNC es una eina inteligent que nomes copia els fitxers modificats treballa en local i en remot
DD no es una eina per a copiar pero cuan volem copiar tot un disc o particio se utilizar es per a clonar
3.Practica commandes Backups
1.cp
Primer de tot Crearem una carpeta de prova i un archiu de prova a la carpeta documentos despues montarem el disc on volem fer el cp
Ara amb la comanda cp copiarem tot el que hi ha a documentos a la carpeta /var/copies/ que esta montada al disc de les copies de seguretat el -R serveix per copiar els directoris de manera recursiva i el asterisc per copiar tot el contingut de la carpeta
2.rsync
Ara crearem una carpeta i un arxiu dintre de documentos i executarem la comanda rsync la a es per archive que copia de manera recursiva i conserva permisos, propietaris, marques de temps i enllaços simbòlics les dos vv es de molt verbose que mostra informacio sobre el que esta fent i el delete elimina al destí els fitxers que ja no existeixen a l’origen, mantenint una còpia exacta.
3.dd
introduirem dd if que es el origen i of el desti de la copia bs es mida de block indica que les dades es llegeixin i s'escriguin en blocs de 1 Megabyte per fer el procés més ràpid i status progres mostra en temps real quants gigues s'han copiat i a quina velocitat
4.Practica programes Backups
1.Deja-Dup
Deja-Dup es el programa per defecte a ubuntu per fer copies de seguretat es pot obrir desde el menu de aplicacions o ejecutant desde la terminal deja-dup i es una aplicacio que funciona per interfice grafica
Selecionem la o les carpetes que volem fer una copia per exemple documentos i les carpetes a ignorar si ens interesa
Selecionarem la ubicacio de la copia/respaldo per exemple a la carpeta Copia
Ens preguntara si volem posar una contrasenya a la copia de seguretat com es una prova direm que no
Despres podrem selecionar si fer la copia manualment o auotomaticament cada 4 dies (Desde la configuracio es pot canviar a semanalment o cada dia la copia automatica i es pot modificar tots els adjustos anteriors)
Selecionarem respaldar ahora per a fer-ho manualment i al apartat de restaura tindrem les copies de seguretat ordenades per fecha i el boto de restaura
Per exemple eliminarem la carpeta adeu i el archiu hola
Selecionarem hola i adeu i apretarem restaura i que els restauri a la carpeta original tambe tindriem la opcio de restaurarlos a una altra ubicacio i ja els tindriem de volta
2.Duplicity
Duplicity permet crear, gestionar i restaurar còpies de seguretat de fitxers i directoris.
•Fa una còpia completa inicial.
•Les còpies següents són incrementals (només desa els canvis).
•Xifra les dades amb GPG perquè ningú pugui llegir-les sense contrasenya.
•Comprimeix les dades per ocupar menys espai.
•Permet restaurar fitxers, carpetes o tot el sistema.
•Pot verificar la integritat de les còpies.
•Permet esborrar còpies antigues segons polítiques de retenció.
Introduirem la comanda duplicity la carpeta que volem fer la copia i la ruta de desti on es guardara la copia com es la primera sera copia completa totes les seguents seran incrementals
Ens detmanara una contrasenya per a xifrar les dades i que la tornesim a posar per a confirmar i allavors es completara la copia
Ara eliminare tot el contingut de la carpeta documentos
Amb Duplicity restore restaurarem la copia amb restore file indicarem el arxiu a restaurar i despues la ubicacio on es restaurara tambe ens detmanara la contrasenya introduida anteriorment
Ja estaria restaurat
5.Teoria de automatizacio scripts, cron i anacron
Cron i anacron son dues eines de automatizacio per a exectutar tasques periodiques son a traves de scripts
Cron Executa tasquesprogramades en una data i una hora especifiques si el sistema esta apagat la tasca es perd es ideal per a tasces en dates i hores conquretes i per a accions especifiques de un usuari
Anacron es ideal per a executar tasques periodices on no cal una data i una hora especifica normalment se utiliza per a tasques de el manteniment de el sistema no requereix que el sistema estigui obert perque cuan se obrigue ja la executara no es perd la tasca com en el Cron
6.Practica automatizacio
1.Cron
Primer crearem el script indicant que timestap es la data actual i la hora i vaix introduirem un tar que creara el arxiu copies_ladataactual.tar.gz i el arxiu contindra tot el que hi hagi a la carpeta imagenes
Despres farem un nano /etc/crontab i afegirem el script creat anteriorment que fara una copia de tot el que hi hagui a la carpeta imagenes i el guardara amb un arxiu al escriptori
Si que el haura creat
Si volem sol ferho de un usuari especific i no a tots introduirem la comanda crontab -e (editar) -u (usuari) i el nom de usuari
2.anacron
Utilizarem el mateix script que a cron i entrarem a nano /etc/anacrontab primer de tot introduirem cada quan es produira la copia que sera cada dia i cuan tardara a ferla desde que se inicia el ordinador que seran 5 minuts el nom de la tasca i on volem que es realizi la copia que sera a el home de alumne
Si deixem el ordinador ences durant 5 minuts i el dia de avui no ha fet la copia la efectuara
5. Quotes d'usuari
Una cuota de disc es la llimitacio que es dona als usuaris de espai de el disc
Muntarem la particio sdc1 sobre la que treballarem
Ara instalarem quota que serveix per comprovar i controlar l’ús de l’espai de disc per usuari o grup en un sistema de fitxers que tingui activada la quota de disc i crearem la carpeta dades_usuaris
Entrarem a el arxiu /etc/fstab que serveix per a que la particio es munti automaticament quan inici el sistema i tambe es afegix que el usuari i el grup tinguin una cuota
Comprovarem que se hagi muntat correctament la particio
Crearem el usuari prova en adduser
Entarem a la particio i comprovarem que estiguin els arxius aquota user i group (Si no estan introduiu aquesta comanda quotacheck -cum /mnt/dades_usuari)
Amb quota off apaguem la cuota i amb on iniciem la cuota
Amb repquota comprovem la cuota de cada usuari com de moment sol root te permisos es el unic usuari que es mostra
Donarem permisos totals a tothom i amb edquota i el nom de el usuari entrarem a el axiu per modificar la quota
Aquesta secció controla quants dades pot guardar l'usuari. En Linux, els valors de les quotes solen expressar-se en blocs d'1 KB.
bloques (0): És l'espai que l'usuari està utilitzant actualment. En aquest cas, 0 KB, el que indica que encara no ha guardat res.
blando (1024): És el límit suau (soft limit). L'usuari pot arribar a 1 MB (1024 KB). Si el supera, rebrà un avís, però se li permetrà seguir escrivint durant un "període de gràcia" (normalment 7 dies).
duro (2048): És el límit dur (hard limit). L'usuari té prohibit passar de 2 MB (2048 KB). El sistema bloquejarà qualsevol intent d'escriure més dades un cop arribi a aquest valor.
Ara entarem a el usuari prova i crearem dos archius de 800MB sol hem arribat a el limit suau
Fem un repquota i ara si que apareix el usuari prova i mostra el espai utilizat 1600MB el limit suau i el dur i que tenim 6 dies de gracia per que hem superat el limit suau
Pero a la que intentem crear un altre arxiu de 800MB que supera el llimit Dur copiara hasta 2024 MB i donara error mostrant que hem superat la cuota de disc
Tornem a fer un repquota i ja estem a el limit dur
Amb edquota -t podem modificar el periode de gracia