diff --git a/usr/klibc/arch/x86_64/MCONFIG b/usr/klibc/arch/x86_64/MCONFIG
index 8edf343..edcd638 100644
--- a/usr/klibc/arch/x86_64/MCONFIG
+++ b/usr/klibc/arch/x86_64/MCONFIG
@@ -17,10 +17,10 @@
 KLIBCARCHREQFLAGS = -m64
 ifeq ($(DEBUG),y)
 KLIBCOPTFLAGS     = -Os -fomit-frame-pointer \
-		-falign-functions=0 -falign-jumps=0 -falign-loops=0
+		-falign-functions=1 -falign-jumps=1 -falign-loops=1
 else
 KLIBCOPTFLAGS     = -Os -fno-asynchronous-unwind-tables -fomit-frame-pointer \
-		-falign-functions=0 -falign-jumps=0 -falign-loops=0
+		-falign-functions=1 -falign-jumps=1 -falign-loops=1
 endif
 KLIBCBITSIZE      = 64
 KLIBCLDFLAGS      = -m elf_x86_64
diff --git a/usr/utils/Kbuild b/usr/utils/Kbuild
index b3b8d8a..75618cc 100644
--- a/usr/utils/Kbuild
+++ b/usr/utils/Kbuild
@@ -2,7 +2,7 @@
 # Kbuild file for klib utils
 #
 
-progs := chroot dd mkdir mkfifo mount pivot_root umount
+progs := chroot dd mkdir mkfifo mknod mount pivot_root umount
 progs += true false sleep ln nuke minips cat
 progs += insmod uname halt
 
@@ -18,6 +18,8 @@
 shared/mkdir-y      := mkdir.o file_mode.o
 static/mkfifo-y     := mkfifo.o file_mode.o
 shared/mkfifo-y     := mkfifo.o file_mode.o
+static/mknod-y      := mknod.o file_mode.o
+shared/mknod-y      := mknod.o file_mode.o
 static/mount-y      := mount_main.o mount_opts.o
 shared/mount-y      := mount_main.o mount_opts.o
 static/pivot_root-y := pivot_root.o
diff --git a/usr/utils/mknod.c b/usr/utils/mknod.c
new file mode 100644
index 0000000..1facda7
--- /dev/null
+++ b/usr/utils/mknod.c
@@ -0,0 +1,58 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/stat.h>
+
+char *progname;
+
+static __noreturn usage(void)
+{
+	fprintf(stderr, "Usage: %s name {b|c} major minor\n", progname);
+	exit(1);
+}
+
+int main(int argc, char *argv[], char *envp[])
+{
+	char *name = NULL, *endp;
+	unsigned int major, minor;
+	mode_t mode;
+	dev_t dev;
+
+	progname = argv[0];
+	if (argc != 5)
+		usage();
+
+	name = argv[1];
+	if (!name) {
+		perror("device");
+		usage();
+	}
+
+	mode = 0666;
+	if (argv[2][0] == 'c')
+		mode |= S_IFCHR;
+	else if (argv[2][0] == 'b')
+		mode |= S_IFBLK;
+	else {
+		perror("block or char devices.");
+		usage();
+	}
+
+	major = strtol(argv[3], &endp, 0);
+	if (*endp != '\0') {
+		perror("major.");
+		usage();
+	}
+	minor = strtol(argv[4], &endp, 0);
+	if (*endp != '\0') {
+		perror("minor.");
+		usage();
+	}
+	dev = makedev(major, minor);
+
+	if (mknod(name, mode, dev) == -1) {
+		perror("mknod");
+		exit(1);
+	}
+
+	exit(0);
+}
