Eine Einführung - Teil 14
Deutsche Angestellten Akademie
#include<stdio.h>
int main() {
	printf("Hello World\n");
	return 0;
}
											
				
				Wir benötigen:
~$ sudo apt install build-essential~$  gcc hello.c -o hello
# Programm ausführen
~$ ./hello
						
				| C | Programmiersprache - Der Linux-Kernel ist in „C“ geschrieben | 
| Compiler | Übersetzt den Quellcode in Maschinencode | 
| gcc | Gnu C-Compiler Collection | 
| Bibliotheken | Fertige Funktionen, die in andere Programme eingebunden werden ( unter Windoes oft *.dll-Dateien ) | 
| make | arbeitet Regeln und Abhängigkeitsdefinitionen in „Makefile“ ab -> startet den gcc | 
 Befehle
Wir benötigen hierfür git:
~$ sudo apt install git
					Ein Album als kernelmodul?? https://github.com/usrbinnc/netcat-cpi-kernel-module
Aktuelle Kernel Quellen herunterladen https://www.kernel.org
$ sudo apt-get install build-essential \ 
	libncurses5-dev gcc libssl-dev bc
# für XXXXXXX entspr. Kernel Version einsetzen!
$ cd ~/Downloads
$ tar xvf linux-XXXXXXX.tar.xz
$ cd linux-XXXXXXX
$ cp /boot/config-4.13-XXXXXXX .config
$ make menuconfig
					
				
# Das dauert jetzt....
# ca 90min auf einem Core i3 @2.4MHz
# -j 4 -> Nutze 4 Kerne
~$ make -j4 deb-pkg  
#Kernel installieren:
~$ sudo dpkg -i ../linux-*.deb
# reboot -> neuen Kernel wählen 
					~$ lsblk
NAME                     MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda                        8:0    0 223,6G  0 disk  
├─sda1                     8:1    0   245M  0 part  /boot/efi
├─sda2                     8:2    0   511M  0 part  /boot
└─sda3                     8:3    0 222,9G  0 part  
  └─sda3_crypt           253:0    0 222,8G  0 crypt 
    ├─xubuntu--vg-root   253:1    0 215,1G  0 lvm   /
    └─xubuntu--vg-swap_1 253:2    0   7,7G  0 lvm  
  
				/etc/default/grub -> Anpassungen
/etc/grub.d/ -> scripts die boot.cfg generieren
00_header*
05_debian_theme*
10_linux*
20_linux_xen*
20_memtest86+*
30_os-prober*
30_uefi-firmware*
40_custom*
41_custom*
					/boot/grub/grub.cfg -> nicht bearbeiten!
/etc/default/grub
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
GRUB_BACKGROUND="/usr/share/images/grub/050817-N-3488C-028.tga"
					
					Aussehen verändern
					nach Änderung:
sudo update-grub