Linux: diferència entre les revisions

De FFAWiki
Línia 550: Línia 550:
<u>'''Configuració del Servidor'''</u>
<u>'''Configuració del Servidor'''</u>


Per poder compartir carpetes amb NFS des d'un ordinador cal que s'instal·lin 3 paquets:
:Per poder compartir carpetes amb NFS des d'un ordinador cal que s'instal·lin 3 paquets:


nfs-kernel-server  
::nfs-kernel-server  
nfs-common  
::nfs-common  
portmap
::portmap
Un cop en funcionament s'ha de configurar el fitxer /etc/exports amb les carpetes que volem compartir.
Per cada carpeta compartida en NFS caldrà posar-hi una línea amb:


Ruta absoluta de la carpeta compartida
:Un cop en funcionament s'ha de configurar el fitxer /etc/exports amb les carpetes que volem compartir.
*
(ro) només lectura - (rw) lectura i escriptura
Un cop editat el fitxer de configuració caldrà re-iniciar el servei NFS


sudo /etc/init.d/nfs-kernel-server restart
:Per cada carpeta compartida en NFS caldrà posar-hi una línea amb:
Exemple de configuració del Servidor


Creem la carpeta que volem compartir:
::Ruta absoluta de la carpeta compartida
::*
::(ro) només lectura - (rw) lectura i escriptura


sudo mkdir /compartir_per_NFS
:Un cop editat el fitxer de configuració caldrà re-iniciar el servei NFS
sudo chmod 777 /compartir_per_NFS
Instalem el servidor NFS (només cal fer-ho una vegada)


sudo apt-get update
::sudo /etc/init.d/nfs-kernel-server restart
sudo apt-get install nfs-kernel-server nfs-common portmap
 
Configurem l'arxiu /etc/exports
<u>'''Exemple de configuració del Servidor'''</u>
sudo nano /etc/exports
 
escrivim la línia:  /compartir_per_NFS    *(ro)
:Creem la carpeta que volem compartir:
Reiniciem el servei de NFS
 
::sudo mkdir /compartir_per_NFS
::sudo chmod 777 /compartir_per_NFS
 
:Instalem el servidor NFS (només cal fer-ho una vegada)
 
::sudo apt-get update
::sudo apt-get install nfs-kernel-server nfs-common portmap
 
:Configurem l'arxiu /etc/exports
 
::sudo nano /etc/exports
::escrivim la línia:  /compartir_per_NFS    *(ro)
 
:Reiniciem el servei de NFS
 
::sudo /etc/init.d/nfs-kernel-server restart


sudo /etc/init.d/nfs-kernel-server restart
----
----


Configuració del Client
<u>'''Configuració del Client'''</u>
 
:Per poder connectar a carpetes NFS  cal que s'instal·lin 2 paquets:
 
::nfs-common
::portmap
 
:Després s'ha de muntar el recurs NFS en una carpeta de l'ordinador client.
 
::mount -t nfs [IP_Servidor_NFS] : [/Ruta_Absoluta_Carpeta_NFS_Compartida]  [/Ruta_Absoluta_Carpeta_Local]
 
<u>'''Exemple de configuració del client'''</u>
 
:Creem la carpeta que volem muntar


Per poder connectar a carpetes NFS  cal que s'instal·lin 2 paquets:
::sudo mkdir /Muntatge_per_NFS
::sudo chmod 777 /Muntatge_per_NFS


nfs-common
:I la muntem sobre el recurs compartit a l'ordinador amb ip: [192.168.2.3] i amb carpeta [/compartir_per_NFS]
portmap
Després s'ha de muntar el recurs NFS en una carpeta de l'ordinador client.
mount -t nfs [IP_Servidor_NFS] : [/Ruta_Absoluta_Carpeta_NFS_Compartida] [/Ruta_Absoluta_Carpeta_Local]
Exemple de configuració del client
Creem la carpeta que volem muntar


sudo mkdir /Muntatge_per_NFS
::sudo mount -t nfs  192.168.2.3:/compartir_per_NFS  /Muntatge_per_NFS
sudo chmod 777 /Muntatge_per_NFS
I la muntem sobre el recurs compartit a l'ordinador amb ip: [192.168.2.3] i amb carpeta [/compartir_per_NFS]
sudo mount -t nfs  192.168.2.3:/compartir_per_NFS  /Muntatge_per_NFS

Revisió del 11:39, 27 des 2020

Estructura de Directoris en Linux

Estructura de Directoris en Linux.png

Afegir un Escriptori en Linux

Des del Terminal
Executem l'ordre:
sudo apt-get update
sudo apt-get install gnome-panel
Hem de tancar la sessió per accedir al nou Escriptori.
Quan escollim l'Usuari també podem escollir l'Escriptori de la sessió.

Ordres per recórrer i visualitzar el sistema d'arxius

ls /ruta_absoluta -> Visualitza el contingut de la carpeta /ruta_absoluta
ls -l -d /ruta_absoluta -> Visualitza els permisos de la carpeta /ruta_absoluta
ls -l /ruta_absoluta/arxiu.txt -> Visualitza els permisos de l'arxiu /ruta_absoluta/arxiu.txt

Editors d'arxius de texte

Editor en mode text
nano /ruta_absoluta_arxiu_text
Editor en mode gràfic
gedit /ruta_absoluta_arxiu_text

Ordres del Sistema de Fitxers

Crear un arxiu Buit
touch /ruta_arxiu
Crear un arxiu amb texte dins
echo "texte" > /ruta_arxiu
Afegir texte a un arxiu
echo "texte" >> /ruta_arxiu
Visualitzar el texte d'un arxiu
cat /ruta_arxiu
Crear un directori
mkdir /ruta_directori
Esborrar un directori:
Si està buit: rmdir /ruta_directori
Si no ho està: rm -r /ruta_directori
Renombrar directori
mv /ruta_directori /nova_ruta_directori
Copiar directori
cp -r /ruta_directori /ruta_de_copia
Moure directori
mv /ruta_directori /nova_ruta_directori
Esborrar un arxiu
rm /ruta_arxiu
Renombrar un arxiu
mv /ruta_arxiu /nova_ruta_arxiu
Copiar un arxiu
cp /ruta_arxiu /ruta_de_copia
Moure un arxiu
mv /ruta_arxiu /nova_ruta_arxiu
Canviar el nom a un arxiu
mv /ruta_arxiu /nova_ruta_arxiu (igual que moure)
Crear un Link tou
ln -s /ruta_arxiu /ruta_link
Crear un link fort
ln /ruta_arxiu /ruta_link

Comodins

Els comodins serveixen per substituir qualsevol caràcter.
L'asterisc * -> Substitueix 0,1,2,3 ... caràcters. És el més utilitzat
L'interrogant ? -> Substitueix 1 caràcter. S'utilitza en patrons molt ajustats.
Exemples:
A* -> Arxius que comencin per A
A*.txt -> Arxius que comencin per A i tinguin l'extensió .txt
A*B.* -> Arxius que comencin per A, acabin per B i tinguin qualsevol extensió
*HOLA* -> Arxius que continguin la paraula HOLA
A? -> Arxius de dos lletres que comencin per A
A?.txt -> Arxius de dos lletres que comencin per A i tinguin l'extensió .txt
Per poder utilitzar els comodins, prèviament s'ha de crear un patró que respongui a totes les preguntes que volem fer.

Arxius Ocults

Per poder amagar un arxiu o un directori en linux només cal que el seu nom comenci per punt (.)
Exemple: mkdir /home/smx/Escriptori/.prova
Exemple: echo hola > /apunts/.salutacio.txt
Aquests arxius i carpetes no es visualitzen directament.
Des del intèrpret de comandes cal fer afegir el paràmetre -a a l'ordre ls
Exemple: ls -a /home/smx/Escriptori
Gràficament podem visualitzar/amagar els arxius/directoris amagats amb la combinació CTRL + H

Muntar un dispositiu

Per poder utilitzar un dispositiu, abans hem de muntar-lo al sistema d'arxius.
Hem d'utilitzar l'ordre mount:
mount -t auto [arxiu de dispositiu] [ruta absoluta de la carpeta de muntatge]
Per exemple:
Vull utilitzar un DVD (el segon del meu sistema) -> /dev/sr1
Per poder utilitzar aquest DVD haurem de muntar-lo en una carpeta -> Creem la carpeta /smx/DVD.
Hauríem d'executar l'ordre:
sudo mount -t auto /dev/sr1 /smx/DVD
A partir d'ara, per accedir al contingut d'aquest DVD ho farem accedint a la carpeta /smx/DVD

Mirar unitats montades

Per saber quines unitats hi ha muntades actualment hem d'executar l'ordre mount.
mount
Ens apareixerà una llista de tots els dispositius muntats actualment.

Desmuntar unitats

Quan volem eliminar un dispositiu del sistema hem d'utilitzar l'ordre umount.
umount
Primer hem de localitzar la carpeta on està muntat.
Ho podem fer a partir de l'ordre mount
Finalment desmuntem la unitat
umount [/ruta_absoluta_carpeta_de_muntatge]
La carpeta continuarà al sistema però quedarà buida.

Eliminar automuntatge d'unitats

Si executem l'ordre:
gsettings set org.gnome.desktop.media-handling automount 'false'
A partir d'aquest moment les unitats ja no es muntaran automàticament a /media.
Quan vulguem utilitzar una unitat l'haurem de muntar manualment amb la comanda mount.
Si vulguessim tornar a activar l'automuntatge:
gsettings set org.gnome.desktop.media-handling automount 'true'

Muntatge Permanent d'Unitats

Tots els dispositius que muntem manualment queden desmuntats automàticament en el moment que apaguem el sistema.
Però, podem fer que un dispositiu es munti automàticament en el moment d'engegar el sistema.
Per fer-ho, hem d'afegir una línia a l'arxiu /etc/fstab
/dev/[disp] [/Ruta_Absoluta_Carpeta de Muntatge] auto defaults 0 0
Per exempe afegim:
/dev/sda2 /home/smx/Escriptori/Particio2 auto defaults 0 0
El proper cop que s'engegui el linux, aquest muntarà totes les unitats que es troben al fstab

Ordres de Gestió d'Usuaris

Crear un usuari:
sudo useradd -m -s /bin/bash nom_usuari
Ens creara un usuari standard (igual que els creats gràficament):
Nom usuari.
Crearà un grup amb el nom de l'usuari i li assignarà l'usuari com a grup principal.
Crearà la capeta personal /home/nom_usuari.
Li assignarà l'intèrpret de comandes /bin/bash.
Es pot modificar el comportament de l'ordre useradd a partir dels paràmetres (veure man useradd)
-d /ruta_carpeta_personal: Li assigna la carpeta personal
La carpeta ha d'existir i tenir permisos.
-m crea automàticament la carpeta personal /home/nom_usuari i li assigna.
Hem de comprovar que la carpeta no existeixi.
-m -d /ruta_carpeta_personal: Crea la carpeta personal que li diem i li assigna
-g nom_grup: li assigna un grup existent
Com a grup principal
-G grup1,grup2...: Assigna els grups a l'usuari
No com a grup principal.
-s /bin/bash : Li assigna aquest interpret de comandes.
Després s'ha d'activar l'usuari assignant-li una contrassenya.
sudo passwd nom_usuari
Recordeu que en el moment de crear un usuari només es crea la seva carpeta personal (/home/[usuari])
Les carpetets estandards (Documents, Escriptori...) es creen en el moment d'entrar per primer cop en l'entorn gràfic de l'usuari.


Esborrar un usuari
sudo userdel nom_usuari
Si volem esborrar també la carpeta personal
sudo userdel -r nom_usuari
Canviar la contrassenya d'un usuari
la propia: passwd
la de root: sudo passwd
la d'un altre usuari: sudo passwd nom_usuari
Canviar d'usuari en el terminal
canviar a root: su -> Ens demana la contrassenya de root
canviar a un altre usuari: su nom_usuari -> Ens demana la contrassenya de l'usuari
exit -> Torna a l'usuari anterior en el terminal.
Fitxer de configuració dels usuaris
/etc/passwd
Hi trobem el nom de l'usuari, el seu ID, l'ID del seu grup principal, la carpeta personal i l'intèrpret de comandes.

Grups de sistema

El linux porta incorporats un conjunt de grups de sistema.
Podem veure aquests grups amb l'ordre nano /etc/group
Cadascun d'aquests grups porta incorporat el privilegi de poder realitzar algun tipus de configuració del sistema.
El grup més important és el grup de sudo
Tots els usuaris que pertanyin a un grup podran realitzar les tasques associades a aquell grup.
Per exemple:
Tenim el grup de sambashare que té associat el privilegi de poder compartir carpetes en xarxa.
Si l'usuari A pertany al grup sambashare vol dir que pot compartir carpetes.
Si l'usuari B no pertany al grup sambashare voldrà dir que no pot compartir carpetes.
Un usuari pot pertànyer a varis grups de sistema
Això voldrà dir que podrà fer varies tasques d'administració del sistema

Gestió gràfica d'Usuaris i Grups

Hem d'instal·lar el paquet gnome-system-tools.
sudo apt-get update
sudo apt-get install gnome-system-tools
Ens apareixerà un programa anomenat
Usuaris i Grups
Amb aquest programa podrem assignar gràficament els usuaris als grups que volguem.

Ordres de Gestió de Grups

Crear un grup
sudo groupadd nom_grup
Esborrar un grup
sudo groupdel nom_grup
Afegir un usuari a un grup
sudo adduser nom_usuari nom_grup
Esborrar un usuari d'un grup
sudo deluser nom_usuari nom_grup
Moure un usuari d'un grup a un altre
sudo deluser nom_usuari nom_grup1
sudo adduser nom_usuari nom_grup2
Veure els grups als quals pertany un usuari
Usuari actual: groups
Altres usuaris: sudo groups nom_usuari
Fitxer de configuració dels grups
/etc/group
Hi veiem el nom del grup, el ID del grup i els usuaris que el composen.

Permisos de Carpeta i Arxiu

Permisos de Carpeta
R: Permet veure (llistar) el contingut de la carpeta.
W: Permet modificar (afegir, esborrar) el contingut de la carpeta.
X: Permet accedir (obrir arxius i subcarpetes) al contingut de la carpeta.


Permisos d'Arxiu
R: Permet obrir l'arxiu només en modus lectura (no el podrem modificar)
W: Permet modificar el contingut de l'arxiu.
X: Converteix l'arxiu en executable (només s'aplica a programes i scripts)

Permisos Execució Programes

Primer buscar l'arxiu executable:
Normalment els trobarem a /usr/bin
Amb l'ordre which podem trobar la ruta de l'executable
which gedit
Donarà: /usr/bin/gedit
Posar com a usuari root
chown root /ruta_executable
Crear un grup amb els usuaris que poden executar el programa
Posar com a grup el que hem creat
chgrp nou_grup /ruta_executable
Després Activar/Desactivar el Permís d'Execució de l'Arxiu en root i en el grup
chmod u=rwx,g=rx,o= /ruta_executable
chmod 750 /ruta_executable

Canviar els permisos d'un arxiu o carpeta des del Terminal

Hem d'assignar un propietari:
chown propietari /ruta
Hem d'assignar un grup associat:
chgrp grup /ruta
i després hem d'aplicar els permisos
chmod forma directa:
chmod u=rwx,g=rwx,o=rwx /ruta
Per exemple:
R W X R _ X R _ _
chmod u=rwx,g=rx,o=r /home/smx/Escriptori/prova.txt
chmod forma octal:
chmod ABC /ruta
A és el nombre associat als permisos del propietari
B és el nombre associat als permisos del grup
C és el nombre associat als permisos dels altres usuaris
Com calcular els valors de ABC?
Hem d'associar a cada permís un valor. R-> 4 W ->2 X ->1 i sumar el valor dels que estan activats
Per exemple
R W X R _ X R _ _
4 2 1 4 0 1 4 0 0
En aquest cas A=7 B=5 C=4
i per tant l'ordre seria chmod 754 /ruta

Executar Scripts gràficament amb doble click

Instal·lem el programa de configuració:
sudo apt install dconf-editor
Obrim el programa
dconf-editor
Anem a org > gnome > nautilus > preferences,
Busquem l'opció: executable-text-activation i activem l'opció launch, (per defecte està a display)
A partir d'ara els scripts ja es podran executar amb doble click.

Scripts amb Paràmetres

Interior del script
El script conté els simbols $1, $2, $3 ...
Aquests símbols es poden repetir més d'una vegada a l'interior del script.
En el moment d'executar-se aquests símbols es transformen en els valors que li hem posat a la crida.
Crida del script.
Per executar-lo cal posar la ruta del script i el valor de tots els parametres
Ruta_Script Valor1 Valor2 Valor3

Tasques

Tasques d'Usuari

Un usuari es pot programar les seves tasques.
Per fer-ho ha d'executar l'ordre crontab -e
Ens apareixerà un arxiu de texte on cada línea representa una de les tasques que tenim programades:
m h dom mon dow command
m = minut
h = hora
dom = dia del mes (1..31)
mon = mes (1..12)
dow = dia de la setmana (1..7)
@reboot Executa una vegada, a l'inici.
Command = ruta de l'script que volem executar

Edició Gràfica de Tasques d'Usuari

Podem instal.lar un programa per executar gràficament la gestió de les tasques d'usuari
Sudo apt-get install gnome-schedule

Creació de Tasques per part de root

L'usuari root pot crear tasques que:
S'executen en nom seu
S'executen en nom d'un altre usuari
Per fer-ho hem d'editar el fitxer de configuració /etc/crontab
sudo nano /etc/crontab
m h dom mon dow user command
m = minut
h = hora
do = dia del mes (1..31)
mon = mes (1..12)
dow = dia de la setmana (1..7)
@reboot Executa una vegada, a l'inici.
user = nom de l'usuari que l'executarà (aquesta és l'única diferència amb crontab -e)
Command = ruta de l'script que volem executar

Compartir carpetes

NFS

Configuració del Servidor

Per poder compartir carpetes amb NFS des d'un ordinador cal que s'instal·lin 3 paquets:
nfs-kernel-server
nfs-common
portmap
Un cop en funcionament s'ha de configurar el fitxer /etc/exports amb les carpetes que volem compartir.
Per cada carpeta compartida en NFS caldrà posar-hi una línea amb:
Ruta absoluta de la carpeta compartida
(ro) només lectura - (rw) lectura i escriptura
Un cop editat el fitxer de configuració caldrà re-iniciar el servei NFS
sudo /etc/init.d/nfs-kernel-server restart

Exemple de configuració del Servidor

Creem la carpeta que volem compartir:
sudo mkdir /compartir_per_NFS
sudo chmod 777 /compartir_per_NFS
Instalem el servidor NFS (només cal fer-ho una vegada)
sudo apt-get update
sudo apt-get install nfs-kernel-server nfs-common portmap
Configurem l'arxiu /etc/exports
sudo nano /etc/exports
escrivim la línia: /compartir_per_NFS *(ro)
Reiniciem el servei de NFS
sudo /etc/init.d/nfs-kernel-server restart

Configuració del Client

Per poder connectar a carpetes NFS cal que s'instal·lin 2 paquets:
nfs-common
portmap
Després s'ha de muntar el recurs NFS en una carpeta de l'ordinador client.
mount -t nfs [IP_Servidor_NFS] : [/Ruta_Absoluta_Carpeta_NFS_Compartida] [/Ruta_Absoluta_Carpeta_Local]

Exemple de configuració del client

Creem la carpeta que volem muntar
sudo mkdir /Muntatge_per_NFS
sudo chmod 777 /Muntatge_per_NFS
I la muntem sobre el recurs compartit a l'ordinador amb ip: [192.168.2.3] i amb carpeta [/compartir_per_NFS]
sudo mount -t nfs 192.168.2.3:/compartir_per_NFS /Muntatge_per_NFS