La mayoría de los comandos se ejecutan rapidamente como lo es ls o cd , pero hay algunos que tardan bastante tiempo, por ejemplo el estar copiando archivos a otro directorio, por lo cual es necesario esperar y esperar y esperar.
En el escenario descrito, la mayoría de los usuarios optarían por terminar el proceso con ctrl + c ,pero se puede suspender utilizando ctrl + z y mandarlo a un segundo plano (background), para hacer otras tareas.
Quizas suene algo confuso pero es bastante sencillo,veamos algunos ejemplos:
--Mandar un proceso a background
--Precionamos ctrl + z, para suspenderlo
oscar@ubuntu:/proc$ teamviewer
^Z
[1]+ Detenido teamviewer
--Listamos los jobs, y veremos que esta el que acabamos de suspender
oscar@ubuntu:/proc$ jobs
[1]+ Detenido teamviewer
--Lo mandamos a backgroung para ejecutarlo
oscar@ubuntu:/proc$ bg %1
[1]+ teamviewer &
--Listando los jobs, vemos que ya no esta suspendido y que esta trabajando
oscar@ubuntu:/proc$ jobs
[1]+ Ejecutando teamviewer &
--Asi podriamos tener muchos procesos trabajando en background :
oscar@ubuntu:/proc$ jobs
[1] Ejecutando teamviewer &
[2]- Detenido gedit
[3]+ Detenido top
oscar@ubuntu:/proc$ bg %2
[2]- gedit &
oscar@ubuntu:/proc$ jobs
[1] Ejecutando teamviewer &
[2]- Ejecutando gedit &
[3]+ Detenido top
--Si deseamos MATAR un job en ejecución
oscar@ubuntu:/proc$ kill %1
oscar@ubuntu:/proc$ jobs
[1] Terminado teamviewer
[2]- Ejecutando gedit &
[3]+ Detenido top
Ahora, si analizamos vemos que se necesitan 3 pasos para poner un proceso en background, pero podemos
hacerlo solo con 1 poniendo ampersand al final de un comando, para mandarlo directamente a background:
--Mandar proceso directamente a background
proc$ gedit &
[4] 2565
--Vemos que al listarlo, ya aparece como un job
oscar@ubuntu:/proc$ jobs
[1] Ejecutando teamviewer &
[2] Ejecutando gedit &
[3]+ Detenido top
[4]- Hecho gedit
--Para regresar un proceso de backgrond a la terminal usamos "fg" con el numero del job
oscar@ubuntu:/proc$ fg %2
Nota: si cerramos la terminal o sesion , todos los jobs se finalizaran.
Para evitar esto, se utiliza el comando "nohup" de esta manera se manda el proceso a background
y queda inmune a los hangups (de ahí su nombre nohup) que es cuando se cuelga
o termina la terminal o consola de la cual se ejecutó el proceso.
oscar@ubuntu:/proc$ nohup firefox
jueves, 2 de junio de 2011
jueves, 26 de mayo de 2011
Mantener una session SSH activa
O genial, por fin una solución bastante sencilla a este problema,
pues suele pasar que estamos conectados a un servidor usando ssh y MOCOS!!! se pierde la conexión , y hay q volver a conectarse y exportar variables o levantar servicios, para evitar esto , basta con hacer:
vi /etc/ssh/ssh_config
y agregar la línea
ServerAliveInterval 60
Con el número 60 indicamos que cada minuto se envien datos al servidor para mantener viva la conexión!!!!!!
FUENTE: http://www.lopst.com/?p=784
pues suele pasar que estamos conectados a un servidor usando ssh y MOCOS!!! se pierde la conexión , y hay q volver a conectarse y exportar variables o levantar servicios, para evitar esto , basta con hacer:
vi /etc/ssh/ssh_config
y agregar la línea
ServerAliveInterval 60
Con el número 60 indicamos que cada minuto se envien datos al servidor para mantener viva la conexión!!!!!!
FUENTE: http://www.lopst.com/?p=784
martes, 26 de abril de 2011
DEDOS CHUECOS
Para aquellos que tienen los dedos chuecos como yo, y en ocaciones escriben "sl" en lugar de "ls" , pues aqui tienen un tren
Para instalar este paquete solo hay que hacer:
#apt-get install sl
O si quieren ver una vaca que habla, hagan:
#apt-get cowsay
y ejecuten:
$cowsay hola campeones, y saldrá una vaca
< hola campeones >
------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
rlwrap
Algo que puede llegar a ser bastante molesto es volver a escribir una consulta, sobre todo cuando son muy largas, cosa que si puede ocacionar extrañar a WINDOWS!!!( Dios no lo quiera) para esto exite rlwrap :D
#apt-get install rlwrap
Y LISTO!!!!!!!!!!!!!!!!!!!!!!!!!!!
Tenemos nuestro Buffer en nuestra sagrada terminal al momento de usar Linux
#apt-get install rlwrap
Después de esto solo agregamos una línea a nuestro bash :p
#
vi ~/.bashrc
alias sqlplus='rlwrap sqlplus'
Y LISTO!!!!!!!!!!!!!!!!!!!!!!!!!!!
Tenemos nuestro Buffer en nuestra sagrada terminal al momento de usar Linux
~/.bashrc, ~/.bash_profile, /etc/bashrc, /etc/profile
Bien en muchas ocaciones es necesario crear alias, o exportar alguna variable, y es aqui donde entra la duda "en que archivo lo hago", bien es muy fácil:
Si queremos que estos cambios o alias se apliquen a TODOS LOS USUARIOS,
/etc/bashrc Se ejecuta cada vez que se ejecuta el programa bash
/etc/profile Se ejecuta cuando los usuarios inician sesión
Si queremos que estos cambios o alias se apliquen a SOLO UN USUARIO, tendriamos que editar alguno de estos archivos:
~/.bashrc Se ejecuta cada vez que iniciamos el programa bash
~/.bash_profile Se ejecuta cuando el usuario inicia sesión
NOTA: Recordemos que el caracter ~ significa que estamos en el home de un usuario, en otras palabras si somos el usuario oracle ~ significa /home/oracle
Si queremos que estos cambios o alias se apliquen a TODOS LOS USUARIOS,
/etc/bashrc Se ejecuta cada vez que se ejecuta el programa bash
/etc/profile Se ejecuta cuando los usuarios inician sesión
Si queremos que estos cambios o alias se apliquen a SOLO UN USUARIO, tendriamos que editar alguno de estos archivos:
~/.bashrc Se ejecuta cada vez que iniciamos el programa bash
~/.bash_profile Se ejecuta cuando el usuario inicia sesión
NOTA: Recordemos que el caracter ~ significa que estamos en el home de un usuario, en otras palabras si somos el usuario oracle ~ significa /home/oracle
lunes, 25 de abril de 2011
ORA-00132
Al tratar de iniciar la base de datos Oracle muestra el siguiente error:
SQL> startup
ORA-00119: invalid specification for system parameter LOCAL_LISTENER
ORA-00132: syntax error or unresolved network name 'LISTENER_OPROD3'
Bien si observamos un poco, vemos que esta marcando errores de sintaxis, lo que debemos hacer es lo siguiente:
1.-Editar el archivo tnsnames.ora
vi $ORACLE_HOME/network/admin/tnsnames.ora
2.-Agregar los datos del listener que está marcando error, en mi caso agrego la siguiente línea:
LISTENER_OPROD3 =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
y listo
SQL> startup
ORA-00119: invalid specification for system parameter LOCAL_LISTENER
ORA-00132: syntax error or unresolved network name 'LISTENER_OPROD3'
Bien si observamos un poco, vemos que esta marcando errores de sintaxis, lo que debemos hacer es lo siguiente:
1.-Editar el archivo tnsnames.ora
vi $ORACLE_HOME/network/admin/tnsnames.ora
2.-Agregar los datos del listener que está marcando error, en mi caso agrego la siguiente línea:
LISTENER_OPROD3 =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
y listo
miércoles, 20 de abril de 2011
Insertar millones de datos aleatorios en Oracle
Bien, hay bastantes entradas en Internacho sobre este tema, solo pondré un script para insertar y millon y medio de registros en una tabla:
begin
for i in 1..1500000 loop
insert into pruebas2 values(
i,
dbms_random.string('U', 200),
ROUND(DBMS_RANDOM.VALUE(1,1000000000)),
to_date(trunc(dbms_random.value(2454867,2455598)), 'J'),
EMPTY_BLOB()
--Opcional para hacer commit cada 1,000 registros
if mod(i,1000)=0 then
commit;
end if;
end loop;
end;
/
begin
for i in 1..1500000 loop
insert into pruebas2 values(
i,
dbms_random.string('U', 200),
ROUND(DBMS_RANDOM.VALUE(1,1000000000)),
to_date(trunc(dbms_random.value(2454867,2455598)), 'J'),
EMPTY_BLOB()
--Opcional para hacer commit cada 1,000 registros
if mod(i,1000)=0 then
commit;
end if;
end loop;
end;
/
viernes, 15 de abril de 2011
Acceder a Oracle con el usuario sys sin el privilegio de SYSDBA
Muchas veces tratamos de acceder a Oracle con el usuario "SYS" y nos muestra el siguiente error
ORA-28009: connection as SYS should be as SYSDBA or SYSOPER
Esto se soluciona de la siguiente manera
-Nos conectamos a oracle como sysdba y cambiamos el valor de O7_DICTIONARY_ACCESSIBILITY a true
SQL> conn / as sysdba
SQL> SHOW PARAMETER O7_DICTIONARY_ACCESSIBILITY
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY boolean FALSE
SQL> ALTER SYSTEM SET O7_DICTIONARY_ACCESSIBILITY=TRUE scope=spfile;
2.-Damos de baja la base de datos y la iniciamos
SQL> shutdown immediate;
SQL> startup
3.-Ahora ya podemos conectanor con el usuario sys
SQL> conn sys/lennon
Connected.
SQL> show parameter O7_DICTIONARY_ACCESSIBILITY
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY boolean TRUE
NOTA: estas conectado como el usuario sys , pero no tienes el privilegio de sysdba asi que no podras ser dios :p
SQL> shutdown immediate;
ORA-01031: insufficient privileges
SQL> show user
USER is "SYS"
FUENTE:http://arjudba.blogspot.com/2008/05/ora-28009-connection-as-sys-should-be.html
ORA-28009: connection as SYS should be as SYSDBA or SYSOPER
Esto se soluciona de la siguiente manera
-Nos conectamos a oracle como sysdba y cambiamos el valor de O7_DICTIONARY_ACCESSIBILITY a true
SQL> conn / as sysdba
SQL> SHOW PARAMETER O7_DICTIONARY_ACCESSIBILITY
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY boolean FALSE
SQL> ALTER SYSTEM SET O7_DICTIONARY_ACCESSIBILITY=TRUE scope=spfile;
2.-Damos de baja la base de datos y la iniciamos
SQL> shutdown immediate;
SQL> startup
3.-Ahora ya podemos conectanor con el usuario sys
SQL> conn sys/lennon
Connected.
SQL> show parameter O7_DICTIONARY_ACCESSIBILITY
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY boolean TRUE
NOTA: estas conectado como el usuario sys , pero no tienes el privilegio de sysdba asi que no podras ser dios :p
SQL> shutdown immediate;
ORA-01031: insufficient privileges
SQL> show user
USER is "SYS"
FUENTE:http://arjudba.blogspot.com/2008/05/ora-28009-connection-as-sys-should-be.html
lunes, 11 de abril de 2011
Conectar Perl y Oracle
Pues esto de conectar varios lenguajes con Oracle como que ya se puso de moda,jajjajaja
a diferencia de la conexión de PHP y Oracle, la conexión con Perl es muy sencilla.
Primero q nada DBI, ya debe estar instalado, que seguramente lo esta lo checamos con este comando:
perl -e 'use DBI; print $DBI::VERSION,"\n";'
Bien ahora conseguimos el modulo DBD:Oracle, lo descomprimimos y ejecutamos:
perl Makefile.PL (asegurate de tener seteadas las varibles ORACLE_HOME y LD_LIBRARY_PATH)
make
make install
y listo!!!
Hacemos un sencillo script, para ver q todo furule
#!/usr/bin/perl
$oracle_server="192.168.2.100";
$oracle_listener="listener";
$oracle_sid="XE";
$oracle_port="1522";
$oracle_user="motor";
$oracle_password="lennon";
$oracle_testing_table="dual";
use DBI;
use DBD::Oracle;
my $dbh = DBI->connect("dbi:Oracle:host=$oracle_server;port=$oracle_port;sid=$oracle_sid",
$oracle_user, $oracle_password)
or die "Impossible de se connecter à la base Oracle : " . DBI->errstr;
my $sth = $dbh->prepare("SELECT sysdate FROM $oracle_testing_table")
or die "Impossible de preparer la requette: " . $dbh->errstr;
$sth->execute()
or die "Impossible d'exécuter la requette: " . $sth->errstr;
while ( my @data = $sth->fetchrow_array() )
{
my $date = $data[0];
print "Fecha: $date\n";
}
$sth->finish;
$dbh->disconnect;
a diferencia de la conexión de PHP y Oracle, la conexión con Perl es muy sencilla.
Primero q nada DBI, ya debe estar instalado, que seguramente lo esta lo checamos con este comando:
perl -e 'use DBI; print $DBI::VERSION,"\n";'
Bien ahora conseguimos el modulo DBD:Oracle, lo descomprimimos y ejecutamos:
perl Makefile.PL (asegurate de tener seteadas las varibles ORACLE_HOME y LD_LIBRARY_PATH)
make
make install
y listo!!!
Hacemos un sencillo script, para ver q todo furule
#!/usr/bin/perl
$oracle_server="192.168.2.100";
$oracle_listener="listener";
$oracle_sid="XE";
$oracle_port="1522";
$oracle_user="motor";
$oracle_password="lennon";
$oracle_testing_table="dual";
use DBI;
use DBD::Oracle;
my $dbh = DBI->connect("dbi:Oracle:host=$oracle_server;port=$oracle_port;sid=$oracle_sid",
$oracle_user, $oracle_password)
or die "Impossible de se connecter à la base Oracle : " . DBI->errstr;
my $sth = $dbh->prepare("SELECT sysdate FROM $oracle_testing_table")
or die "Impossible de preparer la requette: " . $dbh->errstr;
$sth->execute()
or die "Impossible d'exécuter la requette: " . $sth->errstr;
while ( my @data = $sth->fetchrow_array() )
{
my $date = $data[0];
print "Fecha: $date\n";
}
$sth->finish;
$dbh->disconnect;
miércoles, 30 de marzo de 2011
InstantBird
Es algo fastidioso para los nerds como yo tener tantos clientes abiertos para estar en la vida virtual como gtalk, msn , fb y yahoo.
Jajajaja asi que InstantBird es la solución, tan sencillo como
sudo apt-get install InstantBird
y listo ya podemos configurarlo y tener algo asi como en la pantalla.
NOTA: Al configurar el facebook, no se debe de poner en el campo Username el correo electrónico como seguramente todos lo hacen al ingresar al fb, si no el nombre de usuario del fb (si no lo conoces checalo en las configuraciones de tu perfil), y los otros dos campos se quedan igual, en mi caso :
Username: oscar.lennon
Domain: chat.facebook.com
Resource: Instantbird
Aqui el sitio Oficial:
http://instantbird.com/
Respaldar Base de datos Mysql
Pues el día de hoy unos de mi compañeros borró datos de una base de datos en un servidor Windows, asi que me tocó hacer un script. Para respaldar se usa mysqldump
Antes veremos una lista de comandos para acceder a mysql:
Algunas formas de entrar desde terminal:
1.-mysql -u usuario -p
2.-mysql -uusuario -ppassword
3.-mysql -u usuarip -P 8080 -p (P hace referencia al puerto)
4.-mysql -h localhost -u usuarip -p (H hace referencia al host)
Por default el usuario es root y el password admin.
Para ver las bases de datos creadas:
show databases;
Para usar una base de datos:
use nombre__base_de_datos;
Para ver las tablas
show tables;
MYSQLDUMP
Para hacer un respaldo de una base de datos se usa mysqldump, ejemplo:
mysqldump -u root -p admin --opt base_de_datos > respaldo_base_de_datos.sql
y listo!!!!! se creará un archivo llamado respaldo_base_de_datos.sql
Para restaurar la base de datos
mysql base_de_datos < respaldo_base_de_datos.sql
Para mas opciones de este comando :
http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html
Antes veremos una lista de comandos para acceder a mysql:
Algunas formas de entrar desde terminal:
1.-mysql -u usuario -p
2.-mysql -uusuario -ppassword
3.-mysql -u usuarip -P 8080 -p (P hace referencia al puerto)
4.-mysql -h localhost -u usuarip -p (H hace referencia al host)
Por default el usuario es root y el password admin.
Para ver las bases de datos creadas:
show databases;
Para usar una base de datos:
use nombre__base_de_datos;
Para ver las tablas
show tables;
MYSQLDUMP
Para hacer un respaldo de una base de datos se usa mysqldump, ejemplo:
mysqldump -u root -p admin --opt base_de_datos > respaldo_base_de_datos.sql
y listo!!!!! se creará un archivo llamado respaldo_base_de_datos.sql
Para restaurar la base de datos
mysql base_de_datos < respaldo_base_de_datos.sql
Para mas opciones de este comando :
http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html
viernes, 25 de marzo de 2011
VirtualBOx error 0x80004005
Pues hoy me aparecio este error al inciar VitualBox:
tart tag expected, '<' not found.
Location: '/home/oz/.VirtualBox/Machines/Windows/Windows.xml',
line 1 (0), column 1.
/build/buildd/virtualbox-ose-3.1.6-dfsg/src/VBox/Main/MachineImpl.cpp[5838]
(nsresult Machine::loadSettings(bool)).
Código Resultado:
NS_ERROR_FAILURE (0x80004005)
Componente: VirtualBox Interfaz:
IVirtualBox {2158464a-f706-414b-a8c4-fb589dfc6b62}
La solución????? Fácil
1.-sudo apt-get install dkms (pa actualizar esos paquetes)
2.-cd /etc/init.d sudo ./vboxdrv setup (se tardará un ratin)
3.-Inicias VirtualBox, y se crea una nueva máquina y al pedir un
"Disco Duro Virtual"
seleccionas el que ya tenias anteriormente.
4.-LISTO!!! Jajajajajja pues asi de fácil y sencillo es esto pero me
tarde una ratón en encontrar la solución.
martes, 15 de marzo de 2011
Restaurar una base de datos usando RMAN y el control file
Pues el día de hoy se perdieron datos en la empresa, por lo cual fue necesario restaurar la base de datos a un punto anterior.
NOTA:Se contaba con respaldos generados por RMAN usando el control file.
1.-Primero se accede a la Base de datos y se verifican en donde estan los data_files, tan fácil como:
SQL> select file_name from dba_data_files;
FILE_NAME
--------------------------------------------------------------------------------
/u031/data/oracle/OPROD/users01.dbf
/u031/data/oracle/OPROD/undotbs01.dbf
/u031/data/oracle/OPROD/sysaux01.dbf
/u031/data/oracle/OPROD/system01.dbf
/u030/data/oracle/OPROD/data01.dbf
/u030/data/oracle/OPROD/data02.dbf
/u030/data/oracle/OPROD/indexes01.dbf
/u030/data/oracle/OPROD/indexes02.dbf
/u031/data/oracle/OPROD/rman_ts.dbf
En este caso se tenian los data files en diferentes directorios,regularmente es uno mismo.
Lo recomendable es mover las data files a otro directorio antes de restaurar la base de datos por si las moscas de que no salga bien.
Si se va a mover de directorio o renombrar se debe de verificar el espacio disponible y el tamaño de la base de datos
SQL> select sum(bytes)/1024/1024/1024 from dba_data_files;
SUM(BYTES)/1024/1024/1024
-------------------------
3.76098633
oracle@schnitzler:~$ df -h
/dev/sdb6 74G 2.1G 68G 3% /u030
/dev/sda7 73G 8.3G 61G 12% /u031
Vemos que si hay suficiente espacio, asi que seguimos XD
Como comentamos antes, necesitamos mover los data files a otro directorio :
Primero damos de baja la base de datos
SQL> shutdown immediate;
ahora renombramos los directorios con mv
mv /u031/data/oracle/OPROD /u031/data/oracle/OPROD_bk
mv /u030/data/oracle/OPROD /u030/data/oracle/OPROD_bk
y creamos los directorios para que no tengas problemas
mkdir /u031/data/oracle/OPROD
mkdir /u030/data/oracle/OPROD
NOTA:estos estarán vacios
Listo, ahora nos conectamos a RMAN y restauramos usando el control file
rman target / nocatalog
RMAN> startup nomount;
RMAN> restore controlfile from '/u050/respaldos_rman/backups/03_10_2011/OPROD.ctl';
Bien, en este momento se creo en control file, apartir de el crearemos la base de datos
RMAN> alter database mount;
RMAN> restore database;
Aqui se tardará un ratin dependiendo del tamaño de la base de datos, una vez terminado continuamos:
RMAN> recover database until sequence 380;
RMAN> alter database open resetlogs;
Y listo!!!! si se verifican los directorios ahi se verán los data_files XD
Bien ahora damos de baja la base de datos desde RMAN:
RMAN> shutdown immediate;
Ahora nos conectamos a Oracle y lo iniciamos podrán ver que todo esta super mega bien.
Por último no olviden reiniciar el listener!
NOTA:Se contaba con respaldos generados por RMAN usando el control file.
1.-Primero se accede a la Base de datos y se verifican en donde estan los data_files, tan fácil como:
SQL> select file_name from dba_data_files;
FILE_NAME
--------------------------------------------------------------------------------
/u031/data/oracle/OPROD/users01.dbf
/u031/data/oracle/OPROD/undotbs01.dbf
/u031/data/oracle/OPROD/sysaux01.dbf
/u031/data/oracle/OPROD/system01.dbf
/u030/data/oracle/OPROD/data01.dbf
/u030/data/oracle/OPROD/data02.dbf
/u030/data/oracle/OPROD/indexes01.dbf
/u030/data/oracle/OPROD/indexes02.dbf
/u031/data/oracle/OPROD/rman_ts.dbf
En este caso se tenian los data files en diferentes directorios,regularmente es uno mismo.
Lo recomendable es mover las data files a otro directorio antes de restaurar la base de datos por si las moscas de que no salga bien.
Si se va a mover de directorio o renombrar se debe de verificar el espacio disponible y el tamaño de la base de datos
SQL> select sum(bytes)/1024/1024/1024 from dba_data_files;
SUM(BYTES)/1024/1024/1024
-------------------------
3.76098633
oracle@schnitzler:~$ df -h
/dev/sdb6 74G 2.1G 68G 3% /u030
/dev/sda7 73G 8.3G 61G 12% /u031
Vemos que si hay suficiente espacio, asi que seguimos XD
Como comentamos antes, necesitamos mover los data files a otro directorio :
Primero damos de baja la base de datos
SQL> shutdown immediate;
ahora renombramos los directorios con mv
mv /u031/data/oracle/OPROD /u031/data/oracle/OPROD_bk
mv /u030/data/oracle/OPROD /u030/data/oracle/OPROD_bk
y creamos los directorios para que no tengas problemas
mkdir /u031/data/oracle/OPROD
mkdir /u030/data/oracle/OPROD
NOTA:estos estarán vacios
Listo, ahora nos conectamos a RMAN y restauramos usando el control file
rman target / nocatalog
RMAN> startup nomount;
RMAN> restore controlfile from '/u050/respaldos_rman/backups/03_10_2011/OPROD.ctl';
Bien, en este momento se creo en control file, apartir de el crearemos la base de datos
RMAN> alter database mount;
RMAN> restore database;
Aqui se tardará un ratin dependiendo del tamaño de la base de datos, una vez terminado continuamos:
RMAN> recover database until sequence 380;
RMAN> alter database open resetlogs;
Y listo!!!! si se verifican los directorios ahi se verán los data_files XD
Bien ahora damos de baja la base de datos desde RMAN:
RMAN> shutdown immediate;
Ahora nos conectamos a Oracle y lo iniciamos podrán ver que todo esta super mega bien.
Por último no olviden reiniciar el listener!
lunes, 7 de marzo de 2011
Conectar ORACLE con PHP usando la librería OCI8
*Requisitos previos:
Apache2 y PHP
Oracle (yo use el XE)
Bien en vdd que esto se me complico bastante, pero enseguida describiré el proceso más sencillo, para lograr este objetivo:
1.-Descargar las librerías necesarias:
apt-get install php5-dev
apt-get install php-pear
apt-get install build-essential
2.-Descargar OCI8
En otros blogs despuès de estos pasos te indican que descargues la última versión de SDK e Instant Client de Oracle, para posteriormente compilarlos con OCI8(que permite la conexiòn de oracle y php, pero esto es algo confuso, es màs fácil usar la librería pecl para hacerlo:
pecl install oci8
En seguida introduciomos nuestro $ORACLE_HOME , y se vera en la pantalla toda la instalación de OCI8
3.-Agregar oci8.so a php.ini
Ya sea usando echo
echo "extension=oci8.so" >> /etc/php5/cli/php.ini
echo "extension=oci8.so" >> /etc/php5/apache2/php.ini
o también con:
vi /etc/php5/cli/php.ini y agregar la linea extension=oci8.so
vi /etc/php5/apache2/php.ini y agregar la linea extension=oci8.so
4.-Reiniciar Apache
sudo /etc/init.d/apache2 restart
5.-Hacer prueba
--
PutEnv("ORACLE_SID=XE");
PutEnv("ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server");
PutEnv("LD_LIBRARY_PATH=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib");
$ora_conn = oci_connect('scott','lennon','database_name');
$query = "SELECT deptno FROM emp";
$stid = OCIParse($ora_conn, $query);
if (oci_execute($stid))
{
while($res=oci_fetch_array($stid,OCI_NUM + OCI_RETURN_NULLS))
{
echo $res[0]."\n";
}
}
else {
$e = oci_error();
echo "error".$e["message"] ;
}
?>
y listo! en el navegador debería verse el resultado.
ALGUNAS CONSIDERACIONES:
Puedes verificar si funciona tu ejemplo.php en terminal usando :
php ejemplo.php
si funciona y no lo hace en el navegador, se debe a que debes de "setear" las variables $ORACLE_HOME , $LD_LIBRARY_PATH y $ORACLE_SID correctamente al inicio de tu archivo.
Si no quieres hacerlo en cada archivo que hagas, puedes exportar las variables en la configuración del Apache
vi /etc/init.d/apache2
y agregar las líneas
export ORACLE_SID=XE
export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
export LD_LIBRARY_PATH=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib
Apache2 y PHP
Oracle (yo use el XE)
Bien en vdd que esto se me complico bastante, pero enseguida describiré el proceso más sencillo, para lograr este objetivo:
1.-Descargar las librerías necesarias:
apt-get install php5-dev
apt-get install php-pear
apt-get install build-essential
2.-Descargar OCI8
En otros blogs despuès de estos pasos te indican que descargues la última versión de SDK e Instant Client de Oracle, para posteriormente compilarlos con OCI8(que permite la conexiòn de oracle y php, pero esto es algo confuso, es màs fácil usar la librería pecl para hacerlo:
pecl install oci8
En seguida introduciomos nuestro $ORACLE_HOME , y se vera en la pantalla toda la instalación de OCI8
3.-Agregar oci8.so a php.ini
Ya sea usando echo
echo "extension=oci8.so" >> /etc/php5/cli/php.ini
echo "extension=oci8.so" >> /etc/php5/apache2/php.ini
o también con:
vi /etc/php5/cli/php.ini y agregar la linea extension=oci8.so
vi /etc/php5/apache2/php.ini y agregar la linea extension=oci8.so
4.-Reiniciar Apache
sudo /etc/init.d/apache2 restart
5.-Hacer prueba
--
PutEnv("ORACLE_SID=XE");
PutEnv("ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server");
PutEnv("LD_LIBRARY_PATH=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib");
$ora_conn = oci_connect('scott','lennon','database_name');
$query = "SELECT deptno FROM emp";
$stid = OCIParse($ora_conn, $query);
if (oci_execute($stid))
{
while($res=oci_fetch_array($stid,OCI_NUM + OCI_RETURN_NULLS))
{
echo $res[0]."\n";
}
}
else {
$e = oci_error();
echo "error".$e["message"] ;
}
?>
y listo! en el navegador debería verse el resultado.
ALGUNAS CONSIDERACIONES:
Puedes verificar si funciona tu ejemplo.php en terminal usando :
php ejemplo.php
si funciona y no lo hace en el navegador, se debe a que debes de "setear" las variables $ORACLE_HOME , $LD_LIBRARY_PATH y $ORACLE_SID correctamente al inicio de tu archivo.
Si no quieres hacerlo en cada archivo que hagas, puedes exportar las variables en la configuración del Apache
vi /etc/init.d/apache2
y agregar las líneas
export ORACLE_SID=XE
export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
export LD_LIBRARY_PATH=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib
ORA-27121: unable to determine size of shared memory segment
Pues creo q hoy no es mi día, pero en fin hoy tuve de miles de problemas, come este:
ERROR:
ORA-01034: ORACLE not available
ORA-27121: unable to determine size of shared memory segment
Linux Error: 13: Permission denied
la solución?
cd $ORACLE_HOME/bin
sudo chmod 6751 oracle
y listo!!!!
ERROR:
ORA-01034: ORACLE not available
ORA-27121: unable to determine size of shared memory segment
Linux Error: 13: Permission denied
la solución?
cd $ORACLE_HOME/bin
sudo chmod 6751 oracle
y listo!!!!
Desbloquear usuario sccott en Oracle
Recuerdo que algun momento cuando tomaba clases en el ITQ, tuve que instalar una base de datos y olvide desbloquear al usuario Scott y otros mas que se usaban para las prácticas, mi solución de aquellos días??? pues fué crear todas las tablas utilizando unos scripts que ni recuerdo donde estan jajajaja asumo que en $ORACLE_HOME/rdbms/admin/ pero no me consta.....
Bueno el chiste es que la solucion a este problemas es acceder a Oracle como sys , y utilizar el comando
ALTER USER username ACCOUNT UNLOCK;
y listo se le puede dar una contraseña
ALTER USER username IDENTIFIED BY password;
y ya!!!
jajajjajajajajja que fàcil no?
LOS AMO
Bueno el chiste es que la solucion a este problemas es acceder a Oracle como sys , y utilizar el comando
ALTER USER username ACCOUNT UNLOCK;
y listo se le puede dar una contraseña
ALTER USER username IDENTIFIED BY password;
y ya!!!
jajajjajajajajja que fàcil no?
LOS AMO
Robar constraseñas Oracle aprovechando el comando history
EL fin de esta entrada es ver algunos errores que seguramente usamos y que pueden usar otros usuarios para obtener nuestras credenciales de oracle.
Supongamos que solemos conectarnos a oracle asi:
sqlplus / as sysdba
sqlplus ' / as sysdba'
sqlplus scott/campeon
Esto al parecer no representa nada malo, pero la mayorìa de los usuarios de Linux saben que existe un buffer y un 'log' donde se almacenan los últimos comandos introducidos, entonces supongamos que prestamos la compu.
Pues nuestro querido amigo puede hacer lo siguiente, usar el comando history para ver los últimos comandos ingresados (regularmente este nos regresa los ùltimos 500 comandos introducidos).
Hacemos:
history | grep sqlplus
y si tenemos algo de suerte obtendremos las credenciales de algunos usuarios
1550 sqlplus
1551 sqlplus ruben/gay
1552 sqlplus janet/noni
1568 sqlplus
1572 sqlplus scott/campeon
y listo!!!!!
SOLUCION: cuando quieras iniciar oracle utiliza
sqlplus /nolog
y despuès la clausula
connect
Para evitar que se almacenen nuestras credenciales, :)
Bueno espero que ha alguien le sirva esta pequeña tranza pa hacer alguna broma :p
Supongamos que solemos conectarnos a oracle asi:
sqlplus / as sysdba
sqlplus ' / as sysdba'
sqlplus scott/campeon
Esto al parecer no representa nada malo, pero la mayorìa de los usuarios de Linux saben que existe un buffer y un 'log' donde se almacenan los últimos comandos introducidos, entonces supongamos que prestamos la compu.
Pues nuestro querido amigo puede hacer lo siguiente, usar el comando history para ver los últimos comandos ingresados (regularmente este nos regresa los ùltimos 500 comandos introducidos).
Hacemos:
history | grep sqlplus
y si tenemos algo de suerte obtendremos las credenciales de algunos usuarios
1550 sqlplus
1551 sqlplus ruben/gay
1552 sqlplus janet/noni
1568 sqlplus
1572 sqlplus scott/campeon
y listo!!!!!
SOLUCION: cuando quieras iniciar oracle utiliza
sqlplus /nolog
y despuès la clausula
connect
Para evitar que se almacenen nuestras credenciales, :)
Bueno espero que ha alguien le sirva esta pequeña tranza pa hacer alguna broma :p
Errores con el listener de Oracle (TNS-12555: TNS:permission denied)
Hace unos días felizmente instale Oracle XE en Ubuntu y funcionó.Pero unos días después al intentar iniciar el listener (para hacer la conexión con PHP) me marcaba un error:
TNError listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
TNS-12555: TNS:permission denied
TNS-12560: TNS:protocol adapter error
TNS-00525: Insufficient privilege for operation
Linux Error: 1: Operation not permitted
Y bien si uno sabe leer inglés de primaria ahi dice que hay errores con los permisos, al checarlos TODO BIEN.
NOTA:casi siempre,la base de datos se instala con el usuario Oracle, si por algun motivo no está asi, y estàs iniciando la base de datos con otros usuario (por ejemplo oscar) puedes usar el siguiente comando para solucionarlo:
groups oscar //nos devolvera la infomaciòn de a que grupos pertenece el usuario oscar, si no aparecen los grupos "oinstall" o "dba", solo haces esto
adduser oscar oinstall
adduser oscar dba
Después de Gogglear un buen rato encontré la solución, pues resulta q el gay de Oracle, guarda registros de las bases de datos que se han instalado en algùn momento en el equipo, y bueno en algunas ocaciones instale otras versiones, ¿La solución?
Verificar los registros temporales de Oracle
Ir al directorio cd /var/tmp/.oracle y verificar los permisos si todo esta bien porcedes a eliminar todos los registros o todos los referentes a la base de datos que se este utilizando
sudo rm -R * //ASEGURATE DE ESTAR EN EL DIRECTORIO /var/tmp/.oracle ANTES DE USAR ESTE COMANDO
y listo ya podemos iniciar el listener
lsnrctl start
TNError listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
TNS-12555: TNS:permission denied
TNS-12560: TNS:protocol adapter error
TNS-00525: Insufficient privilege for operation
Linux Error: 1: Operation not permitted
Y bien si uno sabe leer inglés de primaria ahi dice que hay errores con los permisos, al checarlos TODO BIEN.
NOTA:casi siempre,la base de datos se instala con el usuario Oracle, si por algun motivo no está asi, y estàs iniciando la base de datos con otros usuario (por ejemplo oscar) puedes usar el siguiente comando para solucionarlo:
groups oscar //nos devolvera la infomaciòn de a que grupos pertenece el usuario oscar, si no aparecen los grupos "oinstall" o "dba", solo haces esto
adduser oscar oinstall
adduser oscar dba
Después de Gogglear un buen rato encontré la solución, pues resulta q el gay de Oracle, guarda registros de las bases de datos que se han instalado en algùn momento en el equipo, y bueno en algunas ocaciones instale otras versiones, ¿La solución?
Verificar los registros temporales de Oracle
Ir al directorio cd /var/tmp/.oracle y verificar los permisos si todo esta bien porcedes a eliminar todos los registros o todos los referentes a la base de datos que se este utilizando
sudo rm -R * //ASEGURATE DE ESTAR EN EL DIRECTORIO /var/tmp/.oracle ANTES DE USAR ESTE COMANDO
y listo ya podemos iniciar el listener
lsnrctl start
jueves, 3 de marzo de 2011
Cambiar puerto de ssh
Tan solo se edita el siguiente archivo
vi /etc/ssh/sshd_config
y editar la linea q contien Port 22 por el nuevo puerto que se quiera asignar,
Y luego ya nomas se reinicia el servicio de ssh
sudo /etc/init.d/ssh restart
Y LISTO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
NOTA: cuando un usuario se conecte a tu máquina tendrá que indicar el puerto, ejemplo:
ssh -p 8080 oscar@192.168.2.100
vi /etc/ssh/sshd_config
y editar la linea q contien Port 22 por el nuevo puerto que se quiera asignar,
Y luego ya nomas se reinicia el servicio de ssh
sudo /etc/init.d/ssh restart
Y LISTO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
NOTA: cuando un usuario se conecte a tu máquina tendrá que indicar el puerto, ejemplo:
ssh -p 8080 oscar@192.168.2.100
jueves, 24 de febrero de 2011
¿Cómo instalar apache en Linux?
Bien para este caso yo usé Ubuntu 10.10
+Instalar apache
sudo apt-get install apache2
y ya! asi de fácil, si se quiere iniciar o detener o reinicar solo basta hacer
/etc/init.d/apache2 start
/etc/init.d/apache2 stop
/etc/init.d/apache2 restart
Para acceder solo basta con http://localhost/
+Ahora se deben de agregar los "modulos que se usarán", seguramente usarás PHP, la versión mas reciente es la 5 , asi que solo haces.
sudo apt-get install php5
y listo!!!!!
+Agregar un sitio web
Solo basta con crear una carpeta en el directorio /var/www/
-Haremos un hola mundo como ejemplo XD
1.-Creamos la carpeta donde se alojará el sitio web
mkdir /var/www/pagina
si hacemos http://localhost/pagina/ veremos que está vacio, entonces agregamos nuestra
primera página web
Bien ahora hacemos el tipico hola mundo y lo guardamos el el directorio /var/www/pagina/ con el nombre que deseamosyo le voy a poner hola_mundo.php
echo "Hola mundo"
?>
para acceder solo tenemos que poner en un navegador
http://localhost/pagina/ y seleccionar el programa que hemos creado.
O también se puede hacer con http://localhost/pagina/hola_mundo.php
JAJAJAJAJAJAJAJA que cool.
+Cambiar puerto
Si necesitas cambiar el puerto solo necesitas editar el fichero ports.conf
vi /etc/apache2/ports.conf
Y cambiar el puerto por el que se decea usar
Listen 8080
Y reiniciar apache
/etc/init.d/apache2 restart
Y LISTO!!!!!!!!!
Para acceder será necesario poner el puerto http://localhost:8080
Ejemplo:
http://localhost/pagina:8080
+¿Te pregunta tu navegador si quieres descargar el fichero php en lugar de mostrarlo?
Si Apache no está 'parseando' el php después de reiniciarlo, instala libapache2-mod-php5.
Éste se instala al instalar el paquete php5, pero puede haber sido eliminado sin que nos demos cuenta por paquetes que necesitan ejecutar
una versión diferente de php.
También puede que necesites habilitarlo, haciendo
sudo a2enmod php5
seguido de
sudo /etc/init.d/apache2 restart.
Asegúrate de limpiar la caché de tu navegador antes de volver a probar tu sitio.
Para mas dudas sobre como agregar modulos http://doc.ubuntu-es.org/LAMP
+Instalar apache
sudo apt-get install apache2
y ya! asi de fácil, si se quiere iniciar o detener o reinicar solo basta hacer
/etc/init.d/apache2 start
/etc/init.d/apache2 stop
/etc/init.d/apache2 restart
Para acceder solo basta con http://localhost/
+Ahora se deben de agregar los "modulos que se usarán", seguramente usarás PHP, la versión mas reciente es la 5 , asi que solo haces.
sudo apt-get install php5
y listo!!!!!
+Agregar un sitio web
Solo basta con crear una carpeta en el directorio /var/www/
-Haremos un hola mundo como ejemplo XD
1.-Creamos la carpeta donde se alojará el sitio web
mkdir /var/www/pagina
si hacemos http://localhost/pagina/ veremos que está vacio, entonces agregamos nuestra
primera página web
Bien ahora hacemos el tipico hola mundo y lo guardamos el el directorio /var/www/pagina/ con el nombre que deseamosyo le voy a poner hola_mundo.php
echo "Hola mundo"
?>
para acceder solo tenemos que poner en un navegador
http://localhost/pagina/ y seleccionar el programa que hemos creado.
O también se puede hacer con http://localhost/pagina/hola_mundo.php
JAJAJAJAJAJAJAJA que cool.
+Cambiar puerto
Si necesitas cambiar el puerto solo necesitas editar el fichero ports.conf
vi /etc/apache2/ports.conf
Y cambiar el puerto por el que se decea usar
Listen 8080
Y reiniciar apache
/etc/init.d/apache2 restart
Y LISTO!!!!!!!!!
Para acceder será necesario poner el puerto http://localhost:8080
Ejemplo:
http://localhost/pagina:8080
+¿Te pregunta tu navegador si quieres descargar el fichero php en lugar de mostrarlo?
Si Apache no está 'parseando' el php después de reiniciarlo, instala libapache2-mod-php5.
Éste se instala al instalar el paquete php5, pero puede haber sido eliminado sin que nos demos cuenta por paquetes que necesitan ejecutar
una versión diferente de php.
También puede que necesites habilitarlo, haciendo
sudo a2enmod php5
seguido de
sudo /etc/init.d/apache2 restart.
Asegúrate de limpiar la caché de tu navegador antes de volver a probar tu sitio.
Para mas dudas sobre como agregar modulos http://doc.ubuntu-es.org/LAMP
miércoles, 16 de febrero de 2011
CRON
CRON
Un "cron" es una tarea programada, que se ejecuta de manera automàtica en un equipo.
Su uso es muy amplio, desde una simple tarea de copiar archivos hasta donde llegue tu imaginaciòn :p
Su uso es muy sencillo
Para agregar o quitar un tarea se usa el siguiente comando
crontab -e (la letra e es de editar XD)
y se especifica de la siguiente manera
minuto hora dia_del mes dia de la semana comando
ejemplo:
Ejecutar una tarea todos los dìas a las 1:06 p.m.
6 13 * * * sh /u050/respaldos_rman/script_rman/crear_respaldos.sh
Ejecutar una tarea cada 3 minutos
*/3 * * * sh /u050/respaldos_rman/script_rman/crear_respaldos.sh
Ejecutar una tarea en el minuto 20 y 30 de cada hora
20,30 * * * * /usr/bin/who
Para listar las tareas
crontab -l (la letra l es de lista XD)
Una vez que se realice la tarea, te dira la terminal que tienes un nuevo correo , indicando que la tarea
se realizo, para leerlo
nano /var/mail/nombre_usuario
Si se quiere evitar esto , se puede redireccionar la salida
6 13 * * * sh crear_respaldos.sh> /dev/null 2>&1
Tambièn se puede utilizar la salida con un archivo de log
6 13 * * * sh crear_respaldos.sh>>/u050/respaldo_log
Es importante mencionar que cada usuario del sistema operativo tiene su propio cron, regularmente quien las ejecuta es root.
Un "cron" es una tarea programada, que se ejecuta de manera automàtica en un equipo.
Su uso es muy amplio, desde una simple tarea de copiar archivos hasta donde llegue tu imaginaciòn :p
Su uso es muy sencillo
Para agregar o quitar un tarea se usa el siguiente comando
crontab -e (la letra e es de editar XD)
y se especifica de la siguiente manera
minuto hora dia_del mes dia de la semana comando
ejemplo:
Ejecutar una tarea todos los dìas a las 1:06 p.m.
6 13 * * * sh /u050/respaldos_rman/script_rman/crear_respaldos.sh
Ejecutar una tarea cada 3 minutos
*/3 * * * sh /u050/respaldos_rman/script_rman/crear_respaldos.sh
Ejecutar una tarea en el minuto 20 y 30 de cada hora
20,30 * * * * /usr/bin/who
Para listar las tareas
crontab -l (la letra l es de lista XD)
Una vez que se realice la tarea, te dira la terminal que tienes un nuevo correo , indicando que la tarea
se realizo, para leerlo
nano /var/mail/nombre_usuario
Si se quiere evitar esto , se puede redireccionar la salida
6 13 * * * sh crear_respaldos.sh> /dev/null 2>&1
Tambièn se puede utilizar la salida con un archivo de log
6 13 * * * sh crear_respaldos.sh>>/u050/respaldo_log
Es importante mencionar que cada usuario del sistema operativo tiene su propio cron, regularmente quien las ejecuta es root.
Consideraciones al crear scripts en shell con oracle
Consideraciones al crear scripts en shell con oracle
1.-La primera linea debe de indicar el tipo de shell que se va a utilizar
#!/bin/sh
#!/bin/bash
2.-Verificar las variables de ambiente si el script se va a ejecutar en otro host, o si se va a añadir a un cron, es necesario colocar esta informaciòn para que no existan problemas durante
la ejecuciòn del script
export ORACLE_HOME=/u020/apps/oracle/product/11.2.0
export ORACLE_SID=OPROD
PATH=$ORACLE_HOME/bin:$PATH
3.-Es recomendable diseñar logs, para ver los errores inesperados que puedan suceder.
1.-La primera linea debe de indicar el tipo de shell que se va a utilizar
#!/bin/sh
#!/bin/bash
2.-Verificar las variables de ambiente si el script se va a ejecutar en otro host, o si se va a añadir a un cron, es necesario colocar esta informaciòn para que no existan problemas durante
la ejecuciòn del script
export ORACLE_HOME=/u020/apps/oracle/product/11.2.0
export ORACLE_SID=OPROD
PATH=$ORACLE_HOME/bin:$PATH
3.-Es recomendable diseñar logs, para ver los errores inesperados que puedan suceder.
viernes, 14 de enero de 2011
Acceder a una NAS desde Linux
Suponiendo que tienes una NAS y deseas acceder a ella por tu red local, puedes hacer lo siguiente.
1.-Crear una carpeta
mkdir /media/nas
2.-Montar la particion con la siguiente sintaxis:
mount -t cifs -o user=usuario_nas,password=contrasena_nas //ip/recurso_compartido /media/nas
El usuario y contraseña son los que utilizas para acceder a la NAS
Ejemplo:
mount -t cifs -o user=john,password=lennon //192.168.1.200/Datos /media/nas
Pero tendras que hacer esto cada vez que prendas tu equipo, si deseas acceder a la NAS desde que el equipo se enciendo
1.- Edita /etc/fstab y agregar esta linea
//192.168.1.200/Datos /media/nas cfis user=john,password=lennon,_netdev 0 0
1.-Crear una carpeta
mkdir /media/nas
2.-Montar la particion con la siguiente sintaxis:
mount -t cifs -o user=usuario_nas,password=contrasena_nas //ip/recurso_compartido /media/nas
El usuario y contraseña son los que utilizas para acceder a la NAS
Ejemplo:
mount -t cifs -o user=john,password=lennon //192.168.1.200/Datos /media/nas
Pero tendras que hacer esto cada vez que prendas tu equipo, si deseas acceder a la NAS desde que el equipo se enciendo
1.- Edita /etc/fstab y agregar esta linea
//192.168.1.200/Datos /media/nas cfis user=john,password=lennon,_netdev 0 0
Instalar Fluxbox en Linux
-Instalar Flubox
sudo apt-get install Fluxbox
Una vez instalado reiniciar el equipo o cerrar sesion , al solicitarnos nuestros datos para loguearnos seleccionas fluxbox como el gestor de ventanas.
Una vez seleccionado entraras a tu nuevo entorno de escritorio, ya hay bastantes blogs que hablan de la estructura de Fluxbox y de como utilizarlo, asi que solo veremos como cargar algunos iconos y el problema comùn del sonido.
-Quizas necestites algunos iconos en tu barra para conectare a una red , o ver el estado de la baterìa.
abres una terminal (alt + f1)
y editas el archivo .fluxbox/startup ( ya sea con nano o vi)
nano .fluxbox/startup
y agregas estas lineas
nm-applet &
gnome-power-manager &
NOTA: Asegurate que se antes de la linea que contien "exec fluxbox"
Para el sonido hay de 2 sopas , ambas deben de ser editando el archivo /home/profile.fluxbox/
La primera es agregar esto
None XF86AudioLowerVolume :ExecCommand amixer -c 0 set Master 5%-
None XF86AudioRaiseVolume :ExecCommand amixer -c 0 set Master 5%+
None XF86AudioMute :ExecCommand amixer -q set Master toggle
La segunda es usar el comando xev, para ver el keycode de cada tecla y posteriormente agragarlo al archivo mensionado
EJEMPLO 1
176 :Exec amixer sset Master,0 1+
174 :Exec amixer sset Master,0 1-
160 :Exec amixer sset Master,0 toggle
EJEMPLO 2
176: ExecCommand amixer -c 0 set Master 5%-
174: ExecCommand amixer -c 0 set Master 5%+
160:ExecCommand amixer -q set Master toggle
-Ahora si te preguntas como ver tus archivos, como solias hacerlo en gnome puedes usar nautilus ( propio de Gnome)
alt + f2 nautilus
pero tendras el problema de que nautilis se "apodera" de alguna forma del entorno de escritorio asi que necesitaras otros para q no te pase esto
puedes intentar con thunar, rox , dolphin (propio de KDE)
yo prefiero thunar asi que hago
sudo apt-get install thunar
y posteriormente
alt + f2 thunar
Activar y desactivar el MODO ARCHIVE LOG de ORACLE
MODO ARCHIVE ORACLE
-Para verificar si esta activo utilizamos el comando
archive log list
-Activar el modo archive
startup mount;
alter database archivelog;
- Despues abrimos nuestra base de datos y activamos el archivado automático
alter database open
alter system archive log start
-DESACTIVACIÓN DEL MODO ARCHIVELOG
startup mount
alter database noarchivelog
- Abrimos la base de datos y Desactivamos el archivado automático
alter database open
alter system archive log stop
-Para verificar si esta activo utilizamos el comando
archive log list
-Activar el modo archive
startup mount;
alter database archivelog;
- Despues abrimos nuestra base de datos y activamos el archivado automático
alter database open
alter system archive log start
-DESACTIVACIÓN DEL MODO ARCHIVELOG
startup mount
alter database noarchivelog
- Abrimos la base de datos y Desactivamos el archivado automático
alter database open
alter system archive log stop
Suscribirse a:
Entradas (Atom)