Tous les articles par pierre

V-(으)면 안 되다

Exprime l’interdiction de faire quelque chose.

바침 X바침 O
동사 (verbe)보다 → 보면 안 되다먹다 → 먹으면 안 되다
Base verbalePassé (V-면 안되었어요)Présent (V-면 안됐어요)
보다보면 안 되었어요보면 안 됐어요
마시다마시면 안 되었어요마시면 안 됐어요
잘하다잘하면 안 되었어요잘하면 안 됐어요
살다살면 안 되었어요살면 안 됐어요
듣다듣면 안 되었어요듣면 안 됐어요
알다알면 안 되었어요알면 안 됐어요

Ex:

  • 시험 시간에 사전을 보면 안 됩니다.
    Vous ne pouvez pas regarder un dictionnaire pendant l’examen.
  • 여기에서 사진을 찍으면 안 돼요.
    Vous ne pouvez pas prendre de photos ici.

N이다 (être)

이다 s’ajoute à la fin d’un nom pour en faire le prédicat de la phrase. 이다 est utilisé pour exprimer que le sujet et le prédicat sont la même chose. 이다 peut également être utilisé pour spécifier quelque chose.

Cette forme peut aussi bien être utilisé pour poser une question ou y répondre. Dans le cas d’une question, nous monterons l’intonation à la fin de la phrase. pour le reste, nous baissons l’intonation à la fin de la phrase.

받침 X받침 O
나나 + 예요 → 나나예요학생 + 이에요 → 학생이에요
사과 + 예요 → 사과예요책상 + 이에요 → 책상이에요
어머니 + 예요 → 어머니 예요책상 + 이에요 → 책상이에요.

Ex:

  • 저는 나나예요.
    Je suis Nana.
  • 마이클은 기자예요? – 네, 마이클은 기자예요.
    Michael est-il journaliste? – Oui, Michael est journaliste.

N은/는

‘은/는’ est utilisé pour indiqué le sujet / l’objet de la phrase.
Il ne s’agit pas du sujet / objet au sens grammatical, mais bien au niveau du sens → de quoi/qui parle la phase

Pour les mots se terminant par une voyelle , 는 est ajouté , et pour les mots se terminant par une consonne , 은 est ajouté

받침 X받침 O
저 + 는 → 저는스티븐 + 은 → 스티븐은

Ex:

  • 저는 한국사람입니다
    Je suis coréen
  • 리처드 씨는 29살입니 다
    Richard a 29 ans.
  • 제 직업은 변호사입니다
    Je suis un avocat.

인사말

Bonjour!

안녕하세요?

안녕하세요? est la forme de salutation la plus utilisée. Cette salutation peut être utilisée à tout heure de la journée. Elle veut dire bonjour.

안녕하십니까?

안녕하십니까? est la forme polie, formelle de 안녕하세요?

안녕?

안녕? est la forme familière de 안녕하세요? , Utilisé dans ce sens, l’expression veut dire bonjour.
Peut aussi vouloir dire au revoir quand on se quitte.

Au revoir!

Deux formes existent pour dire au revoir. Elles dépendent du point de vue de celui qui parle, du locuteur.

안녕히 계세요.

안녕히 계세요. est utilisé pour dire au revoir à quelqu’un qui reste (point de vue du locuteur qui part).

안녕히 가세요.

안녕히 가세요. est utilisé pour dire au revoir à quelqu’un qui part (point de vue du locuteur, qu’il reste ou qu’il parte aussi).

Ravi de vous rencontrer!

만나서 반가워요. / 반가워요. est utilisé lors d’une première rencontre pour dire Ravi de te rencontrer.
만나서 반갑습니다. / 반갑습니다. est la forme polie/formel de 만나서 반가워요. / 반가워요. La traducion est donc: Ravi de vous rencontrer.

A-아/어지다

Changement de situation/condition

Indique un changement de situation ou de condition.

ㅏ,ㅗ하다ㅓ, ㅜ, ㅣ…
형용사 (adjectif)비싸다 → 비싸지다따뜻하다 → 따뜻해지다쥡다 → 쥐워지다

Ex:

  • 서울에 외국 사람이 많아졌어요.
    Il y a plus d’étrangers à Séoul.
  • 날씨가 많이 따뜻해졌어요?
    Le temps s’est beaucoup réchauffé, n’est-ce pas ?
  • 시험이 지난번보다 좀 쉬워졌어요.
    L’examen est devenu plus facile que la dernière fois.
  • 머리를 자르면 분위기가 좀 달라질 거예요.
    Si vous vous coupez les cheveux, l’ambiance sera un peu différente.

V-게 되다

Changement induit par l’environnement ou quelqu’un

Indique un changement induit par l’environnement ou quelqu’un, indépendamment de la volonté de celui qui parle.

바침 X바침 O
동사 (verbe)보다 → 보게 되다먹다 → 먹게 되다
Base verbalePassé (V-게되었어요)Présent (V-게됐어요)
보다보게 되었어요보게 됐어요
마시다마시게 되었어요마시게 됐어요
잘하다잘하게 되었어요잘하게 됐어요
살다살게 되었어요살게 됐어요
듣다듣게 되었어요듣게 됐어요
알다알게 되었어요알게 됐어요

Ex:

  • 한국 친구를 사귀고 나서 한국말을 잘하게 됐어요.
    Après m’être fait un ami coréen, je suis devenu bon en coréen.
  • 그 사람과 사랑에 빠지게 됐어요.
    Je suis tombé amoureux de lui.
  • 한국에 와서 음식을 자주 만들어 먹게 돼었어요. (passé)
    Je suis venu en Corée et j’ai commencé à cuisiner et à manger souvent.

KVM: Communication entre invité en mode pont

Cette article est un pense bête et peut aussi servir aux personnes utilisant kvm en mode bridge (pont).

KVM est configuré en mode pont pour permettre la communication entre l’hôte et les invités. Il arrive que les invités ne puissent pas communiquer entre eux. Cela est du à des règles de filtrage du pont au niveau de l’hôte.

Attention! Si vous perdez la connectivité entre invités suite à une mise à jour, penser à revoir le fichier suivant.

Pour régler le problème, il faut ajouter au fichier suivant les informations:

/etc/sysctl.conf
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0

Si vous n’utilisez pas IPV4, ajouter que les informations concernant IPV6 et vice et versa

Source:
https://wiki.libvirt.org/page/Networking#Host_configuration_2
https://wiki.debian.org/BridgeNetworkConnections

Mise en place d’un gestionnaire de paquet centralisé (NEXUS)

Construction du gestionnaire avec Docker

Nous allons installer NEXUS via Docker. Il faut donc connaître un peu Docker, avoir installé les outils nécessaires. Nous les verrons au fur et à mesure.

De base, NEXUS n’est pas pas packagé avec la gestion des paquets pour les distribution se basant sur débian (apt). Il existe un plugin nexus-repository-apt. Attention, le plugin n’est pas supporté par NEXUS, prenez vos responsabilités. Le conteneur contenant le plugin apt se sert du conteneur de base pour ajouter le plugin.

Il va falloir construire le conteneur à partir des sources sur github.

Pour cela, se placer à l’endroit désiré:

cd /home/pierre/Documents

Cloner le dépot officiel du plugin nexus-repository-apt, n’oubliez pas la ligne 2

git clone https://github.com/sonatype-nexus-community/nexus-repository-apt.git
cd nexus-repository-apt/

Se placer sur le bon tag, le master n’est pas nécessairement celui que vous voullez

git checkout UpdateToThreeDotFourteen

Lancer le build, n’oubliez pas le point à la fin de la ligne

docker build -t nexus-repository-apt:3.14.0 .
  • nexus-repository-apt correspond au nom du conteneur construit localement
  • 3.14.0 correspond à la version

Lancer le conteneur

Directement via ligne de commande

docker run -d -p 8081:8081 --name nexus -v /media/raid5/nexus-data:/nexus-data nexus-repository-apt:3.14.0
  • -d, faire tourner le docker en tant que daemon
  • -p 8081:8081, mappe le port 8081 de l’hôte au port 8081 dans le conteneur
  • --name nexus, nom du conteneur
  • -v /media/raid5/nexus-data:/nexus-data, mappe le répertoire /media/raid5/nexus-data de l’hôte au répertoire/nexus-data du conteneur. Docker se débrouille pour créer et monter le répertoire dans le conteneur. Nous faisons cela pour la persistance des données
  • nexus-repository-apt:3.14.0 nexus-repository-apt correspond au nom du conteneur construit localement, 3.14.0, correspond à la version

Vérifier que tous fonctionne bien:

docker ps
CONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS              PORTS                    NAMES
36be3444152e        nexus-repository-apt:3.14.0   "sh -c ${SONATYPE_DI…"   4 weeks ago         Up 4 weeks          0.0.0.0:8081->8081/tcp   nexus

Connectez-vous à votre gestionnaire de dépôt:

localhost:8081 ou ip-hote:8081

Via SystemD

Créer un service nexus à l’aide du fichier suivant (/etc/systemd/system/nexus.service)


[Unit]
Description=nexus docker service
After=syslog.target docker.service

[Service]
ExecStartPre=-/usr/bin/docker kill nexus
ExecStartPre=-/usr/bin/docker rm nexus
ExecStart=/usr/bin/docker run \
  --name nexus \
  --publish 8081:8081 \
  --volume /media/raid5/nexus-data:/nexus-data \
  nexus-repository-apt:3.14.0
ExecStop=-/usr/bin/docker stop nexus
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target
  • ExecStartPre, commande à lancer avant le start
  • --name, nom du conteneur, il doit être unique
  • --publish, mappage du port 8081 au port 8081 du conteneur, seul port ouvert du conteneur
  • --volume, mappe le répertoire /media/raid5/nexus-data de l’hôte au répertoire/nexus-data du conteneur. Docker se débrouille pour créer et monter le répertoire dans le conteneur. Nous faisons cela pour la persistance des données

Mise à jour de SystemD avec le nouveau service


systemctl daemon-reload

Permettre au service de démarrer lors du démarrage de la VM ou du PC


systemctl enable nexus.service

Mise à disposition derrière Apache

Créer le fichier de configuration d’Apache:

nano /etc/apache2/sites-available/exemple.com.conf

Contenu du fichier:

Protocols http/1.1
<VirtualHost *:80>
 ServerAdmin contact@exemple.com
 ServerName exemple.com
 Redirect permanent / https://exemple.com/
 ErrorLog ${APACHE_LOG_DIR}/error.log
 CustomLog ${APACHE_LOG_DIR}/access.log combined
<virtualhost>

<virtualhost *:443="">
 ServerAdmin contact@exemple.com
 ServerName exemple.com
 Protocols h2 http/1.1

 ErrorLog ${APACHE_LOG_DIR}/error_ssl.log
 CustomLog ${APACHE_LOG_DIR}/access_ssl.log common
 LogLevel warn

 SSLEngine on
 SSLProtocol all -SSLv2 -SSLv3
 SSLHonorCipherOrder on
 SSLCertificateFile /etc/letsencrypt/live/exemple.com/fullchain.pem
 SSLCertificateKeyFile /etc/letsencrypt/live/exemple.com/privkey.pem

 AllowEncodedSlashes NoDecode
 RequestHeader set X-Forwarded-Proto "https"
 ProxyPass / http://p-nexus:8081/ nocanon
 ProxyPassReverse / http://p-nexus:8081/
<virtualhost>
  • ServerName, nom du serveur sur internet ou dans votre réseau
  • Redirect permanent met en place une redirection permanente sur une connexion sécurisé
  • Protocols définit les protocoles disponible, nous indiquons ici que nous préférons utiliser http2

Voila, nexus est fonctionnel.

PS: une fois le conteneur monté, il faut attendre un peu que Nexus démarre. Ca prend un peu de temps, entre une minute pour un Nexus vierge à 20 minutes pour un Nexus avec des données

Commande Linux en vrac

Taille d’un répertoire:

du -hs /media/raid5/
2,3T	/media/raid5/

Chercher du texte dans les fichiers d’un répertoire:

grep -rnw '/repertoire/de/recherche/du/texte' -e 'texte recherché'
  • -r or -R Recherche récursive,
  • -i ignore la casse
  • -n indique le numéro de ligne dans le fichier trouvé
  • -w pour chercher le mot entier.
  • -l (petit L) pour donner uniquement le nom des fichiers trouvés
  • --include=\*.{c,h} uniquement les fichiers .c et .h
  • --exclude=*.o exclure les fichiers .o
  • --exclude-dir={dir1,dir2,*.dst} exclut le repertoire dir1, dir2 et tous les répertoires répondant au regex *.dst

source: https://stackoverflow.com/questions/16956810/how-do-i-find-all-files-containing-specific-text-on-linux

Historique des cron

grep CRON /var/log/syslog
Jun 13 07:17:01 hostname CRON[11824]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Jun 13 08:17:01 hostname CRON[11900]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Jun 13 09:17:01 hostname CRON[11977]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Jun 13 10:17:01 hostname CRON[13108]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Jun 13 10:30:01 hostname CRON[13483]: (root) CMD (docker exec --user www-data nc php -f /var/www/html/cron.php)
Jun 13 10:45:01 hostname CRON[14134]: (root) CMD (docker exec --user www-data nc php -f /var/www/html/cron.php)
Jun 13 11:00:01 hostname CRON[15160]: (root) CMD (docker exec --user www-data nc php -f /var/www/html/cron.php)
Jun 13 11:17:01 hostname CRON[15439]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)

Ou se trouve une commande

whereis docker
docker: /usr/bin/docker /etc/docker /usr/share/man/man1/docker.1.gz

type -a docker
docker est /usr/bin/docker

redirection de port avec ssh

Vous êtes loin de vos serveur.
Vous désirez vous connecter à une ressource (hors ligne) de votre serveur exemple.fr
Nous allons utilisé un tunnel ssh

ressource désirée => https://exemple.fr:8443/maxview/manager/login.xhtml

La commande SSH à taper est la suivante:

ssh -L 8000:localhost:8443 exemple.fr -p 10145

-p 10145 correspond au port ssh d’écoute du serveur exemple.fr
-L 8000 port local redirigé ver le port 8443 du serveur

Dans votre navigateur, lancer http://localhost:8000/maxview/manager/login.xhtml