Category: Informations générales

Informations générales

Top 5 – Open Source Network et suivi des performances + système d’alerte

Top 5 – Open Source Network et suivi des performances + système d’alerte

Introduction – La surveillance de votre réseau et des applications diverses est partie la plus importante de votre bussiness. Donc, le choix des outils de surveillance est essentielle et la plus importante tâche, parce que vous aurez répondu entièrement sur cet outil pour avertir quand quelque chose va mal!

1) Nagios – est un moniteur populaire ouverte système de l’ordinateur source, la surveillance du réseau et l’application des logiciels d’infrastructure de surveillance. Nagios offre une surveillance complète et d’alerte pour les serveurs, les commutateurs, les applications et les services et est considéré comme l’industrie de facto
standard. Nagios supporte deux types de surveillance active et passive. En cas de nagios de surveillance active des horaires ou vérifie activement les services mentionnés, tandis que dans le cas de contrôles passifs, application externe peut être utilisé pour soumettre les résultats des contrôles de service.
– Pour les contrôles passifs LSRN (Nagios Service Check Acceptor) démon doit s’exécuter sur le serveur Nagios pour recevoir les contrôles passifs sur le réseau, qui présenteront des contrôles passifs à Nagios via socket unix.
– Pour les contrôles Acitive NRPE (Nagios Plugin Executor à distance) démon doit s’exécuter sur la machine distante pour surveiller les services. Cependant, vous pouvez utiliser SSH ainsi.

Pour surveiller les hôtes distants et les services communautaires nagios plugins vous fournir quelques comme le montre ci-dessous …
* Nrpe – Démon NRPE se déroulera sur des machines distantes et Nagios services chèques sur des hôtes distants via plugin check_nrpe (commande) à partir d’hôtes nagios.
* Check_MK – Le meilleur plugin nagios pour surveiller l’hôte distant. La beauté de ce plugin est que la plupart des services communaux sont contrôlés dans une connexion à des hôtes distants et les résultats sont présentés comme des résultats passifs à Nagios. Cela améliore les performances, moins de trafic réseau et bien sûr pas de charge ou un fardeau sur l’hôte distant (que nous suivons). Pour Check_MK, nous avons à l’agent installé check_mk c.-à-check_mk_agent script shell simple et lier ce script pour 6556 en utilisant le port TCP démon xinetd. Check_MK fournit également des fonctionnalités suivantes.
– Soutien Check_MK dynamique nagios configuration de la génération, l’inventaire des contrôles.
– Livestatus – un plugin belle pour communiquer avec nagios (socket unix)
– Nagios multisite GUI – nagios plusieurs moniteurs à partir de l’interface Web unique basé sur
– Prend en charge SNMP et des détections automatiques de services pour les commutateurs Cisco, les routeurs et de nombreux filers NetApp ainsi.
Nagios multisite GUI – Une autre beauté de Check_MK nagios nagios plugin est montoring multiples en utilisant une seule interface Web. Cette interface web usese Check_MK Livestatus plug-in pour obtenir des données nagios.
Check_MK – http://mathias-kettner.de/
URL – http://www.nagios.org/~~V
Auteur – Ethan Galstad

2) Ganglions – est une solution évolutive outil distribué moniteur système pour les systèmes informatiques de haute performance telles que les clusters et les grilles. Il permet à l’utilisateur de visualiser à distance des statistiques en direct ou historique (comme les moyennes de charge CPU ou de l’utilisation du réseau) pour toutes les machines qui sont surveillés. Ganglions est très utile pour savoir l’utilisation des applications ou de l’équipe des ressources sage même dans un environnement en cluster. Nous devons installer gmond (démon moniteur ganglions) sur chaque machine (en groupe ou cluster) qui recueille toutes les stats.
gmetad (démon métadonnées ganglions) ont besoin d’installé sur un usinés dans le groupe ou cluster qui permettra de recueillir des données à partir de serveurs gmond spécifiées.
URL – http://ganglia.info/~~V

3) Les cactus – est une open source, outil graphique basé sur le Web (frontend pour RRDtool). Cacti permet à un utilisateur de services de sondage à des intervalles prédéterminés et graphique des données qui en résultent. Il est généralement utilisé pour des graphes de séries chronologiques de données de paramètres tels que la charge CPU et l’utilisation de la bande passante réseau. Cacti est préférable de surveiller les périphériques matériels comme les commutateurs, les routeurs via SNMP.
URL – http://www.cacti.net/

4) Zabbix – Il est conçu pour surveiller et suivre le statut de divers services réseau, serveurs, matériel et autre réseau. Il utilise MySQL, PostgreSQL, SQLite, Oracle ou IBM DB2 pour stocker les données. Sa partie postérieure est écrit en C et l’interface web est écrite en PHP.
Zabbix offre des options de suivi de plusieurs. Un agent Zabbix peut également être installé sur les hôtes UNIX et Windows pour surveiller les statistiques comme la charge CPU, l’utilisation du réseau, espace disque, etc
Comme une alternative à l’installation d’un agent sur les hôtes, Zabbix prend en charge la surveillance via SNMP, TCP et ICMP contrôles, ainsi que sur IPMI, SSH, telnet et en utilisant des paramètres personnalisés.
Zabbix prend en charge une variété de mécanismes de notification en temps réel. Beauté de Zabbix est notifications XMPP!
URL – http://www.zabbix.com/
Auteur – Alexei Vladishev

5) Zenoss – Zenoss (Zenoss Core) est une application open-source, le serveur, et la plate-forme de gestion de réseau basée sur le serveur d’application Zope.
URL – http://www.zenoss.com/

NOTE – Cette liste est basée sur l’expérience personnelle et le choix de nombreux membres de la communauté IndianGNU.

Je vous remercie,
Arun Bagul

Comment utiliser de la RAM (physique) en tant que disque

Comment utiliser de la RAM (physique) en tant que disque

introduction –
Parfois, pour gagner en performance, mémoire physique peut être utilisé comme espace disque qui est très rapide de comparer sur le disque dur normal.
Alors, comment je peux utiliser de la RAM est un disque? passer par ces étapes.

Étape 1) Créer un répertoire comme le montre ci-dessous où vous voulez monter la RAM comme disque

root @ arunbagul: ~ # mkdir-p / tmp / ram
root @ arunbagul: ~ # ls / tmp / ram
root @ arunbagul: ~ #

Étape 2) de montage RAM c.-à-tmpfs au point de montage “/ tmp / ram” répertoire-

root @ arunbagul: ~ # mount-t tmpfs-o size = tmpfs 10M / tmp / ram /

* Vérification de la montée sur pas?

root @ arunbagul: ~ # df-h
Système de fichiers Taille% Utilisé utilisation Avail Monté sur
tmpfs 10M 10M 0 0% / tmp / ram

** De monter cette entrée définitivement ajouter dans / etc / fstab comme indiqué ci-dessous.

root @ arunbagul: ~ # cat / etc / fstab

….

tmpfs / tmp / ram par défaut tmpfs, size = 10m 0 0

root @ arunbagul: ~ #

– Pour monter cette commande mount utilisation (ce sera de monter tous les points de montage indiqués dans fstab)

root @ arunbagul: ~ # mount-a

Je vous remercie,
Arun Bagul

IndianGNU.org – quatrième anniversaire!

IndianGNU.org – quatrième anniversaire!

Bonjour à tous,

Aujourd’hui, nous célébrons le quatrième anniversaire! Nous avons complété avec succès quatre ans et continue de croître à pleine vitesse! Il était tout simplement impossible sans votre soutien, la contribution et le travail acharné.

openlsm projet ~

Ce année a été difficile pour openlsm et nous allons lancer la version Admin développement panel d’ici la fin de décembre 2010. Nous nous attendons à beaucoup plus de deuxième étape …

Cheers,
IndianGNU.org

Perl CGI – Session et howto Cookie

Perl CGI – Session et howto Cookie

Introduction –

Près de 1 an en arrière, je me suis battu beaucoup pour la mise en œuvre de session et des cookies dans Perl CGI application. Donc, la pensée de partager mon travail avec vous tous.
Je voulais le faire à ma façon …

L’Assomption, à savoir votre apache serveur Web est activé pour exécuter des scripts CGI

Step 1] Write Auth.pm Perl module –

Please simply copy following Auth.pm perl module for authentication using Session and Cookies…

[root@arun ~]# cat /var/application/module/Auth.pm

package Auth;

### Subroutine to authenticate user
sub  User
{
my ($ref_page) = (@_);
### Session information
my $sid = $ref_page->cookie(“APP_SID”) || undef;
my $session = CGI::Session->load(undef,$sid);
if ( $session->is_expired ) { print $ref_page->redirect(-location => ‘../arun.html’);}
elsif ( $session->is_empty) { print $ref_page->redirect(-location => ‘../arun.html’);}
else { print $ref_page->header();}
# don’t forget to create dir ‘/var/tmp’
# with proper ownership/permission
#$session = new CGI::Session(undef, $sid, {Directory=>’/var/tmp’});
#################################################
return($session->param(‘login_user’));
}

1;
[root@arun ~]#

Step 2] authe_me.pl –

authe_me.pl file is used to set cookies and verify username/password. You may use MySQL DB to store username and password.
In this case you have to this file…

[root@arun ~]# cat /var/application/www/cgi-bin/auth_me.pl
#!/usr/bin/perl

sub BEGIN
{
unshift (@INC, ‘/var/application/module/’);
}

use strict;
use warnings;
use CGI qw(:standard);
use CGI::Session;
use Auth; ## our module

### Header
########################
my $page = CGI->new();
##print $page->header();

##########
if ( $ENV{REQUEST_METHOD} eq “POST” )
{
my %form;
my $session_dir=”/var/tmp”;
my ($admin_user,$admin_password) = (“admin”,”arun123″);

foreach my $key (param()) { $form{$key} = param($key);}
##
if (($form{username}) && ($form{password}))
{

### Session Details ###
CGI::Session->name(“APP_SID”);
## Create new session
my $session = new CGI::Session(undef, undef, {Directory=>$session_dir});
## Set cookies
my $cookie = $page->cookie(-name=>$session->name(),-value=>$session->id(),-expires=>’+2h’,-path=>’/’);
## Store data in session variable and save it
$session->param(‘login_user’,$form{username}); # OR
##$session->param(-name=>’login_user’,-value=>$form{username});
$session->save_param($page, [“login_user”]);

## Session and Cookie expiration time is SAME.
$session->expire(“+2h”);
#### Session Details end ####

## if login successful redirect to main.pl else login page
if (($form{username} eq $admin_user) and ($form{password} eq $admin_password))
{ print $page->redirect(-location => ‘main.pl’,-cookie=>$cookie);}
else { print $page->redirect(-location => ‘../arun.html’); }
############################
} else { print $page->redirect(-location => ‘../arun.html’); }
}

[root@arun ~]#

Step 3] Create Login Page –

[root@arun ~]# cat /var/application/www/arun.html
<html>
<title>Arun Login Page</title>

<!– Form start –>
<table align=’center’ border=’1′>
<form method=”POST” action=”cgi-bin/auth_me.pl”>
<tr>
<td><label>Login</label></td>
<td><input name=”username” type=”text”></td>
</tr>
<tr>
<td><label>Password</label></td>
<td><input name=”password” type=”password”><br/></td>
</tr>
<tr>
<td><input value=”Submit” type=”submit”></td>
</tr>

</form>
</table>

</html>

[root@arun ~]#

Step 4] Create main page where Session and Cookie authentication verified – main.pl

[root@arun ~]# cat /var/application/www/cgi-bin/main.pl
#!/usr/bin/perl

sub BEGIN
{
unshift (@INC, ‘/var/application/module/’);
}

use strict;
use warnings;
use CGI qw(:standard);
use CGI::Session;
use Auth;

### Header
my $page = CGI->new();
## check authentication
my $login_name=Auth::User($page);
###
print $page->start_html( -title=>’Arun Main Page’);

print “<h3>This is Main Page</h3></br>”;
print “<br>Login Name – $login_name”;

#end
[root@arun ~]#

Step 5] Please access login page and try http://your_ipaddr/arun.html

Thank you,
Arun Bagul

Comment faire pour tester les performances du réseau et de bande passante

Comment faire pour tester les performances du réseau et de bande passante

Introduction –

Temps de latence et de bande passante sont les deux mesures les plus susceptibles de présenter un intérêt pour vous un réseau de référence. Même si la plupart des services et la publicité des produits se concentre sur la bande passante, parfois le temps de latence peut être un plus important métriques.

** Qu’est-ce que la bande passante?

Bande passante (BW) en réseaux informatiques se réfère au taux de données pris en charge par une connexion réseau ou une interface. BW est mesurée en termes de bits par seconde (bps).

** Qu’est-ce que la latence du réseau?

La latence est une mesure du temps de retard connu dans un système. La latence du réseau est simplement défini comme le délai observé que transmet les données d’un point à un autre. Il ya un certain nombre de facteurs qui contribuent à la latence du réseau. Il s’agit notamment de la transmission (support de la connectivité), Distance, les routeurs et les retards de matériel informatique.

Liste des projets utilisés pour tester les performances du réseau et de bande passante –

1) bmon – surveiller la bande passante et estimateur de taux, il est basé console, vivent BW
2) bwbar – utilisation de bande passante dans le texte et les graphiques en format
3) bwm-ng – Bandwidth Monitor NG (Next Generation, vivent BW, console basée
4) dstat – Dstat est un remplacement pour vmstat, iostat et ifstat.
5) iftop – utilisation de bande passante sur une interface, en fonction de la console
6) iperf – Effectuer des tests de débit réseau parier deux hôtes
7) ifstat – Rapport interface de statistiques
8) cbm – Couleur Bandwidth Meter, console basée
9) etherape – navigateur graphique le trafic réseau
10) iptraf – Interactive coloré IP LAN Monitor, console et interface graphique basée
11) netmrg – Il est le démon, de soutien mySQL, recueille des données à partir de périphériques.
12) nuttcp – Réseau outil de mesure du rendement
13) nepim

NOTE ~ Pour certains d’entre eux de paquetages rpm ou deb ne sont pas disponibles!

Étape 1] Comment faire pour installer sur Redhat / RHCE, CentOS système fondé et Dibian système fondé?

root@me:~# yum install netperf iperf nuttcp nepim lmbench

** Ubuntu –

root@me:~# apt-get install  bmon bwbar bwm-ng dstat cbm etherape iftop iperf ifstat iptraf netmrg

Étape 2] Comment utiliser – bmon, bwm-ng, dstat, ifstat –

root@me:~# bmon

interface: lo at me.arun.world

#   Interface                RX Rate         RX #     TX Rate         TX #
───────────────────────────────────────────────────────────────────────────────
me.arun.host (source: local)
0   lo                         0.00B            0       0.00B            0
1   eth0                       0.00B            0       0.00B            0
2   eth2                       0.00B            0       0.00B            0
3   vboxnet0                   0.00B            0       0.00B            0
4   pan0                       0.00B            0       0.00B            0
5   ppp0                      69.39KiB         61       7.49KiB         44

root@me:~# bwm-ng

bwm-ng v0.6 (probing every 0.500s), press ‘h’ for help
input: /proc/net/dev type: rate
\         iface                   Rx                   Tx                Total
==============================================================================
lo:           0.00 KB/s            0.00 KB/s            0.00 KB/s
eth0:           0.00 KB/s            0.00 KB/s            0.00 KB/s
eth2:           0.00 KB/s            0.00 KB/s            0.00 KB/s
ppp0:          64.39 KB/s            7.92 KB/s           72.31 KB/s
——————————————————————————
total:          64.39 KB/s            7.92 KB/s           72.31 KB/s

root@me:~# dstat
—-total-cpu-usage—- -dsk/total- -net/total- —paging– —system–
usr sys idl wai hiq siq| read  writ| recv  send|  in   out | int   csw
7   4  85   4   0   0| 281k  110k|   0     0 |   0     0 | 865  3013
8   4  88   0   0   0|   0     0 |7027B 1261B|   0     0 | 956  4505
8   5  86   0   0   0|   0     0 |  14k 1867B|   0     0 |1144  3332
9   5  86   0   1   0|   0     0 |  79k 2496B|   0     0 |1360  3366
18   8  74   0   0   0|   0     0 |  52k 6511B|   0     0 |1299  3618
8   6  85   0   1   0|   0     0 |  35k 5339B|   0     0 |1094  4231
6   4  90   0   0   0|   0     0 |   0  3164B|   0     0 | 953  2750 ^C
root@me:~#

root@me:~# ifstat
eth0                eth2                ppp0
KB/s in  KB/s out   KB/s in  KB/s out   KB/s in  KB/s out
0.00      0.00      0.00      0.00     95.73      4.31
0.00      0.00      0.00      0.00     67.93      8.17
0.00      0.00      0.00      0.00    106.77     13.70

** start “iperf” server on one host(A) and client on another host(B)- to measure Network throughput between two hosts.

* Host -A

root@me:~# iperf -s
————————————————————
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
————————————————————
[  4] local 192.168.0.1 port 5001 connected with 192.168.0.2 port 56171
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  9.11 GBytes  7.82 Gbits/sec

* Host -B
test@hostB:~$ iperf -c 192.168.0.1
————————————————————
Client connecting to 192.168.0.1, TCP port 5001
TCP window size: 49.5 KByte (default)
————————————————————
[  3] local 192.168.0.2 port 56171 connected with 192.168.0.1 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  9.11 GBytes  7.82 Gbits/sec
test@hostB:~$

root@me:~# iftop
root@me:~# cbm

Thank you,
Arun Bagul

Top 7 ERP et CRM Open Source Software

Top 7 ERP et CRM Open Source Software

Introduction –

Qu’est-ce que Enterprise Resource Planning (ERP)?

ERP est un système logiciel intégré permet de gérer les ressources, actifs, ressources financières, matérielles et humaines.
Son but est de faciliter la circulation des informations entre toutes les fonctions opérationnelles de l’organisation.

Qu’est-ce que la gestion de la relation client (CRM)?

CRM est un largement reconnu que les interactions entreprise avec les clients, les clients et les perspectives de ventes. Il implique l’utilisation de
la technologie pour organiser, d’automatiser et de synchroniser les affaires (ventes) des activités, marketing, service à la clientèle et soutien technique.

1) Openbravo

Openbravo ERP est une solution basée sur le Web ERP pour les petites et moyennes entreprises qui est publié sous
l’Openbravo Public License, basée sur la Mozilla Public License.
URL – http://www.openbravo.com/

2) OpenERP

OpenERP est une suite open source complète d’applications d’affaires, y compris les ventes, CRM, Gestion de projet,
de gestion d’entrepôt, fabrication, comptabilité, ressources humaines.
URL – http://www.openerp.com/

3) Fedena

Fedena est un logiciel open source de gestion de l’école développée sur framework Ruby on Rails. fedena contient des modules relatifs à l’admission, Etudiant Détails, Gestion des utilisateurs, Gestion des Nouvelles, l’examen, horaire et de présence.
URL – http://www.projectfedena.org/

4) JFire

JFireis une Enterprise Resource Planning et Customer Relationship Management système. JFire est client-serveur avec le client en fonction du système Desktop disponible pour Windows et Linux OS.
URL – http://www.jfire.net/

5 OFBiz Apache) –

OFBiz est un système ERP. Elle fournit des applications d’entreprise intégrer et d’automatiser de nombreux processus d’affaires.
URL – http://ofbiz.apache.org/

6) SugarCRM

SugarCRM est le leader CRP logiciels open source. SugarCRM est mon choix personnel!

URL – http://www.sugarcrm.com

7) VtigerCRM

VtigerCRM est très facile et le meilleur ERP et CRM basé sur le Web. J’ai utilisé ce logiciel personnels. Il a de nombreux addons. URL – http://www.vtiger.com/

S’il vous plaît se référer la liste des logiciels ERP sur le wiki – http://en.wikipedia.org/wiki/List_of_ERP_software_packages

Je vous remercie,
Arun Bagul

Scripts Bash ~ apprentissage par des exemples

Scripts Bash ~ apprentissage par des exemples

Introduction ~

—————————————–
Program (1) ~ array.sh
—————————————–

#!/bin/bash
echo “==============”
declare -a myarr[0]=”Arun”
declare -a myarr1
myarr1=(arun bagul bangalore mumbai raju santhosh)
myarr[1]=”Bagul”

echo “my name is ${myarr[0]} ${myarr[1]}”
echo “————————–”
echo “${myarr1[*]}”
echo ${myarr1[2]}
echo ${myarr1[@]}
echo “————————–”
echo “Total no of elements in array – ${#myarr1[*]}”
echo “Total no of elements in array – ${#myarr1[@]}”
echo “Size of word ‘${myarr1[2]}’ is – ${#myarr1[2]}”
echo ${#myarr1[1]}
echo ${#myarr1[0]}

echo “————————–”

#how to delete element in array
unset myarr[1]
echo “myarr is – ${myarr[*]}”

#how to assign element in array
myarr[1]=”- System Engineer!”
echo “myarr is – ${myarr[*]}”

echo ${myarr}

————————————————————————
Program (2) ~ command_line_arguments.sh
————————————————————————

#!/bin/bash

echo “Script/command name => $0”
echo “arg1 => $1”
echo “arg2 => $2”
echo “arg3 => $3”
echo “Total No of argument = $#”

echo “Script PID is => $$”
echo “Status of previous command – $?”

name=$myname
echo “Name – $name”

read n

————————————————-
Program (3) ~ default_value.sh
————————————————-

#!/bin/bash

#start=’123′
#start=${1:-$start}

start=${1:-‘123’}

echo “Value of ‘start’ variable is ==> $start”

—————————————————
Program (4) ~ echo_example.sh
—————————————————

#!/bin/bash

name=”Arun”

echo -e “My Name is $name_arun and \n”
echo -e “My Name is ${name}_arun and \n”

echo -e ‘My Name is $name and \n’

—————————————–
Program (5) ~ elif.sh
—————————————–

#! /bin/bash

if [ $1 -eq $2 ];then
echo “good”
elif [ $2 -eq $3 ];then
echo “Fine”
elif [ $1 -eq $3 ];then
echo “OK”
else
echo “NO”
fi

————————————————————
Program (6) ~ for_loop_example-1.sh
————————————————————

#!/bin/bash

i=1
while [ $i -le 512 ]
do
temp=$i
echo “What is => $i | $temp”
i=$(expr $i + 32)
for (( j=$temp; $j<=$i; j++ ))
do
echo -n ” $j”
done
done

———————————————————–
Program (7) ~ for_loop_example-2.sh
———————————————————–

#!/bin/bash
#for val in $(ls -1 /tmp)
sum=0
#for val in {1..5}
#for val in {$1..$2}
for((val=$1;$val<=$2;val++))
do
#echo “$val”
sum=$(expr $sum + $val )
#sum=`expr $sum + $val`
done

echo “$0 # Sum of $1 to $2 => $sum”

————————————————————
Program (8) ~ for_loop_example-3.sh
————————————————————

#!/bin/bash

for i in {1..9}
do
echo $i
done

—————————————–
Program (9) ~ function.sh
—————————————–

#!/bin/bash

function my_function()
{
name=”Arun Bagul”
echo “‘my_function’ body ~ $name”
return 1;
}
##########

myfunc()
{
echo “Another way of defining the function”
}

##########################

echo “Starting function program”
echo “——————————”

#calling function here
my_function
##
myfunc

echo -e “\n end of program”

—————————————————————————————
Program (10) ~ how_to_pass_argument_to_function.sh
—————————————————————————————

#!/bin/bash

function my_function()
{
echo “Total number of argument ~ $#”
echo “Arg1 => $1”
echo “Arg2 => $2”
echo “Arg3 => $3”
return 0;
}
##########

echo “Starting function program”
echo “——————————”

#calling function here
my_function arun bagul 1234

————————————————————————-
Program (11) ~ how_to_take_hidden_input.sh
————————————————————————-

#!/bin/bash

echo -n “Enter User Name :”
read username
echo -n “Enter Password :”
read -s mypwd

echo -e “\nI am $username and my password is – $mypwd”

——————————————————————————
Program (12) ~ how_to_take_input_from_user.sh
—————————————————————————–

#!/bin/bash

echo -ne “Enter the Name:- ”
read name
echo -n -e “Enter the Number:- ”
read num

echo “——————————”

add=$(expr $num + 10)

echo “Name is ~ $name”
echo “Number is ~ $add”

—————————————–
Program (13) ~ ifthen.sh
—————————————–

#!/bin/bash

if [ “arun” == “arun” ];then
echo “true!”
else
echo “false”
fi

echo “———————————-”

if [ 2 == 2 ];then
echo “true!”
else
echo “false”
fi

echo “———————————-”

if [ “arun” = “arun” ];then
echo “true!”
else
echo “false”
fi

echo “———————————-”

if [ 2 -eq 2 ];then
echo “true!”
else
echo “false”
fi

——————————————————
Program (14) ~ non-interactive.sh
——————————————————

#!/usr/bin/expect -f
spawn ssh arun@192.168.0.1
expect “password:”
sleep 1
send “pwd\r”
interact

—————————————————————-
Program (15) ~ read_file_line_by_line.sh
—————————————————————-

#!/bin/bash

file_name=”/etc/hosts”

while read myvar
do
echo “Line => $myvar”
done < $file_name

echo “#################################################”

for myvar1 in $(cat $file_name)
do
echo “Line => $myvar1”
done

——————————————————
Program (16) ~ reverse-number.sh
——————————————————

#!/bin/bash

declare -a date_array
num=$1
i=$(expr $(echo $num | wc -c) – 1 )

while [ $num -gt 10 ]
do
temp=$( expr $num % 10 )
num=$( expr $num / 10);
echo “Digit($i) => $temp”
date_array[$i]=”${temp}”
i=$(expr $i – 1)
done
echo “Digit($i) => $num”
date_array[$i]=”${num}”

echo ${date_array[*]}

——————————————————–
Program (17) ~ string-operation.sh
——————————————————–

#! /bin/bash

echo “Arun Bagul:-”
string=”/root/arun/bagul/image.gif”
echo “string=> $string”
echo “String=> ${string##/*/}”
echo “String=> ${string#/*/}”

echo “String=> ${string%.*}”
echo “String=> ${string%%.*}”
#str=”/home/y/conf/arunbagul/daily_market_0.conf”
str=”${str##/*conf/}”
echo “String=> ${str%/*}”

#done

mystr=”keyword_summary_exact_arunsb”
echo $mystr
echo ${mystr%_*}

echo “$*”

—————————————–
Program (18) ~ switch.sh
—————————————–

#!/bin/bash

echo ” Switch program | arg1 => $1″
echo ” ——————————-”
case $1 in

123)
echo “Case is 123”
;;

arun)
echo “Case is ‘arun'”
;;

pri*)

echo “Case is ‘pri*'”
;;

*)
echo ” * Usage: $0 ”
echo ” Default case (nothing is matched)”
exit 0;
;;
esac

—————————————————————–
Program (19) ~ while_loop_example-1.sh
——————————————————————

#!/bin/bash

mywait=wait

while [ “${mywait}” = “wait” ]
do
echo “arun”
done

——————————————————————-
Program (20) ~ while_loop_example-2.sh
——————————————————————–

#! /bin/bash

## on command line -> i=0 && while [ $i -le 10 ] ; do echo $i; i=$(expr $i + 1); done

i=0
while [ $i -le 10 ]
do
echo $i
i=$(expr $i + 1)
done

——————————————————————–

* Please download PDF file http://www.slideshare.net/arunbagul/bash-learning-by-examples/

Regards,
Arun

Comment faire pour configurer plusieurs maître de réplication MySQL

Comment faire pour configurer plusieurs maître de réplication MySQL

Introduction ~

J’avais l’intention d’écrire l’article sur Multi réplication MySQL maître depuis longtemps, a finalement commencé maintenant!. S’il vous plaît consulter l’article sur le «Comment faire pour configurer la réplication MySQL avec un Maître” URL ~ http://www.indiangnu.org/2007/mysql-replication-one-master-multiple-slave/

* Permettez-moi de vous informer que la réplication Multi Master en MySQL est purement basé sur la suite de deux variables. Cela n’a rien à voir avec la technologie de réplication utilisée dans la réplication MySQL ….

mysql> show variables like ‘%increment_%’;
+——————————-+——-+
| Variable_name                 | Value |
+——————————-+——-+
| auto_increment_increment      | 1     |
| auto_increment_offset         | 1     |
+——————————-+——-+
2 rows in set (0.00 sec)

mysql>

** Requirements ~

a) Master Hosts (2 master in my case) ~
master-1 => 10.66.66.194
master-2 => 10.66.90.135
b) Replication Slave (1 slave) ~
Slave => 10.66.75.137

c) MySQL server (with replication support)

** Let us understand how it works ?

* Master-1 Server =>

Set following variables…

mysql> set auto_increment_increment=5;
mysql> set auto_increment_offset=1;

mysql> show variables like ‘%increment_%’;
+————————–+——-+
| Variable_name            | Value |
+————————–+——-+
| auto_increment_increment | 2     |
| auto_increment_offset    | 1     |
+————————–+——-+
2 rows in set (0.00 sec)

mysql>

** Create Table ~

mysql> create table class ( rollno INT(5) NOT NULL PRIMARY KEY AUTO_INCREMENT , name VARCHAR(30) );

** Add Record now ~

mysql> INSERT INTO class VALUES (”,’Arun Bagul’);
mysql> INSERT INTO class VALUES (”,’Ravi Bhure’);
mysql> INSERT INTO class VALUES (”,’Karthik Appigita’);
mysql> INSERT INTO class VALUES (”,’Ameya Pandit’);

mysql> SELECT * FROM class;
+——–+——————+
| rollno | name             |
+——–+——————+
|      1 | Arun Bagul       |
|      3 | Ravi Bhure       |
|      5 | Karthik Appigita |
|      7 | Ameya Pandit     |
+——–+——————+
4 rows in set (0.00 sec)

mysql>

* Master-2 Server =>

Set following variables…

mysql> set auto_increment_increment=2;
mysql> set auto_increment_offset=2;

mysql> show variables like ‘%increment_%’;
+————————–+——-+
| Variable_name            | Value |
+————————–+——-+
| auto_increment_increment | 2     |
| auto_increment_offset    | 2     |
+————————–+——-+
2 rows in set (0.00 sec)

mysql>

** Create Table ~

mysql> create table class ( rollno INT(5) NOT NULL PRIMARY KEY AUTO_INCREMENT , name VARCHAR(30) );

** Add Record now ~

mysql> INSERT INTO class VALUES (”,’Nilkanth Parab’);
mysql> INSERT INTO class VALUES (”,’Nishit Shah’);
mysql> INSERT INTO class VALUES (”,’Ram Krishna’);
mysql> INSERT INTO class VALUES (”,’Suhail Thakur’);

mysql> SELECT * FROM class;
+——–+——————+
| rollno | name             |
+——–+——————+
|      2 | Nilkanth Parab   |
|      4 | Nishit Shah      |
|      6 | Ram Krishna      |
|      8 | Suhail Thakur    |
+——–+——————+
4 rows in set (0.00 sec)

mysql>

** What is the importance of “auto_increment_increment” and “auto_increment_offset” ~

mysql> desc class;
+——–+————-+——+—–+———+—————-+
| Field  | Type        | Null | Key | Default | Extra          |
+——–+————-+——+—–+———+—————-+
| rollno | int(5)      | NO   | PRI | NULL    | auto_increment |
| name   | varchar(30) | YES  |     | NULL    |                |
+——–+————-+——+—–+———+—————-+

auto_increment_offset    => This is BASE value for column with “auto_increment” attribute (please refer the above example)
auto_increment_increment => This is the increment value for column with “auto_increment” attribute

** If you combine the both tables (master-1 and master-2) the final table will look like this ~

mysql> SELECT * FROM class;
+——–+——————+
| rollno | name             |
+——–+——————+
|      1 | Arun Bagul       |
|      2 | Nilkanth Parab   |
|      3 | Ravi Bhure       |
|      4 | Nishit Shah      |
|      5 | Karthik Appigita |
|      6 | Ram Krishna      |
|      7 | Ameya Pandit     |
|      8 | Suhail Thakur    |
+——–+——————+
8 rows in set (0.00 sec)

mysql>

** This is how Multi master replication works….

auto_increment_offset=Nth master server
auto_increment_increment=M

Où —
N => nième nombre de serveur maître (sur le maître-1 garder 1 et sur le maître-2 maintenir 2 et ainsi de suite ..)
M => Nombre total de Master Server (2 dans notre cas, mais il vaut mieux laisser cette valeur élevée afin que nous puissions ajouter facilement de nouveaux serveur maître)

mises à jour log-slave-=> serveur esclave ne vous connectez pas à son propre log binaire les mises à jour qui sont reçus à partir d’un serveur maître. Cette option indique à l’esclave va enregistrer les modifications effectuées par son thread SQL à ses propres logs binaires.

** Assurez-vous que MySQL est en cours d’exécution et sur tous les serveurs et le serveur maître-esclave

Comment faire pour une configuration multi-maître de réplication MySQL? —

Step 1] Create Database/Tables on  Master  & Slave Servers –

You can create DB on all master & slave server or  create on one server and export that DB on  rest of all servers…

Master-1 => Create DB and Table

mysql> create database student;

mysql> use student;

mysql> create table class ( rollno INT(5) NOT NULL PRIMARY KEY AUTO_INCREMENT , name VARCHAR(30) );

mysql> show tables;
+——————-+
| Tables_in_student |
+——————-+
| class             |
+——————-+
1 row in set (0.00 sec)

mysql> desc class;
+——–+————-+——+—–+———+—————-+
| Field  | Type        | Null | Key | Default | Extra          |
+——–+————-+——+—–+———+—————-+
| rollno | int(5)      | NO   | PRI | NULL    | auto_increment |
| name   | varchar(30) | YES  |     | NULL    |                |
+——–+————-+——+—–+———+—————-+
2 rows in set (0.00 sec)

mysql> SELECT * FROM class;
Empty set (0.00 sec)
mysql>

* Now take dump of “student” DB and export it on all master and Slave server…

[root@master-1~]# mysqldump -u root -p  -d student > /home/arunsb/student.sql

* SCP the dump file on master-2 and slave server ~
[root@master-1~]# scp /home/arunsb/student.sql arunsb@10.66.90.135:/tmp/student.sql
[root@master-1~]# scp /home/arunsb/student.sql arunsb@10.66.75.137:/tmp/student.sql

Login on master-2 and slave ~

mysql> create database student;

[root@master-2~]# mysql -u root -p student < /tmp/student.sql
Enter password:
[root@master-2~]#

[root@master-2~]# mysql -u root -p
Enter password:

mysql> use student

mysql> SELECT * FROM class;
Empty set (0.00 sec)
mysql>

** Please repeat the same steps on Slave server as well…

Step 2] Update “my.cnf” config file on master-1,master-2 and slave server –

[root@master-1~]# cat /etc/my.cnf

###########################
##MySQL replication setting

#Master setting(1)
server-id = 1
log-bin = /var/log/mysql/binary/mysql-bin.log
binlog-do-db = student
binlog-ignore-db = mysql
#log = /var/log/mysql/mysql.log
auto_increment_offset=1
auto_increment_increment=5
log-slave-updates

##slave setting
master-port=3306
master-host=10.66.90.135
master-user=replication
master-password=mypwd
master-connect-retry=60
replicate-do-db=student
###########################

[root@master-1~]#

[root@master-2~]# cat /etc/mysql/my.cnf

###########################
##MySQL replication setting

#Master setting(2)
server-id = 2
log-bin = /var/log/mysql/binary/mysql-bin.log
binlog-do-db=student
binlog-ignore-db = mysql
log = /var/log/mysql/mysql.log
auto_increment_offset=2
auto_increment_increment=5
log-slave-updates

##slave setting
master-port=3306
master-host=10.66.66.194
master-user=replication
master-password=mypwd
master-connect-retry=60
replicate-do-db=student
###########################

[root@master-2~]#

* please create directory for binary log and set permission…

[root@master-1~]# mkdir -p /var/log/mysql/binary/
[root@master-1~]# chown mysql:adm  /var/log/mysql/ /var/log/mysql/binary/

[root@master-2~]# mkdir -p /var/log/mysql/binary/
[root@master-2~]# chown mysql:adm  /var/log/mysql/ /var/log/mysql/binary/

** MySQL Replication Slave ~

[root@slave~]# cat  /etc/my.cnf

[mysqld]

########################################
##slave setting
server-id=4
master-port=3306
master-host=10.66.90.135
master-user=replication
master-password=mypwd
master-connect-retry=60
replicate-do-db=student
########################################

[root@slave~]#

Step 3] Give Replication permission on both masters ~

** Master (1 & 2) ~

mysql> GRANT REPLICATION SLAVE ON *.* TO ‘replication’@’10.66.%.%’ IDENTIFIED BY ‘mypwd’;
Query OK, 0 rows affected (0.00 sec)

mysql>

Step 4] Restart MySQL on both master as well as replication slave server ~

** Please verify setting on master-1 and master-2 server…

* Master-1

mysql> show variables like ‘%increment_%’;
+————————–+——-+
| Variable_name            | Value |
+————————–+——-+
| auto_increment_increment | 5     |
| auto_increment_offset    | 1     |
+————————–+——-+
2 rows in set (0.00 sec)

* Master-2

mysql> show variables like ‘%increment_%’;
+————————–+——-+
| Variable_name            | Value |
+————————–+——-+
| auto_increment_increment | 5     |
| auto_increment_offset    | 2     |
+————————–+——-+
2 rows in set (0.00 sec)

** Please verify ‘master’ & ‘slave’ status on both masters(1 & 2) and slave –

mysql> show master status;
mysql> show slave status;

** Multi Master replication is started…

Step 5] Add few records on Master-1 & Master-2 server at same time ~

Add records on both master server at same time and check master and replication slave status as shown above….

** Add following on master-1

mysql> INSERT INTO class VALUES (”,’Arun Bagul’);
mysql> INSERT INTO class VALUES (”,’Ravi Bhure’);
mysql> INSERT INTO class VALUES (”,’Karthik Appigita’);
mysql> INSERT INTO class VALUES (”,’Ameya Pandit’);

** Add following on master-2

mysql> INSERT INTO class VALUES (”,’Nilkanth Parab’);
mysql> INSERT INTO class VALUES (”,’Nishit Shah’);
mysql> INSERT INTO class VALUES (”,’Ram Krishna’);
mysql> INSERT INTO class VALUES (”,’Suhail Thakur’);

** Please verify the numbers of records on both masters and slave….

mysql> SELECT * FROM class;
+——–+——————+
| rollno | name             |
+——–+——————+
|      1 | Arun Bagul       |
|      2 | Nilkanth Parab   |
|      6 | Ravi Bhure       |
|     11 | Karthik Appigita |
|     16 | Ameya Pandit     |
|     17 | Nishit Shah      |
|     22 | Ram Krishna      |
|     27 | Suhail Thakur    |
+——–+——————+
8 rows in set (0.00 sec)

mysql>

* Ainsi, nous avons tous appris à plusieurs configurer la réplication MySQL maître. Enjoy!

Observe,
Arun Bagul

Comment créer ou de construire les paquetages RPM

Comment créer ou de construire les paquetages RPM

Introduction —

Outil * “rpmbuild” est utilisé pour construire les deux …

1) ~ paquet binaire utilisé pour installer le logiciel et le soutien des scripts. Il contient les fichiers qui composent la demande ainsi que toute information supplémentaire nécessaire à l’installation et l’effacer.
2) le paquet source ~ contient le fichier d’origine compressé tar du code source, les correctifs et les spécifications du fichier.

* Qu’est-ce que RPM et RPM Package Manager?

Le RPM Package Manager (RPM) est une puissante ligne de commande du système de gestion des paquets capable d’installation, la désinstallation, la vérification, l’interrogation et la mise à jour des paquets logiciels.

RPM paquet se compose d’une archive de fichiers et de méta-données utilisées pour l’installation et effacer les fichiers d’archive. Les méta-données comprennent des scripts d’aide, les attributs de fichier, et des informations descriptives sur le paquet.

* Mettre en place paquet RPM, vous devez spécifier trois choses ~

1) Source d’application – Dans tous les cas, vous ne devez pas modifier les sources utilisées dans le processus de construction du paquet.

2) Patches – RPM vous donne la possibilité d’appliquer automatiquement les correctifs pour eux. Le patch résout un problème spécifique au système cible. Cela pourrait comprendre l’évolution makefiles pour installer l’application dans les répertoires appropriés, ou résoudre des conflits inter-plate-forme. Patches créer l’environnement requis pour la compilation correcte.

3) la spécification de fichier – Le fichier image est au cœur du processus d’édification de paquet RPM. Il contient des informations requises par RPM pour construire le paquet, ainsi que des instructions disant RPM manière de le construire. Le fichier de spécification dicte aussi exactement quels fichiers sont une partie du paquet, et où ils doivent être installés.

** Spécification de fichier ~ est divisé en 8 sections, comme indiqué ci-dessous

a) Préambule ~ contient des renseignements qui seront affichés lorsque les utilisateurs demandent des informations sur le package. Cela comprend une description de la fonction du paquet, le numéro de version du logiciel, etc

b) Préparation ~ lorsque les travaux de construction d’un paquet démarre. Comme son nom l’indique, cette section est l’endroit où les préparatifs nécessaires sont effectués avant la construction proprement dite du logiciel. En général, si quelque chose doit être fait pour les sources avant de compiler le logiciel, il doit se passer dans la section préparation. Le contenu de cette section sont d’un script shell ordinaire. Toutefois, le RPM ne prévoit deux macros pour rendre la vie plus facile. Une macro peut décompresser un fichier compressé tar et un cd dans le répertoire source. La macro s’applique facilement d’autres correctifs pour les sources décompressées.

c) Construction ~ Cette section est composée d’un script shell. Il est utilisé pour exécuter toutes les commandes sont requises pour compiler les sources effectivement comme seule commande make, ou être plus complexe si le processus de construction il a besoin. Il n’ya pas de macros disponibles dans cette section.

d) Installer ~ Cette section contient également un script shell, la section d’installation est utilisé pour exécuter les commandes nécessaires pour installer les logiciels.

e) Installez et les scripts de désinstallation ~ Il est composé de scripts qui seront exécutés, le système de l’utilisateur, lorsque le paquet est effectivement installés ou enlevés. RPM peut exécuter un script de pre / post installation ou l’enlèvement de l’emballage.

f) Vérifier Script ~ script qui est exécuté sur le système de l’utilisateur. Il est exécuté lors de RPM vérifie une bonne installation du paquet.

g) L’article Clean ~ script qui peut nettoyer les choses en place après la construction. Ce script est rarement utilisée, car RPM ne normalement un bon travail de nettoyage dans la plupart construire des environnements.

h) Liste des fichiers ~ se compose d’une liste de fichiers qui composent le paquet. En outre, un certain nombre de macros peuvent être utilisés pour contrôler les attributs de fichier lors de l’installation, ainsi que pour indiquer quels sont les fichiers de documentation, et qui contiennent des informations de configuration. La liste des fichiers est très important.

*** Exigence de RPM pour construire environnement ~

A] RPM requiert un ensemble de répertoires pour effectuer la compilation. Bien des endroits les répertoires et les noms peuvent être changés. Disposition par défaut est montré ci-dessous —

root @ arunsb: ~ # ls-l / usr / src / redhat /

drwxr-xr-x 2 root root 4096 25 août 2007 SOURCES => contient les sources originales, les correctifs et les fichiers d’icône
drwxr-xr-x 2 root root 4096 25 août 2007 specs => contient les fichiers de spécification
drwxr-xr-x 2 root root 4096 25 août 2007 “Build => répertoire dans lequel les sources sont décompressés, et le logiciel est intégré
drwxr-xr-x 8 root root 4096 Mai 28 2008 tr-mn => contient le paquet binaire des fichiers créés par le processus de construction
drwxr-xr-x 2 root root 4096 25 août 2007 SRPMS => contient le paquet source des fichiers créés par le processus de construction

root @ arunsb: ~ #

B] besoin d’exporter quelques variables globales utilisées par RPM —

root @ arunsb: ~ # export RPM_BUILD_DIR = / usr / src / redhat / BUILD /
root @ arunsb: ~ # export RPM_SOURCE_DIR = / usr / src / redhat / SOURCES /

Etape 1] Créez Specification (SPEC) du fichier ~

root @ arunsb: ~ # head-n 50 / usr / src / redhat / SPECS / openlsm.spec
# Authority: Arun Bagul

# RPM_BUILD_DIR / usr / src / redhat / BUILD /
# RPM_SOURCE_DIR / usr / src / redhat / SOURCES /

% define MY_PREFIX / usr / local / openlsm /

# # Préambule Section –
Nom: openlsm
Version: 0.99
Vendeur: IndianGNU.org & openlsm
Sortie: r45
Group: System Environment / Daemons
Packager: IndianGNU.org (http://www.indiangnu.org)
URL: http://openlsm.sourceforge.net/
Résumé: openlsm Admin Serveur
Licence: GPL

description%
openlsm Admin Server est gratuit & web open source basé panneau de commande de Linux, les systèmes Unix.

# # Préparation Section –
prep%

rm-rf $ (RPM_BUILD_DIR) / openlsm-0.99-R45 /
tar xvfz RPM_SOURCE_DIR $ () / openlsm-0.99-r45.tar.gz-C $ () RPM_BUILD_DIR

# # Construction Section –
% build

./openlsm-0.99-r45 cd /
. / configure-prefix = / usr / local / openlsm-with-mysql = / usr / bin / mysql_config-enable-pcre internes-avec-geoip = / usr-with-ldap = / usr-enable-trace
faire

# # Installez Section –
% install

./openlsm-0.99-r45 cd /
make install

# # # # Files section –
% files

/ usr / local / openlsm
/ usr / local / openlsm / etc / openlsm / openlsm.conf
/ usr / local / openlsm / etc / openlsm / openlsm.conf.perf_sample
/ usr / local / openlsm / etc / openlsm ssl /
/ usr / local / openlsm / bin / openlsm-config
….
… ..
… .. liste des fichiers installés par paquet
root @ arunsb: ~ #

* Comment créer la liste de fichiers?

Création de la liste des fichiers est procédé manuel. Ce que j’ai fait est j’ai pris la liste des fichiers de mon répertoire manuel préfixe installé avec la commande find tel qu’indiqué ci-dessous …

root @ arunsb: ~ # find / usr / local / openlsm /-type f-ou-type d

Etape 2] A partir de la Construction ~

root @ arunsb: ~ # cd / usr / src / redhat / SPECS
root @ arunsb: / usr / src / redhat / SPECS # ls-l openlsm.spec
-rw-r-r-1 root root 12938 Dec 2 17:21 openlsm.spec
root @ arunsb: / usr / src / redhat / SPECS #

root @ arunsb: / usr / src / redhat / SPECS # rpmbuild-ba openlsm.spec

….
… ..

Vérification des fichiers non emballés (s): / usr / lib / rpm / check-files% () buildroot
A écrit: / usr/src/redhat/SRPMS/openlsm-0.99-r45.src.rpm
A écrit: / usr/src/redhat/RPMS/i386/openlsm-0.99-r45.i386.rpm
root @ arunsb: / usr / src / redhat / SPECS # echo $?
0

root @ arunsb: / usr / src / redhat / SPECS # ls-l / usr/src/redhat/SRPMS/openlsm-0.99-r45.src.rpm
-rw-r-r-1 root root 3206 Dec 2 17:50 / usr/src/redhat/SRPMS/openlsm-0.99-r45.src.rpm
root @ arunsb: / usr / src / redhat / SPECS # ls-l / usr/src/redhat/RPMS/i386/openlsm-0.99-r45.i386.rpm
-rw-r-r-1 root root 3052868 Dec 2 17:50 / usr/src/redhat/RPMS/i386/openlsm-0.99-r45.i386.rpm
root @ arunsb: / usr / src / redhat / SPECS #

* Source et paquet binaire créé!

** Voyons ce qui s’est passé dans “/ usr / src / redhat / répertoire”

root @ arunsb: / usr / src / redhat # pwd
/ usr / src / redhat
root @ arunsb: / usr / src / redhat # ls
Construire des RPM SOURCES SPECS SRPMS
root @ arunsb: / usr / src / redhat # ls BUILD /
openlsm-0.99-r45 <== Source extrait ici dans le cadre des instructions de compilation de dire la spécification de fichier “openlsm.spec”
root @ arunsb: / usr / src / redhat # ls SOURCES
openlsm-0.99-r45.tar.gz <== openlsm original »-0.99-r45.tar.gz« source fichier copié par moi
root @ arunsb: / usr / src / redhat # ls RPMS /
athlon i386 i486 i586 i686 noarch
root @ arunsb: / usr / src / redhat # ls RPMS/i386 /
openlsm-0.99-r45.i386.rpm <== paquet rpm binaire créé!
root @ arunsb: / usr / src / redhat # ls SRPMS /
openlsm-0.99-r45.src.rpm <== paquet RPM source créé!
root @ arunsb: / usr / src / redhat #

Etape 3] Maintenant, installez le paquet et de le tester ~

root @ arunsb: / usr / src / redhat RPMS/i386/openlsm-0.99-r45.i386.rpm # cp / home / arunsb /

root @ arunsb: / usr / src / redhat # cd / home / arunsb /
root @ arunsb: ~ # ls
openlsm-0.99-r45.i386.rpm
root @ arunsb: ~ # rpm-ivh openlsm-0.99-r45.i386.rpm
Preparing … ########################################### [100%]
1: ########################################### openlsm [100%]
root @ arunsb: ~ # ls / usr / local / openlsm /
etc contrib bin comprennent var scripts lib sbin part
root @ arunsb: ~ #

** Démarrage du serveur openlsm ~

root @ arunsb: ~ # / usr / local / openlsm / contrib / redhat openlsm-start
* À partir du serveur admin openlsm: openlsm
. [OK]
root @ arunsb: ~ #
root @ arunsb: ~ # / usr / local / openlsm / contrib / openlsm statut redhat
openlsm (pid 21607) est en cours d’exécution …
root @ arunsb: ~ #

root @ arunsb: ~ # rpm-q openlsm-0.99-R45
openlsm-0.99-R45
root @ arunsb: ~ #

root @ arunsb: ~ # rpm-ql openlsm-0.99-r45
..

root @ arunsb: ~ # rpm-openlsm qiv-0.99-R45
Nom: Mouvements openlsm: (not relocatable)
Version: 0.99 du vendeur: IndianGNU.org & openlsm
Sortie: r45 Build Date: Wed 02 Dec 2009 05:50:54 PM CEST
Install Date: mer 02 Dec 2009 06:06:23 PM CEST Build Host: alongseveral-dr.eglbp.corp.yahoo.com
Group: System Environment / Daemons Source RPM: openlsm-0.99-r45.src.rpm
Taille: 14877918 Licence: GPL
Signature: (none)
Packager: IndianGNU.org (http://www.indiangnu.org)
URL: http://openlsm.sourceforge.net/
Résumé: openlsm Admin Serveur
Description:
openlsm Admin Server est gratuit & web open source basé panneau de commande de Linux, les systèmes Unix.
root @ arunsb: ~ #

** REMARQUE ~ Cet article ne contient pas d’informations sur la façon de définir les micros, comment copier des documents, pages de manuel pour l’emplacement par défaut, comment définir permision et etc appropriation Je vais couvrir ce sujet dans l’article suivant sur RPM.

** S’il vous plaît consulter l’article anglais ~ http://www.indiangnu.org/2009/how-to-create-or-build-rpm-package/

Observe,
Arun Bagul

Cryptez vos mails avec GPG et Enigmail plugin Thunderbird

Cryptez vos mails avec GPG et Enigmail plugin Thunderbird

Introduction ~

GNU Privacy Guard (GnuPG ou GPG) est open source / logiciel libre de cryptage et un outil de signature, alternative à la Pretty Good Privacy (PGP) La suite de logiciels de cryptographie. Enigmail est une extension pour Mozilla Thunderbird et d’autres applications Mozilla. Elle fournit la clé publique de chiffrement des e-mail. Fonctionnalité cryptographique est gérée par GNU Privacy Guard (GnuPG ou GPG).

Step 1] Installer GnuPG ou GPG —

* Ubuntu / Debian ~

root @ Arun: ~ # apt-get install gnupg gnupg2

* Redhat / Fedora ~

root @ Arun: ~ # yum install gnupg gnupg2

Etape 2] Comment faire pour installer Enigmail?

Je suppose que Mozilla Thunderbird est déjà installé sur votre système. Pour installer “Enigmail” suivre les étapes suivantes

a) Télécharger “Enigmail” de l’URL »http://enigmail.mozdev.org/download/”

Note ~ OS sélectionner et de Thunderbird version correctement.

b) Dans la barre de menu de la fenêtre principale de Thunderbird vous pourrez voir «Outils». Sélectionnez cette option, puis «Add-ons” option. Ceci ouvrira une nouvelle fenêtre répertoriant tous vos plug-ins Thunderbird. Dans le coin inférieur main de cette nouvelle fenêtre vous verrez un bouton “Installer”. Cliquez sur ce bouton. Dites Thunderbird où vous avez enregistré le Enigmail. Fichier XPI. et dire simplement “Installer” that’s it!!

* Once “Enigmail est installé redémarrer le Thunderbird. Ensuite, vous verrez “OpenPGP onglet” dans le menu principal de Thunderbird.

Etape 3] Configuration privée / clé publique ~

Enigmail utilise la cryptographie à clé publique pour assurer l’intimité entre vous et vos correspondants. Pour générer les Clés publiques / privées, il ya deux méthodes, soit les créer avec l’aide de “gpg” outil de ligne de commande ou utilisez “Enigmail” ….

* Nous produirons privé / public des clés cryptographiques, avec l’aide de «Enigmail», comme indiqué ci-dessous ….

a) Cliquez sur “OpenPGP” dans la barre de menus de la fenêtre principale de Thunderbird. Sélectionnez “Key Management”.
b) Dans Enigmail Key Manager ~ cliquez sur “Générer” onglet dans la barre de menu et sélectionnez “Nouveau paire de clés».
c) Tout en haut de la fenêtre vous verrez une zone de liste déroulante affichant toutes vos adresses e-mail. GnuPG sera associer votre nouvelle clé avec une adresse email.
Enigmail vous demande simplement de quelle adresse vous souhaitez utiliser pour cette clé. Choisir celles qui compte sera de recevoir du courrier crypté.

REMARQUE ~ Nous pouvons utiliser les mêmes touches pour plusieurs comptes.

d) Vous pouvez utiliser une phrase secrète ou il suffit de cocher “Pas de mot de passe” dans la case pour générer des clés sans passphrase.
e) Créer le répertoire pour sauver “La révocation des certificats” …

arunsb arun @: ~ $ mkdir / home / arunsb / .gpg_key /

f) Cliquez sur “Générer clé” pour générer des clés. c’est fait ..

Pour partager facilement les touches, vous pouvez publier vos clés avec serveur de clés.

a) Dans “Key Management” fenêtre Sélectionner vos clés, puis cliquez sur l’onglet ‘serveur de clés “dans le menu principal, puis cliquez sur” Upload clés publiques ”
Note ~ veillez à cocher «Afficher toutes les touches par défaut” case à cocher (à la liste de toutes les touches)

Étape 4] Composez le courrier et signer ~

Composez le mail et dites-Enigmail à le signer. En haut de votre fenêtre de composition, vous verrez un bouton de lecture “OpenPGP”. Cliquez sur cette question. Assurez-vous que le “Sign” option, et seulement cela, est cochée. Enfin “Envoyer” le courrier! (Vous serez invité à fournir votre mot de passe. Une fois que vous y entrer, Enigmail signerez votre e-mail et envoyez-le si vous avez générer des clés avec passphrase sinon il ne sera pas demander)
/ pgp_enigmail-composer

Enjoy!

Observe,
Arun Bagul