Compare commits
No commits in common. "b631c95100ce948cdcf260229f7fabd1eace7c46" and "2a7624eb755975f2f4b92d21fb1ff248464fe361" have entirely different histories.
b631c95100
...
2a7624eb75
19
chap/DNS.tex
19
chap/DNS.tex
@ -18,9 +18,8 @@ maintenance du fichier \texttt{/etc/hosts} qu'il fallait,
|
||||
\subsection{host}
|
||||
\index{host}
|
||||
|
||||
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,
|
||||
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,
|
||||
avec une syntaxe facile à retenir. Elle existe, sous des formes
|
||||
légèrement déviantes, dans une grande partie des
|
||||
OS\footnote{même dans le sale, c'est dire.} existants de nos jours.
|
||||
@ -65,6 +64,7 @@ Authoritative answers can be found from:
|
||||
tth@tranxene:~$
|
||||
\end{verbatim}
|
||||
|
||||
|
||||
% ------------------------------------------------------------
|
||||
|
||||
\subsection{dig}
|
||||
@ -97,12 +97,9 @@ Pour obtenir le reverse d'une adresse IP :
|
||||
Un outil très basique conçu et bricolé par Tonton~Th au siècle
|
||||
dernier lors d'un séjour hivernal à Frontignan-plage.
|
||||
Hélas, les sources
|
||||
semblent définitivement perdues dans les ténèbres
|
||||
de l'Undernet profond. Si quelqu'un a une piste\dots
|
||||
semblent définitivement perdues. Si quelqu'un a une piste\dots
|
||||
|
||||
Une ré-écriture s'impose, en repartant sur les mêmes bases.
|
||||
En utilisant les mêmes fonctions qu'une application basique.
|
||||
Peut-être aussi en lui trouvant un nom plus \textsl{fun}\dots
|
||||
Une ré-écriture s"impose\dots
|
||||
|
||||
% ------------------------------------------------------------
|
||||
\section{DHCP} \index{DHCP}
|
||||
@ -114,12 +111,6 @@ client may request an address from this pool, and then use it on a temporary
|
||||
basis for communication on network.
|
||||
\end{quote}
|
||||
|
||||
Question : comment peut-on « écouter » les requètes et les réponses
|
||||
DHCP sur notre réseau local pour détecter le rogue-machin ?
|
||||
Probablement avec \texttt{tcpdump}\index{tcpdump},
|
||||
et c'est à l'essai
|
||||
dans la page \pageref{tcpdump}.
|
||||
|
||||
% ------------------------------------------------------------
|
||||
\section{dnsmasq}
|
||||
\index{dnsmasq}
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
Les paquets sont du modèle RPM\index{RPM} à la mode
|
||||
de Red-Hat et DNF\index{dnf} semble être l'outil de prédilection
|
||||
pour les gérer. Un peut l'équivalent de \texttt{apt} de Debian ?
|
||||
pour les gérer.
|
||||
|
||||
Pour mettre à jour~:
|
||||
|
||||
|
@ -1,9 +0,0 @@
|
||||
\chapter{GMP}
|
||||
|
||||
\textsl{GNU Multiprecision Library} est une bibliothèque logicielle
|
||||
de calcul multiprécision sur des nombres entiers, rationnels
|
||||
et en virgule flottante. Elle permet de traiter des nombres avec
|
||||
\textbf{beaucoup} de digits.
|
||||
|
||||
\section{Fibonaci}
|
||||
|
24
chap/IPC.tex
24
chap/IPC.tex
@ -1,24 +0,0 @@
|
||||
\chapter{IPC} \index{IPC}
|
||||
\label{chap:IPC}
|
||||
|
||||
\textit{Inter Process Communication.}
|
||||
|
||||
% ================================================================
|
||||
|
||||
\section{shared memory} \index{shared}
|
||||
|
||||
|
||||
% ================================================================
|
||||
|
||||
\section{named pipe}
|
||||
|
||||
% ================================================================
|
||||
|
||||
\section{Signals} \index{signal}
|
||||
|
||||
Non, on ne va pas parler du potentiel remplaçant de Whatsapp,
|
||||
mais du plus simple mécanispe d'IPC.
|
||||
|
||||
% ================================================================
|
||||
|
||||
|
@ -42,15 +42,3 @@ Quid de juste rsync sur ton serveur et faire les tgz à l'autre bout
|
||||
\textsl{A fast, versatile, remote (and local) file-copying tool.}
|
||||
|
||||
% ===============================================================
|
||||
\section{Divers}
|
||||
|
||||
|
||||
https://changelog.complete.org/archives/10160-how-why-to-use-airgapped-backups
|
||||
|
||||
Perhaps surprisingly, \texttt{tar} in listed incremental mode can solve this
|
||||
problem for non-ZFS users. It will keep a local cache of the state
|
||||
of the filesystem as of the time of the last run of tar, and can
|
||||
generate new tarballs that reflect the changes since the previous
|
||||
run (even deletions). This can achieve a similar result to the ZFS
|
||||
send/receive, though in a much less elegant way.
|
||||
|
||||
|
@ -6,8 +6,8 @@
|
||||
|
||||
Je vais, dans ce chapitre, parler de choses que les moins de vingt
|
||||
ans ne peuvent pas connaitre. Des choses qui existaient
|
||||
\textsl{bien avant} le Web\index{www}, et pour lesquelles on
|
||||
peur facilement imaginer des usages alternatifs et amusants !
|
||||
\textsl{bien avant} le Web\index{www} !
|
||||
|
||||
|
||||
|
||||
% ==============================================================
|
||||
@ -65,25 +65,11 @@ port 17.
|
||||
|
||||
|
||||
% ==============================================================
|
||||
%
|
||||
% https://www.bortzmeyer.org/1288.html
|
||||
%
|
||||
\section{Finger} \index{finger} \label{finger}
|
||||
|
||||
\textbf{finger} — user information lookup program
|
||||
|
||||
Sur le port 79/tcp.
|
||||
|
||||
https://tools.ietf.org/html/rfc1288
|
||||
|
||||
https://www.bortzmeyer.org/1288.html
|
||||
|
||||
% ==============================================================
|
||||
|
||||
\section{Gopher}
|
||||
\section{gopher}
|
||||
\index{gopher}
|
||||
|
||||
Sur le port 70/tcp.
|
||||
Sur le port 70.
|
||||
|
||||
\begin{quote}
|
||||
The Internet Gopher(tm) software and documentation is copyright (c)
|
||||
|
@ -50,7 +50,7 @@ map_henon: map_henon.f
|
||||
\end{verbatim}
|
||||
|
||||
Hélas, je n'ai pas de commande \texttt{g77} dans ma machine,
|
||||
que faire ? En écrire une ?
|
||||
que faire ?
|
||||
|
||||
|
||||
% ==============================================================
|
||||
|
@ -51,11 +51,7 @@ options sont un peu ésotériques et parfois inter-dépendantes\dots
|
||||
\item{annotate}
|
||||
\end{itemize}
|
||||
|
||||
Question : comment mettre une couleur de fond à ce texte ?
|
||||
|
||||
\subsection{montage}
|
||||
|
||||
Krkrkr
|
||||
Quastion : comment mettre une couleur de fond à ce texte ?
|
||||
|
||||
\subsection{Faire des GIFs animées}\index{GIF}
|
||||
|
||||
|
@ -163,7 +163,7 @@ Le port par défaut utilisé est le 5001.
|
||||
|
||||
% -------------------------------------------------------------
|
||||
\subsection{tcpdump}
|
||||
\index{tcpdump} \label{tcpdump}
|
||||
\index{tcpdump}
|
||||
|
||||
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
|
||||
@ -184,7 +184,6 @@ puisque il permet de découvrir, avec plus ou moins de détails,
|
||||
les services exposés à l'extérieur par une machine distante.
|
||||
|
||||
|
||||
|
||||
% ==============================================================
|
||||
\section{netcat}
|
||||
\index{netcat}
|
||||
|
@ -73,8 +73,6 @@ Comment allons-nous procéder\footnote{Et c'est une vraie question !} ?
|
||||
|
||||
Une première piste : http://tools.ietf.org/html/rfc3117
|
||||
|
||||
Une seconde : \ref{chap:IPC}, page \pageref{chap:IPC}.
|
||||
|
||||
% ----------------------------------------------------------------
|
||||
|
||||
|
||||
|
@ -95,13 +95,11 @@ préciser le coef de qualité ( qscale : 1 = le mieux / 3 = correcte )
|
||||
ffmpeg -i fichier.dv -target pal-dvd -qscale 2 Fichier.mpeg
|
||||
\end{verbatim}
|
||||
|
||||
https://engineering.giphy.com/how-to-make-gifs-with-ffmpeg/ \index{gif89a}
|
||||
|
||||
\subsection{Encoder un cloître}
|
||||
|
||||
Là, nous sommes dans du \textsl{serious bizness}, puisque cette vidéo
|
||||
a été programmée par James Lewis pour la résidence « Sonoptic 2020 ».
|
||||
C'est donc un exemple réel, avec même des méta-données.
|
||||
C'est donc un exemple réel.
|
||||
|
||||
\begin{verbatim}
|
||||
ffmpeg -nostdin \
|
||||
@ -116,23 +114,13 @@ ffmpeg -nostdin \
|
||||
|
||||
\subsection{Questions}
|
||||
|
||||
Quand on encode en // images et son, comment arreter quand on atteint
|
||||
la fin du plus court des deux flux ?
|
||||
|
||||
Comment limiter le nombre de \textsl{cores} utilisés lors d'un encodage
|
||||
violent sur une toute petite machine\footnote{Coucou le Vaio :)} ?
|
||||
Quand on encode images+son, comment arreter au plus court des deux ?
|
||||
|
||||
% --------------------------------------------------------------------
|
||||
|
||||
\section{Autres trucs}
|
||||
|
||||
La video informatique, c'est d'une complexité effarante. La multitude
|
||||
de codecs, la foultitude de containers, et les nombreuses variantes de
|
||||
combinaisons codec/container rendent la compréhension de cet univers
|
||||
assez perturbante.
|
||||
|
||||
|
||||
\subsection{rtmp} \index{rtmp}
|
||||
\index{rtmp}
|
||||
|
||||
\texttt{flvstreamer -r rtmp://lacantine.live-fstreams.cdn02.rambla.be:1935/live-lacantine/live-lacantine-2 | mplayer -}
|
||||
|
||||
|
@ -12,16 +12,15 @@ class StopWatch(Frame):
|
||||
self._elapsed = 0.0
|
||||
self._running = False
|
||||
self.timestr = StringVar()
|
||||
self._label = None
|
||||
self.makeWidgets()
|
||||
|
||||
def makeWidgets(self):
|
||||
self._label = Label(self, textvariable=self.timestr,
|
||||
l = Label(self, textvariable=self.timestr,
|
||||
font = "Helvetica 36 bold",
|
||||
bg = "Grey20", fg = "Yellow",
|
||||
padx = 30, pady = 30)
|
||||
self._setTime(self._elapsed)
|
||||
self._label.pack(fill=X, expand=YES, pady=0, padx=0)
|
||||
l.pack(fill=X, expand=YES, pady=0, padx=0)
|
||||
|
||||
def _update(self):
|
||||
self._elapsed = time.time() - self._start
|
||||
@ -61,27 +60,20 @@ class StopWatch(Frame):
|
||||
def About(self):
|
||||
print "A kludge by tTh"
|
||||
|
||||
def build_controls(root):
|
||||
frame = Frame(root)
|
||||
sw = StopWatch(root)
|
||||
sw.pack(side=TOP)
|
||||
Button(frame, text='Start', command=sw.Start).pack(side=LEFT)
|
||||
Button(frame, text='Stop', command=sw.Stop).pack(side=LEFT)
|
||||
Button(frame, text='Reset', command=sw.Reset).pack(side=LEFT)
|
||||
Button(frame, text='Dump', command=sw.Dump).pack(side=LEFT)
|
||||
Button(frame, text='Quit', command=root.quit).pack(side=LEFT)
|
||||
frame.pack(side=BOTTOM)
|
||||
|
||||
|
||||
|
||||
def onsize(*args, **kw):
|
||||
print args[0].width, args[0].height
|
||||
|
||||
# --------------------------------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
root = Tk()
|
||||
root.title("Chronometre")
|
||||
build_controls(root)
|
||||
root.bind("<Configure>", onsize)
|
||||
root.mainloop()
|
||||
def main():
|
||||
root = Tk()
|
||||
root.title("Chronometre")
|
||||
sw = StopWatch(root)
|
||||
sw.pack(side=TOP)
|
||||
Button(root, text='Start', command=sw.Start).pack(side=LEFT)
|
||||
Button(root, text='Stop', command=sw.Stop).pack(side=LEFT)
|
||||
Button(root, text='Reset', command=sw.Reset).pack(side=LEFT)
|
||||
Button(root, text='Dump', command=sw.Dump).pack(side=LEFT)
|
||||
Button(root, text='Quit', command=root.quit).pack(side=LEFT)
|
||||
root.mainloop()
|
||||
|
||||
main()
|
||||
|
||||
|
2
main.tex
2
main.tex
@ -110,7 +110,6 @@ en ligne sur le site du Tetalab. Your mileage may vary\dots
|
||||
\input{chap/X11}
|
||||
\input{chap/manpages}
|
||||
\input{chap/Fortran}
|
||||
\input{chap/GMP}
|
||||
\input{chap/Python}
|
||||
\input{chap/dino}
|
||||
\input{chap/textes}
|
||||
@ -119,7 +118,6 @@ en ligne sur le site du Tetalab. Your mileage may vary\dots
|
||||
\input{chap/Fedora}
|
||||
% \input{chap/IPv6}
|
||||
\input{chap/threads}
|
||||
\input{chap/IPC}
|
||||
% \input{chap/dosbox}
|
||||
% \input{chap/grub}
|
||||
\input{chap/photos}
|
||||
|
Loading…
Reference in New Issue
Block a user