Category Archive blog

Poradmin

Crear lanzador de un archivo binario en ubuntu / Linux Mint

Crear un lanzador o acceso directo al bin de algun programa o software en inux es más fácil de lo que se piensa utilizando la herramienta gnome-panel que linux tiene para nosotros. Para ello sólo basta ejecutar los siguientes comandos en nuestra terminal.

Leer más

Poradmin

Linux: Conectar por SSH con una llave pem apartir de una llave ppk

Conectar por SSH con  una llave pem apartir de una llave ppk utilizando la heramienta puttygen con Linux.

Leer más

PorErik Guerrero V.

Tutorial Rápido MongoDB – Parte 3

INDICE

11.-UPDATE
12.-REMOVE
13.-DROP
14.-DROPDATABASE
15.-BETWEEN

Leer más

PorErik Guerrero V.

Tutorial Rápido MongoDB – Parte 2

INDICE

6.-FIND
7.-FINDONE
8.-WHERE
9.-WHERE NOT
10.-SAVE (ACTUALIZAR)

Leer más

PorErik Guerrero V.

Tutorial Rápido MongoDB – Parte 1

¿Que es MongoDB?

MongoDB es una base de datos orientada a documentos. Esto quiere decir que en lugar de guardar los datos en registros, guarda los datos en documentos. Estos documentos son almacenados en BSON, que es una representación binaria de JSON.

Comandos:

INDICE

1.-SHOW DATABASES
2.-USE
3.-SHOW COLLECTIONS
4.-CREAR VARIABLE EN MEMORIA (DOCUMENTO EN MEMORIA)
5.-INSERT

Leer más

PorErik Guerrero V.

Instalar MongoDB en Centos 7

Instalación

1.-Agregamos el repo de MongoDB.

$ sudo nano /etc/yum.repos.d/mongodb-org.repo

[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

$ yum repolist

. . .
repo id repo name
base/7/x86_64 CentOS-7 – Base
extras/7/x86_64 CentOS-7 – Extras
mongodb-org-3.2/7/x86_64 MongoDB Repository
updates/7/x86_64 CentOS-7 – Updates
. . .

2.- Instalación en modo superusuario
$ sudo yum install mongodb-org

3.- Iniciando el servicio de MongoDB

$ sudo systemctl start mongod
Nota: mongod process reads the configuration file, /etc/mongod.conf

4.-Reiniciando el servicio
$ sudo systemctl reload mongod
$ sudo systemctl stop mongod
$ sudo tail /var/log/mongodb/mongod.log

MongoDB Shell

$ mongo

Nota:

*MongoDB es una aplicación con hilos. Puede iniciar procesos adicionales para manejar su carga de trabajo. La advertencia establece que, para que MongoDB sea más efectivo, la cantidad de procesos que está autorizado a generar debería ser la mitad de la cantidad de archivos que puede tener abiertos en cualquier momento. Para resolver la advertencia, modifique el valor de límite suave de procesos para mongod editando el archivo 20-nproc.conf

$ sudo vi /etc/security/limits.d/20-nproc.conf

Luego:

$ sudo systemctl restart mongod

Probando
*Verificación de inicio:

$ systemctl is-enabled mongod; echo $?

Output
. . .
enabled
0

En el caso de un daemon desactivado, use la utilidad systemctl para habilitarlo:

sudo systemctl enable mongod

Datos de prueba

$ cd /tmp

$ curl -LO https://raw.githubusercontent.com/mongodb/docs-assets/primer-dataset/primer-dataset.json

$ mongoimport –db test –collection restaurants –file /tmp/primer-dataset.json

$ mongo

El shell selecciona la base de datos de prueba por defecto, que es donde importamos nuestros datos. Consulte la colección de restaurantes con el método find () para mostrar una lista de todos los restaurantes en el conjunto de datos. Como la colección contiene más de 25,000 entradas, use el método de límite opcional () para reducir el resultado de la consulta a un número específico. Además, el método pretty () hace que la información sea más legible por humanos con nuevas líneas e indentaciones.

> db.restaurants.find().limit( 1 ).pretty()

Puede seguir usando el conjunto de datos de muestra para familiarizarse con MongoDB o eliminarlo con el método:

db.restaurants.drop ():

PorErik Guerrero V.

Instalar Go en Centos 7

Instalación

$ cd /tmp
$ curl -LO https://storage.googleapis.com/golang/go1.7.linux-amd64.tar.gz
$ shasum -a 256 go1.7*.tar.gz

Nota: En caso no reconiciera el comando shasum, ejecutar el siguiente comando:

$ yum install perl-Digest-SHA -y

Salida:
d70eadefce8e160638a9a6db97f7192d8463069ab33138893ad3bf31b0650a79 go1.9.linux-amd64.tar.gz

$ sudo tar -C /usr/local -xvzf go1.7.linux-amd64.tar.gz
$ mkdir -p ~/projects/{bin,pkg,src}
$ sudo nano /etc/profile.d/path.sh

Agregar:
export PATH=$PATH:/usr/local/go/bin

$ nano ~/.bash_profile
Agregar:
export GOBIN=$HOME/projects/bin
export GOPATH=$HOME/projects/src

$ source /etc/profile && source ~/.bash_profile

Probando

$ nano ~/projects/src/hello.go

Agregar:
package main
import “fmt”
func main() {
fmt.Printf(“Hello, World!\n”)
}

$ go install $GOPATH/hello.go
$ $GOBIN/hello

Salida:

Hello, World!

PorErik Guerrero V.

Como crear un usuario con todos los privilegios en Oracle

Para crear un usuario en Oracle con todos los privilegios de la forma más simple es ejecutando el siguiente script desde el editor de SQL.

CREATE USER <NOMBRE_DEL_USUARIO> IDENTIFIED BY <PASSWORD_DEL_USUARIO>;

GRANTALL PRIVILEGES TO <NOMBRE_DEL_USUARIO>;

GRANT EXECUTE ANY PROCEDURE TO <NOMBRE_DEL_USUARIO>;
GRANT UNLIMITED TABLESPACE TO <NOMBRE_DEL_USUARIO>;

PorErik Guerrero V.

Descargar una Página Web Completa con Linux (desde la terminal)

Si alguna vez necesita descargar un sitio web completo, quizás para verlo fuera de línea, wget puede hacer
trabajo, por ejemplo:

$ wget \
     --recursive \
     --no-clobber \
     --page-requisites \
     --html-extension \
     --convert-links \
     --restrict-file-names=windows \
     --domains website.org \
     --no-parent \
         www.web.org/tutorials/html/

Las opciones son:

--recursive: descargar todo el sitio web.

--domains website.org: no sigas enlaces fuera de website.org.

--no-parent: no seguir enlaces fuera del directorio tutorials / html /.

--page-requisites: obtiene todos los elementos que componen la página (imágenes, CSS, etc.).

--html-extension: guarda archivos con la extensión .html.

--convert-links: convierte enlaces para que funcionen localmente, fuera de línea.

--restrict-file-names = windows: modifique los nombres de los archivos para que también funcionen en Windows.

--no-clobber: no sobrescribir ningún archivo existente (utilizado en caso de que la descarga se interrumpa y
reanudado).

Aplicación:

$ cd ~/Descargas
$ mkdir web
$ cd web
$ wget --recursive www.web.org/tutorials/html/

Y eso sería todo.



 
PorErik Guerrero V.

GIT FACIL

GIT fácil, empecemos: (Antes revisar la guía de instalación)

Nota: Para eliminar los archivos .git de un proyecto
$ rm -rf .git

1.-Creamos o nos posicionamos dentro de la carpeta que deseamos iniciar nuestro repositorio.

$ mkdir folder

$ cd folder

2.-Datos del usuario inicial

$ git config –global user.name “root”
$ git config –global user.email “root@email.com”
— Activar los colores para diferenciar los status de los archivos
$ git config –global color.ui true
3.-Iniciar monitoreo de carpeta (en local)

$ git init

4.-Ver status

$ git status

5.-Agregamos un archivo (en nuestra copia local)

$ git add archivo1.css

6.-Agregamos todos los archivos(en nuestra copia local)

$ git add -A //si deseamos solo para un archivo ponemos $ git add <FineName>

7.-Hacemos un Commit (Guardamos los cambios en nuestra copia local)

$ git commit -m “Inicializacion de repositorio”

8.-Log de cambios (nuestra copia local)

$ git log

commit c84bf385f1f1e2b5341a459ee037dc9f5e7aed7b
Author: root <root@folder>
Date: Fri Oct 13 01:24:46 2017 -0500

Segundo cambio al boton

commit 452be706cc014ef32eaf2386b918ca0543f8d69c
Author: root <root@folder>
Date: Fri Oct 13 01:23:33 2017 -0500
9.-Viajando en el tiempo (los codigos que sale en el log example: commit c84bf385f1f1e2b5341a459ee037dc9f5e7aed7b)

*Si deseamos regresamos al commit señalado, ello hace que el archivo regrese con su contenido al punto señalado

$ git checkout 469872c48717238bce453ffa22ac503a5ac04d48

*Si deseamos regresa al ultimo commit

$ git checkout master

 

10.-Eliminar commit

(*)git reset –soft <CODIGO COMMIT> : No toca nuestro codigo solo elimina el commit
$ git log

Resultado :Mostrará 2 commits

Extraemos el codigo (example: 452be706cc014ef32eaf2386b918ca0543f8d69c)

$ git reset –soft 452be706cc014ef32eaf2386b918ca0543f8d69c

$ git log

Resultado: Mostrará solo 1 commits

Eliminará el commit señalado, al hacer nuevamente git status mostrará los archivos que estará nuevamente para hacer commit

# On branch master
# Changes to be committed:
# (use “git reset HEAD <file>…” to unstage)
#
# modified: test.html
#

(*)git reset –hard <CODIGO COMMIT> : toca nuestro codigo elimina todo (codigo + commit)

Ramas (Branch)

En cada rama se guarda commits distintos excepto cuando se crea una nueva rama hereda los commits de la rama actual en que estemos posicionados

1.-Ver en que rama estamos

$ git branch //-a ver todas las ramas // -r ver todas las ramas remotas
2.-Crear una rama

$ git branch <NUEVA_NOMBRE_RAMA> (Ejemplo: git branch test, se creará la rama test)

3.-Ir de rama en rama

$ git checkout <NUEVA_NOMBRE_RAMA> (Ejemplo: git checkout test)

4.- Eliminar rama

$ git branch -d <NOMBRE_RAMA> (Ejemplo: git branch -d test)

5.- Combinar ramas:

Esto si deseamos pasar los cambios de una rama a otra, para ello nos posicionamos en la rama
que va a absorver los cambios(Ejemplo: nos posicionamos en branch master el cual va a absorver lo de test)

* Posicionamos en la Rama que va a absorver los cambios

$ git checkout master
Resultado: Switched to branch ‘master’

* Rama el cual vamos a traer los cambios(commits)
$ git merge test

Resultado:
Updating 108b4e4..fd29486
Fast-forward
index.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Observamos  los cambios
$ git logs