一、Ubuntu系统修复
1.正常开机无法进入图形界面 卡logo,无法进入系统图形化界面,但是ctrl+alt+F1 能够进入tty1命令行界面进行操作。
解决办法: 通过命令行进入。需要重新配置网卡。 ifconfig eth0 192.168.1.66 netmask 255.255.255.0 route add default gw 192.168.1.1 ifconfig eht0 up
上述配置后,Ubuntu成功能够ping通百度
简单的系统问题,可以通过命令行更新一些软件包进行修复。
2.系统异常关键因素
起因是因为编译opencv的过程中遇到很多类似如下的错误
gconftool-2: symbol lookup error: /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0: undefined symbol: g_signal_accumulator_first_wins
原以为是自己之前移植glib的问题导致,于是使用sudo apt-get autoremove glib2.0进行卸载,中途发现该命令将好多其他软件一并卸载,没经验的我赶紧ctrl + c 于是每次安装软件都会出现dpkg的问题
dpkg: error processing package gconf2 (--configure):
subprocess installed post-installation script returned error exit status 127
Errors were encountered while processing:
gconf2
E: Sub-process /usr/bin/dpkg returned an error code (1)
尝试如下博客操作 E: Sub-process /usr/bin/dpkg returned an error code (1)解决办法 - stickmangod的博客 - CSDN博客 blog.csdn.net/stickmangod…
- sudo mv /var/lib/dpkg/info /var/lib/dpkg/info.bk
- sudo mkdir /var/lib/dpkg/info
- sudo apt-get update && sudo apt-get install -f
- mv /var/lib/dpkg/info/* /var/lib/dpkg/info.bk
- sudo rm -rf /var/lib/dpkg/info
- mv /var/lib/dpkg/info.bk /var/lib/dpkg/info
sudo apt-get install -f -f参数为--fix-broken的简写形式,可以在man apt-get 中搜索-f参数查询到其帮助信息。 -f参数的主要作用是是修复依赖关系(depends),假如用户的系统上有某个package不满足依赖条件,这个命令就会自动修复,安装程序包所依赖的包。
安装步骤操作能够解决上述dpkg的error,但是编译opencv依然存在/usr/lib/x86_64-linux-gnu这个库一些未定义的问题,估计是哪些文件损坏了。
后面直接重装系统,但还是记录下这个问题。
二、Ubuntu系统安装
1.virtualbox虚拟机安装Ubuntu
(1)新建虚拟电脑
创建成功后,右键自己创建的虚拟机,点击设置。选择存储添加虚拟光驱,选择Ubuntu系统镜像,设置成功后启动即可。
(2)安装流程
第一步: 点击install ubuntu
(3)设置共享文件夹
virtual共享文件夹设置
Virtualbox主机和虚拟机之间文件夹共享及双向拷贝 - zhaipengfei1231的博客 - CSDN博客 blog.csdn.net/zhaipengfei…
sudo mount -t vboxsf 共享文件夹的名字 sudo mount -t vboxsf test
个人觉得增强型工具安装成功后就不需要上述的设置方法,不过还是记录一下。
(4)虚拟机与物理机ssh连接
windows下virtualbox中Ubuntu与主机通过ssh建立连接的方法 点击设置,选择网络,打开高级,进入端口转发进行设置。
参考资料: windows下利用ssh访问virtualbox虚拟机 - shapsnail的专栏 - CSDN博客 blog.csdn.net/shapsnail/a…
windows下virtualbox中Ubuntu与主机通过ssh建立连接的方法 - aristolto的专栏 - CSDN博客 blog.csdn.net/aristolto/a…
2.物理机安装Ubuntu
(1)制作U盘系统盘
使用UltraISO制作ubuntu安装u盘启动盘图文教程(转) - weixin_40554881的博客 - CSDN博客 blog.csdn.net/weixin_4055…
dell电脑主板开机后按F12进入boot引导界面。
(2)分区表
因为我Ubuntu系统那台物理机配置比较一般,只有一个机械硬盘。当初没有分区,直接装系统,导致后续重新系统时,home目录的数据会丢失的尴尬地步。因此如果分区的话就不会存在这个问题。类似于window直接覆盖C盘。
即使我安装的过程中选择不覆盖,但是会出现如下情况
于是备份好home目录的数据,系统重新分区,重新安装。 安装Ubuntu系统的配置过程中选择
具体的分区表
详细介绍参考这篇博客吧 分区操作流程参考: 安装Ubuntu16.04系统步骤详细加分区 - 简书 www.jianshu.com/p/2ad73fb38…
(3)no boot devices found解决办法
- 启动电脑F12进入到BIOS系统的boot setup界面 (我是戴尔主板,其他品牌可能进入的按键不一样。)
- 找到setting->general->Boot sequence,选择UEFI,点击 add boot option,UEFI->ubuntu->选择grubx64.efi文件,自己任意取个名字(我直接填写Ubuntu),确定apply后退出,重启电脑,成功引导进入系统。
三、Ubuntu系统备份与恢复
几次系统崩溃重装系统带来了血的教训,是时候花点心思研究下如何系统备份和恢复。
1.备份
进入系统根目录
- cd /
- 压缩
sudo tar -Pcvpjf /home/os_bak/Ubuntu_OS_bak_`date +%Y-%m-%d`.tar.bz2 --exclude=/proc --exclude=/lost+found --exclude=/mnt --exclude=/var --exclude=/tmp --exclude=/sys --exclude=/home --exclude=/run --exclude=/media /
命令参数说明:
-P :可以使用绝对路径来压缩
-c :建立一个压缩文件的参数指令(create 的意思)
-v :压缩的过程中显示文件
-p :使用原文件的原来属性(属性不会依据使用者而变)
-j :使用bzip2进行压缩(压缩后文件后缀为tar.bz2)
-f : 文件归档,使用存档文件或设备存档。(在 f之后要立即接档名,不要再加其他参数!例如使用 tar -zcvfP tfile sfile 就是错误的写法,要写成 tar -zcvPf tfile sfile 才对。)
--exclude :排除某个目录进行备份
简单写了一个备份脚本
#!/bin/sh
LOG_PATH=/home/os_bak/log
LOG_FILE=$LOG_PATH/Ubuntu_OS_bak_`date +%Y-%m-%d`.log
echo "Start to bak Ubuntu os" >> $LOG_FILE
echo $(date) >> $LOG_FILE
cd /
sudo tar -Pcvpjf /home/os_bak/Ubuntu_OS_bak_`date +%Y-%m-%d`.tar.bz2 --exclude=/proc --exclude=/lost+found --exclude=/mnt --exclude=/var --exclude=/tmp --exclude=/sys --exclude=/home --exclude=/run --exclude=/media / >> $LOG_FILE
echo "Bak Ubuntu os end" >> $LOG_FILE
echo $(date) >> $LOG_FILE
设置定时服务,每个月给它备份一次吧。
- crontab -e
- 添加规则 * * 28 * * /home/os_bak/bak_ubuntu_os.sh (每个月28号执行备份脚本)
- crontab -l 查看规则是否添加成功
- /etc/init.d/cron restart 重启服务
2.恢复
切换到root用户
sudo tar xvpfj /media/sf_test/Ubuntu_OS_bak_2019-09-20.tar.bz2 -C /
恢复时出现错误: tar: Exiting with failure status due to previous errors
可以直接忽略,直接reboot即可。大前提是你的系统还能进入命令行界面进行操作。