docs→rtfd

This commit is contained in:
Marc Beninca 2021-12-11 15:32:21 +01:00
parent 7bc781ed11
commit c7ec1dc5d1
131 changed files with 1 additions and 1 deletions

View file

@ -0,0 +1,8 @@
debian
======
.. toctree::
packages
repositories
system/index

View file

@ -0,0 +1,201 @@
********
Packages
********
Base
====
+-----------+
| locales |
| apt-utils |
| dialog |
+-----------+
System
======
+-------------------+
| linux-image-amd64 |
| systemd-sysv |
| live-boot |
+-------------------+
Drivers
=======
+------------------------+
| firmware-linux-nonfree |
| firmware-iwlwifi |
+------------------------+
Architecture
============
+----------------+
| clonezilla |
| debootstrap |
| gparted |
| squashfs-tools |
+----------------+
Desktop
=======
+------------+
| gnome |
| gnome-core |
+------------+
Commands
========
.. todo:: link
+--------------------------+
| [bash](../bash/index.md) |
| bash-completion |
+--------------------------+
Development
===========
+----------+
| kdevelop |
| nuitka |
| python3 |
+----------+
Documentation
=============
+--------------------------------+
| mkdocs |
| pandoc |
| python3-recommonmark |
| python3-sphinx |
| python3-sphinx-bootstrap-theme |
| python3-sphinx-rtd-theme |
+--------------------------------+
Hardware
========
+-----------+-------+
| dmidecode | |
| pciutils | lspci |
| usbutils | lsusb |
+-----------+-------+
Multimedia
==========
+----------------+
| audacity |
| ffmpeg |
| mkvtoolnix |
| subtitleeditor |
| vlc |
+----------------+
Domain names
============
+---------+
| bind9 |
| unbound |
+---------+
Processes
=========
+---------+
| htop |
| iotop |
| jnettop |
+---------+
Security
========
.. todo:: link
+----------------------------------------------+-----------------------------------------------+
| openssh-client | Utiliser un service de connexion sécurisée |
| [openssh-server](../openssh-server/index.md) | Héberger un service de connexion sécurisée |
| sudo | Changer de privilèges le temps d’une commande |
| tcplay | |
+----------------------------------------------+-----------------------------------------------+
Text
====
+------+
| nano |
| vim |
+------+
Versioning
==========
+--------+
| git |
| gitg |
| gource |
+--------+
Virtualization
==============
+---------------------+
| build-essential |
| dkms |
| linux-headers-amd64 |
| lxc |
| virt-manager |
+---------------------+
Web
===
+-------------+
| firefox |
| firefox-esr |
| wget |
+-------------+
To sort
=======
+--------------+
| apparmor |
| curl |
| iputils-ping |
| less |
| locate |
| man |
| ncdu |
| numlockx |
| qdirstat |
| syslog-ng |
| tree |
+--------------+
+--------------------------+
| firmware-linux-free |
| firmware-linux-nonfree |
| firmware-misc-nonfree |
| xserver-xorg-video-intel |
+--------------------------+
+---------------------+
| blender |
| deadbeef |
| filezilla |
| ghex |
| hexchat |
| libreoffice |
| mumble |
| texlive-lang-french |
| texlive-xetex |
| thunderbird |
+---------------------+

View file

@ -0,0 +1,151 @@
************
Repositories
************
Keys
====
archive
-------
Master key
* E0B11894F66AEC98 Debian Archive Automatic Signing Key <ftpmaster@debian.org>
Subkey
* 04EE7237B7D453EC Debian Archive Automatic Signing Key (9/stretch) <ftpmaster@debian.org>
Deprecated
* 7638D0442B90D010 Debian Archive Automatic Signing Key (8/jessie) <ftpmaster@debian.org>
security
--------
* 9D6D8F6BC857C906 Debian Security Archive Automatic Signing Key (8/jessie) <ftpmaster@debian.org>
And, for some reason, this one used with testing/updates
* 8B48AD6246925553 Debian Archive Automatic Signing Key (7.0/wheezy) <ftpmaster@debian.org>
Locations
=========
* content delivery network
* https://deb.debian.org/debian
* https://deb.debian.org/debian-security
* legacy
* http://ftp.fr.debian.org/debian
* http://ftp.us.debian.org/debian
* http://security.debian.org
Structure
=========
* ? changelogs
* ? DEP-11
* ? doc
* ? extrafiles
* ? indices
* dists
* ?
* dists
* oldstable
* oldstable-backports
* oldstable-updates
* stable
* stable-backports
* stable-updates
Files
=====
README
------
::
This directory, dists, is the canonical way to access the distributions.
Each distribution can be accessed by name or state from here.
oldoldstable, or jessie - the released Debian 8.11
oldstable, or stretch - the released Debian 9.12
stable, or buster - the released Debian 10.3
oldoldstable-proposed-updates - possible updates to Debian 8
oldstable-proposed-updates - possible updates to Debian 9
stable-proposed-updates - possible updates to Debian 10
jessie-updates - important updates to Debian 8
stretch-updates - important updates to Debian 9
buster-updates - important updates to Debian 10
testing, or bullseye - the development version of the next release
unstable, or sid - untested candidate packages for future releases
experimental, or rc-buggy - experimental packages to be used on top of unstable
Release
-------
contrib main non-free
* ?/Contents-*
* ?/Contents-source
* ?/Contents-udeb-*
* ?/binary-all
* ?/binary-*
* ?/debian-installer/binary-all
* ?/debian-installer/binary-*
* ?/dep11/Components-*
* ?/dep11/icons
* ?/i18n
* main/installer-*
* ?/contrib/source
::
Origin: Debian
Label: Debian
Suite: stable
Version: 9.2
Codename: stretch
Changelogs: http://metadata.ftp-master.debian.org/changelogs/@CHANGEPATH@_changelog
Date: Sat, 07 Oct 2017 09:44:42 UTC
Acquire-By-Hash: yes
Architectures: amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el s390x
Components: main contrib non-free
Description: Debian 9.2 Released 07 October 2017
MD5Sum:
f9bbab6d94f45e56c672017d8720a24c 1181459 contrib/Contents-amd64
SHA256:
e3bf2ecc2ce89bc48e2339b86ceaba9e1fff7d6668eafab1445e7f7990c4802e 1181459 contrib/Contents-amd64
Packages
--------
::
Package: astrometry-data-2mass-00
Source: astrometry-data-2mass
Version: 1.1
Installed-Size: 13882041
Maintainer: Debian Astronomy Team <debian-astro-maintainers@lists.alioth.debian.org>
Architecture: all
Depends: astrometry.net, curl
Enhances: astrometry.net
Description: Astrometry.net 2MASS index files downloader (2'-2.8')
Homepage: http://data.astrometry.net/4200
Description-md5: b0effd246d35f7c4108f5a91527965cd
Section: contrib/science
Priority: optional
Filename: pool/contrib/a/astrometry-data-2mass/astrometry-data-2mass-00_1.1_all.deb
Size: 3204
MD5sum: 1a51ad538ca17d1113802820856dc4d5
SHA256: 36eafa5e9dbea55ecea5b2595f0d7c0a591e0831e20ac3ac98a239605074798a

View file

@ -0,0 +1,8 @@
System from scratch
===================
.. toctree::
:maxdepth: 2
:numbered: 2
system

View file

@ -0,0 +1,370 @@
.. todo::
* /etc/motd
Choices
=======
have up-to-date mirrors available
---------------------------------
.. todo:: sync mirrors
.. todo:: check mirrors
critical base packages
----------------------
+-----------+--------------------------------------------------+
| locales | to get localization binaries for system messages |
+-----------+--------------------------------------------------+
| apt-utils | otherwise packages configuration gets delayed |
+-----------+--------------------------------------------------+
| dialog | to have user interaction possible with APT |
+-----------+--------------------------------------------------+
decide the desired type of system
---------------------------------
* will the system run
* 64 bits?
* 32 bits?
* both?
* will the system be run by
* a physical machine?
* a virtual machine?
* a container?
* a container inside a virtual machine?
* will the system be stored
* read-write, as a file system on a dedicated partition?
* read-only, as a single file loaded in RAM at boot time?
Install required tools
======================
============== ========================================
debootstrap generate a minimal base file system
squashfs-tools archive or unarchive a file system image
============== ========================================
.. code:: shell
apt install debootstrap squashfs-tools
Create a base file hierarchy
============================
prepare the system's directory
------------------------------
* become root
.. code:: shell
su
* make root directory
.. code:: shell
mkdir '/squashfs-root'
generate the minimal base
-------------------------
.. code:: shell
debootstrap \
--arch 'amd64' \
--variant 'minbase' \
--include 'locales,apt-utils,dialog' \
'bullseye' \
'/squashfs-root' \
'https://deb.debian.org/debian'
Configure preinstalled packages
===============================
apt
---
configuration
^^^^^^^^^^^^^
* /etc/apt/apt.conf
Acquire::AllowInsecureRepositories False;
Acquire::AllowWeakRepositories False;
Acquire::AllowDowngradeToInsecureRepositories False;
Acquire::Check-Valid-Until False;
APT::Install-Recommends False;
APT::Install-Suggests False;
APT::Get::Show-Versions True;
Dir::Etc::SourceParts "";
Dpkg::Progress True;
preferences
^^^^^^^^^^^
* /etc/apt/preferences
.. todo:: preferences
sources
^^^^^^^
* /etc/apt/sources.list
::
deb [arch=amd64] https://deb.debian.org/debian bullseye main contrib non-free
deb [arch=amd64] https://deb.debian.org/debian bullseye-backports main contrib non-free
deb [arch=amd64] https://deb.debian.org/debian bullseye-updates main contrib non-free
deb [arch=amd64] https://deb.debian.org/debian-security bullseye-security main contrib non-free
locales
-------
define default locale
^^^^^^^^^^^^^^^^^^^^^
* /etc/default/locale
::
LANG='en_US.UTF-8'
LANGUAGE='en_US:en'
LC_CTYPE='fr_FR.UTF-8'
LC_NUMERIC='fr_FR.UTF-8'
LC_TIME='fr_FR.UTF-8'
LC_COLLATE='fr_FR.UTF-8'
LC_MONETARY='fr_FR.UTF-8'
LC_MESSAGES='en_US.UTF-8'
LC_PAPER='fr_FR.UTF-8'
LC_NAME='fr_FR.UTF-8'
LC_ADDRESS='fr_FR.UTF-8'
LC_TELEPHONE='fr_FR.UTF-8'
LC_MEASUREMENT='fr_FR.UTF-8'
LC_IDENTIFICATION='fr_FR.UTF-8'
define locales to generate
^^^^^^^^^^^^^^^^^^^^^^^^^^
* /etc/locale.gen
::
en_US.UTF-8 UTF-8
fr_FR.UTF-8 UTF-8
generate locales
^^^^^^^^^^^^^^^^
.. code:: shell
locale-gen
[configure command shell](../bash/index.md)
-------------------------------------------
redefine hostname
-----------------
* /etc/hostname
::
hostname
provide known file systems
--------------------------
* /etc/fstab
RAM volume for temporary files
::
tmpfs /tmp tmpfs auto,mode=1777 0 0
Install additional packages
===========================
switch into context
-------------------
.. code:: shell
for f in 'dev' 'dev/pts' 'proc' 'sys' ; do
mount --bind "/${f}" "/squashfs-root/${f}"
done
chroot '/squashfs-root'
console-setup
-------------
define default keyboard layouts
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
* /etc/default/keyboard
::
XKBMODEL='pc105'
XKBLAYOUT='fr,fr'
XKBVARIANT='oss,bepo'
XKBOPTIONS='terminate:ctrl_alt_bksp'
BACKSPACE='guess'
define root password
--------------------
.. code:: shell
passwd
user, guest, sudo
-----------------
.. code:: shell
apt-get install sudo
useradd -s /bin/bash user
mkdir /home/user
chown user: /home/user
adduser user sudo
useradd -s /bin/bash guest
chown guest: /home/guest
authentications: passwords, SSH keys
------------------------------------
.. todo:: files
upgrade system
--------------
* in any case :
.. code:: shell
apt-get update
apt-get upgrade
* if needed by backported packages :
.. code:: shell
apt-get dist-upgrade
apply system type elements
--------------------------
================= ==================================================
systemd-sysv sans quoi le système ne démarrera pas complètement
linux-image-amd64 s’il ne s’agit pas d’un conteneur
live-boot si à destination de boot live
================= ==================================================
.. code:: shell
apt-get install --target-release 'bullseye-backports' 'linux-image-amd64'
.. code:: shell
apt-get install 'live-boot'
----
initialization settings
-----------------------
.. code:: shell
apt-get install --target-release 'bullseye-backports' 'systemd-sysv'
* /etc/sysctl.conf
Espace mémoire maximum allouable (à augmenter si hébergement de conteneurs)
Pourcentage de RAM disponible avant utilisation de la partition d’échange
.. code:: ini
vm.max_map_count=1048576
vm.swappiness=0
install useful packages
-----------------------
.. code:: shell
apt-get install \
bash-completion \
lxc \
less nano vim \
pciutils usbutils \
python3 \
squashfs-tools
.. code:: shell
apt-get install \
--target-release 'bullseye-backports' \
debootstrap
install other packages
----------------------
[Choix de paquets commentés](packages.md)
.. code:: shell
apt-get install "package1" …
apt-get install -t stretch-backports "package1" …
properly switch back from context
---------------------------------
* empty APT's cache
.. code:: shell
apt-get clean
* exit the environment
.. code:: shell
exit
* untie links to host system
.. code:: shell
for f in 'sys' 'proc' 'dev/pts' 'dev' ; do
umount --lazy "/squashfs-root/${f}"
done
clean up commands history
-------------------------
* root/.bash_history
Configure installed packages
============================
.. todo:: files
Archive prepared file system
============================
.. code:: shell
mksquashfs \
'/squashfs-root' \
'filesystem.squashfs' \
-noappend \
-b '1m' \
-comp 'zstd' \
-Xcompression-level 22