yum-localinstall-使用 yum 的 localinstall 选项-本地安装rpm

使用 yumlocalinstall 选项

如果你不想手动列出所有依赖项,可以使用 yumlocalinstall 选项,它会自动解析并安装所需的依赖项:

1
yum localinstall -y wgcloud-client-1.0.0-1.x86_64.rpm

这个命令会自动下载并安装所有缺失的依赖项,然后安装 wgcloud-client

yum localinstall -y wgcloud-client-1.0.0-1.x86_64.rpm

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
yum localinstall -y wgcloud-client-1.0.0-1.x86_64.rpm
Last metadata expiration check: 0:25:58 ago on Wed Aug 20 15:13:53 2025.
Dependencies resolved.
=================================================================================================================================================
Package Architecture Version Repository Size
=================================================================================================================================================
Installing:
wgcloud-client x86_64 1.0.0-1 @commandline 164 M
Installing dependencies:
alsa-lib x86_64 1.2.13-2.el9 appstream 506 k
cairo x86_64 1.17.4-7.el9 appstream 659 k
cairo-gobject x86_64 1.17.4-7.el9 appstream 18 k
dejavu-sans-fonts noarch 2.37-18.el9 baseos 1.3 M
fontconfig x86_64 2.14.0-2.el9_1 appstream 274 k
fonts-filesystem noarch 1:2.0.5-7.el9.1 baseos 9.0 k
fribidi x86_64 1.0.10-6.el9.2 appstream 84 k
gdk-pixbuf2 x86_64 2.42.6-6.el9_6 appstream 465 k
langpacks-core-font-en noarch 3.0-16.el9 appstream 9.5 k
libX11 x86_64 1.7.0-11.el9 appstream 645 k
libX11-common noarch 1.7.0-11.el9 appstream 151 k
libX11-xcb x86_64 1.7.0-11.el9 appstream 10 k
libXau x86_64 1.0.9-8.el9 appstream 30 k
libXext x86_64 1.3.4-8.el9 appstream 39 k
libXfixes x86_64 5.0.3-16.el9 appstream 19 k
libXft x86_64 2.3.3-8.el9 appstream 61 k
libXi x86_64 1.7.10-8.el9 appstream 39 k
libXrender x86_64 0.9.10-16.el9 appstream 27 k
libXtst x86_64 1.2.3-16.el9 appstream 20 k
libXxf86vm x86_64 1.1.4-18.el9 appstream 18 k
libdatrie x86_64 0.2.13-4.el9 appstream 32 k
libglvnd x86_64 1:1.3.4-1.el9 appstream 133 k
libglvnd-glx x86_64 1:1.3.4-1.el9 appstream 140 k
libjpeg-turbo x86_64 2.0.90-7.el9 appstream 174 k
libthai x86_64 0.1.28-8.el9 appstream 208 k
libwayland-server x86_64 1.21.0-1.el9 appstream 41 k
libxcb x86_64 1.13.1-9.el9 appstream 224 k
libxshmfence x86_64 1.3-10.el9 appstream 12 k
llvm-libs x86_64 19.1.7-1.el9 appstream 57 M
mesa-dri-drivers x86_64 24.2.8-2.el9_6 appstream 9.4 M
mesa-filesystem x86_64 24.2.8-2.el9_6 appstream 11 k
mesa-libGL x86_64 24.2.8-2.el9_6 appstream 169 k
mesa-libgbm x86_64 24.2.8-2.el9_6 appstream 36 k
mesa-libglapi x86_64 24.2.8-2.el9_6 appstream 44 k
pango x86_64 1.48.7-3.el9 appstream 297 k
pixman x86_64 0.40.0-6.el9_3 appstream 269 k
xml-common noarch 0.6.3-58.el9 appstream 31 k

Transaction Summary
=================================================================================================================================================
Install 38 Packages

Total size: 236 M
Total download size: 57 M
Installed size: 607 M
Downloading Packages:
[SKIPPED] dejavu-sans-fonts-2.37-18.el9.noarch.rpm: Already downloaded
[SKIPPED] fonts-filesystem-2.0.5-7.el9.1.noarch.rpm: Already downloaded
[SKIPPED] libXxf86vm-1.1.4-18.el9.x86_64.rpm: Already downloaded
[SKIPPED] libthai-0.1.28-8.el9.x86_64.rpm: Already downloaded
[SKIPPED] libglvnd-1.3.4-1.el9.x86_64.rpm: Already downloaded
[SKIPPED] libXrender-0.9.10-16.el9.x86_64.rpm: Already downloaded
[SKIPPED] libX11-common-1.7.0-11.el9.noarch.rpm: Already downloaded
[SKIPPED] libXau-1.0.9-8.el9.x86_64.rpm: Already downloaded
[SKIPPED] mesa-libGL-24.2.8-2.el9_6.x86_64.rpm: Already downloaded
[SKIPPED] mesa-libglapi-24.2.8-2.el9_6.x86_64.rpm: Already downloaded
[SKIPPED] cairo-gobject-1.17.4-7.el9.x86_64.rpm: Already downloaded
[SKIPPED] gdk-pixbuf2-2.42.6-6.el9_6.x86_64.rpm: Already downloaded
[SKIPPED] libXext-1.3.4-8.el9.x86_64.rpm: Already downloaded
[SKIPPED] xml-common-0.6.3-58.el9.noarch.rpm: Already downloaded
[SKIPPED] libxshmfence-1.3-10.el9.x86_64.rpm: Already downloaded
[SKIPPED] langpacks-core-font-en-3.0-16.el9.noarch.rpm: Already downloaded
[SKIPPED] libX11-xcb-1.7.0-11.el9.x86_64.rpm: Already downloaded
[SKIPPED] mesa-libgbm-24.2.8-2.el9_6.x86_64.rpm: Already downloaded
[SKIPPED] libglvnd-glx-1.3.4-1.el9.x86_64.rpm: Already downloaded
[SKIPPED] libxcb-1.13.1-9.el9.x86_64.rpm: Already downloaded
[SKIPPED] libXft-2.3.3-8.el9.x86_64.rpm: Already downloaded
[SKIPPED] libdatrie-0.2.13-4.el9.x86_64.rpm: Already downloaded
[SKIPPED] libXtst-1.2.3-16.el9.x86_64.rpm: Already downloaded
[SKIPPED] alsa-lib-1.2.13-2.el9.x86_64.rpm: Already downloaded
[SKIPPED] pango-1.48.7-3.el9.x86_64.rpm: Already downloaded
[SKIPPED] cairo-1.17.4-7.el9.x86_64.rpm: Already downloaded
[SKIPPED] libXfixes-5.0.3-16.el9.x86_64.rpm: Already downloaded
[SKIPPED] fontconfig-2.14.0-2.el9_1.x86_64.rpm: Already downloaded
[SKIPPED] mesa-filesystem-24.2.8-2.el9_6.x86_64.rpm: Already downloaded
[SKIPPED] fribidi-1.0.10-6.el9.2.x86_64.rpm: Already downloaded
[SKIPPED] libwayland-server-1.21.0-1.el9.x86_64.rpm: Already downloaded
[SKIPPED] mesa-dri-drivers-24.2.8-2.el9_6.x86_64.rpm: Already downloaded
[SKIPPED] pixman-0.40.0-6.el9_3.x86_64.rpm: Already downloaded
[SKIPPED] libXi-1.7.10-8.el9.x86_64.rpm: Already downloaded
[SKIPPED] libjpeg-turbo-2.0.90-7.el9.x86_64.rpm: Already downloaded
[SKIPPED] libX11-1.7.0-11.el9.x86_64.rpm: Already downloaded
(37/37): llvm-libs-19.1.7-1.el9.x86_64.rpm 3.8 MB/s | 57 MB 00:15
-------------------------------------------------------------------------------------------------------------------------------------------------
Total 3.6 MB/s | 57 MB 00:15
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : pixman-0.40.0-6.el9_3.x86_64 1/38
Installing : libjpeg-turbo-2.0.90-7.el9.x86_64 2/38
Installing : fribidi-1.0.10-6.el9.2.x86_64 3/38
Installing : libdatrie-0.2.13-4.el9.x86_64 4/38
Installing : libthai-0.1.28-8.el9.x86_64 5/38
Installing : libX11-xcb-1.7.0-11.el9.x86_64 6/38
Installing : libxshmfence-1.3-10.el9.x86_64 7/38
Installing : libXau-1.0.9-8.el9.x86_64 8/38
Installing : libxcb-1.13.1-9.el9.x86_64 9/38
Installing : libglvnd-1:1.3.4-1.el9.x86_64 10/38
Installing : fonts-filesystem-1:2.0.5-7.el9.1.noarch 11/38
Installing : dejavu-sans-fonts-2.37-18.el9.noarch 12/38
Installing : langpacks-core-font-en-3.0-16.el9.noarch 13/38
Installing : gdk-pixbuf2-2.42.6-6.el9_6.x86_64 14/38
Installing : libwayland-server-1.21.0-1.el9.x86_64 15/38
Installing : mesa-filesystem-24.2.8-2.el9_6.x86_64 16/38
Installing : alsa-lib-1.2.13-2.el9.x86_64 17/38
Installing : llvm-libs-19.1.7-1.el9.x86_64 18/38
Installing : mesa-libglapi-24.2.8-2.el9_6.x86_64 19/38
Installing : mesa-libgbm-24.2.8-2.el9_6.x86_64 20/38
Installing : mesa-dri-drivers-24.2.8-2.el9_6.x86_64 21/38
Running scriptlet: xml-common-0.6.3-58.el9.noarch 22/38
Installing : xml-common-0.6.3-58.el9.noarch 22/38
Installing : fontconfig-2.14.0-2.el9_1.x86_64 23/38
Running scriptlet: fontconfig-2.14.0-2.el9_1.x86_64 23/38
Installing : libX11-common-1.7.0-11.el9.noarch 24/38
Installing : libX11-1.7.0-11.el9.x86_64 25/38
Installing : libXext-1.3.4-8.el9.x86_64 26/38
Installing : libXrender-0.9.10-16.el9.x86_64 27/38
Installing : cairo-1.17.4-7.el9.x86_64 28/38
Installing : libXxf86vm-1.1.4-18.el9.x86_64 29/38
Installing : libXi-1.7.10-8.el9.x86_64 30/38
Installing : libXtst-1.2.3-16.el9.x86_64 31/38
Installing : cairo-gobject-1.17.4-7.el9.x86_64 32/38
Installing : libXft-2.3.3-8.el9.x86_64 33/38
Installing : pango-1.48.7-3.el9.x86_64 34/38
Installing : libXfixes-5.0.3-16.el9.x86_64 35/38
Installing : libglvnd-glx-1:1.3.4-1.el9.x86_64 36/38
Installing : mesa-libGL-24.2.8-2.el9_6.x86_64 37/38
Running scriptlet: wgcloud-client-1.0.0-1.x86_64 38/38
Installing : wgcloud-client-1.0.0-1.x86_64 38/38
Running scriptlet: wgcloud-client-1.0.0-1.x86_64 38/38
Created symlink /etc/systemd/system/wgcloud-client-os.service → /lib/systemd/system/wgcloud-client-os.service.
Created symlink /etc/systemd/system/multi-user.target.wants/wgcloud-client-os.service → /lib/systemd/system/wgcloud-client-os.service.

Running scriptlet: fontconfig-2.14.0-2.el9_1.x86_64 38/38
Running scriptlet: wgcloud-client-1.0.0-1.x86_64 38/38
Verifying : dejavu-sans-fonts-2.37-18.el9.noarch 1/38
Verifying : fonts-filesystem-1:2.0.5-7.el9.1.noarch 2/38
Verifying : libXxf86vm-1.1.4-18.el9.x86_64 3/38
Verifying : libthai-0.1.28-8.el9.x86_64 4/38
Verifying : libglvnd-1:1.3.4-1.el9.x86_64 5/38
Verifying : libXrender-0.9.10-16.el9.x86_64 6/38
Verifying : libX11-common-1.7.0-11.el9.noarch 7/38
Verifying : libXau-1.0.9-8.el9.x86_64 8/38
Verifying : mesa-libGL-24.2.8-2.el9_6.x86_64 9/38
Verifying : mesa-libglapi-24.2.8-2.el9_6.x86_64 10/38
Verifying : cairo-gobject-1.17.4-7.el9.x86_64 11/38
Verifying : gdk-pixbuf2-2.42.6-6.el9_6.x86_64 12/38
Verifying : libXext-1.3.4-8.el9.x86_64 13/38
Verifying : xml-common-0.6.3-58.el9.noarch 14/38
Verifying : libxshmfence-1.3-10.el9.x86_64 15/38
Verifying : langpacks-core-font-en-3.0-16.el9.noarch 16/38
Verifying : libX11-xcb-1.7.0-11.el9.x86_64 17/38
Verifying : mesa-libgbm-24.2.8-2.el9_6.x86_64 18/38
Verifying : libglvnd-glx-1:1.3.4-1.el9.x86_64 19/38
Verifying : llvm-libs-19.1.7-1.el9.x86_64 20/38
Verifying : libxcb-1.13.1-9.el9.x86_64 21/38
Verifying : libXft-2.3.3-8.el9.x86_64 22/38
Verifying : libdatrie-0.2.13-4.el9.x86_64 23/38
Verifying : libXtst-1.2.3-16.el9.x86_64 24/38
Verifying : alsa-lib-1.2.13-2.el9.x86_64 25/38
Verifying : pango-1.48.7-3.el9.x86_64 26/38
Verifying : cairo-1.17.4-7.el9.x86_64 27/38
Verifying : libXfixes-5.0.3-16.el9.x86_64 28/38
Verifying : fontconfig-2.14.0-2.el9_1.x86_64 29/38
Verifying : mesa-filesystem-24.2.8-2.el9_6.x86_64 30/38
Verifying : fribidi-1.0.10-6.el9.2.x86_64 31/38
Verifying : libwayland-server-1.21.0-1.el9.x86_64 32/38
Verifying : mesa-dri-drivers-24.2.8-2.el9_6.x86_64 33/38
Verifying : pixman-0.40.0-6.el9_3.x86_64 34/38
Verifying : libXi-1.7.10-8.el9.x86_64 35/38
Verifying : libjpeg-turbo-2.0.90-7.el9.x86_64 36/38
Verifying : libX11-1.7.0-11.el9.x86_64 37/38
Verifying : wgcloud-client-1.0.0-1.x86_64 38/38

Installed:
alsa-lib-1.2.13-2.el9.x86_64 cairo-1.17.4-7.el9.x86_64 cairo-gobject-1.17.4-7.el9.x86_64
dejavu-sans-fonts-2.37-18.el9.noarch fontconfig-2.14.0-2.el9_1.x86_64 fonts-filesystem-1:2.0.5-7.el9.1.noarch
fribidi-1.0.10-6.el9.2.x86_64 gdk-pixbuf2-2.42.6-6.el9_6.x86_64 langpacks-core-font-en-3.0-16.el9.noarch
libX11-1.7.0-11.el9.x86_64 libX11-common-1.7.0-11.el9.noarch libX11-xcb-1.7.0-11.el9.x86_64
libXau-1.0.9-8.el9.x86_64 libXext-1.3.4-8.el9.x86_64 libXfixes-5.0.3-16.el9.x86_64
libXft-2.3.3-8.el9.x86_64 libXi-1.7.10-8.el9.x86_64 libXrender-0.9.10-16.el9.x86_64
libXtst-1.2.3-16.el9.x86_64 libXxf86vm-1.1.4-18.el9.x86_64 libdatrie-0.2.13-4.el9.x86_64
libglvnd-1:1.3.4-1.el9.x86_64 libglvnd-glx-1:1.3.4-1.el9.x86_64 libjpeg-turbo-2.0.90-7.el9.x86_64
libthai-0.1.28-8.el9.x86_64 libwayland-server-1.21.0-1.el9.x86_64 libxcb-1.13.1-9.el9.x86_64
libxshmfence-1.3-10.el9.x86_64 llvm-libs-19.1.7-1.el9.x86_64 mesa-dri-drivers-24.2.8-2.el9_6.x86_64
mesa-filesystem-24.2.8-2.el9_6.x86_64 mesa-libGL-24.2.8-2.el9_6.x86_64 mesa-libgbm-24.2.8-2.el9_6.x86_64
mesa-libglapi-24.2.8-2.el9_6.x86_64 pango-1.48.7-3.el9.x86_64 pixman-0.40.0-6.el9_3.x86_64
wgcloud-client-1.0.0-1.x86_64 xml-common-0.6.3-58.el9.noarch

Complete!

250808-MongoDBHA-MongoDB副本集rs.initiate() 三个副本集节点都执行了,怎么办

你现在的情况是:三台机器上都执行了 rs.initiate(),这会导致每台机器都独立地成为了自己的单节点副本集
(各自成为一个不同的副本集),它们彼此之间并不知道对方的存在,所以整个副本集无法形成。


🔥 问题本质

MongoDB 的副本集只能由一个节点执行一次 rs.initiate() 来初始化整个副本集。
你在三台机器上都执行了,相当于创建了三个互不相关的副本集,这是错误的操作。


✅ 正确做法(修复步骤)

✅ 步骤 1:停止所有节点上的 MongoDB 服务

清理数据目录(dbpath)

bash

复制

1
2
3
4
# 每台机器上执行
sudo systemctl stop mongod
# 或
mongod --shutdown --dbpath /data/db

✅ 步骤 2:清理副本集配置(每台机器都要做

MongoDB 会把副本集配置保存在 local.replset 集合中,你需要清理掉这些配置。

bash

复制

1
2
3
4
5
6
7
8
9
10
# 进入 MongoDB shell(单节点启动,不指定 replSet)
mongod --dbpath /data/db --port 27017 --fork --logpath /var/log/mongod.log

mongo --port 27017

# 删除副本集配置
use local
db.dropDatabase() # 会清空 local 库,包括副本集配置和 oplog

exit

⚠️ 注意:这个操作会清除副本集配置和 oplog,不会影响你的业务数据(除非你业务数据也放在 local 库)。


✅ 步骤 3:重新以副本集模式启动 MongoDB(所有节点)

bash

复制

1
mongod --replSet rs0 --bind_ip 0.0.0.0 --dbpath /data/db --port 27017 --fork --logpath /var/log/mongod.log

✅ 步骤 4:只在一个节点(主节点)上执行初始化

连接任意一台节点(建议选你希望的 PRIMARY),执行:

JavaScript

复制

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
rs.initiate({
_id: "rs0",
members: [
{_id: 0, host: "192.168.0.245:27017"},
{_id: 1, host: "192.168.0.246:27017"},
{_id: 2, host: "192.168.0.247:27017", arbiterOnly: true}
]
})

rs.initiate({
_id: "replicaset",
members: [
{_id: 0, host: "192.168.0.245:27017"},
{_id: 1, host: "192.168.0.246:27017"},
{_id: 2, host: "192.168.0.247:27017", arbiterOnly: true}
]
})
字段 含义
_id: "replicaset" 创建或指定一个名为 replicaset 的副本集。
members 列出这个副本集里的所有成员(节点)。
_id: 0/1/2 每个成员在副本集内的唯一标识符
host 每个成员的 IP:端口,告诉副本集怎么找到它们。
  1. 当前你连接的这台节点(假设是 192.168.0.245)会成为 PRIMARY
  2. 它会尝试与 192.168.0.246、192.168.0.247 建立心跳连接。
  3. 如果这两台节点已经以 --replSet replicaset 启动且数据目录干净,它们会进入 SECONDARY 状态。
  4. 最终形成一个 三节点副本集(1 主 2 从)。

✅ 步骤 5:验证副本集状态

JavaScript

复制

1
2
rs.status()
rs.conf()

✅ 总结一句话

每台都执行 rs.initiate() 是错误的,必须清理配置后,只用一台机器初始化整个副本集。

如你不确定该删哪个目录、如何备份,我可以帮你写个脚本。

250805-Ubuntu20.04优化配置脚本-Ubuntu-Scripts

/etc/sudoers配置

1
ubuntu ALL=(ALL:ALL) NOPASSWD: ALL

Ubuntu 20.04 优化配置脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
#!/bin/sh

# 禁用内核更新
sudo apt-mark hold linux-generic linux-image-generic linux-headers-generic
# 锁定内核
sudo apt-mark hold linux-generic linux-image-generic linux-headers-generic
sudo apt-mark hold linux-image-generic linux-headers-generic

sudo apt update

# 禁用内核更新
sudo apt-mark hold linux-generic linux-image-generic linux-headers-generic
# 锁定内核
sudo apt-mark hold linux-generic linux-image-generic linux-headers-generic
sudo apt-mark hold linux-image-generic linux-headers-generic

sudo timedatectl set-timezone Asia/Shanghai
sudo cat /etc/timezone

# sudo mkdir -p /root/snap/chromium/common/chromium/BrowserMetrics

sudo apt install language-pack-zh-hans -y
sudo locale-gen zh_CN.UTF-8
sudo update-locale LANG=zh_CN.UTF-8

export LANG=zh_CN.UTF-8

sudo apt-get install vim -y && sudo apt-get remove vim -y
sudo apt install fonts-wqy-zenhei fonts-wqy-microhei fonts-noto-cjk -y
sudo apt install -y fontconfig
sudo apt install -y fonts-dejavu-core fonts-liberation

sudo apt install fonts-wqy-zenhei fonts-wqy-microhei fonts-noto-cjk -y
sudo apt install -y git
sudo apt install net-tools -y
sudo apt install openssh-server -y
sudo apt install -y fontconfig
sudo apt install -y fonts-dejavu-core fonts-liberation

# 禁用自动更新
sudo sed -i 's/APT::Periodic::Update-Package-Lists "1";/APT::Periodic::Update-Package-Lists "0";/g' /etc/apt/apt.conf.d/10periodic
sudo sed -i 's/APT::Periodic::Unattended-Upgrade "1";/APT::Periodic::Unattended-Upgrade "0";/g' /etc/apt/apt.conf.d/10periodic

# 禁用无人值守升级
sudo sed -i 's/APT::Periodic::Update-Package-Lists "1";/APT::Periodic::Update-Package-Lists "0";/g' /etc/apt/apt.conf.d/20auto-upgrades
sudo sed -i 's/APT::Periodic::Unattended-Upgrade "1";/APT::Periodic::Unattended-Upgrade "0";/g' /etc/apt/apt.conf.d/20auto-upgrades

# 禁用 apt-daily 服务和计时器
sudo systemctl stop apt-daily.service
sudo systemctl disable apt-daily.service
sudo systemctl mask apt-daily.service
sudo systemctl daemon-reload
sudo systemctl stop apt-daily.timer
sudo systemctl disable apt-daily.timer
sudo systemctl mask apt-daily.timer
sudo systemctl daemon-reload

# 禁用 unattended-upgrades 服务
sudo systemctl disable unattended-upgrades

# 禁用 Snap 自动更新
sudo snap refresh --hold

# 禁用自动更新
sudo systemctl stop apt-daily.service
sudo systemctl disable apt-daily.service
sudo systemctl kill --kill-who=main apt-daily.service
sudo systemctl disable apt-daily.timer
sudo systemctl mask apt-daily.timer
sudo systemctl stop unattended-upgrades.service
sudo systemctl disable unattended-upgrades.service

sudo systemctl daemon-reload

# Ubuntu自动登录和开机锁屏取消
## 禁用自动锁屏:
# gsettings set org.gnome.desktop.screensaver lock-enabled false
# gsettings set org.gnome.desktop.lockdown disable-lock-screen true

# 禁用内核更新
sudo apt-mark hold linux-generic linux-image-generic linux-headers-generic
# 恢复内核更新
sudo apt-mark unhold linux-generic linux-image-generic linux-headers-generic

sudo sed -i 's/1/0/' /etc/apt/apt.conf.d/10periodic
sudo sed -i 's/2/0/' /etc/apt/apt.conf.d/10periodic

sudo sed -i 's/1/0/' /etc/apt/apt.conf.d/20auto-upgrades
sudo sed -i 's/2/0/' /etc/apt/apt.conf.d/20auto-upgrades

sudo apt remove update-notifier -y

# 禁用屏幕休眠
# gsettings set org.gnome.desktop.session idle-delay 0

sudo mkdir -p /home/mes/.ssh

sudo touch /home/mes/.ssh/authorized_keys


# Linux优化-Ulimit
# 写入文件内容

sudo bash -c 'cat <<EOF > /etc/security/limits.conf
* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535
EOF'

# >> 表示 追加 到文件末尾,不会破坏原有内容
sudo bash -c 'cat <<EOF > /etc/systemd/system.conf
[Manager]
DefaultLimitNOFILE=1048576
EOF'

# >> 表示 追加 到文件末尾,不会破坏原有内容
sudo bash -c 'cat <<EOF > /etc/sysctl.conf
net.ipv4.ip_forward = 1
fs.file-max = 1048576
fs.inotify.max_user_instances=512
fs.inotify.max_user_watches=262144
EOF'

# 安装chrome谷歌浏览器
sudo apt update

# 谷歌浏览器取消登录密钥环**然后重启系统,首次打开 Chrome 时会提示创建新密钥环,直接留空密码并继续即可
rm -rf /home/ubuntu/.local/share/keyrings/*
sudo rm -rf /home/ubuntu/.local/share/keyrings/*

# 调整电视连接显示配置
sudo sed -i 's/#HandleLidSwitch=suspend/HandleLidSwitch=ignore/g' /etc/systemd/logind.conf

sudo apt autoremove -y

# 配置密钥允许
sudo bash -c 'cat <<EOF >> /home/ubuntu/.ssh/authorized_keys

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCiKRDip9YCWzsIe2a0bT2az8DjH7k6cBij8bpfcNaIqSfz+/PJWDPwK4VeC4Ko4E8jQYct8i9u9VKcAK9XUhMEQNlpmpC+KXHApMBJ8Stm8yHb65gOcl8sDxdyWB3LevzLhsK8ZvI1Fus7O5vwmGjdOxhhw/89aZG6xHM8gfe+IYjCdm+n6rMz0RTAgP/QVsLjrLqk8VxC/kb1QjKG0BjZsMnTvs32oiqgJ4Eif8TUpXnDin+lRL4v2fUjRMfOS7PSIMNUAtvtRd3lBp9u4Yk1VtRy+ZWITpXvnURlEp/bKiIxf2G2gUVsDZXLVu1l04FNB7bOEj99qolhfXYERJYSBMYSjPCrOmBTYuYlokqk/r4RtNncNXEs4WPipw/LekCEYs1rjBR7uUditEAJbCM4elUkN8t4XHZy9FKSRE/pdkhekW+dUf6AResMlTV/bCNYQu/JcUBvvWxscqsxYiZ5Q+lRJb1T6c0bTKSN3RddY3YMa1gdqWgK8O/OBVq2q80= Administrator@DESKTOP-12ALS0Q
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDERDBQtrr03DzuNYZhtIrWIVBWTOWrgptdVGMwQnGZqH5pLe88J0H5JtCUvXFZtah8JzsOcxrIHFNY52SYhKokfDBKdoFLEGQ6W0f5BOpVAdLSh1jMU/ybkn+8TGygy85qs8g1IEk7u8loqWNRT/mBOd6MZJTZQxivYIOBCzC1oeBlzO0fBqnlPoYxWahC2ifDbs5lc0DrNElJPeklVVLwGJNTc3wn0Y6tSFdb9975SLYBsp8XoDWI0wCsqp/afI3zH7Ms+CIxz6XzsjjIEXwnCRxKjbLOGJLeDOFlf+ArqrV5WBWBD39qFVmq9rTfvjG4o+cPSgz1zyN1LyPK3+CQVtk3+2Bb1lPHaw4NdyCakrnT3aTdYsICvmD88Gre/wDgXid5osqoGfRYOWtzHIULmWH4k6HGg4O9W9EHU1lm2qP/Zt8CHC+tPhSYwOovu//lyhg4ygMDLCkHnXy4cCfdxQ4HvgHPQpmHkCfNgIgWTotykIUZbCbJpowJPNngOFM= root@sop

EOF'

#
sudo apt autoremove -y
# sudo reboot
# sudo systemctl restart systemd-logind

250801-Maven-T-1C多线程编译参数配置

⚠️ 注意事项:

  • 若项目模块间依赖复杂,Maven 会自动限制并行度;
  • 若内存较小,建议不要设置过高(如 -T 2C-T 4C),避免 OOM;
  • 日志可能会乱,建议加 -B(batch 模式)或 --log-file 输出到文件

✅ 可选配置参考:

参数 含义 4核CPU下的线程数
-T 1C 每核 1 个线程 4
-T 2C 每核 2 个线程 8
-T 0.5C 每两核 1 个线程 2
-T 4 固定使用 4 个线程 4

如无特殊需求,**-T 1C** 是推荐起点,平衡性能与稳定性。

优化建议

在多核 CPU 环境下,Maven 的 -T 参数用于控制并行构建线程数,合理设置可以显著提升构建效率。以下是基于最新资料(截至 2025
年)的优化建议


推荐设置原则

CPU核心数 推荐参数示例 说明
4核 -T 1C-T 1.5C 使用 4~6 线程,避免过度占用系统资源
8核 -T 1.5C-T 2C 使用 12~16 线程,适合中大型项目
超线程支持 -T 1.5C 如4核8线程,1.5C = 12线程,性能提升明显

实战命令示例

1
2
3
4
5
6
7
8
# 推荐:按核心数1.5倍并行构建(平衡性能与稳定性)
mvn clean install -T 1.5C

# 保守:使用与核心数相同的线程数
mvn clean install -T 1C

# 激进:使用固定线程数(需测试是否稳定)
mvn clean install -T 8

⚠️ 注意事项

  • 模块依赖复杂时慎用高并发:Maven 会自动跳过有依赖冲突的模块,线程过多反而降低效率。

  • 内存限制:并行构建会显著增加内存占用,建议同步设置:

    1
    export MAVEN_OPTS="-Xmx2g -Xms1g"
  • CI/CD环境建议实测:不同机器、不同项目结构下,最优线程数可能不同,建议用 time mvn -T X clean package 实测对比。


最佳实践总结

场景 推荐参数 说明
本地开发 -T 1C-T 1.5C 稳定优先,避免影响IDE响应
CI/CD流水线 -T 1.5C-T 2C 构建时间短,资源可控
多模块大项目 -T 1.5C + 增量构建 结合 -pl 局部构建更佳

如无特殊需求,**-T 1.5C** 是当前多核 CPU 下 Maven 构建的推荐起点,兼顾速度与稳定性

250728-ubuntu20.04-chrome-kanban-看板全屏参数配置

/home/mes/.config/autostart/chromium.desktop

–password-store=basic
–disable-background-networking

1
2
3
[Desktop Entry]
Type=Application
Exec=sh -c "sleep 15 && /usr/bin/google-chrome-stable --disable-background-networking --start-maximized --disable-infobars --password-store=basic --kiosk 'http://120.86.188.226:8081/hmi/a3886ab468c84417a24df00fcf56a253/zlg63v?pageId=LJ-A '"

250728-ubuntu20.04安装chrome 后,提示密钥 通过ssh访问 如何解决

Ubuntu 20.04 Chrome 密钥提示 SSH 访问 解决方法

你在 Ubuntu 20.04 通过 SSH 远程登录后运行 Chrome,仍然弹出“解锁登录密钥环”提示,是因为:

SSH 默认不会解锁 GNOME Keyring(密钥环),而 Chrome 启动时又依赖它保存密码、Cookie 等数据,因此会反复提示输入密码。


✅ 解决方法(适用于 SSH 远程会话)

✅ 方法 1:修改 Chrome 启动参数,跳过密钥环

强制 Chrome 使用“基础密码存储”,不再依赖 GNOME Keyring:

1
google-chrome-stable --password-store=basic

永久生效(对所有用户):

1
sudo sed -i 's|^Exec=/usr/bin/google-chrome-stable|Exec=/usr/bin/google-chrome-stable --password-store=basic|' /usr/share/applications/google-chrome.desktop

✅ 方法 2:手动解锁密钥环(一次性)

如果你必须使用密钥环(如保存密码),在 SSH 会话中手动解锁:

1
2
export DISPLAY=:0
gnome-keyring-daemon --unlock

注意:此方法需要你在本地已登录图形界面,且 SSH 用户与桌面用户一致。


✅ 方法 3:使用 dbus-launch 启动 Chrome(兼容性好)

在 SSH 中启动 Chrome 时加上 dbus-launch,可自动连接会话:

1
dbus-launch google-chrome-stable

⚠️ 不推荐的做法

  • 禁用密钥环或删除 ~/.local/share/keyrings 会导致密码丢失;
  • 取消自动登录对 SSH 无帮助。

✅ 一句话总结

SSH 远程登录后运行 Chrome 提示密钥 → 使用 --password-store=basic 参数跳过密钥环即可。