http://www.cae.wisc.edu/linux-sftp
sftp <user>@<host>
telecharger les fichiers
cd /home/localhost/files lcd /home/remote/files
Telecharger ses fichiers
sftp> mgets ./* sftp> mget ./*.csv
Upload ses fichiers
sftp > put ./*
Annexe
Source http://www.careerride.com/Spring-bean-lifecycle-in-spring-framework.aspx Question/response JAVA Spring What is Spring? Spring is a framework that resolves common problems in JEE architecture. (JDBC ,integration later, presentation layer …) Spring is managing business objects and encouraging practices POJO model (vs programming model) It’s highly recommended to use a architectural tiers (presentation,business,dao Layer) ; the inejection of the different beans
Le Grand collisionneur de hadrons (LHC) est un gigantesque instrument scientifique situé près de Genève, à cheval sur la frontière franco-suisse, à environ 100 mètres sous terre. C’est un accélérateur de particules, avec lequel les physiciens étudient les plus petites particules connues : les composants fondamentaux de la matière. Le LHC va révolutionner notre compréhension du monde,
Rendre un Jar executable en Spring Nous allons voir dans cet article comment packager un executable jar avec Maven 2 . Ayant rencontrer quelque problème dans le chargement des Beans Spring . Pour cela il faut inclure dans le packaging du jar les fichiers spring.handlers et spring.schemas. Nous utiliserons ici le plugin shade plutot
Samba permet de partager des dossiers sous Linux avec des ordinateurs locaux sous Windows, très pratique, donc ! De plus, il permet d’établir un réseau relativement sécurisé grâce à ses nombreuses fonctions. Commencez d’abord par l’installer : loguez vous en root puis tapez : apt-get install samba Il faut ensuite configurer quelques lignes du fichier
oct
31
Posted by : 31 octobre 2011
| On :http://www.cae.wisc.edu/linux-sftp
sftp <user>@<host>
telecharger les fichiers
cd /home/localhost/files lcd /home/remote/files
Telecharger ses fichiers
sftp> mgets ./* sftp> mget ./*.csv
Upload ses fichiers
sftp > put ./*
Annexe
oct
25
Posted by : 25 octobre 2011
| On :
Vérifier que votre vob est associé au bon CLEARCASE_PRIMARY_GROUP
ajouter dans le path
c:\Rational\ClearCase\etc\utils
SVN | Clearcase |
commit | archiver |
checkout | check out |
N/A | hijacking(modif en local) |
merge+commit | deliver+ rebase |
Concernant Clearcase vous pouvez vous retrouvez sous différents situations/configurations différentes :
On peut modifier à la volée sa « config spec » pour voir soit la dernière version du trunk (appelé aussi la \main\latest pour les puristes) ou bien une version particulière du projet ( la version labelisé sur une des branches) .
On peut poser des labels (des sortes de tags) pour se souvenir qu’à un instant T ce qu’on a livré comme composants.. en générale cela est fixé au préalable dans le périmètre dit des « livrables projet ».
De manière générale le client lourd Clearcase étant le plus souvent utilisé et requis pour un ingénieur d’intégrateur plus que pour qu’un ingénieur d’étude.
Généralement on pose un label sur les sources (nos livrables) puis on livre (on fait un deliver) de branche en branche ces livrables.
Win + R Tapez cmd
cd M:\<Nom de Vue >_view\<Vob name> clearfsimport -rmname -nset –rec -preview <PATH C:> . clearfsimport -nset -rec <PATH local du C:/> .
Click droit => share projet => cliquez sur Clearcase SCM adapter => indiquer le répertoire de votre vob puis appuyez finish .
Clearcase va détecter les éléments à ajout au source control il ne reste plus qu’à archiver (faire un commit)
Pour le client CCRC c’est sensiblement pareil
Monter votre vue et copiez le projet dans la vob approprié .
retourné sur le clearcase explorer et commite les répertoires et fichiers un à un .
cleartool lsview -l -full -pro <Nom de View>
=>Vérifier si vous appartenait au bon Owner et le groupe
Accéder au clearcase explorer depuis le prompt
clearexplorer .
http://loic-mathieu.developpez.com/conception/article/clearcase/
oct
24
Posted by : 24 octobre 2011
| On :Great Critic of Our School
Electro, Reaggae, Rnb everything is dance when it is with gd music !!
Y a plus rien à faire :p
oct
24
Posted by : 24 octobre 2011
| On :Samba permet de partager des dossiers sous Linux avec des ordinateurs locaux sous Windows, très pratique, donc !
De plus, il permet d’établir un réseau relativement sécurisé grâce à ses nombreuses fonctions.
Commencez d’abord par l’installer : loguez vous en root puis tapez :
apt-get install samba
Il faut ensuite configurer quelques lignes du fichier smb.conf :
vi /etc/samba/smb.conf
Ligne 27, renseignez le nom de votre groupe de travail, par exemple WORKGROUP :
# Change this to the workgroup/NT-domain name your Samba server will part of workgroup = WORKGROUP Après « ####### Authentication ####### », ligne 70, tapez : hosts deny = ALL hosts allow = ***.***.*.*
en remplaçant ***.***.*.* par l’ip local de l’ordinateur qui aura accès aux partages.
Si vous souhaitez mettre plusieurs ip, séparez les par des espaces.
Un peu plus loin, ligne 79, décommentez la ligne
;security = user
en supprimant le point virgule.
Cela signifie que par défaut seuls les utilisateurs enregistrés auprès de samba auront accès aux partages. A l’inverse, « share » autorise n’importe quel accès anonyme et est donc un mode bien moins sécurisé.
Les droits d’accès sont à configurer dans la partie « Share Definitions » : Par défaut, ils sont très limités.
Tout d’abord, pour autoriser les utilisateurs à naviguer et à écrire dans leur dossier personnel , modifier la partie [homes] de cette mannière :
[homes] comment = Home Directories browseable = yes # By default, the home directories are exported read-only. Change next # parameter to 'yes' if you want to be able to write to them. writable = yes # File creation mask is set to 0700 for security reasons. If you want to # create files with group=rw permissions, set next parameter to 0775. create mask = 0644 # Directory creation mask is set to 0700 for security reasons. If you want to # create dirs. with group=rw permissions, set next parameter to 0775. directory mask = 0755
« create mask » est le CHMOD associé aux fichiers créés, « directory mask » celui associé aux dossiers créés.
Vous pouvez également partager n’importe quel dossier, et cela de différentes façons.
Il faut commencer par le nom du partage entre crochets, puis renseigner les différentes règles qui lui seront affectées :
[Nom_du_partage] path = /chemin/du/dossier/partagé valid users = guillaume ou public = yes browseable = yes/no writeable = yes/no create mask = 0644 directory mask = 0755
Si vous utilisez la règle « public », n’oubliez pas de décommentez a ligne « guest account » dans la partie « Authentification », et au besoin modifier le compte qui sera utilisé par défaut par les invités.
On en a finit avec le fichier smb.conf. Il faut maintenant ajouter les utilisateurs de Samba.
Il faut commencer par ajouter les utilisateurs au système si ils n’existent pas encore, utilisez pour cela la commande adduser que vous pouvez compléter par la spécification du dossier personnel, auquel l’utilisateur aurra acès par défaut via samba :
adduser --home /home/votre_dossier nouvel_utilisateur
Vous est alors demandé le mot de passe associé ainsi que différentes informations que vous pouvez laisser vide.
Pour que les utilisateurs système aie un accès Samba, utilisez la commande :
smbpasswd –a nom_du_compte
En utilisant le nom de compte et le mot de apsse associé d’un utilisateur système.
Comme d’habitude, finalisez en redémarrant ce service :
/etc/init.d/samba restart
Pour avoir accès aux partages depuis Windows XP, créez un compte au même nom et avec le même mot de passe que celui enregistré à l’aide de la commande smbpasswd.
oct
24
Posted by : 24 octobre 2011
| On :
Vous pouvez monter votre serveur maison un bon 1U ultra sparc fera l’affaire .
Ou bien si vous ne souhaiter ne pas voir la machine chez vous vous pouvez opter dans ce cas là pour la location d’un serveur dédié dans un datacenter ou bien des petits partitions de serveur partagés . Ou si le « hype » vous dit une location en Cloud dans les nuages .
Dans cet article je vais essayer de présenter de manière synthétique une installation comme on entend souvent « from scratch »
Pour cela je suis aller louer un serveur dédié Kimsufi chez OVH et rélaiser une install sous debian avec accés SSH sur port 22 par défault .
à partir de ce moment là je vous dit bienvenue dans lunivers des linuxien le noir et blanc est de vigueur
Ce que nous allons voir ici :
dans le fichier /root/.bashrc
~/.bashrc export LS_OPTIONS='--color=auto' eval "`dircolors`" alias ls='ls $LS_OPTIONS' alias ll='ls $LS_OPTIONS -l' alias l='ls $LS_OPTIONS -lA'
/etc/vim/vimrc
syntax on set paste set background=dark set softtabstop=4 set shiftwidth=4 set tabstop=4 set expandtab Redemarrage du service SSH /etc/init.d/ssh restart
chercher un package :
aptitude search <nom de mon package> ou apt-cache search <nomdemonPackage>
vi /etc/apt/sources.list
deb http://download.webmin.com/download/repository sarge contrib
apt-get update
apt-get install webmin
Verifier installtion webmin https://nomserveur:10000
(securisation SSL)
apt-get install apache2-mpm-prefork
Installation PHP5
vim /etc/apt/sources.list
=> rajouter
deb http://dotdeb.thefox.com.fr stable all deb-src http://dotdeb.thefox.com.fr stable all
=> Rafraichir vos packets disponibles
apt-get update
apt-get install php5 php5-cli php-pear php5-gd php5-mysql libapache2-mod-php5
(toujours autoriser)
=>verification de installation
cd /var/www/apache2-default/ vi phpinfo.php <?php phpinfo(); ?>
=>tester le fonctionnement de PHP5
http://ipserveur/apache2-default/phpinfo.php
http://DNS Serveur/apache2-default/phpinfo.php
apt-get install mysql-server-5.0
sécurisation de MySQL
mysql_install_db
ou
mysqladmin -u root password « monPassword»
mysql_secure_installation
apt-get install phpmyadmin
apt-get install bind9
Preparer son site :
cd /var/www/ mkdir monSite
créer un user FTP via Webmin)
Installer un serveur FTP(Proftpd)
apt-get install proftpd
(option : independamment)
vi /etc/proftpd/proftpd.conf
ServerName "Debian"ServerType standaloneShowSymlinks onMultilineRFC2228 onDefaultServer onShowSymlinks onMaxInstances 30Port 21UseReverseDNS offIdentLookups offLogFormat traff "%b %u"DefaultRoot ~DenyFilter (\*.*/)|%<Global>DeferWelcome offTimeoutNoTransfer 600TimeoutStalled 600TimeoutIdle 1200PassivePorts 50000 60000User nobodyGroup nogroupUmask 022AllowStoreRestart onAllowRetrieveRestart onAllowOverwrite on</global><VirtualHost 10.18.140.71>ServerName "ksXXX.kimsufi.com "ServerAdmin votre.adresse@emaill.comPort 21MaxLoginAttempts 2RequireValidShell noListOptions -AMaxClients 20DefaultRoot ~AllowOverwrite yes<Limit LOGIN>Order Allow,DenyAllowUser votreuserDeny from all</Limit><Directory ~><Limit ALL>AllowAll</Limit></Directory></VirtualHost>
aller editer :
/etc/hosts ::1 ip6-localhost ip6-loopback ksXXX.kimsufi.com
Restart proFtpd
/etc/init.d/proftpd restart
Connection au FTP (créer un utilisateur via Webmin avant)
hote : ksXXX.kimsufi.com
utilisateur : titi
pwd : toto
Modifier les droits des repertoires : (pour resoudre les pbs de droits)
chown -R 1000:33 *
Restart apache Server (pour prendre en compte les changments)
a2ensite monSite.com.conf /etc/init.d/apache2 restart vi monSite.com.conf
oct
24
Posted by : 24 octobre 2011
| On :http://blog.thelinuxfr.org/Installation-et-configuration-d-un.html
http://www.debian-administration.org/article/OpenLDAP_installation_on_Debian
sudo apt-get install slapd ldap-utils libdb4.6 sudo dpkg-reconfigure slapd root@artaud:~# /etc/init.d/slapd restart
sudo slapadd -v -l ~/init.ldif ou ldapadd -c -x -D cn=admin,dc=spinlock,dc=hr -W -f ~/init.ldif
le prompt authentification aparait
dn: ou=people,dc=home objectClass: organizationalUnit ou: people dn: ou=groups,dc=home objectClass: organizationalUnit ou: groups dn: uid=lionel,ou=people,dc=home objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: lionel sn: Porcheron givenName: Lionel cn: Lionel Porcheron displayName: Lionel Porcheron uidNumber: 1000 gidNumber: 10000 gecos: Lionel Porcheron loginShell: /bin/bash homeDirectory: /home/lionel shadowExpire: -1 shadowFlag: 0 shadowWarning: 7 shadowMin: 8 shadowMax: 999999 shadowLastChange: 10877 mail: lionel.porcheron@home.com postalCode: 31000 l: Toulouse o: home mobile: +33 (0)6 xx xx xx xx homePhone: +33 (0)5 xx xx xx xx title: System Administrator postalAddress: initials: LP
sudo slapcat ldapsearch -xsortie écran
# extended LDIF # # LDAPv3 # base <> (default) with scope subtree # filter: (objectclass=*) # requesting: ALL # # search result search: 2 result: 32 No such object # numResponses: 1 root@artaud:~# ldapsearch -x # extended LDIF # # LDAPv3 # base <> (default) with scope subtree # filter: (objectclass=*) # requesting: ALL # # search result search: 2 result: 32 No such object # numResponses: 1
database bdb suffix "dc=admin,dc=home" #rootdn "cn=Manager,dc=example,dc=com" rootdn "cn=admin,dc=admin,dc=home" # Cleartext passwords, especially for the rootdn, should # be avoided. See slappasswd(8) and slapd.conf(5) for details. # Use of strong authentication encouraged. #rootpw {SSHA}rpns/vNaQ1h8qxzNGdnuS+mJtHGuzv+k {SSHA}4+B3Cqnpzf454dzgREe0FBsIQ19Y8Trp # rootpw {crypt}ijFYNcSNctBYg root@artaud:~# sudo slapadd -v -l ~/init.ldif
dn: ou=people,dc=home objectClass: organizationalUnit ou: people dn: ou=groups,dc=home objectClass: organizationalUnit ou: groups dn: uid=lionel,ou=people,dc=home objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: lionel sn: Porcheron givenName: Lionel cn: Lionel Porcheron displayName: Lionel Porcheron uidNumber: 1000 gidNumber: 10000 gecos: Lionel Porcheron loginShell: /bin/bash homeDirectory: /home/lionel shadowExpire: -1 shadowFlag: 0 shadowWarning: 7 shadowMin: 8 shadowMax: 999999 shadowLastChange: 10877 mail: lionel.porcheron@home.com postalCode: 31000 l: Toulouse o: home mobile: +33 (0)6 xx xx xx xx homePhone: +33 (0)5 xx xx xx xx title: System Administrator postalAddress: initials: LP
Exécutez
python install –prefix=/usr/share /usr/share == PATH default
oct
24
Posted by : 24 octobre 2011
| On :
http://java.com/fr/download/manual.jsp
mv jre-6u18* jre-6u18-linux-i586.bin sudo mv ./jre-6u18-linux-i586.bin /opt/ cd /opt/ chmod +x jre-6u18-linux-i586.bin sudo ./jre-6u18-linux-i586.bin</pre> ln -sf /opt/java/jdkX.X.X_u/ /opt/java/jdk ln -sf /opt/java/jreX.X.X_u/ /opt/java/jre ln -sf /opt/java/jdkX.X.X_u/ /opt/java/default echo "" >> /etc/profile echo "#JAVA" >> /etc/profile echo "JRE_HOME=/opt/java/jre" >> /etc/profile echo "JDK_HOME=/opt/java/jdk" >> /etc/profile echo "JAVA_HOME=/opt/java/default" >> /etc/profile echo "export JRE_HOME JDK_HOME JAVA_HOME" >> /etc/profile
sudo update-alternatives --config java cd ~ ls -al
editer le bashrc
export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun-1.5.0.06 export PATH=$PATH:$JAVA_HOME/bin # set PATH so it includes user's private bin if it exists if [ -d ~/bin ] ; then PATH=~/bin:"${PATH}" fi export JAVA_HOME=”/usr/lib/jvm/java-6-openjdk/″ export JDK_HOME=”${JAVA_HOME}” export PATH=”${JAVA_HOME}/bin:${PATH}” fi export M2_HOME=/usr/local/apache-maven/apache-maven-2.2.1 export M2=$M2_HOME/bin export MAVEN_OPTS="-Xms512m -Xmx1024m" export PATH=$M2:$PATH
#!/bin/sh mavenVersion="apache-maven-2.2.1" wget http://apache.cict.fr/maven/binaries/apache-maven-2.2.1-bin.tar.gz echo "== Telechargement de Apache Maven2 == " tar -xvf apache-maven-2.2.*.tar.gz if [ -d "/usr/local/apache-maven" ] then echo "le repertoire /apache-maven existe deja" cp -r $mavenVersion /usr/local/apache-maven echo "== Copie du repertoire effectue == " rm -rf ./$mavenVersion else cd /usr/local/ mkdir apache-maven cd - cp -r $mavenVersion /usr/local/ rm -rf ./$mavenVersion fi export M2_HOME=/usr/local/apache-maven/apache-maven-2.2.1 export M2=$M2_HOME/bin export MAVEN_OPTS="-Xms512m -Xmx1024m" export PATH=$M2:$PATH echo "==== MAVEN ===" mvn --version
Nb : Commonly STS Tool suite is being used as far as it come with Spring IDE integrate plus some other spring visualization such as spring batch and spring integration , namespace support …
Procedure
Forum and FAQ
http://forum.springsource.org/showthread.php?116189-STS-2.8.0-and-m2e-FAQ
Dans cette section nous allons ajouter le plugin antrun plugin nous permettant d’utiliser les fonctionnalités de Ant via Maven 2
Pour cela il suffit d’inclure dans le fichier Pom.xml le code ci dessous. Il ne reste plus qu’à ajouter vos appel de target ant relatif que vous souhaitez exécuter à chacune des phases du cycle de vie Maven à savoir :
à la racine du projet nous allons donc créer un fichier build.xml (ant) où nous allons répertorier les différentes taches Ant que notre projet va utiliser .
<build> <!-- Tips : To define the plugin version in your parent POM --> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <version>1.3</version> </plugin> </plugins> </pluginManagement> <!-- Tips: To use the plugin goals in your POM or parent POM --> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <version>1.6</version> <executions> <execution> <id>Information</id> <phase>compile</phase> <goals> <goal>run</goal> </goals> <configuration> <tasks> <ant antfile="${basedir}/build.xml" inheritAll="true" inheritRefs="true"> <!--Pass the required properties to ant File--> <property name="version" value="${version}" /> <property name="artifactId" value="${artifactId}" /> <!--Call ant Target here --> <target name="deploymentInformation" /> </ant> </tasks> </configuration> </execution> <execution> <id>Deploiement</id> <phase>install</phase> <goals> <goal>run</goal> </goals> <configuration> <tasks> <ant antfile="${basedir}/build.xml" inheritAll="true" inheritRefs="true"> <!--Pass the required properties to Ant file --> <property name="version" value="${version}" /> <property name="artifactId" value="${artifactId}" /> <!--Call the ant target you want to execute here ... --> <target name="XXXX" /> </ant> </tasks> </configuration> </execution> </executions> <dependencies> <dependency> <groupId>ant</groupId> <artifactId>ant-jsch</artifactId> <version>1.6.5</version> </dependency> <dependency> <groupId>com.jcraft</groupId> <artifactId>jsch</artifactId> <version>0.1.44-1</version> </dependency> </dependencies> </plugin> </plugins> </build>
<project name="MyProjectNAME" basedir="."> <description>FICHIER ANT DE RUN </description> <target name="deploymentInformation"> <echo message=" Ant File : ${ant.file}"/> <echo message ="Ant version : ${ant.version}" /> <echo message="Version : ${version}" /> <echo message="ArtifactId : ${artifactId}" /> </target>
<target name="copyArchive"> <scp todir=${usr}:${password}@${hostduserveur}:${DestinationFolder}/${artifactId}" port="22" trust="true" verbose="true" failonerror="true" file="${basedir}/target/${artifactId}-${project.version}-.tar.gz"> </scp> </target>
<target name="deploymentCreate"> <sshexec host="${host}" username="${user}" keyfile="${privateRSAKEY}" trust="yes" command="${NameScript} ${ARG1/2/3...}" verbose="true" > </sshexec> </target>
http://www.avajava.com/tutorials/lessons/what-are-the-phases-of-the-maven-default-lifecycle.html
http://maven.apache.org/plugins/maven-antrun-plugin/usage.html
http://ant.apache.org/manual/Tasks/scp.html
http://ant.apache.org/manual/Tasks/sshexec.html
oct
24
Posted by : 24 octobre 2011
| On :
Dans cette article nous allons essayer de voir quels sont les avantages et inconvénients de utilisation du JMS en java et dans quel cas nous pouvons utiliser.
1 personne à la fois lit dans la queue JMS dans le sens où une fois que le message JMS est consommé par un des clients celui-ci n’existe plus en temps que tel dans la queue.
On sait ce qui est lu dans la queue JMS à instant T.
Mode transactionnel possible : On peut sauvegarder nos messages JMS en dans une base de données cela présente l’avantage de ne perdre aucun message à traiter.
On peut également utiliser le mode transacted = true cela permet notamment de reposter les messages dans la queue d’origine en cas de rollback .
Facilite les tests Test unitaires ou intégration d’un applicatif .
les queues JMS sont très largement utiliser dans les architectures SOA (service Oriented Architecture) afn de permettent aux différentes briques applicatives du SI de communiquer entre elles . Chacune de ses briques applicatives s’attachant de répondre à un besoin métier ou fonctionnelle distinct .
Répartition de la charge sur le serveur
A noter : On peut également utiliser que des queues Jms, et avoir un serveur par processus métier cela permet notamment de garder une plus grande flexibilité et souplesse tant sur le déploiement applicatif que sur la répartition de charge des serveurs plus ou moins critiques.
La différence majeur avec les queue JMS est que la topic JMS permet d’avoir plusieurs « subscriber » c’est à dire plusieurs personnes qui viennent lire sur la topic JMS . Nous définissons la configuration de celle-ci le nom du subscriber .
On entend parfois aussi parler de souscription durable permet de garantir que le message a bien été livré au subscriber .
Le problème majeur de la topic JMS est que nous ne pouvons avoir de visibilité sur ce qui se passe à instant T.
Afin de combiné les avantages et inconvénients des Queue et topic JMS nous allons introduire la notion de transaction XA.
La transaction XA permet de dispatcher nos messages dans différentes queue JMS cela permet de garantir une architecture physique plus robuste . Nous pouvons bien évidemment sauvegarder nos messages en base de données et imaginer une réplication de ses bases via différentes solutions (comme Oracle RAC pr exemple)