Unitat 1 · Laboratori de preparació i comandes bàsiques d’administració
Laboratoris Pràctics d’Administració de Sistemes i Aplicacions
Preparant l’entorn de treball remot
Per preparar l’entorn de treball a AWS, seguirem els següents passos:
- Crear un compte d’AWS Academy
- Accedir al tauler d’AWS
- Crear un parell de claus SSH
- Llançar una instància EC2
- Connectar-se a la instància EC2 mitjançant SSH
Pas 1: Creació d’un compte d’AWS Academy
Reviseu el vostre correu electrònic per veure si heu rebut un correu electrònic d’AWS Academy amb l’assumpte Invitació al curs. Si no l’heu rebut, feu-m’ho saber. El correu electrònic contindrà un botó amb el text Get Started. Feu clic en aquest botó per iniciar el procés de registre.
Després de fer clic al botó Get Started, sereu redirigits a la pàgina d’inici de sessió d’AWS Academy. Ara heu de fer clic al botó Create my account per iniciar el procés de registre, com es mostra a continuació:
Seleccioneu una contrasenya i completeu el procés de registre. Un cop hàgiu completat el procés de registre, sereu redirigits al tauler d’AWS Academy. Enhorabona! Heu creat amb èxit el vostre compte d’AWS Academy.
Pas 2: Accés al tauler d’AWS
Ara que heu creat el vostre compte d’AWS Academy, podeu accedir al tauler d’AWS. El primer que heu de fer és fer clic a la pestanya Courses (1) a la part esquerra de la pantalla. Veureu una llista de cursos disponibles per a vosaltres. Feu clic al curs AWS Academy Learner Lab (2), com es mostra a la captura de pantalla següent:
El curs AWS Academy Learner Lab és el curs que utilitzareu per completar els laboratoris pràctics, si recordeu a la primera sessió vam parlar del curs AWS Academy Cloud Foundations, que no és obligatori però és altament recomanat per a aquells que vulguin tenir una base més sòlida i obtenir el 5% de l’apartat (Async Activities AWS).
Tingueu en compte que només hi ha un curs a la captura de pantalla següent, no és el que hauríeu de veure, hauríeu de veure dos cursos, un per al AWS Academy Cloud Foundations i un per al AWS Academy Learner Lab. Si no veieu el curs AWS Academy Cloud Foundations i voleu tenir accés a ell, feu-m’ho saber.
Ara hem de buscar la pestanya Modules (1) a la part esquerra de la pantalla. Feu clic en ella i veureu una llista de mòduls disponibles per a vosaltres. Feu clic en el mòdul AWS Academy Learner Lab (2), com es mostra a continuació:
Ara se us demanarà que accepteu els termes i condicions del curs. Feu-ho desplaçant-vos fins al final de la pàgina i fent clic al botó I Agree.
Després d’acceptar els termes i condicions, ara només heu de fer clic al botó Start Lab.
Ara doneu-li uns minuts per carregar. Veureu aquesta animació mentre el laboratori s’està preparant per a vosaltres:
Finalment, quan el laboratori estigui llest, veureu que el punt al costat de AWS és verd. També veureu un temporitzador que compta enrere des de 4 hores. Aquest és el temps que teniu per treballar al laboratori. A l’esquerra del temporitzador veureu com va el vostre pressupost. Teniu un pressupost de 50 dòlars per gastar en serveis d’AWS. Feu clic a AWS per accedir al tauler d’AWS, com es mostra a continuació:
- Els laboratoris són un entorn real d’AWS, per tant, és important que tingueu cura dels recursos i de les vostres accions.
- Si superes el pressupost de 50 dòlars, ja no tindràs accés al tauler d’AWS i perdràs la teva feina. Assegureu-vos de vigilar el pressupost, és responsabilitat de cada estudiant mantenir-se dins del pressupost.
- Els laboratoris tenen una durada de 4 hores. Un cop passades les 4 hores, la sessió expirarà i no podreu accedir al tauler d’AWS. No obstant això, això no vol dir que perdràs el teu treball automàticament. Les tasques i recursos que has creat (com ara instàncies EC2, buckets de S3, etc.) es mantindran accessibles entre sessions, sempre que no els eliminis manualment. Podeu tornar a iniciar el laboratori de forma il·limitada, però és una bona pràctica aturar o tancar manualment els serveis que ja no necessiteu per evitar que consumeixin recursos innecessàriament.
Per tant, si comences un laboratori i el deixes a mig fer, podràs reprendre’l en una sessió posterior.
Genial! Ara heu accedit al tauler d’AWS. Veureu una pantalla similar a la següent:
Pas 3: Creació d’un parell de claus SSH
La clau SSH és un mecanisme de seguretat que permet l’autenticació segura entre dos sistemes. El servidor d’Amazon EC2 té la clau pública i el client (el vostre ordinador local) té la clau privada. Quan el client es connecta al servidor, el servidor comprova si la clau pública del client coincideix amb la clau privada del servidor. Si les claus coincideixen, el client es connecta al servidor. Per tant, la clau privada no s’ha de compartir amb ningú. Mentre que la clau pública es pot compartir amb qualsevol i la podeu fer servir en múltiples servidors. A dia d’avui, no hi ha cap mecanisme per obtenir la clau privada a partir de la clau pública.
Per crear un parell de claus SSH, utilitzarem la comanda ssh-keygen
. Aquesta comanda està disponible a la majoria dels sistemes operatius, inclosos Linux, MacOS i Windows (a través de PowerShell o Windows Subsystem for Linux - WSL). Si utilitzeu Windows i no teniu accés a ssh-keygen
, podeu utilitzar eines com PuTTYgen per generar les claus SSH.
Aquesta comanda té diversos paràmetres que permeten personalitzar la clau SSH. Els paràmetres més comuns són:
-t
: Especifica el tipus de xifratge de la clau. Els tipus més comuns són rsa, dsa, ecdsa i ed25519.-f
: Especifica el nom del fitxer on es guardarà la clau.-b
: Especifica la longitud de la clau en bits.
És molt important entendre quan estem treballant al nostre ordinador local i quan estem treballant a la màquina remota. El primer pas sempre serà obrir un terminal al nostre propi ordinador, però un cop ens connectem a la màquina remota mitjançant l’ordre SSH, encara que sembli que res no ha canviat, el terminal ara està connectat a la màquina remota. Això vol dir que a partir d’ara les ordres que escrivim s’executaran a la màquina remota, no al nostre ordinador local. Si no esteu segurs si esteu treballant al vostre ordinador local o a la màquina remota, només heu d’escriure pwd
i veure quin és el resultat. Si és el vostre ordinador local, veureu la ruta al directori en què esteu al vostre ordinador local, si és la màquina remota, veureu la ruta al directori en què esteu a la màquina remota. pwd
significa print working directory
.
El primer pas per crear el parell de claus SSH serà assegurar-nos que el directori .ssh
existeix. Per fer-ho, obriu un terminal al vostre ordinador local i escriviu la següent ordre:
mkdir .ssh
Si el directori .ssh
ja existeix, obtindreu un error indicant que el directori ja existeix. Això és normal, només vol dir que el directori ja estava allà.
Ara crearem el parell de claus SSH. Escriviu la següent ordre:
ssh-keygen -t rsa -f .ssh/aws-keypair
Se us demanarà que introduïu una contrasenya. Podeu deixar-la buida prement Enter
dues vegades (us recomano fer-ho per simplicitat, si no, cada vegada que us connecteu a la màquina remota haureu d’introduir la contrasenya). Hauríeu de veure una sortida similar a la següent:
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in .ssh/aws-keypair
Your public key has been saved in .ssh/aws-keypair.pub
The key fingerprint is:
SHA256:uhINFvYaJh6MbwFQCXdZyrW7W46jFGHUhLglDgQ5OYE ferran@DESKTOP-0841
+---[RSA 3072]----+
|XBooo*+ |
|E.++*o.. |
| O ==o. |
|. B.=... |
| o *.=. S |
| + o..o |
| . ..o . |
| .. .* |
| .o+.. |
+----[SHA256]-----+
Aquí, ssh-keygen
és l’ordre per generar el parell de claus, -t rsa
especifica el tipus de clau a crear, en aquest cas una clau RSA, i -f .ssh/aws-keypair
especifica el nom del fitxer per al parell de claus. Podeu anomenar el fitxer com vulgueu, però és important recordar el nom que li heu donat. En aquest cas, l’estem anomenant aws-keypair
. Us recomano que el nomeu igual que jo per no confondre-us més endavant.
Es clau entendre com funcionen les claus públiques i privades i com s’utilitzen per establir una connexió SSH, heu de veure aquest vídeo.
Una altra vegada, podem comprovar el contingut del directori .ssh
escrivint la següent ordre:
ls .ssh
Hauríem de veure ara dos fitxers, aws-keypair
i aws-keypair.pub
. El primer és la clau privada i el segon és la clau pública. La clau privada mai s’ha de compartir amb ningú, mentre que la clau pública és la que s’ha de compartir amb la màquina remota. Una ordre útil per inspeccionar el contingut d’un fitxer és cat
. Per exemple, per veure el contingut de la clau pública, escriviu la següent ordre:
cat .ssh/aws-keypair.pub
També podeu inspeccionar el contingut de la carpeta .ssh
i dels fitxers que hi ha dins utilitzant l’Explorador de fitxers (o Finder en dispositius Mac). Però tingueu cura, per defecte, les carpetes i fitxers que comencen amb un .
(com .ssh
) estan ocults en la majoria d’exploradors de fitxers i si voleu poder veure’ls, haureu d’habilitar l’opció per mostrar fitxers ocults. Consulteu aquest tutorial per veure com fer-ho al vostre sistema operatiu. Una altra cosa a tenir en compte és que les extensions de fitxer (és a dir, la part del nom del fitxer que ve després del darrer .
) també solen estar ocultes, això vol dir que a l’Explorador de fitxers potser veieu dos fitxers anomenats aws-keypair
quan en realitat un és aws-keypair
i l’altre és aws-keypair.pub
. Aquí teniu un tutorial sobre com mostrar les extensions de fitxer al vostre sistema operatiu.
No cal que us preocupeu per res d’això si esteu utilitzant el terminal, el terminal us mostrarà els fitxers i les seves extensions tal com són. Però per veure fitxers i carpetes ocults (aquells que comencen amb un .
) haureu d’utilitzar l’ordre ls -a
.
ls -a .ssh
Hem creat un parell de claus SSH que podem utilitzar per connectar-nos a màquines remotes. A continuació, importarem la nostra clau pública a AWS.
Pas 4: Importació de la clau pública a AWS
Ara que hem creat el nostre parell de claus SSH, hem d’importar la clau pública a AWS per poder utilitzar-la per connectar-nos a les instàncies EC2 que crearem més endavant. Per fer-ho, hem de tornar al tauler d’AWS, que és on vam acabar després de completar el Pas 2.
Ara anirem a la barra de cerca i buscarem el servei EC2
. Escriviu EC2
a la barra de cerca i feu clic al servei EC2
, com es mostra a continuació:
Ara veureu el tauler d’EC2. A la part esquerra de la pantalla, veureu una llista d’opcions. Feu clic a Key Pairs
(Pares de claus) i després a Create key pair
(Crear parell de claus), com es mostra a continuació:
Ara heu de donar un nom al parell de claus. Podeu anomenar-lo com vulgueu, però us suggereixo que el anomeneu aws-keypair
per mantenir les coses simples. Assegureu-vos que l’opció Key type
(Tipus de clau) estigui configurada a RSA
i que l’opció Private key file format
(Format del fitxer de clau privada) estigui configurada a PEM
. Això és important perquè la clau privada s’ha d’utilitzar en format PEM per connectar-se a la màquina remota. Feu clic a Create key pair
(Crear parell de claus), com es mostra a continuació:
Podeu també fer clic al botó Browse
per seleccionar el fitxer de clau pública des del vostre ordinador. Només cal que feu clic a Browse
, navegueu fins a la carpeta .ssh
i seleccioneu el fitxer aws-keypair.pub
. Però recordeu, el fitxer ha de ser el fitxer de clau pública, no el fitxer de clau privada. És a dir, el fitxer ha de tenir l’extensió .pub
. Un cop hàgiu seleccionat el fitxer, feu clic a Import Key Pair
.
Recordeu que com s’ha explicat a la nota anterior, potser no veureu la carpeta .ssh
a l’explorador de fitxers i potser no veureu l’extensió .pub
del fitxer. Si teniu problemes amb això, us recomano utilitzar el terminal per copiar el contingut del fitxer com es mostra a la captura de pantalla anterior.
Ara hauríeu de veure el parell de claus que acabeu d’importar a la llista de parells de claus. Probablement hi haurà un altre parell de claus allà, això està bé, podeu ignorar-lo. Perfecte! Ara heu importat la clau pública a AWS. A continuació, crearem una instància EC2 i la configurarem per utilitzar el parell de claus que acabem d’importar.
Pas 5: Creació d’una instància EC2
El primer pas serà anar al tauler d’EC2. Podeu fer-ho escrivint EC2
a la barra de cerca i fent clic al servei EC2
, com vam fer al principi del Pas 3:
Un cop estigueu al tauler d’EC2, feu clic a Instances
> Launch Instance
, com es mostra a continuació:
Deixeu-ho tot com està excepte l’opció Key pair (login)
(Parell de claus (inici de sessió)) (haureu de desplaçar-vos cap avall per trobar-la). Feu clic al menú desplegable i seleccioneu el parell de claus que heu importat anteriorment. En aquest cas, hauria de ser aws-keypair
. Feu clic a Launch instance
, com es mostra a continuació:
Ara tenim una instància EC2 en execució amb la nostra clau pública importada. Això significa que tenim una màquina remota a AWS a la qual podem connectar-nos des del nostre ordinador local mitjançant SSH. Vegem com fer-ho.
Pas 6: Connexió a la instància EC2
Abans de connectar-nos a la màquina remota, vull que proveu alguns ordres al vostre ordinador local que després repetirem un cop estiguem connectats a la màquina remota. Una de les ordres és pwd
, que significa print working directory
, com ja s’ha comentat anteriorment. Aquesta ordre us mostrarà la ruta al directori en què esteu actualment. L’altra ordre és whoami
, que us mostrarà el nom d’usuari amb el qual heu iniciat sessió. Proveu aquestes ordres al vostre ordinador local i recordeu-ne la sortida. Les repetirem un cop estiguem connectats a la màquina remota.
A continuació es mostra la sortida que obtinc al meu ordinador local:
PS C:\Users\fnao> pwd
PS C:\Users\fnao> whoami
gft\fnaoPS C:\Users\fnao>
El ordinador local que utilitzo és un portàtil amb Windows, així que la sortida serà diferent de la vostra si esteu utilitzant un Mac o un ordinador amb Linux. Substitueix fnao
pel vostre nom d’usuari i C:\Users\fnao
per la ruta al vostre directori d’usuari.
Per connectar-nos a la instància EC2, utilitzarem el terminal del nostre ordinador local. Així com vam fer al principi Pas 3, obriu un terminal al vostre ordinador local. Utilitzarem l’ordre ssh
per connectar-nos a la màquina remota. L’ordre tindrà aquest aspecte:
ssh -i .ssh/aws-keypair ec2-user@<public-ip>
Haureu de substituir <public-ip>
per la IP pública de la instància EC2. Per trobar la IP pública, torneu al tauler d’EC2 i feu clic a Instances
a la part esquerra de la pantalla. Veureu una llista d’instàncies, feu clic a la instància que heu creat. Veureu la IP pública a la part inferior de la pantalla com es mostra a continuació:
Tant l’adreça Public IPv4 address
com el Public IPv4 DNS
es poden utilitzar com a <public-ip>
a l’ordre ssh
. Copieu el que preferiu i enganxeu-lo a l’ordre ssh
. L’ordre hauria d’assemblar-se a alguna cosa així si utilitzeu l’adreça IP:
ssh -i .ssh/aws-keypair ec2-user@98.84.68.70
o així si utilitzeu el DNS:
ssh -i .ssh/aws-keypair ec2-user@ec2-98-84-68-70.compute-1.amazonaws.com
Si és la primera vegada que us connecteu a la màquina remota, obtindreu una advertència. Això és normal, només heu d’escriure yes
i prémer Enter
. Ara hauríeu de estar connectats a la màquina remota. Veureu un missatge similar al següent:
, #_
~\_ ####_ Amazon Linux 2023
~~ \_#####\
~~ \###|
~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023
~~ V~' '->
~~~ /
~~._. _/
_/ _/
_/m/'
Last login: Sun Mar 2 09:50:33 2025 from 79.156.58.43
[ec2-user@ip-172-31-86-82 ~]$
Investiga quin és el significat i la importànica del missatge que acceptes quan et connectes per primera vegada a la màquina remota. Per què és important acceptar aquest missatge? Què significa? Quines implicacions té?
Fantàstic! Ara esteu connectats a la màquina remota. És important entendre que a partir d’ara, les ordres que escrivim s’executaran a la màquina remota, no al nostre ordinador local. Per comprovar-ho, escriviu les ordres pwd
i whoami
com vam fer al nostre ordinador local. Veureu que la sortida és diferent. A continuació es mostra la sortida que obtinc a la màquina remota:
[ec2-user@ip-172-31-86-82 ~]$ pwd
/home/ec2-user
[ec2-user@ip-172-31-86-82 ~]$ whoami
ec2-user
[ec2-user@ip-172-31-86-82 ~]$
Aquesta vegada la sortida hauria de ser la mateixa que la meva. Observeu que el prompt [ec2-user@ip-172-31-86-82 ~]$
és diferent, però això no forma part de les sortides de les ordres. Les sortides de les ordres són pwd
i whoami
, que són home/ec2-user
i ec2-user
respectivament. El prompt és només una manera de mostrar-vos on esteu al sistema de fitxers i qui sou com a usuari connectat.
Utilitza la comanada lastlog
i investiga com administrador com podem trueure partit d’aquesta informació.
Execució en el nostre laboratori remot
En aquest apartat de laboratori, treballarem la comunicació amb servidors remots i la transferència de fitxers entre la màquina local i la màquina remota. Utilitzarem un script de Python per simular una càrrega de treball i generar un gràfic a partir d’un fitxer de dades. Aquest laboratori es durà a terme a la instància EC2 que hem creat anteriorment.
Pas 1: Configuració de l’entorn remot a l’EC2
Primer, hem de preparar l’entorn a la nostra instància EC2. Això inclou instal·lar les eines necessàries per executar el nostre script de Python i gestionar les dades. Per tant, ens connectarem a la instància EC2 mitjançant SSH com hem fet anteriorment i executarem les següents ordres per instal·lar les eines necessàries.
# Connecta't a la instància EC2
ssh -i .ssh/aws-keypair ec2-user@<public-ip>
- Actualització del sistema:
sudo yum update -y
- Comprova si tens instal·lat Python i, si no, instal·la’l:
python3 --version # Comprova si Python està instal·lat
sudo yum install python3 -y # Instal·la Python si no està instal·lat
- Crea un entorn virtual per a Python:
python3 -m venv myenv
source myenv/bin/activate
- Comprova l’entorn virtual amb un
Hello World
:
python3 -c "print('Hello World from the virtual environment')"
Ara utiltiza la comanda exit
per sortir de la màquina remota. Un cop al teu ordinador local, torna a connectar-te a la màquina remota amb SSH i torna a executar la comanda python3 -c "print('Hello World from the virtual environment')"
. Quin és el resultat? Per què és diferent del que has obtingut abans? Com ho podem solucionar?
- Instal·la les biblioteques necessàries per al nostre script:
pip install pandas matplotlib psutil
- Crea un directori per al projecte i entra-hi:
mkdir lab01-workload-simulation
cd lab01-workload-simulation
- Crea el fitxer del script de Python, utilitzant
vi
ovim
:
vi simulate_workload.py
#!/usr/bin/env python3
import sys
import time
import pandas as pd
import matplotlib.pyplot as plt
def main():
if len(sys.argv) != 2:
print("Ús: python3 simulate.py workload.csv")
1)
sys.exit(
= sys.argv[1]
csv_file = pd.read_csv(csv_file)
df
print("Simulació d'ús de CPU i memòria (amb gràfic)\n")
plt.ion()= plt.subplots()
fig, ax = [], [], []
cpu_vals, mem_vals, ts_vals
for i, row in df.iterrows():
= row['timestamp']
ts = row['cpu_usage']
cpu = row['memory_usage']
mem
print(f"[{ts}] CPU: {cpu:.2f}% | MEM: {mem:.2f}%")
ts_vals.append(ts)
cpu_vals.append(cpu)
mem_vals.append(mem)
ax.clear()="CPU (%)", color="tab:red", marker="o")
ax.plot(ts_vals, cpu_vals, label="Memòria (%)", color="tab:blue", marker="x")
ax.plot(ts_vals, mem_vals, label0, 100)
ax.set_ylim("Temps")
ax.set_xlabel("Ús (%)")
ax.set_ylabel("Simulació de càrrega del sistema")
ax.set_title(
ax.legend()=45)
plt.xticks(rotation
print("\n--- Fi de la simulació ---")
"workload_analysis.png")
plt.savefig(
if __name__ == "__main__":
main()
- Si el fitxer existeix, pots executar-lo amb la següent ordre:
python3 simulate_workload.py workload.csv
En aquest punt, hauríeu de veure un error indicant que el fitxer workload.csv
no existeix. Això és normal perquè encara no hem pujat el fitxer de dades a la instància EC2.
Pas 2: Transferència del fitxer de dades a la instància EC2
Per transferir el fitxer de dades workload.csv
a la instància EC2, utilitzarem SFTP (SSH File Transfer Protocol). SFTP és un protocol segur per transferir fitxers entre un ordinador local i una màquina remota. Utilitzarem el mateix parell de claus SSH que vam crear anteriorment per autenticar-nos a la instància EC2.
- Descarrega’t el fitxer de dades
workload.csv
al teu ordinador local. - Utilitza SFTP per pujar el fitxer de dades a la instància EC2:
# Substitueix <public-ip> per la IP pública de la teva instància EC2
sftp -i .ssh/aws-keypair ec2-user@<public-ip>:/home/ec2-user/lab01-workload-simulation
# Baixa el fitxer workload.csv del directori remot a la màquina local
put workload.csv
# Tanca la sessió SFTP
exit
- Torna a connectar-te a la instància EC2 mitjançant SSH, i executa el programa de Python de nou:
python3 simulate_workload.py workload.csv
Ara hauria de funcionar correctament i generar un fitxer d’imatge amb el gràfic de la càrrega de treball. Pots comprovar que el fitxer d’imatge s’ha creat correctament amb l’ordre ls -l
. Un cop la imatge s’ha generat, pots utilitzar SFTP per baixar-la a la teva màquina local:
# Substitueix <public-ip> per la IP pública de la teva instància EC2
sftp -i .ssh/aws-keypair ec2-user@<public-ip>:/home/ec2-user/lab01-workload-simulation
# Baixa el fitxer workload_analysis.png del directori remot a la màquina local
get workload_analysis.png
# Tanca la sessió SFTP
exit
- Com podem descarregar tots els fitxers d’un directori remot a la nostra màquina local utilitzant el protocol SFTP? Per exemple, imagina que necessites descarregar tot el contingut del directori remot anomenat lab-workload-simulation. Explica els passos o la comanda que utilitzaries per dur a terme aquesta tasca de manera eficient.
- Com podem descarregar un fitxer específic des d’una URL directament a un servidor remot? Per a fer-ho més pràctic, prepara un script que, donada una URL, descarregui un fitxer directament al servidor remot sense passar-lo per la màquina local. Fes el test amb el fitxer
workload.csv
que hem utilitzat en aquest laboratori.
Eines bàsqiques d’administració
En aquest apartat, explorarem algunes tasques bàsiques d’administració que podem realitzar en un servidor Linux. Aquestes tasques inclouen la gestió de l’espai en disc.
Gestió de l’espai en disc
Amb la comanda df -h
podem veure l’espai en disc disponible i utilitzat a les particions del sistema. Aquesta comanda ens mostrarà informació sobre l’espai en disc de cada partició, incloent-hi la mida total, l’espai utilitzat, l’espai disponible i el punt de muntatge. En aquest curs estudiarem el sistema de fitxers en profunditat, però ara només introduirem la comanda i veurem el seu resultat.
[ec2-user@ip-172-31-30-17 ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 453M 0 453M 0% /dev/shm
tmpfs 181M 424K 181M 1% /run
/dev/nvme0n1p1 8.0G 2.0G 6.1G 25% /
tmpfs 453M 0 453M 0% /tmp
/dev/nvme0n1p128 10M 1.3M 8.7M 13% /boot/efi
tmpfs 91M 0 91M 0% /run/user/1000
En aquest cas, podem veure que la partició /dev/nvme0n1p1
té una mida total de 8.0 GB, amb 2.0 GB utilitzats i 6.1 GB disponibles. Això significa que el 25% de l’espai en disc està utilitzat. El seu punt de muntatge és /
, que és el directori arrel del sistema de fitxers. La resta de particions les podem ignorar per ara i les veurem en detall més endavant.
A més, també podem utilitzar la comanda du
per veure l’espai en disc utilitzat per un directori específic. Per exemple, si volem veure l’espai en disc utilitzat pel directori /home/ec2-user
, podem utilitzar la comanda següent:
[ec2-user@ip-172-31-30-17 ~]$ du -sh /home/ec2-user
301M /home/ec2-user
Aquesta comanda ens mostrarà l’espai en disc utilitzat pel directori /home/ec2-user
i tots els seus subdirectoris. L’opció -s
indica que volem un resum de l’espai utilitzat, i l’opció -h
mostra la sortida en un format llegible per humans (per exemple, en KB, MB, GB). En aquest cas, podem veure que el directori /home/ec2-user
utilitza 301 MB d’espai en disc.
Podem crear un fitxer de prova per veure com afecta l’espai en disc. Per exemple, podem crear un fitxer de text gran amb la comanda dd
:
dd if=/dev/zero of=largefile.txt bs=1M count=100
Aquesta comanda crearà un fitxer anomenat largefile.txt
de 100 MB ple de zeros. Ara podem tornar a executar la comanda du -sh /home/ec2-user
per veure com ha canviat l’espai en disc utilitzat pel directori /home/ec2-user
:
[ec2-user@ip-172-31-30-17 ~]$ du -sh /home/ec2-user
401M /home/ec2-user
Per eliminar el fitxer que hem creat, podem utilitzar la comanda rm
:
rm largefile.txt
- Completa aquest script perque ens permeti llegir un fitxer de text línia a línia, cada linia conté el nom i la mida en MB d’un fitxer que volem crear. El script ha de crear els fitxers amb la mida especificada al directori on s’executa el script.
while read -r nom_fitxer mida_mb; do
done < "$1"
- Utiltiza la comanda
du
,sort
,head
,tail
per obtenir el fitxer més gran i el més petit del directori on s’executa el script. - Utilitza la comanda
find
per trobar tots els fitxers més grans de 10 MB al directori on s’executa el script.
Neteja final
Un cop hàgiu acabat el laboratori, és important que tanqueu la instància EC2 per evitar costos innecessaris. Per fer-ho, torneu al tauler d’EC2 i seleccioneu la instància que heu creat. A la part superior de la pantalla, feu clic a Instance state
i després a Terminate instance
.
Entrega del laboratori
Per a l’entrega d’aquest laboratori, heu de preparar un document PDF amb les respostes completes a tots els exercicis. Un cop finalitzat, cal que el pengeu al Campus Virtual, a l’apartat designat per al Laboratori 1.