Skip to content

Instantly share code, notes, and snippets.

@dualbus
dualbus / README
Last active December 28, 2015 05:59
Cómo ejecutar un shell script como root de forma segura
1) Linux no permite scripts suid; y si se pudiera, hacerlo sería
*demasiado* estúpido. ¿La razón? cualquier usuario del sistema ahora
puede reiniciar tu servicio. Si te comprometen el FTP, y obtienen un
shell como ftp, boom, adios.
2) El esquema con dos usuarios, www-data y root, con www-data en
sudoers. Claro que puedes utilizar las facilidades de «sudo» para
limitar qué comandos puede ejecutar www-data. De esta forma, puedes
tener una entrada como:
#!/usr/bin/env python
import sys
credit = 200
prices = [150, 24, 79, 50, 88, 345, 3]
n = len(prices)
k = 0
sort = sorted(enumerate(prices), key=lambda x:x[1])
r = n - 1
#!/usr/bin/awk -f
BEGIN {
state = "base";
}
{
length_of_line = length;
for (i = 1; i <= length_of_line + 1; i++) {
#!/bin/bash
trap 'rm -rf "$tempdir"' EXIT
tempdir=$(mktemp -d)
cd "$tempdir" || exit 1
printf '%s\n' \
'(return 2>/dev/null); echo $?' \
> bash_return
@dualbus
dualbus / gist:5457531
Created April 25, 2013 04:38
Montando particiones
Supón que el disco duro es un gran arreglo. Se vería de la siguiente forma:
[ ][ ][ ][ ]...[ ]
Tradicionalmente el disco duro (arreglo) se particiona. Es decir, se segmenta el arreglo en sub-arreglos
todo con la intención de organizar el uso del disco, o destinar cada parte a una aplicación diferente.
Entonces, las particiones son elementos *físicos* de tu disco duro. Dentro de cada partición se usa un
"sistema de archivos". Este sistema de archivos permite al sistema operativo hacer un uso óptimo del
arreglo de bytes, es decir, guardar bloques de datos de forma eficiente, permitir que los bloques