Compare commits
5 Commits
e42385e732
...
7a644b5e3d
Author | SHA1 | Date | |
---|---|---|---|
7a644b5e3d | |||
ef5fcc84fa | |||
dcf71f8049 | |||
6e011c69e7 | |||
4c4f7de218 |
68
chap/Bonjour.tex
Normal file
68
chap/Bonjour.tex
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
\chapter{Bonjour} \index{Bonjour}
|
||||||
|
\label{chap:Bonjour}
|
||||||
|
|
||||||
|
|
||||||
|
Bonjour (anciennement nommé RendezVous) est l'implémentation
|
||||||
|
par Apple de la norme Zeroconf\index{zeroconf}.
|
||||||
|
C'est un système de mise en réseau local automatique.
|
||||||
|
|
||||||
|
Bonjour utilise le port \textbf{5353} en UDP\index{UDP}.
|
||||||
|
Pour IPv4, la RFC 3927 de l'IETF définit l'allocation
|
||||||
|
dynamique d'adresses IP dans la plage 169.254.0.0/16.
|
||||||
|
|
||||||
|
Avahi\index{avahi} est une bibliothèque logicielle fournissant une
|
||||||
|
implémentation libre des protocoles IPv4LL, mDNS et DNS-SD.
|
||||||
|
|
||||||
|
% -----------------------------------------------------------
|
||||||
|
|
||||||
|
\section{Outils}
|
||||||
|
|
||||||
|
Bon, maintenant, que faire de tout ça ? Explorer ce qui se trame
|
||||||
|
sur notre réseau local ? C'est évident que si il y a rendez-vous,
|
||||||
|
il y a forcément de la drague\index{drague} sur le LAN.
|
||||||
|
Et la drague, le meilleur moyen c'est quand même du
|
||||||
|
broadcast\index{broadcast} sur UDP\index{UDP}.
|
||||||
|
Il y a même un logiciel spécialisé pour entendre ça :
|
||||||
|
|
||||||
|
|
||||||
|
\begin{quote}
|
||||||
|
mdns-scan is a tool for scanning for mDNS/DNS-SD published services on
|
||||||
|
the local network. It issues a mDNS\index{mDNS} PTR query to the special
|
||||||
|
RR \_services.\_dns-sd.\_udp.local for retrieving a list of all currently
|
||||||
|
registered services on the local link.
|
||||||
|
\end{quote}
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
|
tth@debian:~/Devel/TetaTricks$ mdns-scan
|
||||||
|
+ saned._sane-port._tcp.local
|
||||||
|
+ DELIRIUM._smb._tcp.local
|
||||||
|
+ DELIRIUM._device-info._tcp.local
|
||||||
|
+ Serviette._nut._tcp.local
|
||||||
|
+ Serviette._mumble._tcp.local
|
||||||
|
+ RENAN-PC._nvstream._tcp.local
|
||||||
|
+ Mac Pro de XANO._afpovertcp._tcp.local
|
||||||
|
+ Mac Pro de XANO._smb._tcp.local
|
||||||
|
+ MacBook Pro de Romain._smb._tcp.local
|
||||||
|
+ Mac Pro de XANO._companion-link._tcp.local
|
||||||
|
+ HP Photosmart C4400 series @ MacBook Pro de Sophie de Angelis (._ipp._tcp.local
|
||||||
|
+ TOSHIBA e-STUDIO2040C-07304719 @ MacBook Pro de Sophie de Angel._ipp._tcp.local
|
||||||
|
+ TOSHIBA e-STUDIO2010AC-13828385._http._tcp.local
|
||||||
|
+ MacBook Pro de Manon._companion-link._tcp.local
|
||||||
|
+ Mac Pro de XANO / Mac Pro de MacPro._c4ds._tcp.local
|
||||||
|
+ 0418C7E2-071B-4BC7-B210-20F4D6BED80A._netrender._tcp.local
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
Que faire de toutes ces information, à part savoir que la machine
|
||||||
|
\texttt{delirium} semble être un serveur Samba\index{Samba} ?
|
||||||
|
|
||||||
|
% -----------------------------------------------------------
|
||||||
|
|
||||||
|
\section{Code}
|
||||||
|
|
||||||
|
XXX\index{XXX}
|
||||||
|
|
||||||
|
Je ne sais même pas par où commencer \textit{:)}
|
||||||
|
|
||||||
|
% -----------------------------------------------------------
|
||||||
|
|
||||||
|
|
38
chap/DNS.tex
38
chap/DNS.tex
@ -1,10 +1,12 @@
|
|||||||
\chapter{Domain Name Service}
|
\chapter{Domain Name Service}
|
||||||
\label{DNS}
|
\label{chap:DNS}
|
||||||
|
|
||||||
\section{host}
|
\section{Outils de base}
|
||||||
|
|
||||||
|
\subsection{host}
|
||||||
\index{host}
|
\index{host}
|
||||||
|
|
||||||
C'est vraiment la commande de base pour tout ce qui touche à la
|
C'est vraiment la commande \textit{vanilla} pour tout ce qui touche à la
|
||||||
résolution de nom. Elle propose les premières options de base,
|
résolution de nom. Elle propose les premières options de base,
|
||||||
avec une syntaxe facile à retenir. Elle existe, sous des formes
|
avec une syntaxe facile à retenir. Elle existe, sous des formes
|
||||||
légèrement déviantes, dans une grande partie des
|
légèrement déviantes, dans une grande partie des
|
||||||
@ -24,7 +26,7 @@ plus loin ?
|
|||||||
|
|
||||||
% ------------------------------------------------------------
|
% ------------------------------------------------------------
|
||||||
|
|
||||||
\section {nslookup}
|
\subsection {nslookup}
|
||||||
\index{nslookup}
|
\index{nslookup}
|
||||||
|
|
||||||
\begin{quote}
|
\begin{quote}
|
||||||
@ -39,7 +41,7 @@ a host or domain. »
|
|||||||
|
|
||||||
% ------------------------------------------------------------
|
% ------------------------------------------------------------
|
||||||
|
|
||||||
\section{dig}
|
\subsection{dig}
|
||||||
\index{dig}
|
\index{dig}
|
||||||
|
|
||||||
Dig (\textit{domain information groper}) est un outil d'interrogation
|
Dig (\textit{domain information groper}) est un outil d'interrogation
|
||||||
@ -53,30 +55,40 @@ Pour le reverse d'une adresse IP :
|
|||||||
\$ dig +trace -x <adresse.ip>
|
\$ dig +trace -x <adresse.ip>
|
||||||
|
|
||||||
% ------------------------------------------------------------
|
% ------------------------------------------------------------
|
||||||
\section{delv}
|
% \subsection{delv}
|
||||||
\index{delv}
|
% \index{delv}
|
||||||
|
%
|
||||||
Nouvel outil en rapport avec DNSSEC\index{DNSSEC}.
|
Nouvel outil en rapport avec DNSSEC\index{DNSSEC}.
|
||||||
% XXX
|
% XXX
|
||||||
\index{XXX}
|
% \index{XXX}
|
||||||
% http://www.bortzmeyer.org/delv.html
|
% http://www.bortzmeyer.org/delv.html
|
||||||
% XXX
|
% XXX
|
||||||
|
|
||||||
% ------------------------------------------------------------
|
% ------------------------------------------------------------
|
||||||
|
|
||||||
\section{checkresolv}
|
\subsection{checkresolv}
|
||||||
|
|
||||||
|
|
||||||
Outil très basique conçu et bricolé par Tonton~Th au siècle
|
Outil très basique conçu et bricolé par Tonton~Th au siècle
|
||||||
dernier lors d'un séjour à Frontignan-plage.
|
dernier lors d'un séjour à Frontignan-plage. Hélas, les sources
|
||||||
|
semblent définitivement perdues.
|
||||||
|
|
||||||
|
Une ré-écriture s"impose\dots
|
||||||
|
|
||||||
% ------------------------------------------------------------
|
% ------------------------------------------------------------
|
||||||
|
\section{DHCP} \index{DHCP}
|
||||||
|
|
||||||
|
\begin{quote}
|
||||||
|
The DHCP protocol allows a host to contact a central server which maintains a
|
||||||
|
list of IP addresses which may be assigned on one or more subnets. A DHCP
|
||||||
|
client may request an address from this pool, and then use it on a temporary
|
||||||
|
basis for communication on network.
|
||||||
|
\end{quote}
|
||||||
|
|
||||||
|
% ------------------------------------------------------------
|
||||||
\section{dnsmasq}
|
\section{dnsmasq}
|
||||||
\index{dnsmasq}
|
\index{dnsmasq}
|
||||||
|
|
||||||
\begin{quote}
|
\begin{quote}
|
||||||
|
|
||||||
dnsmasq is a lightweight DNS, TFTP and DHCP server. It is intended to
|
dnsmasq is a lightweight DNS, TFTP and DHCP server. It is intended to
|
||||||
provide coupled DNS and DHCP service to a LAN.
|
provide coupled DNS and DHCP service to a LAN.
|
||||||
\end{quote}
|
\end{quote}
|
||||||
|
30
chap/Fedora.tex
Normal file
30
chap/Fedora.tex
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
\chapter{Fedora}
|
||||||
|
\label{chap:fedora} \index{Fedora}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
\section{Gestion des paquets}
|
||||||
|
|
||||||
|
DNF\index{dnf} semble être l'outil de prédilection.
|
||||||
|
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
\section{Firewall}
|
||||||
|
|
||||||
|
Krkrkr, UPD\index{UDP} est bloqué en entrée ? Wtf ?
|
||||||
|
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
\section{Include dir}
|
||||||
|
|
||||||
|
Chez Fedora, certains fichiers \texttt{.h} ne sont pas à la même
|
||||||
|
place que dans d'autres distributions\index{Debian}, ce qui cause quelques
|
||||||
|
soucis pour les compilations.
|
||||||
|
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
|
\section{Comment installer ffmpeg ?}
|
||||||
|
\index{ffmpeg}
|
||||||
|
|
||||||
|
D'après Blaise (regatta) il faut voir du coté de rpmfusion.
|
||||||
|
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
11
chap/IPv6.tex
Normal file
11
chap/IPv6.tex
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
\chapter{IPv6} \label{chap/IPv6}
|
||||||
|
|
||||||
|
\index{IPv6}
|
||||||
|
|
||||||
|
Désactivation :
|
||||||
|
|
||||||
|
\texttt{echo '1' > /proc/sys/net/ipv6/conf/lo/disable\_ipv6}
|
||||||
|
|
||||||
|
\texttt{echo '1' > /proc/sys/net/ipv6/conf/all/disable\_ipv6}
|
||||||
|
|
||||||
|
\texttt{echo '1' > /proc/sys/net/ipv6/conf/default/disable\_ipv6}
|
21
chap/Raspberry.tex
Normal file
21
chap/Raspberry.tex
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
\chapter{Raspberry Pi}
|
||||||
|
\label{chap:raspberry}
|
||||||
|
\index{Raspberry}
|
||||||
|
|
||||||
|
\section{Quel OS ?}
|
||||||
|
|
||||||
|
Arthur ? RiscOS ? Haiku ? Plan9 ?
|
||||||
|
|
||||||
|
\section{Headless}\index{headless}
|
||||||
|
|
||||||
|
Comment générer une SD qui soit accessible par ssh\index{ssh}
|
||||||
|
dès le démarrage ?
|
||||||
|
|
||||||
|
|
||||||
|
\section{Connecteur}
|
||||||
|
|
||||||
|
Que faut-il faire pour avoir un vrai rs232, et faire du
|
||||||
|
SLIP\index{SLIP} avec ?
|
||||||
|
|
||||||
|
|
||||||
|
|
14
chap/X11.tex
14
chap/X11.tex
@ -1,5 +1,5 @@
|
|||||||
\chapter{X11}
|
\chapter{X11}
|
||||||
\label{X11}
|
\label{X11}\index{X11}
|
||||||
|
|
||||||
%-------------------------------------------------------------------
|
%-------------------------------------------------------------------
|
||||||
\section{Les fontes}
|
\section{Les fontes}
|
||||||
@ -11,7 +11,7 @@ $ fc-list | awk -F ":" '{print $1}' | sort -u
|
|||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
Comment faire pour visualiser la plénitude des formes de mes fontes ?
|
Comment faire pour visualiser la plénitude des formes de mes fontes ?
|
||||||
|
|
||||||
|
|
||||||
%-------------------------------------------------------------------
|
%-------------------------------------------------------------------
|
||||||
\section{Xephyr}
|
\section{Xephyr}
|
||||||
@ -31,7 +31,6 @@ le clavier en Azerty\index{azerty} ?
|
|||||||
%-------------------------------------------------------------------
|
%-------------------------------------------------------------------
|
||||||
\section{Numlock}
|
\section{Numlock}
|
||||||
|
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
#include <X11/XKBlib.h>
|
#include <X11/XKBlib.h>
|
||||||
#include <X11/extensions/XKB.h>
|
#include <X11/extensions/XKB.h>
|
||||||
@ -46,6 +45,8 @@ int main(){
|
|||||||
return 0;}
|
return 0;}
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
|
Mais c'est du très vieux code, ça !
|
||||||
|
|
||||||
%-------------------------------------------------------------------
|
%-------------------------------------------------------------------
|
||||||
% new 20 décembre 2012 à Mixart-Myrys
|
% new 20 décembre 2012 à Mixart-Myrys
|
||||||
\section{xdotool}
|
\section{xdotool}
|
||||||
@ -84,9 +85,10 @@ $
|
|||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
Voilà\footnote{en français dans le texte}, nous savons maintenant
|
Voilà\footnote{en français dans le texte}, nous savons maintenant
|
||||||
à quelle fenêtre causer : par son numéro.
|
à quelle fenêtre causer : par son numéro d'identification.
|
||||||
Le problême des multiples fenêtres du
|
Le problême des multiples fenêtres du même nom sera abordé
|
||||||
même nom sera abordé ultérieurement.
|
ultérieurement.
|
||||||
|
|
||||||
Déplaçons donc notre widget\dots
|
Déplaçons donc notre widget\dots
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
|
@ -88,7 +88,7 @@ D'autres songent à MXDoctor\index{emacs} ou Camélia.
|
|||||||
Ahem, là, c'est délicat, parce que je ne sais pas
|
Ahem, là, c'est délicat, parce que je ne sais pas
|
||||||
vraiment\footnote{Enfin, si, j'essaye de confectionner
|
vraiment\footnote{Enfin, si, j'essaye de confectionner
|
||||||
un soft pour fabriquer des flipbooks à partir de portnawak}
|
un soft pour fabriquer des flipbooks à partir de portnawak}
|
||||||
d'animation imprimable.
|
faire d'animation imprimable.
|
||||||
|
|
||||||
|
|
||||||
% ===============================================================
|
% ===============================================================
|
||||||
|
59
chap/gif89a.tex
Normal file
59
chap/gif89a.tex
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
\chapter{gif89a}\index{gif89a}
|
||||||
|
\label{chap:gif89a}
|
||||||
|
|
||||||
|
Ah, enfin nous arrivons à un sujet \textbf{vraiment} important :
|
||||||
|
la confection d'images qui clignotent. Ça va aussi être l'occasion
|
||||||
|
de plonger un peu dans l'histoire du siècle dernier. Nous allons
|
||||||
|
parler de Compuserve\index{Compuserve} que seul les plus anciens
|
||||||
|
d'entre vous on pu connaitre.
|
||||||
|
|
||||||
|
\begin{quote}
|
||||||
|
\textsl{Wikipedia} :
|
||||||
|
CompuServe (ou CompuServe Information Services, ou CIS), est le
|
||||||
|
premier des grands fournisseurs de services en ligne aux États-Unis.
|
||||||
|
Il domine le marché pendant les années 1980 puis reste un acteur
|
||||||
|
important au milieu des années 1990.
|
||||||
|
\end{quote}
|
||||||
|
|
||||||
|
Voilà pour expliquer brièvement d'où sort ce fameux format \textsc{gif}.
|
||||||
|
À l'époque, les moyens de connexion étaient beauuucoup plus lents que
|
||||||
|
ce que nous connaissons en 2020\footnote{Une fscking mauvaise année},
|
||||||
|
mais les écrans graphiques commençaient à bien se répandre, et certains
|
||||||
|
pouvaient même afficher {\em 256 couleurs}~:
|
||||||
|
|
||||||
|
\begin{quote}
|
||||||
|
L'entreprise est aussi connue pour avoir mis au point un format d'image
|
||||||
|
numérique très répandu, le GIF\index{GIF}, en 1987.
|
||||||
|
\end{quote}
|
||||||
|
|
||||||
|
Deux ans plus tard, le public demandant de plus en plus d'images
|
||||||
|
épileptisante, une extension de ce format et reçu le petit nom
|
||||||
|
de \textsc{gif89a}. Il y a toujours la limitation à 256 couleurs
|
||||||
|
et un seul niveau de transparence. Contraintes qui n'étaient pas si
|
||||||
|
génantes que ça à l'époque vu les terminaux visés.
|
||||||
|
|
||||||
|
% ==================================================================
|
||||||
|
|
||||||
|
\section{Création}
|
||||||
|
|
||||||
|
Avec une des commandes d'ImageMagick, on peut, à partir d'une suite
|
||||||
|
d'image, créer une gif89a qui tourne en boucle~:
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
|
convert -delay 20 -loop 0 a.png b.png c.png foo.gif
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
Le \textsl{delay} est exprimé en millisecondes.
|
||||||
|
|
||||||
|
Et ensuite, vouv pouvez voir votre logo en flamme avec la
|
||||||
|
commande \texttt{animate foo.gif} sur votre super écran svga.
|
||||||
|
|
||||||
|
% ==================================================================
|
||||||
|
|
||||||
|
\section{Manipulation}
|
||||||
|
|
||||||
|
% ==================================================================
|
||||||
|
|
||||||
|
\section{Exemples pratiques}
|
||||||
|
|
||||||
|
% ==================================================================
|
@ -1,14 +1,20 @@
|
|||||||
\chapter{Image}
|
\chapter{Image}
|
||||||
\label{chap:image}
|
\label{chap:image}
|
||||||
|
|
||||||
|
Le traitement des images est un art à part entière. Nous allons
|
||||||
|
voir quelques grands classiques de la catégorie pas du tout
|
||||||
|
interactif. Le genre de machin que l'on peut ranger au fond
|
||||||
|
d'un script shell pour le réutiliser la semaine prochaine.
|
||||||
|
|
||||||
% -------------------------------------------------------------------
|
% -------------------------------------------------------------------
|
||||||
|
|
||||||
\section{ImageMagick}\index{ImageMagick}
|
\section{ImageMagick}\index{ImageMagick}
|
||||||
|
|
||||||
Attention, ça va devenir \textsl{hardu}%
|
Attention, ça va devenir \textsl{hardu}%
|
||||||
\footnote{Nous attendons tous avec impatience l'ouvrage de Brunus},
|
\footnote{Nous attendons tous avec impatience l'ouvrage magistral
|
||||||
|
de maitre Brunus},
|
||||||
l'abondance d'options
|
l'abondance d'options
|
||||||
des outils imagemagick est vraiment énorme, et leurs
|
des outils ImageMagick est vraiment énorme, et leurs
|
||||||
interactions parfois troublantes\dots
|
interactions parfois troublantes\dots
|
||||||
|
|
||||||
\subsection{Écrire du texte}
|
\subsection{Écrire du texte}
|
||||||
@ -16,7 +22,7 @@ interactions parfois troublantes\dots
|
|||||||
Voici un exemple concret
|
Voici un exemple concret
|
||||||
(tiré du script d'encodage du \textsc{cloître}\index{cloître})
|
(tiré du script d'encodage du \textsc{cloître}\index{cloître})
|
||||||
qui montre l'essentiel pour bien débuter. C'est une fonction
|
qui montre l'essentiel pour bien débuter. C'est une fonction
|
||||||
écrite en bash\index{bash} qui rajoute un texte sur une image :
|
écrite en bash\index{bash} qui rajoute un texte sur une image. :
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
function tagpic
|
function tagpic
|
||||||
@ -24,12 +30,10 @@ function tagpic
|
|||||||
infile="$1"
|
infile="$1"
|
||||||
outfile="$2"
|
outfile="$2"
|
||||||
texte="$3"
|
texte="$3"
|
||||||
|
|
||||||
txtfont=" -font Utopia "
|
txtfont=" -font Utopia "
|
||||||
fontsize=" -pointsize 96 -kerning 6 "
|
fontsize=" -pointsize 96 -kerning 6 "
|
||||||
color=" -fill Gray20 -stroke White "
|
color=" -fill Gray20 -stroke White "
|
||||||
txtopts=" -antialias -alpha off $txtfont "
|
txtopts=" -antialias -alpha off $txtfont "
|
||||||
|
|
||||||
convert $infile \
|
convert $infile \
|
||||||
${txtopts} \
|
${txtopts} \
|
||||||
${txtfont} ${fontsize} \
|
${txtfont} ${fontsize} \
|
||||||
@ -40,15 +44,66 @@ convert $infile \
|
|||||||
}
|
}
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
Quelques explications...
|
Quelques explications semblent nécessaires, parce que certaines
|
||||||
|
options sont un peu ésotériques...
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item{txtfont}
|
||||||
|
\item{fontsize}
|
||||||
|
\item{colors}
|
||||||
|
\item{txtopts}
|
||||||
|
\item{-gravity}
|
||||||
|
\item{-annotate}
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
\subsection{Faire des GIFs animées}\index{GIF}
|
||||||
|
|
||||||
|
Ces images clignotantes sont l'essence même du Web\index{Web}
|
||||||
|
moderne depuis 1992, et \texttt{convert} sait très bien les
|
||||||
|
générer.
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
|
convert -delay 20 -loop 0 a.png b.png c.png foo.gif
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
Ce sujet pertinent est abordé plus en détails en
|
||||||
|
page \pageref{chap:gif89a}
|
||||||
|
|
||||||
|
\subsection{Extraire une partie de l'image}
|
||||||
|
|
||||||
|
Dans cette fonctionnalité aussi, il semble y avoir quelques
|
||||||
|
subtilités.
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
|
DIM="1024x768"
|
||||||
|
convert -crop ${DIM}+512+0 $img $dst
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
% -------------------------------------------------------------------
|
% -------------------------------------------------------------------
|
||||||
|
|
||||||
\section{Gmic}\index{Gmic}
|
\section{Gmic}\index{Gmic}
|
||||||
|
|
||||||
|
XXX\index{XXX}
|
||||||
|
|
||||||
|
Existe aussi en plugin pour Gimp\index{Gimp}.
|
||||||
|
|
||||||
% -------------------------------------------------------------------
|
% -------------------------------------------------------------------
|
||||||
|
|
||||||
|
\section{NetPBM}\index{netpbm}\label{netpbm}
|
||||||
|
|
||||||
|
With the Netpbm file formats, it’s trivial to output pixels using
|
||||||
|
nothing but text based IO%
|
||||||
|
\footnote{https://www.vidarholen.net/contents/blog/?p=904}.
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
|
#!/bin/bash
|
||||||
|
exec > my_image.ppm # All echo statements will write here
|
||||||
|
echo "P3 250 250 255" # magic, width, height, max component value
|
||||||
|
for ((y=0; y<250; y++)) {
|
||||||
|
for ((x=0; x<250; x++)) {
|
||||||
|
echo "$((x^y)) $((x^y)) $((x|y))" # r, g, b
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\end{verbatim}
|
@ -6,7 +6,7 @@ Nous allons voir dans ce chapitre quelques utilisations
|
|||||||
que l'on peut qualifier de «~créatives~».
|
que l'on peut qualifier de «~créatives~».
|
||||||
|
|
||||||
Si vous attendiez des choses plus sérieuses, j'ai aussi ça
|
Si vous attendiez des choses plus sérieuses, j'ai aussi ça
|
||||||
en magasin : \textsc{dns} page \pageref{DNS},
|
en magasin : \textsc{dns} page \pageref{chap:DNS},
|
||||||
\textsc{ssh} page \pageref{ssh},
|
\textsc{ssh} page \pageref{ssh},
|
||||||
streaming page \pageref{streaming},
|
streaming page \pageref{streaming},
|
||||||
et probablement bien d'autres à venir.
|
et probablement bien d'autres à venir.
|
||||||
@ -146,14 +146,16 @@ iptraf\index{iptraf}
|
|||||||
\subsection{tcpdump}
|
\subsection{tcpdump}
|
||||||
\index{tcpdump}
|
\index{tcpdump}
|
||||||
|
|
||||||
C'est clairement un outil dédié au voyeurisme :)
|
C'est clairement un outil dédié au voyeurisme, mais qui permet de
|
||||||
|
décrypter les ésotérismes de MiniMad\index{minimad}. C'est donc
|
||||||
|
sur cet exemple que nous allons partir.
|
||||||
|
|
||||||
% -------------------------------------------------------------
|
% -------------------------------------------------------------
|
||||||
|
|
||||||
\subsection{nmap}
|
\subsection{nmap}
|
||||||
\index{nmap}
|
\index{nmap}
|
||||||
|
|
||||||
C'est clairement un outil dédié au voyeurisme :)
|
C'est clairement aussi un outil dédié au voyeurisme :)
|
||||||
|
|
||||||
|
|
||||||
% ==============================================================
|
% ==============================================================
|
||||||
@ -164,7 +166,8 @@ C'est clairement un outil dédié au voyeurisme :)
|
|||||||
The nc (or netcat) utility is used for just about anything under the sun
|
The nc (or netcat) utility is used for just about anything under the sun
|
||||||
involving TCP or UDP. It can open TCP connections, send UDP packets,
|
involving TCP or UDP. It can open TCP connections, send UDP packets,
|
||||||
listen on arbitrary TCP and UDP ports, do port scanning, and deal with
|
listen on arbitrary TCP and UDP ports, do port scanning, and deal with
|
||||||
both IPv4 and IPv6. Unlike telnet(1), nc scripts nicely, and separates
|
both IPv4 and IPv6\footnote{Voir le chapitre \ref{chap/IPv6}}
|
||||||
|
. Unlike telnet(1), nc scripts nicely, and separates
|
||||||
error messages onto standard error instead of sending them to standard
|
error messages onto standard error instead of sending them to standard
|
||||||
output, as telnet(1) does with some.
|
output, as telnet(1) does with some.
|
||||||
\end{quote}
|
\end{quote}
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
\chapter{ssh}
|
\chapter{ssh}
|
||||||
\label{ssh}
|
\label{chap:ssh}
|
||||||
|
|
||||||
Secure Shell.
|
Secure Shell.
|
||||||
|
|
||||||
D'après le site \texttt{openssh.org} :
|
D'après le site \texttt{openssh.org} :
|
||||||
\textit{OpenSSH is a {\em free} version of the SSH\index{SSH} connectivity
|
\textit{OpenSSH is a {\em free} version of the SSH\index{ssh} connectivity
|
||||||
tools that technical users of the Internet rely on. Users of
|
tools that technical users of the Internet rely on. Users of
|
||||||
telnet, rlogin, and ftp\index{ftp} may not realize that their password
|
telnet, rlogin, and ftp\index{ftp} may not realize that their password
|
||||||
is transmitted across the Internet unencrypted, but it
|
is transmitted across the Internet unencrypted, but it
|
||||||
@ -14,6 +14,8 @@ other attacks. Additionally, OpenSSH provides secure tunneling
|
|||||||
capabilities and several authentication methods, and supports
|
capabilities and several authentication methods, and supports
|
||||||
all SSH protocol versions.}
|
all SSH protocol versions.}
|
||||||
|
|
||||||
|
\section{X11 forwarding}\index{X11}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\section{sshfs}
|
\section{sshfs}
|
||||||
|
@ -49,6 +49,8 @@ with a crossfader, a jingle player, microphone signal processing
|
|||||||
\section{liquidsoap}
|
\section{liquidsoap}
|
||||||
\index{liquidsoap}
|
\index{liquidsoap}
|
||||||
|
|
||||||
|
\texttt{https://www.liquidsoap.info/}
|
||||||
|
|
||||||
\begin{quote}
|
\begin{quote}
|
||||||
Liquidsoap is an extensible and flexible audio stream generator, mainly
|
Liquidsoap is an extensible and flexible audio stream generator, mainly
|
||||||
used for streaming to a shoutcast/icecast server.
|
used for streaming to a shoutcast/icecast server.
|
||||||
|
@ -37,11 +37,16 @@ ioctl: VIDIOC_ENUM_FMT
|
|||||||
Interval: Discrete 0.033s (30.000 fps)
|
Interval: Discrete 0.033s (30.000 fps)
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
|
Question : quelle méthode utiliser pour avoir la même chose avec
|
||||||
|
des lignes de code écrites en C ?
|
||||||
|
|
||||||
% --------------------------------------------------------------------
|
% --------------------------------------------------------------------
|
||||||
|
|
||||||
\section{vgrabbj}
|
\section{vgrabbj}
|
||||||
\index{vgrabbj}
|
\index{vgrabbj}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
D'après la manpage :
|
D'après la manpage :
|
||||||
« \textit{
|
« \textit{
|
||||||
vgrabbj is a program that will grab images from any v4l-capable device
|
vgrabbj is a program that will grab images from any v4l-capable device
|
||||||
|
27
main.tex
27
main.tex
@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
\setlength \parindent {1em}
|
\setlength \parindent {1em}
|
||||||
|
|
||||||
% XXX \setlength \parskip {0.333em}
|
\setlength \parskip {0.200em} % XXX
|
||||||
|
|
||||||
%------ reglages des 'listings'
|
%------ reglages des 'listings'
|
||||||
\lstset{frame=single} % dessin d'un cadre autour du listing
|
\lstset{frame=single} % dessin d'un cadre autour du listing
|
||||||
@ -45,10 +45,12 @@ peut-être pas vraiment d'actualité.
|
|||||||
\vspace{5em}
|
\vspace{5em}
|
||||||
|
|
||||||
|
|
||||||
Tout cette ouvrage a été écrit avec mousepad et \LaTeX{}
|
Cependant, toute cette ouvrage est en cours de
|
||||||
|
réécriture avec Mousepad et \LaTeX{}
|
||||||
selon la méthode éprouvée dite
|
selon la méthode éprouvée dite
|
||||||
de «~La~Rache~»\index{rache},
|
de «~La~Rache~»\index{rache},
|
||||||
essentiellement sur une machine Debian/amd64.
|
essentiellement sur une machine Debian/amd64, avec des
|
||||||
|
morceaux de Fedora Server 33 à coté\index{Fedora}.
|
||||||
|
|
||||||
\vspace{5em}
|
\vspace{5em}
|
||||||
|
|
||||||
@ -63,28 +65,33 @@ Your mileage may vary\dots
|
|||||||
% ==============================================================
|
% ==============================================================
|
||||||
|
|
||||||
\input{chap/shell}
|
\input{chap/shell}
|
||||||
\input{chap/editeurs}
|
% \input{chap/editeurs}
|
||||||
\input{chap/son}
|
\input{chap/son}
|
||||||
\input{chap/image}
|
\input{chap/image}
|
||||||
|
\input{chap/reseau}
|
||||||
\input{chap/musique}
|
\input{chap/musique}
|
||||||
\input{chap/puredata}
|
% \input{chap/puredata}
|
||||||
\input{chap/MIDI}
|
\input{chap/MIDI}
|
||||||
\input{chap/OSC}
|
\input{chap/OSC}
|
||||||
\input{chap/backups}
|
\input{chap/backups}
|
||||||
\input{chap/processing}
|
% \input{chap/processing}
|
||||||
\input{chap/video}
|
\input{chap/video}
|
||||||
\input{chap/gnuplot}
|
\input{chap/gnuplot}
|
||||||
\input{chap/webcam}
|
\input{chap/webcam}
|
||||||
\input{chap/SCSI}
|
% \input{chap/SCSI}
|
||||||
\input{chap/X11}
|
\input{chap/X11}
|
||||||
\input{chap/dino}
|
\input{chap/dino}
|
||||||
\input{chap/textes}
|
\input{chap/textes}
|
||||||
\input{chap/MINITEL}
|
\input{chap/MINITEL}
|
||||||
|
\input{chap/Raspberry}
|
||||||
|
\input{chap/Fedora}
|
||||||
|
\input{chap/IPv6}
|
||||||
\input{chap/threads}
|
\input{chap/threads}
|
||||||
\input{chap/dosbox}
|
% \input{chap/dosbox}
|
||||||
\input{chap/photos}
|
\input{chap/photos}
|
||||||
|
\input{chap/Bonjour}
|
||||||
\input{chap/debug}
|
\input{chap/debug}
|
||||||
\input{chap/reseau}
|
\input{chap/gif89a}
|
||||||
\input{chap/IRC}
|
\input{chap/IRC}
|
||||||
\input{chap/Usenet}
|
\input{chap/Usenet}
|
||||||
\input{chap/DNS}
|
\input{chap/DNS}
|
||||||
@ -92,7 +99,7 @@ Your mileage may vary\dots
|
|||||||
\input{chap/hardware}
|
\input{chap/hardware}
|
||||||
\input{chap/streaming}
|
\input{chap/streaming}
|
||||||
\input{chap/gadgets}
|
\input{chap/gadgets}
|
||||||
\input{chap/slang}
|
% \input{chap/slang}
|
||||||
\input{chap/curses}
|
\input{chap/curses}
|
||||||
\input{chap/WiFi}
|
\input{chap/WiFi}
|
||||||
\input{chap/GIT}
|
\input{chap/GIT}
|
||||||
|
Loading…
Reference in New Issue
Block a user