笔记本linux问题记录
UEFI笔记本无法引导进入操作系统
现在的pc绝大多数都是通过uefi来引导操作系统的。有时候会因为折腾操作系统,无法启动。修复的过程如下:
1-下载efi shell x64,解压到u盘根目录,注意u盘文件系统是fat32的,这样才能被uefi识别。
2- 插到电脑上,进入bios,找到类似launch efi shell的项(华硕是这样的,其他品牌的不知道),回车进去后,即可进入efi的shell命令交互界面。
3-执行map命令,查看设备映射关系,比如fs0: fs1: blk0:等。仔细观察,分辨自己硬盘的映射的名字是什么。比如fs0表示某个磁盘的第0个分区。一般esp分区(efi system partition,efi系统分区)位于索引0。
4- 假设通过上面步骤已经确认了硬盘esp分区为fs0
则执行fs0: (注意有冒号)
然后执行ls 就会看到一个EFI的目录
执行cd EFI,再执行ls,就会发现还有一个目录(比如我的目录名是debian,有些人的是ubuntu之类的), cd debian,再ls就发现一个grubx64.efi的文件。这个文件就是efi的引导文件了。执行grubx64.efi就可以引导进系统了。
5- 进入系统后,执行update-grub2 即可修复grub引导(如果分区还没安装grub,可以先执行grub-install /dev/sdX, 再执行update-grub2)
grub引导错误,无法进入系统
1-如果能到grub界面,但是不能引导操作系统,只是光标在闪烁。那么可以重启,再次进入grub,然后按下c,进入grub命令行界面。如果pc连grub命令都进不了,可以使用带grub的u盘进入grub命令界面。(例如使用debian的mini.iso结合dd命令或UltraISO让u盘具备grub引导功能)
2-载入内核:
进入grub命令行后
执行linux (hd0,gpt1)/vmlinuz root=/dev/sdXn ro quiet
#执行上面命令的时候,要充分利用tab的命令补全功能。比如输入 (hd 按下tab就会列出硬盘的分区信息。 可以通过分区大小来判断。上面的(hd0,gpt1)/是放vmlinuz内核的分区(如果有/boot分区,就是/boot分区,如果没有/boot分区,就是根分区)。后面的vmlinuz也是tab补全而来。
基本上敲grub命令就是不断tab的过程,直接敲tab两次可以列出所有的grub命令
上面droot=可以用类似/dev/sdXn的形式指明,也可以用uuid来指明,甚至可以用分区label来指明。
另外如果不想敲(hd0,gpt1),可以在执行linux和initrd两个命令前输入set root=(hd0,gpt1)
还有就是,grub如果不能识别分区,需要载入模块.zh执行类似insmod btrfs 、insmod gzip之类命令来载入模块,以便grub引导内核。
3- 载入initrd
执行initrd (hd0,gpt1)/initrd (输入initrd,敲tab补全)
4 - 执行boot命令引导
5- 进入操作系统后,执行update-grub2修复grub引导. (如果分区还没安装grub,可以先执行grub-install /dev/sdX, 再执行update-grub2)
笔记本亮度不能保存
1-安装各种驱动:
apt update
apt install firmware-linux-free firmware-linux firmware-linux-nonfree
2-重启后,ls /sys/class/backlight/会发现多了intel_backlight之类的东西(我的是intel的核芯显卡),此时可以通过echo 数字 >/sys/class/backlight/intel_backlight/brightness来调节亮度(以前通过/sys/class/backlight/acpi0*的调节范围很小)
3-保存亮度
修改/etc/default/grub
- 在GRUB_CMDLINE_LINUX的值追加acpi_backlight=vendor (也可以填写电脑品牌,如果此行已经有配置了,那么各个配置项需要用空格隔开)
- 在GRUB_CMDLINE_LINUX_DEFAULT追加 acpi_osi=Linux
ps:这两行很相近,只是带DEFAULT的行只作用于normal模式,不作用于recove模式 - update-grub2
禁用独立显卡
现在用的办法是:https://my.oschina.net/xdzy/blog/1616407
以前用的办法是(简单):
查看是否有/sys/kernel/debug/vgaswitcheroo/switch 如果有则执行
echo IGD > /sys/kernel/debug/vgaswitcheroo/switch
echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
查看是否关闭独显,可以执行cat /sys/kernel/debug/vgaswitcheroo/switch,如果看到显示带第二行有类似DIS::OFF字样,说明独立显卡已经关闭了
如果不行,那就用BBSwitch了
KVM
解决nmcli dev 中的wlan0显示unavailable
症状:
- nmcli device 中显示wlan0显示unavailable
- 使用nmcli device wifi搜不到无线网络
解决办法:
- 先确定是不是硬件或软件禁用无线网卡了,执行rfkill list, 显示两个no,说明没有禁用
- 检查无线网卡没有出现在/etc/network/interfaces或对应的.d目录下。
- 禁用并停止dhcpcd。执行systemctl disable dhcpcd; systemctl stop dhcpcd 或者只针对wlan0禁用dhcpcd(在/etc/dhcpcd.conf添加denyinterfaces wlan0)
- 重启networkManager服务systemctl restart NetworkManager,执行nmcli dev wifi就能搜索到无线网络了
杂项
- 安装laptop-mode-tools
- debian10下 搜狗拼音安装后不能正常打字,也不知道是不是因为这个才解决的:apt install ~/下载/sogoupinyin*.deb 前安装libqt4-declarative(解决执行sogou-qimpanel显示缺libqtdeclarative.so.4)
笔记本linux问题记录的更多相关文章
- Arch Linux 安装记录
Arch Linux 安装记录 基本上参考wiki上的新手指南,使用arch 2014.6.1 iso安装 设置网络 有线网络 Arch Linux 默认开启DHCP. 静态ip 首先关闭DHCP:s ...
- Linux巩固记录(3) hadoop 2.7.4 环境搭建
由于要近期使用hadoop等进行相关任务执行,操作linux时候就多了 以前只在linux上配置J2EE项目执行环境,无非配置下jdk,部署tomcat,再通过docker或者jenkins自动部署上 ...
- Linux(2)---记录一次线上服务 CPU 100%的排查过程
Linux(2)---记录一次线上服务 CPU 100%的排查过程 当时产生CPU飙升接近100%的原因是因为项目中的websocket时时断开又重连导致CPU飙升接近100% .如何排查的呢 是通过 ...
- 最近的linux工作记录
最近的linux工作记录 最近公司走了一些同事,部分服务器交到了我的手里,总结一些常用的操作 注:大写的字符串一般是用来占位,需要替换 创建账户和使用密钥对登陆 1,账户系列 useradd 选项 用 ...
- Linux下记录所有用户的登录和操作日志
Linux下记录所有用户的登录和操作日志 一般我们可以用history命令来查看用户的操作记录,但是这个命令不能记录是哪个用户登录操作的,也不能记录详细的操作时间,且不完整:所以误操作而造成重要的 ...
- Linux 入门记录:二十、Linux 包管理工具 YUM
一.YUM(Yellowdog Updater, Modified) 1. YUM 简介 RPM 软件包形式管理软件虽然方便,但是需要手动解决软件包的依赖问题.很多时候安装一个软件首先需要安装 1 个 ...
- Linux问题记录——主机名变成了bogon
Linux问题记录——主机名变成了bogon 摘要:本文主要记录了主机名变成bogon的原因以及解决办法. 问题重现 主机名在一次登录后,变成了bogon,此后每次登录Linux系统时都是bogon. ...
- 安装archlinux的linux命令记录
磁盘的分区:cfdisk 格式化分区:mkfs.ext4,mkswap,swapon 查看所有分区:lsblk /dev/sda 先挂载 / 分区:mount /dev/sda1 /mnt archl ...
- Linux 入门记录:六、Linux 硬件相关概念(硬盘、磁盘、磁道、柱面、磁头、扇区、分区、MBR、GPT)
一.硬盘 硬盘的功能相当简单但很重要,它负责记录系统所需要的各种数据.硬盘记录数据有两个方面,一个是硬件方面的存储原理和结构,另外一方面则是软件方面的数据和文件系统.硬盘的主要行为就是数据的存放和取出 ...
- Linux学习记录
---恢复内容开始--- linux与unix的关系 linux是借鉴了unix设计思想,也称linux位类unix系统. Linux常用命令 1.命令基本格式 命令[选项][参数] 注意:个别命令不 ...
随机推荐
- postman中js脚本简单用法
1.获取接口相应结果 var jsonData = pm.response.json() 2.设置环境变量 pm.environment.set("variable_key", & ...
- elementui中自定义Select选择器样式自定义
<el-select class="my-el-select" v-model="tenantCont" placeholder="请输入机构标 ...
- windows加壳程序WinLicense与Themida
反调试提示 开了Procmon.exe之后启动游戏会弹出这个框,这个是程序加壳之后的反外挂,反调试提示框. WinLicense A monitor program has been found ru ...
- 【JVM】JDK7后intern方法总结
JDK6及之前字符串常量池是放在永久代的,这里不讨论,JDK7之后将字符串常量池迁移到了JVM的堆中,注意删除永久代更换为元空间是JDK8哈. 测试代码1如下: @Test public void t ...
- 5.1 C/C++ 使用文件与指针
C/C++语言是一种通用的编程语言,具有高效.灵活和可移植等特点.C语言主要用于系统编程,如操作系统.编译器.数据库等:C语言是C语言的扩展,增加了面向对象编程的特性,适用于大型软件系统.图形用户界面 ...
- PostFix+Dovecot 部署邮件系统
Postfix 是一种电子邮件服务器是一个开放源代码的软件. Postfix 是MTA邮件传输代理软件.是sendmail提供替代品的一个尝试,在Internet世界中,大部分的电子邮件都是通过sen ...
- 开发必备,开源 or 免费的 AI 编程助手
AI 大模型的火热,让开发圈近来如虎添翼,各种各样基于 AI 技术的开发者工具和新范式不断涌现,尤其是 Github 和 OpenAI 共同推出的 Copilot X ,更是一骑绝尘.本文推荐一些开源 ...
- 一篇带你掌握cmake入门|了解cmake|掌握cmake基本操作
一篇带你掌握cmake入门 内容出处: 作者: 苏丙榅 链接: https://subingwen.cn/cmake/CMake-primer/ 来源: 爱编程的大丙 著作权归作者所有.商业转载请联系 ...
- Git企业开发控制理论和实操-从入门到深入(三)|分支管理
前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助. 高质量博客汇总 然后就是博主最近最花时间的一 ...
- shell 两个数组比较,得到元素的并集、交集等
linux shell 实现数组比较,取元素的并集.交集时,可以使用sort排序.uniq统计和awk数据过滤. shell 实现如下 file_list_1=("test1" & ...