人生は勉強ブログ

https://github.com/dooooooooinggggg

Linux

Linux Kernelをビルドする際,プリプロセッサの出力を残す

この記事はSFC-RG Advent Calendar 2019の17日目の記事です. 結論 Makefileのこの辺にKBUILD_CFLAGS += -save-temps=objという行を加えてビルドする. before KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \ -fno-strict-aliasing -…

KASLRの実装と挙動の確認

この記事はSFC-RG Advent Calendar 2019の16日目の記事です. 今年も遅くなって申し訳ないです. この記事では,KASLR,kernel address space layout randomizationについて記述する. KASLRは,カーネル領域における仮想アドレス空間のランダム化である.こ…

"No rule to make target 'debian/certs/debian-uefi-certs.pem', needed by 'certs/x509_certificate_list'. Stop."を解決する

Debianでカーネルをビルドする際に以下のエラーが発生して,ビルドが停止した. make # SYSTBL arch/x86/include/generated/asm/syscalls_32.h # SYSHDR arch/x86/include/generated/asm/unistd_32_ia32.h # SYSHDR arch/x86/include/generated/asm/unistd_6…

debファイルを用いてDebianのLinuxカーネルを簡単にアップデートする

概要 Debianのカーネルをアップデートする際に,debファイルを用いることで,aptを用いてインストールをシンプルに行うことができる. また,カーネルのパッケージをdebファイルとして保持できるため,ロールバックも容易になる. 環境 Debian 9 stretch mak…

Linux KernelをビルドしてQEMUで動かす.

環境 cat /etc/debian_version # 9.9 qemu-system-x86_64 --version # QEMU emulator version 2.8.1(Debian 1:2.8+dfsg-6+deb9u7) # Copyright (c) 2003-2016 Fabrice Bellard and the QEMU Project developers Debian stretch 9.9 QEMU: 2.8.1 必要なパッケ…

Linux(2.6.11)において,int 0x80命令によってシステムコールが呼ばれる流れを追ってみる

Linux(2.6.11)において,int 0x80命令によってシステムコールが呼ばれる流れを追ってみた この記事では,以下の本を参考に,実際にコードを見ていく記事. 参考文献: Linuxカーネル2.6解読室 Linuxカーネル2.6解読室作者: 高橋浩和,小田逸郎,山幡為佐久出版…

セグメント機構とCPUの動作モード(Linux(64bit)との関係性)

この記事はsfc-rg Advent Calendar 2018 5日目の記事です. 遅くなってしまいました.ごめんなさい. 概要 セグメント機構とそれに付随するCPUの動作モードに関する記事. あとで自分が見るときのために,CPUのセグメント機構について大雑把に説明し,32bit…

Linux(64bit)のページング機構

この記事はsfc-rg Advent Calendar 2018 4日目の記事です. 概要 Linuxのページング機構について勉強する必要があったが,書籍やインターネットにある情報は,32bit版のものが多く,64bit版の情報を探すのに苦労した. 今後自分のような人が出てきた際に,困…

KVM/QEMU上の仮想マシンに対して,libvmiを使ってみる

環境 Debian 9.4.0 やっていくこと libvmiとは KVM/QEMUとは VirtualBoxでNested Virtualizationはできない 仮想化でない(USBブートした)Debianの上で,KVM/QEMUを動かす. libvmiのサンプルプログラムを実行. libvmiとは libvmiとは,virtual machine intr…

VirtualBox上のdebian 9.4.0のnetwork初期設定

前回、以下の記事にて、VirtualBoxへのインストールが完了した。 blog.ishikawa.tech 今回は、ネットワークなど、普通に使うための設定を書いていく。 path $ vim .profile 以下を記入。 export PATH=$PATH:$HOME/bin:/sbin:/usr/sbin:/usr/local/bin ついで…

debian 9.4.0をvirtual box上にインストールし、Guest Additionsまでインストール

この記事では、実際に選択したもの、実行したコマンドを載せてます。 もし間違いがあれば気軽にご指摘お願いします。 環境 MacBookPro 2016 late 使用するISO debian-9.4.0-amd64-DVD-1.iso ない場合は、 $ wget https://cdimage.debian.org/debian-cd/curre…

bitcoindをvagrant上のubuntuに導入する

ソースからビルドするのがめんどくさかったので、apt-getからbitcoindを導入する。 今回は、testnetでやる。 その時のメモ。 参考にしたサイトは、以下 bitcoin-cliを使ったBitcoinAPI入門 bitcoin-cli で使えるコマンド一覧 vagrantのsetup % vagrant box a…

MacBookPro early2015でkali linuxをusbブートする

動機 深夜で暇なので、MacBookProでkali linuxをusbブートするということに挑戦してみようと思う。 参考にした記事 MacでUbuntu USBブートを作る。 kali linuxをUSBにインストールしてmacbook airでブートできるようにしてみた Kali LinuxをUSBにインストー…