标签: linux-kernel

我应该在 git 存储库本身中编译 linux 内核吗?

这是关于常见的做法。我有一个包含 linux 内核的 git 存储库。现在我想构建这个 linux 内核。我应该复制 git 存储库外的源代码,然后构建内核吗?或者,我应该在 git 存储库本身内部运行构建吗?我担心在构建过程中创建的许多文件,我认为不应该包含在 git 存储库中。

git build linux-kernel

3
推荐指数
1
解决办法
227
查看次数

Fake raid 如何与操作系统(Linux)通信?

我是一名程序员,我研究了软件、硬件和假突袭,但我无法理解假突袭如何与操作系统 (Linux) 通信?我的意思是这涉及哪个软件层或驱动程序?

linux raid storage linux-kernel linux-device-driver

3
推荐指数
1
解决办法
1165
查看次数

Fedora 21 的内核头文件在哪里?

我正在尝试在 Fedora 21 上安装 VMware。我已经安装了内核头文件:

sudo yum install kernel-headers-`uname -r`
Run Code Online (Sandbox Code Playgroud)

我收到以下消息:

Package kernel-headers-3.18.5-201.fc21.x86_64 already installed
Run Code Online (Sandbox Code Playgroud)

但是,没有任何内容/usr/src/kernels

$ ls /usr/src
$ debug     kernels
$ ls /usr/src/kernels/
$
Run Code Online (Sandbox Code Playgroud)

我想有些东西已经改变了,我找错了地方。

Fedora 21 中的内核头文件在哪里?

linux-kernel headers fedora-21

3
推荐指数
1
解决办法
1万
查看次数

route -n 在 Linux 中如何工作?

我可以理解 的输出strace route -n,但route真的读取任何文件/proc来获取路由表吗?此外,如果路由和 IP 地址存储在 下/proc,为什么不strace显示正在访问的文件?

root@xxxx:/etc/postfix# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.21.58.0     0.0.0.0         255.255.254.0   U     0      0        0 eth0
0.0.0.0         10.21.58.1     0.0.0.0         UG    100    0        0 eth0
Run Code Online (Sandbox Code Playgroud)

编辑,经过更多研究:

似乎route 确实读取了/proc:下的文件,特别是/proc/net/route. 那么,路由信息是如何到达那里的呢?

linux linux-kernel

2
推荐指数
1
解决办法
5327
查看次数

如何在linux中显示系统资源的整体使用情况?

有什么方法可以让我在终端中看到所有系统资源的使用情况,就像我们在 windows 平台下看到的那样Resource Monitor。我可以分别查看 Linux 下的每个资源使用情况,但我需要并行显示所有资源,以便我可以比较每个进程的使用情况。

linux linux-kernel

2
推荐指数
1
解决办法
2万
查看次数

Linux内核编译:独立操作系统

大家好,我是 linux 内核编译的新手,所以我有一些问题:通过编译 linux 内核,我们是否构建了一个完全独立的操作系统,它不依赖于任何 linux 发行版?

如果是的话......好吧,当我想使用 initramfs 命令创建 initrd 文件时,为什么要添加一些有关我正在运行的 linux 解构(我正在运行 Ubuntu 10.4)的信息?

我应该如何编译并将模块添加到我编译的 linux 中,我应该把它们放在哪里?

这是我一直在做的事情的总结:

1.获取内核源代码(3.4.1)并使用“make all”命令编译它(我使用我当前的linux .config)

  1. 在我的记忆棒上安装 grub

  2. 把编译好的 bzImage 放到记忆棒的 /boot 目录下

  3. 使用“initramfs”命令创建initrd文件并将其也放入/boot。

  4. 使用记忆棒启动我的电脑并进入 grub> 终端

  5. 使用 "root (hd0,0)" ; "内核/boot/bzImage"; “initrd /boot/initrd.img”,然后“boot”命令启动。

  6. 在出现错误后进入(initramfs)终端,指出找不到“/lib/modules/3.4.1/modules.dep”文件!!!

我究竟做错了什么 ?

compile initrd linux-kernel kernel-module

2
推荐指数
1
解决办法
1288
查看次数

dkms 找不到内核源码

几天来,我试图让 ZFS-on-Linux 在 Debian 7 上工作,但该模块不想编译:

# dpkg-reconfigure zfs-dkms

------------------------------
Deleting module version: 0.6.3
completely from the DKMS tree.
------------------------------
Done.
Loading new zfs-0.6.3 DKMS files...
Building only for 2.6.32-openvz-042stab090.5-amd64
Module build for the currently running kernel was skipped since the
kernel source for this kernel does not seem to be installed.
Run Code Online (Sandbox Code Playgroud)

当然,安装了头文件和源代码:

# uname -r
2.6.32-openvz-042stab090.5-amd64
# dpkg -l | grep 2.6.32-openvz-042stab090.5-amd64
ii  linux-headers-2.6.32-openvz-042stab090.5-amd64   1                                  amd64        Header files related to Linux kernel, specifically,
ii  linux-image-2.6.32-openvz-042stab090.5-amd64     1                                  amd64        Linux kernel …
Run Code Online (Sandbox Code Playgroud)

linux debian zfs linux-kernel kernel-module

2
推荐指数
1
解决办法
2万
查看次数

为什么 Linux 启动序列的组织方式是这样的……?

为什么 Linux 启动顺序是这样组织的?

开机 + BIOS 运行硬件初始化和自检、LILO/GRUB 等......但为什么它是这样组织的?

我说它主要用于调试目的是否正确?

linux boot linux-kernel

1
推荐指数
1
解决办法
279
查看次数

为什么 linux 内核包含所有设备的文件?

我的设备的内核包含许多其他设备和情况的文件,我的设备无法使用。内核携带所有文件,并且比我的设备文件大得多。

这是什么原因?为什么不删除不必要的文件并使用更小的内核?

linux kernel linux-kernel

1
推荐指数
1
解决办法
137
查看次数

是否有任何 Linux 命令可用于显示除 ifconfig 之外的所有网络接口

我必须在 Arch Linux 安装(在 Virtualbox 中)上设置网络连接,我需要知道我正在使用哪些网络接口。我如何在不使用的情况下做到这一点ifconfig

linux arch-linux linux-kernel

1
推荐指数
1
解决办法
463
查看次数

PATH 不会永久存储在文件中

我是 Ubuntu 的新手。我想向我添加一些变量PATH- 我正在使用以下步骤:

  1. 打开终端窗口。

  2. 键入以下命令:

    export GOROOT=/home/linux/go/hg
    export GOOS=linux
    export GOARCH=386
    export GOBIN=/home/linux/go/bin
    export PATH=$PATH:$GOBIN
    
    Run Code Online (Sandbox Code Playgroud)

当我在终端窗口中键入以下命令时:

env | grep '^GO'
Run Code Online (Sandbox Code Playgroud)

表明:

GOBIN=/home/linux/go/bin/
GOARCH=386
GOROOT=/home/linux/go/hg
GOOS=linux
Run Code Online (Sandbox Code Playgroud)

我在终端窗口中尝试了以下命令:

gedit ~/.bashrc
Run Code Online (Sandbox Code Playgroud)

并在文件末尾粘贴以下几行:

GOROOT=/home/linux/go/hg
GOOS=linux
GOARCH=386
GOBIN=/home/linux/go/bin
Run Code Online (Sandbox Code Playgroud)

问题是env没有在PATH. 也许我使用错误的命令来存储路径,或者将我的路径变量存储在错误的文件中?

有人可以指导我将上述变量PATH永久存储在何处以及如何存储吗?

ubuntu linux-kernel

0
推荐指数
1
解决办法
1738
查看次数

如何运行Linux 0.01?

可能的重复:
在虚拟机中运行 linux 内核 0.01

如何在笔记本电脑上运行 Linux 0.01?

如果可以运行它,你能告诉我如何运行吗?在这里你可以下载源代码

linux linux-kernel

0
推荐指数
2
解决办法
2909
查看次数

在linux上用sftdisk创建分区后等待内核

我正在linux下用sfdisk创建一个分区。创建分区后,我想创建一个文件系统。

这会因 mkfs.ext3 找不到分区而失败:

echo ",,L" | sfdisk $DEVICE
mkfs.ext3 $PARTITION
Run Code Online (Sandbox Code Playgroud)

但这有效:

echo ",,L" | sfdisk $DEVICE
sleep 1
mkfs.ext3 $PARTITION
Run Code Online (Sandbox Code Playgroud)

我怀疑,在 udev 有机会创建设备节点之前,内核需要一些时间来更新它的内部数据结构,或者我的脚本再次被调度。

如何准确等待设备节点创建完成?对于每个恒定时间,可能有一个系统处于负载状态,而这个时间不够用。

linux partitioning udev linux-kernel

0
推荐指数
1
解决办法
717
查看次数