通常在出现系统崩溃后,大家会担心再次出现故障,但是发现系统各日志中并没有记录到任何死机前后的信息,无法分析故障原因,认为已经无药可救.但是,实际上,Linux 有多种机制来保证发生系统崩溃后,可以获取有价值的信息用以分析问题.确定是硬件故障,还是应用程序bug 导致的. Linux 中,有如下几种方法来获取各种崩溃时产生的信息. Core dump Core dump 通常用来调试应用程序错误,当某些应用程序运行出现异常崩溃时,可以开启系统的 core dump 功能,来得到一个程序崩溃时的内存…
这个方法可以在各种情况下安全地重启计算机.大家在键盘上找,可以找到一个叫做“Sys Rq”的键,在台机的键盘上通常与 Prt Sc 共键,在笔记本可能在其他位置,如 Delete.以台机为例,要使用这种方法需要按住 Alt-Print(Sys Rq),然后依次按下 reisub 这几个键,按完 b 系统就会重启. 下面解释一下这个方法:其实 Sys Rq 是一种叫做系统请求的东西,按住 Alt-Print 的时候就相当于按住了 Sys Rq 键,这个时候输入的一切都会直接由 Linux 内核来处…
一.  CPU 过高或死锁导致系统卡死 1. CPU占用过高 (1)开线程太多导致CPU占用过高,系统卡死 解决:优化应用层业务逻辑,有些业务不必开线程就不开 (2)频繁清缓存导致读spi-flash频繁,引起CPU过高 解决:在内核中文件系统部分进行处理,不去清缓存,然后在应用层用后台服务进程清缓存.这样可能导致系统内存不够用,这样就需要再对系统内存进行优化 2. CPU死锁 (1)Spinlock+死等导致死锁 (2)应用层pthread_mutex_lock死锁 3.  CPU过热导致系统…
为什么不建议强制关机 如果长按电源按键强制关机,有可能损坏硬件或者丢失数据,甚至导致磁盘坏道! 其实, 大部分时候的死机是假死, 不是真死... 有时候鼠标还能动呢. 还有一个原因: 对于平时忠贞不二的电脑, 我们怎么可以用强制关机这么"家暴"的手段呢... 必须要温柔. 可尝试的解决方法 1. 进入TTY终端 Ctrl+Alt+F1进入TTY1终端字符界面, 输入用户名和密码以登录 输入top命令, 找到可能造成假死的进程, 用kill命令结束掉进程.然后Ctrl+Alt+F7回到桌…
原地址:http://blog.csdn.net/andyhuabing/article/details/7074979 这两种方法都不是我发明了,都是网上一些高手公共出来的调试方法,无奈找不到出处的地方了,所以就在此总结一下,以方便android下的调试: 简要说明: android系统中调试Java非常容易,一般遇到错误都在logcat中打印出错时函数的调用关系,而C库中出错时只看到一些二进制信息,使用gdbserver调试环境搭建又比较复杂. 方法一:下在介绍一个简单的调试库的方法,当然需…
最近在了解嵌入式方面的知识,就随笔记录一下: 查看Linux本机串口: 1.查看串口是否可用 可以对串口发送数据比如对com1口,echo /dev/ttyS02.查看串口名称使用 ls -l /dev/ttyS*  一般情况下串口的名称全部在dev下面,如果你没有外插串口卡的话默认是dev下的ttyS*,一般ttyS0对应com1,ttyS1对应com2,当然也不一定是必然的:3.查看串口驱动 cat/proc/tty/drivers/serial4.查看串口设备 dmesg | grep t…
如果你的IPTABLES基础知识还不了解,建议先去看看. 们来配置一个filter表的防火墙 1.查看本机关于IPTABLES的设置情况 [root@tp ~]# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCE…
今天用了下Android Studio,出现了一些问题,现在将启动过程中遇到的问题和解决方案列出来,方便大家参考. 安装过程不多说,网上一搜一大把. 那直接说问题吧: 1. 无法启动,报错:Failed to allocate memory: 8This application has requested the Runtime to terminate it in an unusual way.Please contact the application's support team for…
1. 暂时改动: 使用export.比如#export PATH=$PATH:/etc/apache/bin 2. 针对用户的改动: vi ~/.bash_profile 增加:export PATH=$PATH:/etc/apache/bin 然后source ~/.bash_profile 3. 全局改动(root权限): vi /etc/profile文件, 增加:export PATH=$PATH:/etc/apache/bin 然后source /etc/profile…
linux 服务器死机了,于是追查原因. 查看boot.log wade@koala:/var/log$ less boot.log 看不出异常 显示开机信息 wade@koala:/var/log$ less dmesg 区别;(未明) /var/log/boot.log --- System boot log /var/log/dmesg --- print or control the kernel ring buffer /var/log/messages看看这个区别 担心有人hack,…
linux mint 18.3由高分辨率设置为低分辨率的时候,会出现死机现象. 解决方法是:使用命令行: xrandr 查询所有支持的分辨率 然后通过 xrandr -s 1920x1080_59.93 (举例) 设置回来即可…
Linux操作系统上要慎用的6个命令及防范方法 基于Linux平台工作的童鞋都知道Linux命令行使用起来非常高效和快捷,但有时候也很危险,尤其是在你不确定你自己在正在做什么时候(别笑,别以为自己真的知道自己想干啥).各大互联网公司因为在后台执行命令不慎导致数据库被删除和服务宕机的事情屡见不鲜,本文就给大家介绍一下Linux下比较危险的命令,引以为戒,在使用的时候一定要万分小心! rm -rf命令 把这个命令放到第一个,是因为它有不少故事,你懂的.rm -rf命令是删除整个文件夹最快的方式之一.…
linux死机后不要长按电源建强制关机,容易对损坏系统配置或者电脑硬件,导致重启后产生不必要的麻烦 如果是在图形界面下死机的话,不要再依赖任何图形界面的工具,解决方法如下: 1.一种方式是进入终端界面进行操作,按ctrl+alt+f1(或者f2-f6)进入tty,使用top命令查看一下进程,把一直占用资源很大的进程kill掉 2.如果进入不了tty或者进入tty后不管用,可以采取终极大杀器--reisub方法,这个方法可以在系统死机的情况下安全的重启计算机,数据还不会丢失 具体操作是:按住alt…
导语:平常运维人员会误操作一些目录权限,导致一些问题,那么如何恢复呢? 问题:物理机.虚机等等Linux操作系统/usr/bin目录权限误操作,导致无法切换root? 实验环境: ip地址 是否目录正常 内核版本 备注 192.168.140.136 目录正常机器 3.10.0-1160.el7.x86_64   192.168.140.138 目录损坏机器 3.10.0-1160.el7.x86_64   误操作 问题现象 解决方案:可以通过系统自带的getfacl命令来拷贝和还原系统权限,若…
vmware虚拟机上linux操作系统怎样进行tty1~tty6切换? 现象: Linux的终端机(文字)界面与图形界面间的切换热键为: 进入终端机也就是字符界面(tty1-tty6):[Ctrl] + [Alt] + [F1] - [F6] 进入图形界面(tty7):[Ctrl] + [Alt] + [F7] 可在 VMware Workstation 上安装的linux系统.却怎么也切换不了. 原因: 原因是VMware 缺省的主机.虚拟机切换热键为[Ctrl] + [Alt],与以上 Li…
Linux操作系统中打开文件数量的查看方法ulimit -n 4096也就是限制用户的最大文件打开数为4096个 在网上查了关于怎么查看文件打开数的文章大致有两种说法/proc/sys/fs/file-nr该文件与 file-max 相关,它有三个值:已分配文件句柄的数目已使用文件句柄的数目文件句柄的最大数目该文件是只读的,仅用于显示信息. 查看所有进程的文件打开数lsof |wc -l 查看某个进程打开的文件数lsof -p pid |wc -l…
通常所说的死机是指操作没有响应了,但是操作系统的核心仍然在工作.在windows中,由于只有一个界面,没有响应就是死机了:而在Linux中可有tty1-tty7,死了一个开另外一个把死了的那个杀掉就可以了,所以不存在死机. 要理解这个并不难,windows的界面和Linux的tty-tty7都是shell,使得用户能够与内核交互.在启动时,系统会默认启动shell.在Linux中尤为强调shell,没有弄清这个shell那么就没法学习script等等.在<鸟哥私房菜 基础篇>中有一张笑脸图,这…
linux操作系统故障处理-ext4文件系统超级块损坏修复   背景 前天外面出差大数据测试环境平台有7台服务器挂了,同事重启好了五台服务器,但是还有两台服务器启动不起来,第二天回来后我和同事再次去机房检查,发现两台服务器都显示superblock的报错,经过一番处理后两台服务器都正常进系统了,现决定重现superblock故障并将此类问题故障处理思路写下来方便后面新同事参考. 硬盘的结构 硬盘的物理结构侧视图和俯视图,这两张图传递出来的比较重要的信息如下: 磁盘划分为磁头(Head),柱面(C…
Linux[Manjaro] 小新15AMD ryzen锐龙4800U,在安装系统后出现的随即死机冻屏问题解决办法 年初尝试将manjaro安装在我的笔记本上就存在这个问题,也一度将我劝退.系统安装在其它设备时非常稳定,只是在安装到我的笔记本时一直存在这个问题,出现原因未知也无征兆. 假死后无法启动终端,无法启动任何软件,鼠标可以动,原启动的应用部分运行,接着会一个个退出,切换tty也是卡死的状态. 网上找了很多解决办法,但是都没有用,最后在社区过去的帖子找到了公认的简单解决方案: 使用5.7.…
Linux 获取本机IP.MAC地址用法大全 //#include <sys/types.h> #include <ifaddrs.h> #include <sys/ioctl.h> #include <net/if.h> #include <string.h> #include <stdio.h> #include <unistd.h> #include <netdb.h> //#include <sy…
好久之前的做的笔记,这里贴出. char String[100];//直接用数组代替指针即可解决 下面代代码下载至单片机中,发现会出现单片机死机问题 #include "stdio.h" char *String; short gx;short gy;short gz; float Pitch,Yall,Roll; if(!(MPU_Get_EulerAngle(&Pitch,&Yall,&Pitch))) { sprintf(String,"陀螺仪:…
事发突然,在今天开机的时候无法进入登陆界面,一直卡在黑屏界面,屏幕上只显示几行代码,且任何按键都无法起作用 /dev/sdb2:recovering journal /dev/sdb2:Clearing - 经搜索引擎搜索后,了解到这次事故发生的原因经网络搜索后发现很可能是系统未正常断电,因此大家在进行计算机系统使用的时候要正常开关机.虽然但是,这令人头痛的问题已经发生了,只能硬着头皮去解决. 参照这位大神分享的步骤,笔者成功解决了问题 点此跳转 声明: 笔者的ubuntu20.04为桌面版无法…
Linux 简介 UNIX 是一个交互式系统,用于同时处理多进程和多用户同时在线.为什么要说 UNIX,那是因为 Linux 是由 UNIX 发展而来的,UNIX 是由程序员设计,它的主要服务对象也是程序员.Linux 继承了 UNIX 的设计目标.从智能手机到汽车,超级计算机和家用电器,从家用台式机到企业服务器,Linux 操作系统无处不在. 大多数程序员都喜欢让系统尽量简单,优雅并具有一致性.举个例子,从最底层的角度来讲,一个文件应该只是一个字节集合.为了实现顺序存取.随机存取.按键存取.远…
编译 GCC汇编器 NASM链接 LD调试 GDBBochsBochs模拟器微内核  单内核=====================Linux特点=====================以下所有内容是基于Linux0.01的基础上描述的.1.linux 内核的函数调用不使用消息传递机制,而是直接的函数调用.2.多线程的文件系统.3.中断是不隐藏的.======================OS的存储管理MM=============================下面讲讲存储管理:MM存储…
前段时间发布的系统(Oracle+weblogic)频繁挂掉,每天早上9点.下午2点高峰期就挂,纠结了很长时间,最终解决,方法描述下. 执行select count(*),status from v$session group by status;指令,发现不活动连接数比较大,当上升到一定数值之和,就挂. 做了下面优化,包括数据库的优化和WebLogic的优化. 1.数据库优化 1)  创建pfile SQL>create pfile from spfile 检查 oracle/product/…
本文出自 “技术成就梦想” 博客,请务必保留此出处http://ixdba.blog.51cto.com/2895551/569329. 为了能把这篇不错的文章分享给大家.所以请允许我暂时用原创的形式展现给大家 一. 选择适合自己的linux发行版谈到linux的发行版本,太多了,可能谁也不能给出一个准确的数字,但是有一点是可以肯定的,linux正在变得越来越流行, 面对这么多的Linux 发行版,打算从其他系统转到linux系统来的初学者可能会感到困惑,即便是忠实的 Linux 用户也没有时间…
安装Kali Linux操作系统Kali Linux无线网络渗透 Kali Linux是一个基于Debian的Linux发行版,它的前身是BackTrack Linux发行版.在该操作系统中,自带了大量安全和取证方面的相关工具.为了方便用户进行渗透测试,本书选择使用Kali Linux操作系统.用户可以将Kali Linux操作系统安装在,物理机.虚拟机.树莓派.U盘.手机等设备.本节将介绍Kali Linux操作系统的安装方法本文选自Kali Linux无线网络渗透测试教程大学霸. 1.2.1…
2)Linux程序设计入门--进程介绍 3)Linux程序设计入门--文件操作 4)Linux程序设计入门--时间概念 5)Linux程序设计入门--信号处理 6)Linux程序设计入门--消息管理 7)Linux程序设计入门--线程操作 8)Linux程序设计入门--网络编程 9)Linux下C开发工具介绍 1)Linux程序设计入门--基础知识 Linux下C语言编程基础知识 前言: 这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将 会学到以下内容: 源程序编…
现场工控机死机,网上查了篇文章,具体原因还有待分析,下面是图 在这里有必要介绍两个ID号:6006和6005.在事件查看器里ID号为6006的事件表示事件日志服务已停止,如果你没有在当天的事件查看器中发现这个ID号为6006的事件,那么就表示计算机没有正常关机,可能是因为系统原因或者直接按下了计算机电源键,没有执行正常的关机操作造成的. 当你启动系统的时候,事件查看器的事件日志服务就会启动,这就是ID号为6005的事件.通过这两个ID号保存的信息,我们可以轻松查看计算机开.关机记录 6009是开…
Linux操作系统 linux源码分析(三)-start_kernel 2016-10-26 11:01 by 轩脉刃, 146 阅读, 收藏, 编辑 前置:这里使用的linux版本是4.8,x86体系. start_kernel是过了引导阶段,进入到了内核启动阶段的入口.函数在init/main.c中. set_task_stack_end_magic(&init_task); 这个函数是设置操作系统的第一个进程init. 这个init_task 0 Comment linux源码分析(二)-…