Contenu | Rechercher | Menus

Annonce

Ubuntu 16.04 LTS
Commandez vos DVD et clés USB Ubuntu-fr !

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

#1 Le 21/10/2016, à 13:26

harlock59

script pour mettre à jour son noyau vers mainline "daily"

Ce script pourrait être ajouté à la doc ubuntu,

#!/bin/bash
cd /tmp

if ! which lynx > /dev/null; then sudo apt-get install lynx -y; fi

if [ "$(getconf LONG_BIT)" == "64" ]; then arch=amd64; else arch=i386; fi

function download() {
   wget $(lynx -dump -listonly -dont-wrap-pre $kernelURL | grep "$1" | grep "$2" | grep "$arch" | cut -d ' ' -f 4)
}

# Kernel URL
read -p "Voulez-vous installer la dernière version Release Candidate du noyau [O/n] ?" rc
case "$rc" in
   o* | O*) kernelURL=$(lynx -dump -nonumbers http://kernel.ubuntu.com/~kernel-ppa/mainline/daily/ | tail -1) ;;
   n* | N*) kernelURL=$(lynx -dump -nonumbers http://kernel.ubuntu.com/~kernel-ppa/mainline/daily/ | grep -v rc | tail -1) ;;
   *) exit ;;
esac
 
read -p "Voulez-vous installer la dernière version du noyau lowlatency [O/n] ?" lowlatency
case "$lowlatency" in
   o* | O*) lowlatency=1 ;;
   n* | N*) lowlatency=0 ;;
   *) exit ;;
esac

# Download Kernel
if [ "$lowlatency" == "0" ]; then
   echo "Télécharchement de la dernière version Release Candidate du noyau."
   download generic header
   download generic image
elif [ "$lowlatency" == "1" ]; then
   echo "Télécharchement de la dernière version du noyau lowlatency."
   download lowlatency header
   download lowlatency image
fi

# Shared Kernel Header
wget $(lynx -dump -listonly -dont-wrap-pre $kernelURL | grep all | cut -d ' ' -f 4)

# Install Kernel
echo "Installation du noyau Linux"
sudo dpkg -i linux*.deb
echo "Installation terminée. Le redémarrage du système est requis."

Dernière modification par harlock59 (Le 16/04/2017, à 14:51)


Un PC de Bureau sous Xubuntu 17.04 (amd64)
Joyeux Noël et Bonne année 2017 !!

Hors ligne

#2 Le 21/10/2016, à 18:59

f.x0

Re : script pour mettre à jour son noyau vers mainline "daily"

Bonjour harlock59,

Je pense que cela peut-être une bonne idée.

Autant mettre une version du script francisée.
Voici une proposition ci-dessous, je fais un lien vers ton post dans la doc ici, ici

#!/bin/bash
cd /tmp

if ! which lynx > /dev/null; then sudo apt-get install lynx -y; fi

if [ "$(getconf LONG_BIT)" == "64" ]; then arch=amd64; else arch=i386; fi

function download() {
   wget $(lynx -dump -listonly -dont-wrap-pre $kernelURL | grep "$1" | grep "$2" | grep "$arch" | cut -d ' ' -f 4)
}

# Kernel URL
read -p "Voulez-vous installer la dernière version Release Candidate du noyau?" rc
case "$rc" in
   y* | Y*) kernelURL=$(lynx -dump -nonumbers http://kernel.ubuntu.com/~kernel-ppa/mainline/daily/ | tail -1) ;;
   n* | N*) kernelURL=$(lynx -dump -nonumbers http://kernel.ubuntu.com/~kernel-ppa/mainline/daily/ | grep -v rc | tail -1) ;;
   *) exit ;;
esac
 
read -p "Voulez-vous installer la dernière version du noyau lowlatency" lowlatency
case "$lowlatency" in
   y* | Y*) lowlatency=1 ;;
   n* | n*) lowlatency=0 ;;
   *) exit ;;
esac

# Download Kernel
if [ "$lowlatency" == "0" ]; then
   echo "Télécharchement de la dernière version Release Candidate du noyau."
   download generic header
   download generic image
elif [ "$lowlatency" == "1" ]; then
   echo "Télécharchement de la dernière version du noyau lowlatency."
   download lowlatency header
   download lowlatency image
fi

# Shared Kernel Header
wget $(lynx -dump -listonly -dont-wrap-pre $kernelURL | grep all | cut -d ' ' -f 4)

# Install Kernel
echo "Installation du noyau Linux"
sudo dpkg -i linux*.deb
echo "Installation terminée. Le redémarrage du système est requis."

Dernière modification par f.x0 (Le 21/10/2016, à 19:02)


SOPI

Hors ligne

#3 Le 24/10/2016, à 18:31

f.x0

Re : script pour mettre à jour son noyau vers mainline "daily"

Attention, dans ce cas je changerai :

o* | Y*) kernelURL=$(lynx -dump -nonumbers http://kernel.ubuntu.com/~kernel-ppa/mainline/daily/ | tail -1) ;;

par

o* | O*) kernelURL=$(lynx -dump -nonumbers http://kernel.ubuntu.com/~kernel-ppa/mainline/daily/ | tail -1) ;;

et

o* | Y*) lowlatency=1 ;;

par

o* | O*) lowlatency=1 ;;

et

n* | n*) lowlatency=0 ;;

par

n* | N*) lowlatency=0 ;;

SOPI

Hors ligne

#4 Le 24/10/2016, à 22:54

f.x0

Re : script pour mettre à jour son noyau vers mainline "daily"

Je te propose de mettre ce script dans ton 1er message,
et moi je supprime tous mes posts (toi aussi si tu veux sauf le 1er)
comme ça cela reste plus visible et compréhensif.


SOPI

Hors ligne

#5 Le 16/04/2017, à 14:52

harlock59

Re : script pour mettre à jour son noyau vers mainline "daily"

ça y est, c'est fait...


Un PC de Bureau sous Xubuntu 17.04 (amd64)
Joyeux Noël et Bonne année 2017 !!

Hors ligne

#6 Le 16/04/2017, à 18:37

Hizoka

Re : script pour mettre à jour son noyau vers mainline "daily"

Salut, juste quelques retours sur les commandes.

pour éviter les soucis, autant mettre le retour en minuscule :

case "${lowlatency,,}" in
   y* | o*) lowlatency=1 ;;
   n*) lowlatency=0 ;;
   *) exit ;;
esac

Si c'est fait sur une ligne

if ! which lynx > /dev/null; then sudo apt-get install lynx -y; fi

je pense que ça doit le faire

which lynx > /dev/null || sudo apt-get install lynx -y

les 2 commandes me donnent le même résultat.

   y* | Y*) kernelURL=$(lynx -dump -nonumbers http://kernel.ubuntu.com/~kernel-ppa/mainline/daily/ | tail -1) ;;
   n* | N*) kernelURL=$(lynx -dump -nonumbers http://kernel.ubuntu.com/~kernel-ppa/mainline/daily/ | grep -v rc | tail -1) ;;

On peut remplacer :

lynx -dump -listonly -dont-wrap-pre $kernelURL | grep "$1" | grep "$2" | grep "$arch" | cut -d ' ' -f 4

par :

lynx -dump -listonly -dont-wrap-pre "${kernelURL}" | sed -n "s@.*\(http://.*${2}.*${1}.*${arch}.*\)@\1@p"

et

lynx -dump -listonly -dont-wrap-pre $kernelURL | grep all | cut -d ' ' -f 4

par

lynx -dump -listonly -dont-wrap-pre "${kernelURL}" | sed -n "s@.*\(http://.*all.*\)@\1@p"

si on peut éviter les |...

Hors ligne