Próbuję skompilować jądro wraz z łatką grsecurity według tego poradnika > http://newbie.linux.pl/wydruk.php?wydru ... ow=artykul
Jedyne co zmieniam to wersję kernela i grsecurity(obydwa na 3.15.10) no i kernel nie jest w archiwum tar.bz2 tylko tar.gz, dochodzę do momentu patchowania i oto co mi się pojawia:
Dodam, że znajduję się tak jak podaje poradnik w lokacji /usr/src i mam tam wypakowane archiwum z kernelem.root@alias:/usr/src# patch -p0 < grsecurity-3.0-3.15.10-201408140023.patch
can't find file to patch at input line 5
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff --git a/Documentation/dontdiff b/Documentation/dontdiff
|index 9de9813..1462492 100644
|--- a/Documentation/dontdiff
|+++ b/Documentation/dontdiff
--------------------------
File to patch:
Dodatkowo po wypakowaniu jądra mam w katalogu src jeszcze plik linux-3.15.10.rej oraz katalog o nazwie "b"(który utworzył się po instalacji pakietu kernel-package oraz libncurses5-dev) w którym znajdują się katalogi: arch,grsecurity,include,net,scripts,tools,plik localversion-grsec
Podczas instalowanai się kernel-package wybrałem zostawienie lokalnie zmodyfikowanego jakiegos pliku kernela(jeśli to ma znaczenie)
@Edit: ok, dałem radę z tym, wchodząc do katalogu linux-3.15.10 i zamieniając -p0 na -p1
ale dalej jest problem. Po wydaniu polecenia: make-kpkg, wyświetla się:
exec make kpkg_version=13.014 -f /usr/share/kernel-package/ruleset/minimal.mk clean
====== making target minimal_clean [new prereqs: ]======
This is kernel package version 13.014.
test ! -f .config || cp -pf .config config.precious
test ! -e stamp-building || rm -f stamp-building
test ! -f Makefile || \
make ARCH=x86_64 distclean
make[1]: Wejście do katalogu '/usr/src/linux-3.15.10'
CLEAN scripts/basic
CLEAN scripts/kconfig
CLEAN include/config include/generated arch/x86/include/generated
CLEAN .config .config.old
make[1]: Opuszczenie katalogu '/usr/src/linux-3.15.10'
test ! -f config.precious || mv -f config.precious .config
rm -f modules/modversions.h modules/ksyms.ver scripts/cramfs/cramfsck scripts/cramfs/mkcramfs
a po poleceniu: make-kpkg --initrd kernel_image kernel_headers
no i nie wiem dlaczego i co dalejs
exec make kpkg_version=13.014 -f /usr/share/kernel-package/ruleset/minimal.mk debian INITRD=YES
====== making target debian/stamp/conf/minimal_debian [new prereqs: ]======
This is kernel package version 13.014.
test -d debian || mkdir debian
test ! -e stamp-building || rm -f stamp-building
install -p -m 755 /usr/share/kernel-package/rules debian/rules
for file in ChangeLog Control Control.bin86 config templates.in rules; do \
cp -f /usr/share/kernel-package/$file ./debian/; \
done
cp: nie można wykonać stat na „/usr/share/kernel-package/ChangeLog”: Nie ma takiego pliku ani katalogu
for dir in Config docs examples ruleset scripts pkg po; do \
cp -af /usr/share/kernel-package/$dir ./debian/; \
done
test -f debian/control || sed -e 's/=V/3.15.10/g' \
-e 's/=D/3.15.10-10.00.Custom/g' -e 's/=A/amd64/g' \
-e 's/=SA//g' \
-e 's/=I//g' \
-e 's/=CV/3.15/g' \
-e 's/=M/Unknown Kernel Package Maintainer <unknown@unconfigured.in.etc.kernel-pkg.conf>/g' \
-e 's/=ST/linux/g' -e 's/=B/x86_64/g' \
-e 's/=R//g' /usr/share/kernel-package/Control > debian/control
test -f debian/changelog || sed -e 's/=V/3.15.10/g' \
-e 's/=D/3.15.10-10.00.Custom/g' -e 's/=A/amd64/g' \
-e 's/=ST/linux/g' -e 's/=B/x86_64/g' \
-e 's/=M/Unknown Kernel Package Maintainer <unknown@unconfigured.in.etc.kernel-pkg.conf>/g' \
/usr/share/kernel-package/changelog > debian/changelog
chmod 0644 debian/control debian/changelog
test -d ./debian/stamp || mkdir debian/stamp
make -f debian/rules debian/stamp/conf/kernel-conf
make[1]: Wejście do katalogu '/usr/src/linux-3.15.10'
====== making target debian/stamp/conf/kernel-conf [new prereqs: ]======
make ARCH=x86_64 \
oldconfig;
make[2]: Wejście do katalogu '/usr/src/linux-3.15.10'
scripts/kconfig/conf --oldconfig Kconfig
#
# configuration written to .config
#
make[2]: Opuszczenie katalogu '/usr/src/linux-3.15.10'
make ARCH=x86_64 prepare
make[2]: Wejście do katalogu '/usr/src/linux-3.15.10'
scripts/kconfig/conf --silentoldconfig Kconfig
SYSTBL arch/x86/syscalls/../include/generated/asm/syscalls_32.h
SYSHDR arch/x86/syscalls/../include/generated/asm/unistd_32_ia32.h
SYSHDR arch/x86/syscalls/../include/generated/asm/unistd_64_x32.h
SYSTBL arch/x86/syscalls/../include/generated/asm/syscalls_64.h
SYSHDR arch/x86/syscalls/../include/generated/uapi/asm/unistd_32.h
SYSHDR arch/x86/syscalls/../include/generated/uapi/asm/unistd_64.h
SYSHDR arch/x86/syscalls/../include/generated/uapi/asm/unistd_x32.h
Makefile:665: *** Your gcc installation does not support plugins. If the necessary headers for plugin support are missing, they should be installed. On Debian, apt-get install gcc-<ver>-plugin-dev. If you choose to ignore this error and lessen the improvements provided by this patch, re-run make with the DISABLE_PAX_PLUGINS=y argument.. Stop.
make[2]: Opuszczenie katalogu '/usr/src/linux-3.15.10'
debian/ruleset/targets/common.mk:194: polecenia dla obiektu 'debian/stamp/conf/kernel-conf' nie powiodły się
make[1]: *** [debian/stamp/conf/kernel-conf] Błąd 2
make[1]: Opuszczenie katalogu '/usr/src/linux-3.15.10'
/usr/share/kernel-package/ruleset/minimal.mk:93: polecenia dla obiektu 'debian/stamp/conf/minimal_debian' nie powiodły się
make: *** [debian/stamp/conf/minimal_debian] Błąd 2
Failed to create a ./debian directory: Nie ma takiego pliku ani katalogu at /usr/bin/make-kpkg line 966.