【Ubuntu 20.04】Linux相关处理指令

1、系统信息

PC版本        ubuntu20.04 + windows11(64bit)
Linux正在使用的内核版本       linux-image-5.15.0-91-generic

2、内核相关命令

查看目前的Ubuntu版本cat /etc/issue
查看目前的Ubuntu版本(更全一些的)lsb_release -a
查看已安装的内核的各个部分的版本

dpkg --get-selections | grep linux-image (/ headers / modules)

查看所有已经安装的内核相关版本dpkg --get-selections | grep linux
查看已经hold住的内核版本

sudo dpkg --get-selections | grep hold

查看正在使用的内核版本uname -a
卸载不需要的内核-1【单个】sudo apt purge linux-image-xxx
卸载不需要的内核-2【单个】sudo apt-get remove 【内核名称, linux...0-67-generic】
卸载不需要的内核【多个】sudo apt-get purge linux-image-5.14.0-{88,86}
自动删除(附带着删除内核,可能不管用)sudo apt autoremove
/boot已满情况下,删除方法【参考dpkg -l | tail -n +6| grep -E 'linux-image-[0-9]+'| grep -Fv $(uname -r)
停止内核自动更新sudo apt-mark hold linux-image-5.11.0-27-generic
重新启用内核更新sudo apt-mark unhold linux-image-5.11.0-27-generic
更新GRUB配置文件(更新启动项)sudo update-grub

 3、如何删除多余的内核

        1、找出系统已经安装的内核版本

dpkg --get-selections|grep linux

        2、删除多余的内核

# 删除单个
sudo apt-get remove linux-modules-extra-5.15.0-67-generic
# 删除多个
sudo apt-get purge linux-image-5.14.0-{88,86}

        3、更新以下启动项

sudo update-grub

4、禁止内核自动更新

        1、hold法或者修改文件法的,具体查看【禁止内核自动更新

        2、在【Software Updates】处手动设置

5、相关问题的处理涉及指令

5-1 系统死机,重启后一直乱码循环

        【问题描述】

        远程向日葵远程ubuntu系统安装软件过程中,不知道操作了什么。系统突然卡死,切换用户过程中彻底卡死。重启后,系统始终卡死在一个界面并一直在该界面和黑屏之间循环。界面显示错误如下:

        Momtors
0.000517]comon,interruat:55No0.000517C0mioninterrugt :,55No0.000517]C0和市月门RtenFUDtsNo0.0005171C0南0门司.55N0e网FT0.000517]5.55NOCOmNOnf主0.000517COmTOnPUOt6,55NO0.0005171Co019fSSNo0.0005171118.55NO0.00051719.55NO0.000517]10.5SNodev'n.me0n1p2:/dev'nvme0n1p2:1022208 fi1es,202352571/244059136 b10cks
ira hand1erf@Vector1F0nana1erfonvector1r袅︶handlerforvectorirahandlerforvectorira handlerforvectorirg handlerforvector1rg handlerforvectorirg handlerforveCtorira hondlerforvector1rohandlerfor*vector

        【解决方案】

        1、开机时按【ESC】进入BIOS界面。

        2、确认启动项无误后,退出BIOS。

        3、退出BIOS黑屏后,按【ESC】或【shift】一次进入GRUB启动选项。

        4、选择【Advanced option for Ubuntu】,【enter】后选择对应内核的【recovery mode】再按【enter】(进入recovery mode界面中,默认选中的选项就是系统当前使用的内核)。

        5、选择【recovery mode】模式下的【root】选项按【enter】。输入用户密码后,输入下面指令查看显示内核环形缓冲区的日志(包含系统启动时的硬件检测、驱动加载、内核错误等底层信息)

dmesg | grep -i "error\|fail\|hda\|snd"

        显示如下:

         现在看来,这里已经能定位到问题所在了,就在【/data/ADS_2015】路径下。但是当时没有发现。

        6、执行下面命令查询系统日志(systemd 日志管理工具)。

journalctl -xb | grep -i "snd_hda"
# journalctl:systemd 日志管理工具,用于查询系统日志(包括内核、服务、用户进程等);
# -x:添加详细解释(human-readable),方便理解日志含义;
# -b:仅显示当前启动(boot)周期的日志;
# grep -i "snd_hda":过滤与 snd_hda(HD Audio 驱动模块)相关的日志;

        出现下列信息,

         7、卸载并重新装载【snd_hda_intel 内核模块。

sudo rmmod snd_hda_intel && sudo modprobe snd_hda_intel
# sudo rmmod snd_hda_intel:卸载 snd_hda_intel 内核模块
#                          (HD Audio 驱动,常用于 Intel 集成声卡)。
# &&:逻辑与操作,前一命令成功后执行后一命令。
# sudo modprobe snd_hda_intel:重新加载 snd_hda_intel 模块,自动解决依赖关系。

        当时没有任何报错信息        

        8、更新固件,尝试解决固件级BUG。

sudo fwupdmgr refresh && sudo fwupdmgr update
# fwupdmgr:Linux 下的固件更新工具(Firmware Update Manager),支持
#                   更新硬件固件(如显卡、声卡、主板、电池、外设等)。
# refresh:更新固件仓库列表,获取可用固件版本信息;
# update:安装可用的固件更新

        显示如下,同样定位到了问题所在

5-2 备份文件夹、增加或删除完整用户

  列出所有的文件,包括【.】开头的文件
ls -a    # -a:(all)
 root模式切换回普通模式(方法2 也可以普通用户用户间切换)
# 1
exit
# 2
su <username>     
# 3
<Ctrl + D>
删除用户及其附属所有文件       
sudo userdel -r <username>
显示经grep过滤后的所有和“firefox”相关的进程
ps -ef | grep firefox
查找特定用所涉及的进程和命令
ps -u cjb -o pid,command
根据进程的PID号删除进程 (需要 root 权限)   
kill -9 PID # -9 强制删除
根据进程的名称删除进程 (可能要重启一下终端)
pkill -9 firefox
创建新的用户
sudo adduser <username>
根据本地化设置生成基本目录(相当于刷新一下)
xdg-user-dirs-update

   5-3 添加环境变量解决【conda:未找到命令】

        打开【.bashrc】配置文件  【参考链接

sudo nano ~/.bashrc # nano 可以换 vim、gedit啥的

        添加anacongda3的安装路径下的【bin】文件夹路径到【.bashrc】文件中

export PATH="/home/用户名/anaconda3/bin:$PATH"

        刷新【.bashrc】文件使操作生效

source ~/.bashrc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值