hypeV干的好事
之前机子用hypeV+docker然后弄的三天之内必定卡死。于是决定换成ubuntu,但是ubuntu的盘被搞坏了,之前配的东西都没了,这下就变成全部重来。
出事的样子,反正卡死了,修了引导但还是进不去。
但是可以记录一下用到的修复工具。
Boot-Repair 工具
Boot-Repair 是一个简单易用的工具,可以自动修复GRUB和启动问题。以下是使用方法:
启动到Ubuntu Live环境(选择“Try Ubuntu”)。
确保你的系统连接到网络。
打开终端,安装 Boot-Repair 工具:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt update
sudo apt install -y boot-repair
安装完成后,运行 Boot-Repair:
boot-repair
启动后选择“Recommended repair(推荐修复)”选项。它会自动扫描系统并尝试修复启动问题,包括GRUB配置的修复。
修复文件系统
如果系统分区存在损坏,可以使用以下命令自动修复文件系统:
sudo fsck -y /dev/sdaX
将/dev/sdaX替换为你的Ubuntu根分区。-y选项会自动确认修复所有检测到的错误。
最终结果
GPT说的
从你的最新截图可以看到,gdisk
检测到了有效的GPT分区表,并且没有发现问题。这表明分区表本身没有损坏。但文件系统依然无法正常加载,这可能说明文件系统的superblock
损坏问题依旧存在。
安装新的系统
背景就是用技嘉IPMI自带的KVM安装,有几个坑。不走时间叙述了。
IPMI坑
挂ISO只能一个小时
下面三张图说明清楚了。
反正是硬件的问题,暂时不知道怎么解开。
ubuntu正确路径
Install Ubuntu Server
IPMI的速度是10M那么意味着一个小时内根本传不完desktop的,之前desktop在另一个网安装,但是装kde等后就出问题了。所以,这次从server开始。
提示:desktop的ssh不是开机自启,XRDP也不是,我后面重启后kvm黑屏就再也进不去了。但是server的ssh是默认开机自启。
调整磁盘
server默认是100G记得改一下。
完成安装
这里有个奇怪的点,就是我线下安装的时候遇到循环报错,重启正常能用。ipmi安装的时候是还没读完盘(大概读1.6G的样子)他就叫我重启了。反正这个东西跟着说明来吧,他怎么说就怎么来。
配置ubuntu
配置wireguard
让GPT给你写命令吧,太简单可以跳过。我就是把windows的配置文件倒腾到这边了。
安装aptfast
这个是个好东西,节约寿命的。
apt install apt-fast
apt-fast
是一种用于加速 apt
包管理器下载速度的工具,主要原理是在下载过程中使用多线程分段下载。它通过调用 aria2c
、axel
等多线程下载工具,将每个包分成多个部分并同时下载,进而显著提高整体下载速度。
具体工作流程如下:
分段下载:
apt-fast
会将需要下载的每个包分为多个段(由多线程工具负责),然后这些段会被并行下载。这样可以更有效地利用网络带宽资源。调用下载工具:
apt-fast
不是直接负责下载的,它充当了apt
与多线程下载工具(如aria2
或axel
)之间的桥梁,配置完成后,apt-fast
会将下载任务交给这些多线程工具来完成。提高下载速度:通过多线程和分段,
apt-fast
可以在拥有良好网络条件的情况下显著提高下载速度,尤其在下载大型软件包或多个包时。集成性:
apt-fast
作为apt
的封装工具,可以和apt
的其他功能无缝集成,提供类似apt update
、apt install
等命令的快速版本,使其兼容原有命令。
使用优缺点
- 优点:适合在高速网络环境下使用,可以节省大量时间,尤其在需要更新大量包或安装大文件时。
- 缺点:可能会增加服务器的负载,不适合网络带宽较小或服务器资源有限的环境。
配置要求
apt-fast
需要安装和配置多线程下载工具(如 aria2
或 axel
),并在配置文件中设定合适的线程数,以平衡下载速度和服务器压力。「测试表面安装的时候会自动进行,不需要自己安装,反正会问你几个线程,我写了16.」
装显卡驱动
重点来了。为了保证这个时候kvm等还能用。需要先自动安装显卡驱动,再弄得差不多了去安装cuda.驱动是最有必要的。
看一眼卡在不在
看看卡
lspci | grep -i nvidia
在安装KDE、X11和XRDP之前,可以先安装NVIDIA的GPU驱动和CUDA,以确保桌面环境安装后不会影响驱动。
以下是步骤:
添加NVIDIA驱动仓库并安装驱动
sudo add-apt-repository ppa:graphics-drivers/ppa -y
sudo apt update
然后检查可用的驱动版本:
ubuntu-drivers devices
一般来说,对于2080Ti,建议使用470或更高版本的驱动,安装命令如下(以560为例):
sudo apt install nvidia-driver-560 -y
配置桌面
有了上面加速的东西,kde什么的安装很方便。然后配合XRDP操作。
进桌面是这个样子
这里要记录一下
xrdp默认启动X11
要确保启动KDE Plasma桌面,可以将startplasma-x11
命令放在文件末尾,同时注释掉现有的Xsession加载语句。修改后的文件应如下:
#!/bin/sh
# xrdp X session start script (c) 2015, 2017, 2021 mirabilos
# published under The MirOS Licence
# Rely on /etc/pam.d/xrdp-sesman using pam_env to load both
# /etc/environment and /etc/default/locale to initialise the
# locale and the user environment properly.
if test -r /etc/profile; then
. /etc/profile
fi
# 注释掉现有的Xsession加载命令
# test -x /etc/X11/Xsession && exec /etc/X11/Xsession
# exec /bin/sh /etc/X11/Xsession
# 添加以下内容以确保加载Plasma桌面
exec startplasma-x11
修改步骤
- 在
/etc/xrdp/startwm.sh
中找到加载Xsession的行,将它们注释掉。 - 添加
exec startplasma-x11
到文件末尾。
这样设置后,XRDP会直接启动KDE Plasma桌面。
XRDP开机自动启动
sudo systemctl enable xrdp
您已经使用了 sudo systemctl enable xrdp
,这个命令确实会将XRDP服务设为开机自启。为了确保开机时会自动启动XRDP,您可以检查一下服务的状态。
验证XRDP开机自启状态
执行以下命令,确认服务是否已设为开机自启:
sudo systemctl is-enabled xrdp
如果输出为 enabled
,则表示已成功设置开机自启。
查看XRDP服务状态
如果您想确认服务是否已正常启动,可以使用以下命令:
sudo systemctl status xrdp
这会显示XRDP的运行状态、最近的日志条目以及任何可能的错误信息。如果服务状态显示为“active (running)”,则说明服务已正常启动,并会在每次开机时自动启动。
中文包
sudo apt update
sudo apt install language-pack-zh-hans
中文输入法
参考上一篇文章
xrdp避免黑屏
使用Xorg后端并配置持久会话
如果使用 Xorg,可以配置XRDP的重连策略:
修改 /etc/xrdp/sesman.ini 文件,在 [SessionVariables] 部分添加如下内容:
Policy=ReconnectSame
此设置会让XRDP自动尝试重新连接到已有会话。
修改 /etc/xrdp/xrdp.ini 文件,将 xorg 配置如下:
[xrdp1]
name=Xorg
lib=libxup.so
username=ask
password=ask
ip=127.0.0.1
port=-1
重启XRDP服务:
sudo systemctl restart xrdp
这样配置后,你再次连接时将会恢复到上次的会话,避免黑屏问题。
配代理
丢链接不解释
https://github.com/mihomo-party-org/mihomo-party/releases
说真的V2RAYA有点玄学,反正关掉它的服务再去开上面这个。
配zsh
虽然可以参考上一篇文章,但是我还是另外写点吧。
zsh插件
安装了这些插件后,它们会自动在 zsh
中生效,提供相应的功能。以下是每个插件的功能以及如何使用它们:
1. zsh-syntax-highlighting
- 功能:此插件会对命令行输入的内容进行语法高亮。正确的命令会显示为绿色,而错误的命令则会变成红色,帮助你快速识别语法错误。
- 使用方法:你只需要正常输入命令即可。插件会自动对语法进行高亮,无需其他操作。
2. zsh-autosuggestions
- 功能:此插件根据历史记录或命令提示自动补全输入内容。在输入命令时,会根据之前输入的命令进行自动建议,显示在当前光标后方的浅灰色文字中。
- 使用方法:当你输入命令时,插件会自动提供建议,按下
→
(右方向键)接受建议,或者继续输入来修改建议内容。
3. git
- 功能:这是一个常用的插件,为 Git 命令提供别名和自动补全。例如,可以简化
git status
为gst
,git commit
为gc
等。 - 使用方法:在终端中输入 Git 命令时,可以使用别名,具体别名如下:
gst
=git status
gl
=git log
gc
=git commit
gp
=git push
- 可以查看插件文档以了解更多别名。
4. autojump
- 功能:
autojump
可以快速导航到之前访问过的目录。插件会记录你的历史路径,根据访问频率自动更新权重。只需输入部分路径,autojump
就会找到相应目录。 - 使用方法:
- 使用
j <目录名>
跳转到目标路径。例如,输入j proj
会跳转到访问频率最高的包含 “proj” 的目录。 - 提示:
autojump
需要一定时间的历史记录才能更准确地跳转。
- 使用
5. extract
- 功能:
extract
插件简化了解压缩文件的操作,可以根据文件格式自动选择合适的解压命令。支持多种压缩格式,如.tar.gz
、.zip
、.rar
等。 - 使用方法:
- 使用
x <文件名>
解压文件。插件会根据文件类型选择合适的解压命令。例如,x archive.zip
会自动解压archive.zip
文件。
- 使用
这些插件配置完成后,只需重启终端或使用 source ~/.zshrc
即可使其生效。
配tabby
丢配置文件自己看吧,记得装background插件。剩下颜色自己调。效果如图所示。
我的字体是JetBrains Mono。
version: 7
profiles: []
groups: []
configSync:
parts: {}
hotkeys:
toggle-window:
- Ctrl-Space
copy-current-path: []
ctrl-c:
- Ctrl-C
copy:
- Ctrl-Shift-C
paste:
- Ctrl-Shift-V
- Shift-Insert
select-all:
- Ctrl-Shift-A
clear: []
zoom-in:
- Ctrl-=
- Ctrl-Shift-=
zoom-out:
- Ctrl--
- Ctrl-Shift--
reset-zoom:
- Ctrl-0
home:
- Home
end:
- End
previous-word:
- Ctrl-Left
next-word:
- Ctrl-Right
delete-previous-word:
- Ctrl-Backspace
delete-line:
- Ctrl-Shift-Backspace
delete-next-word:
- Ctrl-Delete
search:
- Ctrl-Shift-F
pane-focus-all:
- Ctrl-Shift-I
focus-all-tabs:
- Ctrl-Alt-Shift-I
scroll-to-top:
- Ctrl-PageUp
scroll-up:
- Alt-PageUp
scroll-down:
- Alt-PageDown
scroll-to-bottom:
- Ctrl-PageDown
restart-telnet-session: []
restart-ssh-session: []
launch-winscp: []
settings-tab: {}
settings:
- Ctrl-,
serial:
- Alt-K
restart-serial-session: []
new-tab:
- Ctrl-Shift-T
new-window:
- Ctrl-Shift-N
profile: {}
profile-selectors: {}
toggle-fullscreen:
- F11
close-tab:
- Ctrl-Shift-W
reopen-tab:
- Ctrl-Shift-Z
toggle-last-tab: []
rename-tab:
- Ctrl-Shift-R
next-tab:
- Ctrl-Shift-Right
- Ctrl-Tab
previous-tab:
- Ctrl-Shift-Left
- Ctrl-Shift-Tab
move-tab-left:
- Ctrl-Shift-PageUp
move-tab-right:
- Ctrl-Shift-PageDown
rearrange-panes:
- Ctrl-Shift
duplicate-tab: []
restart-tab: []
reconnect-tab: []
disconnect-tab: []
explode-tab:
- Ctrl-Shift-.
combine-tabs:
- Ctrl-Shift-,
tab-1:
- Alt-1
tab-2:
- Alt-2
tab-3:
- Alt-3
tab-4:
- Alt-4
tab-5:
- Alt-5
tab-6:
- Alt-6
tab-7:
- Alt-7
tab-8:
- Alt-8
tab-9:
- Alt-9
tab-10:
- Alt-0
tab-11: []
tab-12: []
tab-13: []
tab-14: []
tab-15: []
tab-16: []
tab-17: []
tab-18: []
tab-19: []
tab-20: []
split-right:
- Ctrl-Shift-S
split-bottom:
- Ctrl-Shift-D
split-left: []
split-top: []
pane-nav-right:
- Ctrl-Alt-Right
pane-nav-down:
- Ctrl-Alt-Down
pane-nav-up:
- Ctrl-Alt-Up
pane-nav-left:
- Ctrl-Alt-Left
pane-nav-previous:
- Ctrl-Alt-[
pane-nav-next:
- Ctrl-Alt-]
pane-nav-1: []
pane-nav-2: []
pane-nav-3: []
pane-nav-4: []
pane-nav-5: []
pane-nav-6: []
pane-nav-7: []
pane-nav-8: []
pane-nav-9: []
pane-maximize:
- Ctrl-Alt-Enter
pane-increase-vertical: []
pane-decrease-vertical: []
pane-increase-horizontal: []
pane-decrease-horizontal: []
close-pane: []
switch-profile:
- Ctrl-Alt-T
profile-selector:
- Ctrl-Shift-E
command-selector:
- Ctrl-Shift-P
terminal:
searchOptions: {}
colorScheme:
name: Ubuntu
foreground: '#eeeeec'
background: '#300a24'
cursor: '#bbbbbb'
colors:
- '#2e3436'
- '#cc0000'
- '#4e9a06'
- '#c4a000'
- '#3465a4'
- '#75507b'
- '#b3e5fc'
- '#d3d7cf'
- '#555753'
- '#ef2929'
- '#8ae234'
- '#fce94f'
- '#729fcf'
- '#ad7fa8'
- '#34e2e2'
- '#eeeeec'
lightColorScheme:
name: Tabby Default Light
foreground: '#4d4d4c'
background: '#ffffff'
cursor: '#4d4d4c'
colors:
- '#000000'
- '#c82829'
- '#718c00'
- '#eab700'
- '#4271ae'
- '#8959a8'
- '#3e999f'
- '#ffffff'
- '#000000'
- '#c82829'
- '#718c00'
- '#eab700'
- '#4271ae'
- '#8959a8'
- '#3e999f'
- '#ffffff'
font: JetBrains Mono
fontSize: 15
ligatures: true
fontWeightBold: 900
customColorSchemes:
- name: Ubuntu
foreground: '#eeeeec'
background: '#300a24'
cursor: '#bbbbbb'
colors:
- '#2e3436'
- '#cc0000'
- '#4e9a06'
- '#c4a000'
- '#3465a4'
- '#75507b'
- '#b3e5fc'
- '#d3d7cf'
- '#555753'
- '#ef2929'
- '#8ae234'
- '#fce94f'
- '#729fcf'
- '#ad7fa8'
- '#34e2e2'
- '#eeeeec'
ssh: {}
clickableLinks: {}
accessibility: {}
appearance: {}
hacks: {}
pluginBlacklist: []
providerBlacklist: []
commandBlacklist: []
profileDefaults:
ssh:
disableDynamicTitle: true
language: zh-CN
profileBlacklist: []
vault:
version: 1
contents: Q/G0CfeLpb0g7iwdYHH2oA==
keySalt: 087dc1495088c2ae
iv: 41b46765591d78c44c5cfe0d1ce67880
highlightPlugin:
highlightProfiles:
- id: 60606be0-c0ff-42bc-bf77-de8a2435447f
name: Default
keywords:
- text: ERROR
enabled: true
background: true
backgroundColor: '1'
- text: WARN
enabled: true
background: true
backgroundColor: '3'
- text: INFO
enabled: true
background: true
backgroundColor: '6'
- text: 错误
enabled: true
background: true
backgroundColor: '1'
- text: 警告
enabled: true
background: true
backgroundColor: '3'
- text: 信息
enabled: true
background: true
backgroundColor: '6'
replaceProfiles:
- id: 986666dd-dac9-4c7a-a295-9b4aff66abdd
name: Default
patterns:
- enabled: true
search: ERROR
replace: 出错啦
- enabled: true
search: WARN
replace: 警告警告
highlightEnabled: true
docker: {}
backgroundPlugin:
backgroundEnabled: true
backgroundPath: 自己写自己的
backgroundOpacity: 63
backgroundBrightness: 96
配fsearch
这个玩意类似everything.
sudo add-apt-repository ppa:christian-boxdoerfer/fsearch-daily
sudo apt update
sudo apt install fsearch