CARPETASbin
binario, binario ejecutables, contiene programas que se instalan encima del sistema operativo
bootcontiene archivos de arranque
devdevice, dispositivos como discos duros, lectoras o extrailes, todo aquello q exista en el sistema estara en esta carpeta, contiene informacion de HW
etcguarda archivos de configuracion del sistema, no son ejecutables, sino los archivos que generan estos ejecutables
homecontiene carpetas personales que hay en el sistema, menos la del super usuario(root) que esta en la raiz
liblibrerias que usan los programas
lost+foundcarpetas perdidas, la gestiona el sistema
mediaincluye a las unidades que el sistema considera externo
mntse alojarian los archivos al intrducir unidades externas como usb,disco duro externo
optse alojan programas que no son oficiales de la distribucion
proclistados de procesos que viene ejecutando el servidor
rootarchivos del superusuario
runcontiene archivos temporables necesarios para la ejecucion de algunos programas, antes estaba dentro de la carpeta VAR
sbincontiene binarios del sistema, contiene programas pertenecientes al sistema operativo
srvindica que programas estan ejecutando actualmente como servicio
sysparecido a dev, muestra los dispositivos tal y como los ve el kernel
tempguarda datos temporales creados en hdd,
usrguarda los binarios del usuario
varguarda la informacion que generan varios programas
comandos linux
reboot
reiniciar
halt
apagar
ifconfig
detalles de red
echo $SHELL
ruta del shell, siempre la ruta es: /bin/bash, es la carpeta mas importante del servidor, contiene los comandos q se podran ejecutar
tambien sirve poner informacion a archivos: echo hola > archivo.txt, OJO su se realiza otra vez borra el contenido anterior y lo reemplaza por el nuevo
para aadir mas contenido se tiene que ingresar >>
pwd
print working directory, indica la carpeta raiz del usuario, tambien muestra la ubucacion actual del usuario(si es que antes ha usado cd/cd ..)
/home/edisonaburto
cd/cd ..
entrar y salir de carpetas
cd con parametro
cd / -> va a la carpeta raiz de golpe
cd /home/edisonaburto -> va a la ruta indicada
ls
listar carpetas, dir en windows
tambien se usa para listar con filtros ls /bin/c* -> lista todos los archivos que inicien con c dentro de la carpeta bin
ls -l
listar carpetas a detalle
ls --help
lista los parametros de help
man ls
lista mas a detalle las opciones de dicho comando, ya no se esta en linea de comandos, sino se ingresa al soft man
clear
limpiar la pantalla
mkdir [nombre de carpeta]
crear directorio
touch [nombre de archivo con extension]
tocar, si no encuentra el archivo, lo crea.
cp [nombre de archivo.ext] [carpeta]
copia archivo en la ruta especificada
mv [nombre de archivo.ext] [carpeta]
mueve archivos en carpeta indicada
rm [nombre de archivo]
para eliminar archivos
rmdir [nombre de carpeta]
para eliminar carpetas, cuando la carpeta esta vacia
ln -s [carpeta/archivo] [nombre de acceso simbolico]
similar a crear accesos directos en windows
permite dirigirse a la carpeta/archivo como si se llamara al original
para eliminar se usa RM, xq linux lo reconoce como archivo no como directorio a pesar que puede comportarse como tal
cat [nombre de archivo]
para ver el contenido de los archivos, tambien sirve para concatenar
concatenando-> cat [nombre de archivo1] [nombre de archivo2] > [nombre de archivo3]
nano/pico [nombre de archivo]
abre en editor de texto un archivo
printenv PATH
muestra las carpetas donde estas las aplicaciones de los sistemas
which [comando], ejm which cp
muestra la ruta donde se encuentra la aplicacion cp
export PATH=$PATH:/home/edisonaburto/programa
exporta dicha ruta al path para tener acceso a esa carpeta en cualquier ruta del sistema que uno se encuentre
history
historico de comandos ingresados al shell
control+r
busqueda inversa de comandos ingresados
find [/ruta] [filtros]
busca archivos en el disco, se le puede ingresar parametros
find /etc -type f -name "cron*"
/etc/sudoers
muestra los permisos de los usuarios, archivo se puede editar para definir permisos
adduser [nombre de usuario] [opciones]
agrega usuarios, puede permitir parametros Ejem grupos
sudo adduser luis --ingroup users
se puede ingresar al nuevo usuario si se digita: su luis
en el primer acceso de la cuenta, se puede cambiar la contrasea con el comando PASSWD
MANEJO DE CONTENIDO
head
imprime las 10 primeras lineas
se puede modificar el rango a imprimir: head a.txt -5 (para imprimir 5 primeras lineas)
tail
imprime las 10 ultimas lineas, se puede modificar el rango a imprimir: tail a.txt -5 (para imprimir 5 ultimas lineas)
cat
-imprime en shell contenido de archivo
cat ~/admin/usuarios.txt
-concatena
cat a.txt b.txt c.txt
-ingresa contenido de archivo a otro archivo
cat a.txt > b.txt
-crea archivo
cat > a.txt [enter, ingresar contenido, control+d para salir]
cat > b.txt
more
imprime en shell contenido de un archivo con paginacion, va hacia adelante (no se puede retroceder)
less
= a more, se puede ir hacia adelante y atras.
strings
para ver los caracteres ascii de un archivo binario
strings /bin/ls
chown [opcional: parametro][usuario] [carpeta/archivo]
reasigna propietario de carpeta/archivo
para que los archivos que contiene al directorio que se reasigna tambien esten afectos se coloca el parametro -R
chown -R root.root programa
chmod
asigna permisos para archivos
-rwxrwxrwx los 3 primeros caracteres es para usuario, los 3 siguientes para el grupo donde pertenece ese usuario
, los 3 ultimos para todos los demas usuarios
numero binario lectura(r) escritura(w) ejecucion (x)
0 0
1 1
2 10
3 11
4 100
5 101
6 110
7 111
crontab
surve para programar reglas como backups cada cierto tiempo,...
sudo apt-get install vsftpd
instala aplicacion servidor ftp archivo d configuracion de ftp: etc/vsftpd.conf
# Allow anonymous FTP? (Disabled by default) para q no permita loguearse en modo anonimo
anonymous_enable=NO
# Uncomment this to enable any form of FTP write command. para que los usuarios puedan escribir archivos
write_enable=YES
Allow anonymous FTP? (Disabled by default) para que los usuarios SOLO puedan tener acceso a su pc
local_umask=022
# the user does not have write access to the top level directory within the
# chroot)
chroot_local_user=YES para que los usuarios SOLO puedan tener acceso a su pc
SISTEMAS DE ARCHIVOS
unified filesystem
organizacion de archivos impuesta por el usuario
filesystem type
organizacion de archivos impuesta por linux
inode
estructura de datos que describe un archivo dentro del sistema
contiene info como tipo de archivo,permiso,tiempo,...
el inode es un archivo per se
los nombres de los archivos NO se guardan dentro del inode,
sino dentro del directorio
cada archivo tiene asociado un inode
sistema de archivo
/ root
/home/ archivos personales de los usuarios
/etc archivos de config f linux
/var guarda archivos que cambian constantemente
/mnt mount point, directorio donde se coloca un sistema de archivo
/sbin ejecutables q para ser ejecutados se necesitan privilegios de root
/bin tiene los archivos mas importantes, ejecutables criticos
/usr establece jerarquia debajo de el, como /
/media en RH media es un mount point, donde coloca filesystem que sea de tipo multimedia(cd,dvd,...)
/opt usado para instalar aplicaciones GUI
/dev archivos que genera en kernel segun el tipo de HW que tenga el servidor, no estan en disco
/proc tiene informacion del kerney y hw
man hier
contiene descripcion de cada directorio de la raiz /
LINUX SHELL
which
path(ruta) de un archivo
type
para saber si un comando es interno(buil -in) o externo del SW de la shell
alias
-poner pseudonimos a los comandos, alias dog = cat
-modifica comandos y reasigna. Ejm. rm='rm -i' => a partir de ahora cuando se ejecute rm preguntara si se desea borrar, nativamente no lo hacia.
-alias [enter] muestra todos los alias creados en el chell de linux
unalias
-elimina el alias. => unalias rm[alias creado anteriormente]
echo
para imrpimir caracteres en shell
shell expansion
permite ver el contenido del shell a detalle segun comando
para activarlo se tiene que ingresar: set - x
EJEM
activar
ejecutar echo $USER
para desabilitar : set + x
shell options
para pedir informacion que shell por defecto omite como las variables no definidas
para activar: set -u
para desactivar: set +u
EJM
activar
echo $var124
shell muestra mensaje indicando que variable no existe
OPERADOR DE CONTROL EN SHELL
; (punto y coma)
& (ampersand)
&& (doble ampersand)
||(double barra vertical)
&& || (combinacion)
# (michi)
\ (slash invertido)
TUBERIAS Y FILTROS
tee
redirecciona la salida de un input por 2 vias(2 monitor o archivo)
ejm. cat count.txt | tee temp.txt => tee imprime el contenido de cat y guarda esa info en temp.txt, si no esta creado tee lo crea
grep
busca una cadena de caracteres
cut
toma un texto y filtra en base a columnas
tr
hace traducciones
wc
cuenta palabras y lineas que tiene un archivo de texto
sort
imprime contenido pero en orden alfabetico
nota: si el texto tiene mas de una columna(varias palabras)
se puede ordenar por columna:
uniq
imprime contenido unico dentro de un archivo
nota: solo funciona si antes se ordena
comm
compara archivos segun contenido similar y unico entre arxchivos
el parametro -3 es para identificar que valor es unico en el
1er archivo asimismo con el 2do
od
imprime contenido en formato hexadecimal o octal
nota: -t x1 para formato hexadecimal
-b para octal
-c para espaciar entre caracteres
sed
busca expresiones regulares en arcxhivo de texto
device, dispositivos como discos duros, lectoras o extrailes, todo aquello q exista en el sistema estara en esta carpeta, contiene informacion de HW
guarda archivos de configuracion del sistema, no son ejecutables, sino los archivos que generan estos ejecutables
contiene carpetas personales que hay en el sistema, menos la del super usuario(root) que esta en la raiz
contiene archivos temporables necesarios para la ejecucion de algunos programas, antes estaba dentro de la carpeta VAR
ruta del shell, siempre la ruta es: /bin/bash, es la carpeta mas importante del servidor, contiene los comandos q se podran ejecutar
tambien sirve poner informacion a archivos: echo hola > archivo.txt, OJO su se realiza otra vez borra el contenido anterior y lo reemplaza por el nuevo
print working directory, indica la carpeta raiz del usuario, tambien muestra la ubucacion actual del usuario(si es que antes ha usado cd/cd ..)
tambien se usa para listar con filtros ls /bin/c* -> lista todos los archivos que inicien con c dentro de la carpeta bin
lista mas a detalle las opciones de dicho comando, ya no se esta en linea de comandos, sino se ingresa al soft man
para eliminar se usa RM, xq linux lo reconoce como archivo no como directorio a pesar que puede comportarse como tal
exporta dicha ruta al path para tener acceso a esa carpeta en cualquier ruta del sistema que uno se encuentre
imprime las 10 ultimas lineas, se puede modificar el rango a imprimir: tail a.txt -5 (para imprimir 5 ultimas lineas)
cat > b.txt
imprime en shell contenido de un archivo con paginacion, va hacia adelante (no se puede retroceder)
para que los archivos que contiene al directorio que se reasigna tambien esten afectos se coloca el parametro -R
los 3 primeros caracteres es para usuario, los 3 siguientes para el grupo donde pertenece ese usuario
archivo d configuracion de ftp: etc/vsftpd.conf
para q no permita loguearse en modo anonimo
para que los usuarios puedan escribir archivos
para que los usuarios SOLO puedan tener acceso a su pc
en RH media es un mount point, donde coloca filesystem que sea de tipo multimedia(cd,dvd,...)
archivos que genera en kernel segun el tipo de HW que tenga el servidor, no estan en disco
-modifica comandos y reasigna. Ejm. rm='rm -i' => a partir de ahora cuando se ejecute rm preguntara si se desea borrar, nativamente no lo hacia.
ejm. cat count.txt | tee temp.txt => tee imprime el contenido de cat y guarda esa info en temp.txt, si no esta creado tee lo crea