This commit is contained in:
parent
d7b4250194
commit
f9dad7c33d
@ -10,6 +10,10 @@ 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
|
de Red-Hat et DNF\index{dnf} semble être l'outil de prédilection
|
||||||
pour les gérer.
|
pour les gérer.
|
||||||
|
|
||||||
|
Pour mettre à jour~:
|
||||||
|
|
||||||
|
\texttt{\# dnf upgrade'}
|
||||||
|
|
||||||
Pour chercher un binaire précis~:
|
Pour chercher un binaire précis~:
|
||||||
|
|
||||||
\texttt{\# dnf provides '*/interpolator'}
|
\texttt{\# dnf provides '*/interpolator'}
|
||||||
@ -34,6 +38,46 @@ de gcc :
|
|||||||
\texttt{gcc \$(COPT) -I/usr/include/netpbm -c \$<}, dont la
|
\texttt{gcc \$(COPT) -I/usr/include/netpbm -c \$<}, dont la
|
||||||
portabilité est à vérifier.
|
portabilité est à vérifier.
|
||||||
|
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
\section{Gni ?}\index{memtest86}
|
||||||
|
\label{memtest86:fedora}
|
||||||
|
|
||||||
|
Ayant des soucis de \textsf{kernelpanic} avec une ancienne machine
|
||||||
|
Dell\footnote{d'origine catalano-ariégeoise} j'ai voulu faire un
|
||||||
|
test approfondi de la RAM. DNF m'a permis de trouver le paquet
|
||||||
|
\texttt{memtest86+}, puis de l'installer (comme je procède
|
||||||
|
depuis le siècle dernier) afin de l'avoir sous la main au prochain
|
||||||
|
reboot. Non. Rien.
|
||||||
|
|
||||||
|
Mmmm... Reboot, un shell root, et je découvre \texttt{memtest-setup}
|
||||||
|
qui semble pouvoir faire une partie du travail. La manpage
|
||||||
|
confirme. Action.
|
||||||
|
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
|
[tth@laserbox ~]# memtest-setup
|
||||||
|
GRUB 2 template installed.
|
||||||
|
Do not forget to regenerate your grub.cfg by:
|
||||||
|
# grub2-mkconfig -o /boot/grub2/grub.cfg
|
||||||
|
Setup complete.
|
||||||
|
[tth@laserbox ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
|
||||||
|
Generationg Grub configuration file ...
|
||||||
|
Found memtest image: /boot/elf-memtest86+-5.31
|
||||||
|
done
|
||||||
|
[tth@laserbox ~]# _
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
Angoisse\dots
|
||||||
|
|
||||||
|
Et j'ai eu raison. Le memtest apparait bien dans le menu de grub,
|
||||||
|
mais bon, il fait un gros \textbf{paf} dès le lancement en me
|
||||||
|
parlant d'une \textsf{unexpected interrupt} vraiment féroce.
|
||||||
|
Relisons calmement la page de man~:
|
||||||
|
|
||||||
|
% XXX insert manpage here
|
||||||
|
XXX\index{XXX}
|
||||||
|
|
||||||
|
|
||||||
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
\section{Comment installer ffmpeg ?}
|
\section{Comment installer ffmpeg ?}
|
||||||
|
@ -12,7 +12,7 @@ configurer.
|
|||||||
|
|
||||||
On se retrouve vite dans des situations critiques, du genre
|
On se retrouve vite dans des situations critiques, du genre
|
||||||
un \#canal où il n'y a plus de @op, et donc, on ne peut
|
un \#canal où il n'y a plus de @op, et donc, on ne peut
|
||||||
plus changer le topix, et là, \textbf{ça craint vraiment} !
|
plus changer le topic, et là, \textbf{ça craint vraiment} !
|
||||||
|
|
||||||
% ==============================================================
|
% ==============================================================
|
||||||
|
|
||||||
@ -36,4 +36,9 @@ pinpin0: çhârsèt ?
|
|||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
% ==============================================================
|
% ==============================================================
|
||||||
|
\section{hexchat}
|
||||||
|
\index{hexchat}
|
||||||
|
|
||||||
|
Client graphique bien efficace.
|
||||||
|
|
||||||
|
% ==============================================================
|
||||||
|
17
chap/X11.tex
17
chap/X11.tex
@ -18,7 +18,7 @@ Comment faire pour visualiser la plénitude des formes de mes fontes ?
|
|||||||
|
|
||||||
|
|
||||||
D'après la manpage :
|
D'après la manpage :
|
||||||
\textit{Xephyr is a kdrive server that outputs to a window on a pre-existing
|
\textsl{Xephyr is a kdrive server that outputs to a window on a pre-existing
|
||||||
"host" X display. Think Xnest but with support for modern
|
"host" X display. Think Xnest but with support for modern
|
||||||
extensions like composite, damage and randr.}
|
extensions like composite, damage and randr.}
|
||||||
|
|
||||||
@ -27,10 +27,13 @@ si simple qua ça.
|
|||||||
Par exemple, quelle est la méthode à mettre en œuvre pour avoir
|
Par exemple, quelle est la méthode à mettre en œuvre pour avoir
|
||||||
le clavier en Azerty\index{azerty} ?
|
le clavier en Azerty\index{azerty} ?
|
||||||
|
|
||||||
|
XXX\index{XXX}
|
||||||
|
|
||||||
%-------------------------------------------------------------------
|
%-------------------------------------------------------------------
|
||||||
\section{Numlock}
|
\section{Numlock}
|
||||||
|
|
||||||
|
Vous l'avez voulu, le voici~:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
#include <X11/XKBlib.h>
|
#include <X11/XKBlib.h>
|
||||||
#include <X11/extensions/XKB.h>
|
#include <X11/extensions/XKB.h>
|
||||||
@ -98,7 +101,19 @@ $
|
|||||||
|
|
||||||
C'est simple, non ?
|
C'est simple, non ?
|
||||||
|
|
||||||
|
%-------------------------------------------------------------------
|
||||||
|
|
||||||
|
\section{XCB}\index{XCB}
|
||||||
|
|
||||||
|
Vous avez pratiqué la \textsl{Xlib} ? Avez-vous aimé ?
|
||||||
|
\textsc{[oui]} et \textsc{[non]} sont deux réponses valables.
|
||||||
|
Si vous ne savez pas quoi répondre, vous n'avez pas compris
|
||||||
|
la question.
|
||||||
|
|
||||||
|
%
|
||||||
|
% https://xcb.freedesktop.org/tutorial/basicwindowsanddrawing/
|
||||||
|
%
|
||||||
|
|
||||||
%-------------------------------------------------------------------
|
%-------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
@ -34,3 +34,11 @@ trop les temps de backup ?
|
|||||||
|
|
||||||
Quid de juste rsync sur ton serveur et faire les tgz à l'autre bout
|
Quid de juste rsync sur ton serveur et faire les tgz à l'autre bout
|
||||||
(tu profiteras ainsi pleinement du coté incrémental d'rsync) ?
|
(tu profiteras ainsi pleinement du coté incrémental d'rsync) ?
|
||||||
|
|
||||||
|
% ===============================================================
|
||||||
|
\section{rsync}\index{rsync}
|
||||||
|
|
||||||
|
\index{XXX}
|
||||||
|
\textsl{A fast, versatile, remote (and local) file-copying tool.}
|
||||||
|
|
||||||
|
% ===============================================================
|
||||||
|
@ -21,7 +21,7 @@ replacement for 4.4BSD classic curses, which has been discontinued.
|
|||||||
|
|
||||||
Bien entendu, nous commencerons par l'ECM traditionnel de rigueur.
|
Bien entendu, nous commencerons par l'ECM traditionnel de rigueur.
|
||||||
|
|
||||||
\lstinputlisting[language=C]{ex_curses.c}
|
\lstinputlisting[language=C]{code/ex_curses.c}
|
||||||
|
|
||||||
La première étape consiste à initialiser et configurer le moteur
|
La première étape consiste à initialiser et configurer le moteur
|
||||||
interne de ncurses, et à régler l'interaction clavier/écran.
|
interne de ncurses, et à régler l'interaction clavier/écran.
|
||||||
|
@ -5,8 +5,30 @@ Quand plus rien ne marche, reste-il encore un espoir ?
|
|||||||
Il existe bien entendu des outils \textsl{mainstream}
|
Il existe bien entendu des outils \textsl{mainstream}
|
||||||
tels que le classique \texttt{gdb}\index{gdb}, mais il en existe
|
tels que le classique \texttt{gdb}\index{gdb}, mais il en existe
|
||||||
une foultitude d'autres, injustement méconnus.
|
une foultitude d'autres, injustement méconnus.
|
||||||
En voici quelques-uns.
|
Nous allons en voir quelques-uns.
|
||||||
|
|
||||||
|
% ==============================================================
|
||||||
|
|
||||||
|
\section{Gdb}\index{gdb}
|
||||||
|
|
||||||
|
|
||||||
|
GDB is a source-level debugger, capable of breaking programs at
|
||||||
|
any specific line, displaying variable values, and determining
|
||||||
|
where errors occurred. Currently, gdb supports C, C++, D,
|
||||||
|
Objective-C, Fortran, Java, OpenCL C, Pascal, assembly, Modula-2,
|
||||||
|
Go, and Ada. \textsc{A must-have for any serious programmer}.
|
||||||
|
|
||||||
|
\subsection{ddd}
|
||||||
|
|
||||||
|
DDD is a graphical front-end for GDB and other command-line debuggers.
|
||||||
|
Using DDD, you can see what is going on “inside” another program while
|
||||||
|
it executes—or what another program was doing at the moment it crashed.
|
||||||
|
|
||||||
|
\subsection{xxgdb}
|
||||||
|
|
||||||
|
xxgdb is a simple but powerful graphical interface to the GNU
|
||||||
|
debugger gdb. A more powerful (but slower and much bigger) interface
|
||||||
|
is available in the ddd package.
|
||||||
|
|
||||||
% ==============================================================
|
% ==============================================================
|
||||||
|
|
||||||
@ -18,18 +40,12 @@ Comme vous le savez tous, un appel système
|
|||||||
est \textbf{le} moyen de communication qu'utilise un process
|
est \textbf{le} moyen de communication qu'utilise un process
|
||||||
utilisateur pôur demander un service au noyau.
|
utilisateur pôur demander un service au noyau.
|
||||||
|
|
||||||
\begin{lstlisting}[language=C]
|
\lstinputlisting[language=C]{code/hello.c}
|
||||||
#include <stdio.h>
|
|
||||||
int main(int argc, char *argv[])
|
|
||||||
{
|
|
||||||
printf("Hello world.\n");
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
\end{lstlisting}
|
|
||||||
|
|
||||||
Un exemple canonique, n'est-il pas ? Ce bout de code affichant
|
Un exemple canonique, n'est-il pas ? Ce bout de code affichant
|
||||||
quelque chose à l'écran, il doit bien y avoir un appel au noyau
|
quelque chose à l'écran, il doit bien y avoir un appel au noyau
|
||||||
qui traine par là. Nous allons donc le chercher%
|
qui traine par là pour écrire vers la sortie standard.
|
||||||
|
Nous allons donc le chercher%
|
||||||
\footnote{En trichant un peu, je l'avoue, je connais son nom.}
|
\footnote{En trichant un peu, je l'avoue, je connais son nom.}
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
|
@ -3,11 +3,17 @@
|
|||||||
Successeur pour certaines distributions du vénérable
|
Successeur pour certaines distributions du vénérable
|
||||||
\texttt{lilo}\footnote{Linux Loader}\index{lilo},
|
\texttt{lilo}\footnote{Linux Loader}\index{lilo},
|
||||||
le Grub, aka \textsl{Grand Unified Bootloader} est nettement plus
|
le Grub, aka \textsl{Grand Unified Bootloader} est nettement plus
|
||||||
complexe, mais permet (parait-il) de faire beaucoup plus de choses
|
complexe, mais permet (parait-il) de faire beaucoup plus de choses.
|
||||||
|
|
||||||
|
\section{Astuces}
|
||||||
|
|
||||||
|
Pour installer \texttt{memtest86+} dans une Fedora, c'est en page
|
||||||
|
\pageref{memtest86:fedora}.
|
||||||
|
|
||||||
\section{Questions}
|
\section{Questions}
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item comment passer la carte VGA\index{VGA} en 80x43 ?
|
\item comment passer la carte VGA\index{VGA} en 80x43 ?
|
||||||
|
\item comment booter un disque FreeDOS\index{FreeDOS} ?
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
|
@ -68,9 +68,9 @@ est la limite\footnote{Comme à peu près tout dans la vie.}
|
|||||||
\section{Disques durs}
|
\section{Disques durs}
|
||||||
|
|
||||||
Iozone ? Bonnie ? Smart\index{smart} ? UUID\index{uuid} ?
|
Iozone ? Bonnie ? Smart\index{smart} ? UUID\index{uuid} ?
|
||||||
Ddrescue ?
|
Ddrescue\index{ddrescue} ?
|
||||||
|
|
||||||
\subsection{blkid}
|
\subsection{blkid \& lsblk}
|
||||||
|
|
||||||
À mi-chemin entre le matériel et le système, la commande
|
À mi-chemin entre le matériel et le système, la commande
|
||||||
\texttt{blkid}\index{blkid} affiche quelques informations
|
\texttt{blkid}\index{blkid} affiche quelques informations
|
||||||
@ -85,6 +85,24 @@ et surtout les partitions qu'ils contiennent~:
|
|||||||
\item PARTUID
|
\item PARTUID
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
|
|
||||||
|
\vspace{1em}
|
||||||
|
|
||||||
|
Quand à \texttt{lsblk}\index{lsblk}, elle affiche
|
||||||
|
le même genre d'information, mais en plus joli
|
||||||
|
(j'ai utilisé l'option \texttt{-i} pour que le résultat
|
||||||
|
passe mieux à l'impression)~:
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
|
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
|
||||||
|
sda 8:0 0 232.9G 0 disk
|
||||||
|
+-sda1 8:1 0 18.6G 0 part /
|
||||||
|
+-sda2 8:2 0 3.8G 0 part [SWAP]
|
||||||
|
+-sda3 8:3 0 488M 0 part /boot
|
||||||
|
+-sda4 8:4 0 210G 0 part /home
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
|
||||||
% -----------------------------------------------------------
|
% -----------------------------------------------------------
|
||||||
|
|
||||||
\subsection{Smart}\index{smart}
|
\subsection{Smart}\index{smart}
|
||||||
@ -98,21 +116,21 @@ idéal, la prédiction des pannes.
|
|||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
smartctl -a /dev/sda
|
smartctl -a /dev/sda
|
||||||
Print a large amount of SMART information for drive /dev/sda .
|
Print a large amount of SMART information for drive /dev/sda .
|
||||||
|
|
||||||
smartctl -s off /dev/sdd
|
|
||||||
Disable SMART monitoring and data log collection on drive /dev/sdd .
|
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
% -----------------------------------------------------------
|
% -----------------------------------------------------------
|
||||||
\subsection{fsck}\index{fsck}
|
\subsection{fsck}\index{fsck}\index{fuck}
|
||||||
|
|
||||||
\textsl{Check and repair a Linux filesystem}
|
\textsl{Check and repair a Linux filesystem}
|
||||||
|
|
||||||
|
Fortune du jour : \textsf{Franchement, là, je préfère que ce soit vous qui prenne la
|
||||||
|
tronçonneuse, parce que là, c'est pas beau à voir\dots}
|
||||||
|
|
||||||
% -----------------------------------------------------------
|
% -----------------------------------------------------------
|
||||||
\subsection{tune2fs}\index{tune2fs}
|
\subsection{tune2fs}\index{tune2fs}
|
||||||
|
|
||||||
\textsl{Adjust tunable filesystem parameters on ext2/ext3/ext4
|
\textsl{Adjust tunable filesystem parameters on ext2/ext3/ext4
|
||||||
filesystems}
|
filesystems}\footnote{You can tune a fs, but you can't tuna fish}.
|
||||||
|
|
||||||
% -----------------------------------------------------------
|
% -----------------------------------------------------------
|
||||||
|
|
||||||
|
@ -105,7 +105,7 @@ d'une application
|
|||||||
to output audio using a simple API on a wide variety of platforms.}).
|
to output audio using a simple API on a wide variety of platforms.}).
|
||||||
Elle supporte une grande variété de formats.
|
Elle supporte une grande variété de formats.
|
||||||
|
|
||||||
\lstinputlisting[language=C]{ao_example.c}
|
\lstinputlisting[language=C]{code/ao_example.c}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,10 @@
|
|||||||
|
|
||||||
% ----------------------------------------------------------------
|
% ----------------------------------------------------------------
|
||||||
|
|
||||||
Ahemmm, par quoi commencer\footnote{Par de l'aspirine ?} ? Par un
|
Ahemmm, par quoi commencer\footnote{Par de l'aspirine ?} ?
|
||||||
|
La programmation avec les fils d'exécution est un espace
|
||||||
|
rempli de chausse-trappes.
|
||||||
|
Par un
|
||||||
extrait de la page \texttt{pthreads(6)} ? Voilà, ça c'est bien :
|
extrait de la page \texttt{pthreads(6)} ? Voilà, ça c'est bien :
|
||||||
|
|
||||||
\begin{quote}
|
\begin{quote}
|
||||||
|
2
main.tex
2
main.tex
@ -73,7 +73,7 @@ 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/reseau}
|
||||||
|
Loading…
Reference in New Issue
Block a user