导航:首页 > 文件处理 > 内核解压完成打印

内核解压完成打印

发布时间:2022-11-24 22:49:36

Ⅰ 如何设置内核打印不打印到串口中 kern

以串口或者显示器为控制台,SHELL起来后,正常情况下printk的打信息只有最打印高等级的会打到控制台;

OOPS处理函数中的printk会直接打到控制台上,记得处理函数中调用了console啥的函数,估计做了处理;

printk的信息都在日志中,要是有遗漏,可以直接从printk的打印BUF中抓出来,前提是系统还没重启。

ksymoops这东东,在2.6下也不是那么好用,我处理OOPS主要还是靠反汇编去跟踪。

Ⅱ 如何修改内核打印级别

手动调整内核printk打印级别
有时调试内核模块,打印信息太多了,可以通过修改/proc/sys/kernel/printk文件内容来控制。默认设置是6 4 1 7
# cat /proc/sys/kernel/printk
7 4 1 7
#
该文件有四个数字值,它们根据日志记录消息的重要性,定义将其发送到何处。关于不同日志级别的更多信息,请查阅syslog(2)联机帮助。上面显示的4个数据分别对应:
控制台日志级别:优先级[s1] 高于该值的消息将被打印至控制台

默认的消息日志级别:将用该优先级来打印没有优先级的消息
最低的控制台日志级别:控制台日志级别可被设置的最小值(最高优先级)
默认的控制台日志级别:控制台日志级别的缺省值
[s1]数值越小,优先级越高
其实这四个值是在kernel/printk.c 中被定义的,如下:
int console_printk[4] = {
DEFAULT_CONSOLE_LOGLEVEL, /* console_loglevel */
DEFAULT_MESSAGE_LOGLEVEL, /* default_message_loglevel */
MINIMUM_CONSOLE_LOGLEVEL, /* minimum_console_loglevel */
DEFAULT_CONSOLE_LOGLEVEL, /* default_console_loglevel */
};
内核通过printk() 输出的信息具有日志级别,日志级别是通过在printk() 输出的字符串前加一个带尖括号的整数来控制的,如printk("<6>Hello, world!\n");。内核中共提供了八种不同的日志级别,在 linux/kernel.h 中有相应的宏对应。
#define KERN_EMERG "<0>" /* systemis unusable */
#define KERN_ALERT "<1>" /* actionmust be taken immediately */
#define KERN_CRIT "<2>" /*critical conditions */
#define KERN_ERR "<3>" /* errorconditions */
#define KERN_WARNING "<4>" /* warning conditions */
#define KERN_NOTICE "<5>" /* normalbut significant */
#define KERN_INFO "<6>" /*informational */
#define KERN_DEBUG "<7>" /*debug-level messages */
所以printk() 可以这样用:printk(KERN_INFO"Hello, world!\n");。
未指定日志级别的printk() 采用的默认级别是DEFAULT_MESSAGE_LOGLEVEL,这个宏在kernel/printk.c 中被定义为整数4,即对应KERN_WARNING。
/* printk's without a loglevel use this.. */
#define DEFAULT_MESSAGE_LOGLEVEL 4 /* KERN_WARNING */

了解了上面的这些知识后,我们就应该知道如何手动控制printk打印了。例如,我想屏蔽掉所有的内核printk打印,那么我只需要把第一个数值调到最小值1或者0。
# echo 1 4 1 7 > /proc/sys/kernel/printk
或者
# echo 0 4 0 7 > /proc/sys/kernel/printk
另外,/proc/sys/kernel/printk_ratelimit和/proc/sys/kernel/printk_ratelimit_burst也可以用来控制打印,具体有待研究。

Ⅲ 如何查看linux内核打印信息

##查看Linux系统全部信息
[root@moban ~]# uname -a
Linux moban 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
建议楼主系统性学习Linux的基础知识,推荐《Linux就该这么学》这本书,里面有很系统、很全面、很详细的图文介绍,对楼主全面了解Linux有很大的帮助的、
希望可以帮到您!

Ⅳ win10系统无法安装打印机驱动怎么办

无法安装EPSON LQ-1600K IVH ESC/P2,类型3-用户模式,x64 驱动程序。试图将驱动程序添加到存储区时遇到问题。

Ⅳ debian内核解压后怎么编译

下载最新的内核源代码linux-2.6.33.1.tar.bz2,放在/liqiong/Linux内核 目录下,liqiong是Linux OS的第一个用户名。
2、进入Linux内核源码所在的目录(cd Linux内核),解压该内核代码到/usr/src下:
sudo tar -xjvf linux-2.6.33.1.tar.bz2 -C /usr/src
3、进入Linux内核源码解压后的目录/usr/src/linux-2.6.33.1(cd /usr/src/linux-2.6.33.1)
4、sudo make mrproper 净化解压后的源代码
5、sudo make menuconfig 对内核选项进行配置
在配置过程中会发生如下错误:
*** Unable to find the ncurses libraries or the
*** required header files.
*** 'make menuconfig' requires the ncurses libraries.
***
*** Install ncurses (ncurses-devel) and try again.
***
make[1]: *** [scripts/kconfig/dochecklxdialog] 错误 1
make: *** [menuconfig] 错误2
解决办法:
(1)cd / 进入根目录后,在终端输入:sudo apt-get install ncurses
信息:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
现在没有可用的软件包 ncurses,但是它被其它的软件包引用了。
这可能意味着这个缺失的软件包可能已被废弃,
或者只能在其他发布源中找到
E: 软件包 ncurses 还没有可供安装的候选者
(2)然后接着在终端输入:sudo apt-get install libncurses*
(3)再cd /usr/src/linux-2.6.33.1进入内核所在目录,再次输入sudo make menuconfig就好了!
6、对于配置可选择General Setup或者选择其他的自定义选项保存后退出。
7、sudo make dep 建立模块间的依赖信息
8、sudo make clean 删除配置时留下的一些不用的文件
(7、8两步可能对于一些PC没有作用)
9、sudo make bzImage 编译内核,内核较小时可以用make zImage
10、sudo make moles 编译内核模块
当然,在编译内核时,可通过make-j<n>来加速内核的编译,n一般等于CPU数量的两倍。单核,n=2;双核,n=4.即执行sudo make -j4就可以编译了!
11、sudo make moles_install 安装内核模块
12、sudo make install 安装内核
13、cd / 后在终端输入:sudo mkinitramfs 2.6.33.1 -o /boot/initrd.img-2.6.33.1-generic
14、到此为止,构建内核完毕,第十二步把内核映象和System.map拷贝到/boot/下
#sudo cp /usr/src/linux-2.6.33.1/arch/i386/boot/bzImage /boot/vmlinuz-2.6.33.1-generic
#sudo cp System.map /boot/System.map-KERNEL_VERSION
#sudo ln -s /boot/System.map-KERNEL_VERSION /boot/System.map
15、
(1)修改grub配置文件
在终端输入:sudo update-grub2,就会把刚才编译的内核加入了Grub;(此时就可以重启了,重启后在Grub启动项里多了Ubuntu, Linux 2.6.33.1-generic)
若还需修改(在Ubuntu10.04中没有采用menu.lst,而是用的grub.cfg(/boot/grub/)),则修改grub.cfg就可以了,
在终端中输入:sudo gedit /boot/grub/grub.cfg 用root账户进入grub.cfg并编辑
(或用sudo chmod +w /boot/grub/grub.cfg改变grub.cfg的权限后在进行编辑)
如将Grub中的menuentry "Ubuntu, Linux 2.6.33.1-generic"{...}修改为menuentry "Ubuntu, Linux 2.6.33.1-liqiong"{...}(Linux 2.6.33.1-generic是我们刚才编译的内核)
(2)修改default变量
在/boot/grub/grub.cfg中,设置set default="【某个数字】"(设置Grub启动项里的默认启动项)
在Grub启动项里,从0数起,我的XP在第10项,所以set default="10",即XP就是默认的启动项了。
最后重启即可。

Ⅵ linux内核解压

linux内核,顾名思意就是linux下的内核文件,你那个“/”是linux的根目录,在windows下当然找不到了,而且是非法的。
tar和cat都是linux的命令,是linux Shell命令,其中tar是压缩程序,在/bin里面(忘了,大概吧),用于解包用得。
你的文件kernel-x.y.z.tar.bz2就是用TAR解包的。
linux光有内核是什么都干不了的,他是硬件和应用程序的接口,没有任何应用软件功能(就是不包含任何命令,linux里面没有像cmd或者command.com那样的所谓的“内部命令”。比如拷贝命令,就是cp这个程序实现的。

如果你研究linux内核,可以去网上找linux的内核源码,或者干脆安装一个linux系统

Ⅶ linux内核是解压过程

假的过程的话按照正常的起呀

Ⅷ linux内核解压

linux内核就是用c语言编的,精通c语言差不多看内核没多大问题,再辅助点python或者perl,差不多就可以了。

Ⅸ linux 内核怎么打印系统时间戳

在编译Linux内核,配置时:make menuconfig ---> Kernel hacking --> show timing information on printks
当选中这个选项后,启动内核,会在日志信息前面加上时间戳。
从下面的输出可以看出,时间精确到微秒(us)。

如下:

-------------------------------------------------------------------------------------------
Uncompressing Linux... done, booting the kernel.
[ 0.000000] Linux version 2.6.35.7+ (bshen@bamboo) (gcc version 4.4.1 (Sourcery G++ Lite 2010q1-202) ) #109 PREEMPT Mon Nov 14 15:11:15 CST 2011
[ 0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
[ 0.000000] CPU: VIVT data cache, VIVT instruction cache
--------------------------------------------------------------------------------------------

Ⅹ 怎么让linux内核打印完整的oops信息

我想问一下有什么办法可以得到完整的oops信息??不要跟我说在/var/目录/proc/kmsg,这个命令不会马上结束,直到你手动ctrl C为止,kmsg里面就是

阅读全文

与内核解压完成打印相关的资料

热点内容
dvd光盘存储汉子算法 浏览:757
苹果邮件无法连接服务器地址 浏览:962
phpffmpeg转码 浏览:671
长沙好玩的解压项目 浏览:144
专属学情分析报告是什么app 浏览:564
php工程部署 浏览:833
android全屏透明 浏览:737
阿里云服务器已开通怎么办 浏览:803
光遇为什么登录时服务器已满 浏览:302
PDF分析 浏览:484
h3c光纤全工半全工设置命令 浏览:143
公司法pdf下载 浏览:381
linuxmarkdown 浏览:350
华为手机怎么多选文件夹 浏览:683
如何取消命令方块指令 浏览:349
风翼app为什么进不去了 浏览:778
im4java压缩图片 浏览:362
数据查询网站源码 浏览:150
伊克塞尔文档怎么进行加密 浏览:892
app转账是什么 浏览:163