如何修改服務器管理員賬號名和密碼(1)

命令解析sudo useradd -m -s /bin/bash 新用戶名

1. sudo

作用:以超級用戶(root)權限執行命令
為什么需要:創建用戶需要修改系統文件(/etc/passwd, /etc/shadow等),普通用戶沒有這個權限
替代方案:如果已經是root用戶,可以不加sudo

2. useradd

作用:Linux系統添加用戶的核心命令
相關命令:
adduser:某些發行版(如Debian)提供的更友好的交互式工具
newusers:批量創建用戶的工具

3. -m 選項

全稱:–create-home
作用:為用戶創建家目錄(home directory)
目錄位置:通常在/home/用戶名
包含的文件:會從/etc/skel目錄復制默認配置文件(bashrc、profile等)
如果不加:用戶將沒有家目錄,登錄后可能遇到問題

4. -s /bin/bash 選項

全稱:–shell
作用:指定用戶的默認登錄shell
/bin/bash:Bourne-Again Shell,功能最豐富的常用shell
其他常見shell:
/bin/sh:Bourne Shell,更輕量
/bin/zsh:Z Shell,功能更強大
/sbin/nologin:禁止登錄的shell(常用于系統賬戶)

5. 新用戶名

命名規則:
通常小寫字母開頭
可以包含數字和下劃線
長度一般不超過32字符
避免使用特殊字符和空格
系統保留名:避免使用root、daemon、bin等系統保留名稱

命令執行后的系統變化
/etc/passwd:添加一行用戶記錄
新用戶名?UID:GID:用戶描述:/home/新用戶名:/bin/bash
/etc/shadow:創建密碼記錄(初始無密碼)
/etc/group:創建與用戶名相同的私有組
文件系統:創建/home/新用戶名目錄
完整用戶創建流程示例

1. 創建用戶

sudo useradd -m -s /bin/bash john

2. 設置密碼(會提示輸入兩次)

sudo passwd john

謹慎操作!!!!!!

3. 可選:將用戶加入sudo組(授予管理員權限)

sudo usermod -aG sudo john

4. 驗證用戶

id john

應顯示類似: uid=1001(john) gid=1001(john) groups=1001(john),27(sudo)

5. 常見問題解決

(1)用戶已存在錯誤:

useradd: user 'john' already exists

解決方案:先刪除舊用戶sudo userdel -r john,或選擇其他用戶名

(2)家目錄未創建:
檢查是否遺漏了-m選項,可以手動創建:
sudo mkdir /home/john
sudo cp -r /etc/skel/. /home/john
sudo chown -R john:john /home/john
(3)shell不可用:
確保指定的shell存在于/etc/shells文件中

6. 安全建議

創建用戶后立即設置強密碼
對于不需要登錄的賬戶(如服務賬戶),使用-s /sbin/nologin
定期審查用戶列表cat /etc/passwd
考慮使用-u選項明確指定用戶ID,避免自動分配沖突
這條命令是Linux系統管理中最基礎也是最重要的命令之一,掌握它可以有效管理系統用戶權限。

命令解析sudo usermod -aG sudo 新用戶名

1. usermod

全稱:user modify(用戶修改)
功能:修改現有用戶賬戶屬性
相關命令:
useradd:創建新用戶
userdel:刪除用戶
passwd:修改密碼

2. -aG 選項組合

-a (append):
保持用戶現有的所屬組不變
只追加新的組關系
如果不加此選項,用戶會被移出其他所有次要組
-G (groups):
指定要修改的附加組(secondary groups)
可以同時指定多個組,用逗號分隔

3. sudo

目標組名:通常指管理員權限組
不同發行版差異:
Ubuntu/Debian:sudo組
RHEL/CentOS:wheel組
其他發行版可能使用admin或operators

4. 新用戶名

要求:必須是已存在的用戶賬戶
驗證方法:id 新用戶名 或 grep 新用戶名 /etc/passwd

5. 命令執行效果

(1)/etc/group文件修改:
sudo?27:user1,user2,新用戶名
在sudo組的用戶列表末尾追加新用戶名
(2)用戶權限變化:
獲得使用sudo命令的權限
可以執行需要root權限的操作
(3)立即生效:
修改后不需要重啟或重新登錄即可使用新權限

完整示例流程

1. 創建用戶(如果不存在)

sudo useradd -m -s /bin/bash testuser

2. 授予sudo權限

sudo usermod -aG sudo testuser

3. 驗證權限

sudo -l -U testuser
#應顯示:User testuser may run the following commands on this host:
#   (ALL : ALL) ALL

4. 檢查組成員

groups testuser
# 應顯示:testuser : testuser sudo

5. 常見問題解決

(1)"group ‘sudo’ does not exist"錯誤:
CentOS/RHEL系統應使用wheel組:
sudo usermod -aG wheel 新用戶名
或者創建sudo組:sudo groupadd sudo
(2)權限不生效:
檢查/etc/sudoers文件是否允許該組:
sudo grep '%sudo' /etc/sudoers
應有類似:%sudo ALL=(ALL:ALL) ALL
(3)誤移除其他組:
確保使用了-a選項,否則用戶會被移出其他所有次要組

6. 安全最佳實踐

(1)最小權限原則:只給真正需要管理員權限的用戶sudo權限
(2)定期審計:檢查sudo權限用戶列表:grep '^%sudo' /etc/group
(3)使用visudo:修改sudoers文件時永遠使用:sudo visudo而不是直接編輯/etc/sudoers
(4)限制sudo權限:可以為特定用戶限制可執行的命令:
新用戶名 ALL=(ALL) /usr/bin/apt, /usr/bin/systemctl
這條命令是Linux系統管理中賦予用戶管理員權限的標準方法,正確使用可以既保證系統安全又提供必要的管理靈活性。

[root@localhost home]# ls
user  wulu1  XAlab_F16_1
[root@localhost home]# cd XAlab_F16_1/
[root@localhost XAlab_F16_1]# ls
[root@localhost XAlab_F16_1]# cd ../
[root@localhost home]# ls
user  wulu1  XAlab_F16_1
[root@localhost home]# rm -rf XAlab_F16_1/
[root@localhost home]# ls
user  wulu1
[root@localhost home]# sudo whoami
root
[root@localhost home]# cd ~
[root@localhost ~]# visudo
visudo: /etc/sudoers.tmp 未更改

只有root用戶可以訪問home目錄下的所有文件夾

[root@localhost ~]# sudo useradd -m -s /bin/bash yhm #添加用戶
[root@localhost ~]# sudo passwd yhm
更改用戶 yhm 的密碼 。
新的 密碼:
無效的密碼: 密碼未通過字典檢查 - 不包括足夠不同的字符
重新輸入新的 密碼:
抱歉,密碼不匹配。
passwd: 鑒定令牌操作錯誤
[root@localhost ~]# sudo passwd yhm
更改用戶 yhm 的密碼 。
新的 密碼:
重新輸入新的 密碼:
抱歉,密碼不匹配。
passwd: 鑒定令牌操作錯誤
[root@localhost ~]# sudo passwd yhm
更改用戶 yhm 的密碼 。
新的 密碼:
無效的密碼: 密碼未通過字典檢查 - 它基于一個字典中的詞
重新輸入新的 密碼:
[root@localhost ~]# sudo whoami
root
[root@localhost ~]# sudo passwd yhm
更改用戶 yhm 的密碼 。
新的 密碼:
重新輸入新的 密碼:
passwd:所有的身份驗證令牌已經成功更新。
[root@localhost ~]# sudo whoami
root
[root@localhost ~]# sudo useradd -m -s /bin/bash XAlab_F16_1
useradd:用戶“XAlab_F16_1”已存在
[root@localhost ~]# sudo passwd XAlab_F16_1
更改用戶 XAlab_F16_1 的密碼 。
新的 密碼:
重新輸入新的 密碼:
抱歉,密碼不匹配。
passwd: 鑒定令牌操作錯誤
[root@localhost ~]# sudo passwd XAlab_F16_1
更改用戶 XAlab_F16_1 的密碼 。
新的 密碼:
重新輸入新的 密碼:
passwd:所有的身份驗證令牌已經成功更新。
[root@localhost ~]# sudo usermod -aG sudo XAlab_F16_1
usermod:“sudo”組不存在
[root@localhost ~]# sudo usermod -aG sudo yhm
usermod:“sudo”組不存在
[root@localhost ~]# sudo visudo
visudo: /etc/sudoers.tmp 未更改
[root@localhost ~]# sudo usermod -aG sudo XAlab_F16_1
usermod:“sudo”組不存在
[root@localhost ~]# lsb_release -a
bash: lsb_release: 未找到命令...
安裝軟件包“redhat-lsb-core”以提供命令“lsb_release”? [N/y] y* 正在隊列中等待... 
下列軟件包必須安裝:mailx-12.5-29.el8.x86_64	Enhanced implementation of the mailx commandncurses-compat-libs-6.1-10.20180224.el8.x86_64	Ncurses compatibility librariesredhat-lsb-core-4.1-47.el8.x86_64	LSB Core module supportredhat-lsb-submod-security-4.1-47.el8.x86_64	LSB Security submodule supportspax-1.5.3-13.el8.x86_64	Portable archive exchange
下列軟件包必須更新:ncurses-6.1-10.20180224.el8.x86_64	Ncurses support utilitiesncurses-base-6.1-10.20180224.el8.noarch	Descriptions of common terminalsncurses-libs-6.1-10.20180224.el8.x86_64	Ncurses libraries
繼續更改? [N/y] y* 正在隊列中等待... * 正在等待認證... * 正在隊列中等待... * 正在下載軟件包... * 正在請求數據... * 正在測試更改... * 正在安裝更新... * 正在安裝軟件包... * 正在安裝更新... * 正在安裝軟件包... * 正在安裝更新... * 正在清理軟件包... 
LSB Version:	:core-4.1-amd64:core-4.1-noarch
Distributor ID:	Rocky
Description:	Rocky Linux release 8.7 (Green Obsidian)
Release:	8.7
Codename:	GreenObsidian
[root@localhost ~]# lsb_release -a
LSB Version:	:core-4.1-amd64:core-4.1-noarch
Distributor ID:	Rocky
Description:	Rocky Linux release 8.7 (Green Obsidian)
Release:	8.7
Codename:	GreenObsidian
[root@localhost ~]# sudo usermod -l yhm XAlab_F16_1
usermod:用戶“yhm”已存在
[root@localhost ~]# sudo usermod -l XAlab_F16_1 yhm
usermod:用戶“XAlab_F16_1”已存在
[root@localhost ~]# sudo userdel -r XAlab_F16_1
userdel:未找到 XAlab_F16_1 的主目錄“/home/XAlab_F16_1”
[root@localhost ~]# sudo usermod -l XAlab_F16_1 user
usermod: user user is currently used by process 9912
[root@localhost ~]# [root@localhost ~]# sudo usermod -l XAlab_F16_1 user
bash: [root@localhost: 未找到命令...
[root@localhost ~]# usermod: user user is currently used by process 9912
bash: usermod:: 未找到命令...
相似命令是: 'usermod'
[root@localhost ~]# [root@localhost ~]# sudo pkill -u user
bash: [root@localhost: 未找到命令...
[root@localhost ~]# [root@localhost ~]# sudo pkill -9 -u user
bash: [root@localhost: 未找到命令...
[root@localhost ~]# ps -u userPID TTY          TIME CMD9912 ?        00:00:01 systemd9916 ?        00:00:00 (sd-pam)9932 ?        00:00:00 pulseaudio9937 ?        00:00:00 gnome-keyring-d9946 tty2     00:00:00 gdm-x-session9977 ?        00:00:32 dbus-daemon10033 tty2     00:00:02 gnome-session-b10133 ?        00:00:00 at-spi-bus-laun10138 ?        00:00:00 dbus-daemon10141 ?        00:00:00 at-spi2-registr10224 tty2     00:29:03 gnome-shell10263 ?        00:00:00 gvfsd10268 ?        00:00:00 gvfsd-fuse10285 tty2     00:00:33 ibus-daemon10289 tty2     00:00:00 ibus-dconf10290 tty2     00:00:00 ibus-extension-10292 tty2     00:00:00 ibus-x1110295 ?        00:00:00 ibus-portal10299 ?        00:00:00 xdg-permission-10312 ?        00:00:00 gnome-shell-cal10317 ?        00:00:00 evolution-sourc10324 ?        00:00:30 goa-daemon10336 ?        00:00:00 gvfs-udisks2-vo10345 ?        00:00:00 gvfs-mtp-volume10349 ?        00:00:00 gvfs-gphoto2-vo10353 ?        00:00:00 gvfs-goa-volume10361 ?        00:02:25 goa-identity-se10368 ?        00:00:00 gvfs-afc-volume10381 tty2     00:00:25 gsd-power10383 tty2     00:00:00 gsd-print-notif10384 tty2     00:00:11 gsd-rfkill10385 tty2     00:00:00 gsd-screensaver10386 tty2     00:00:40 gsd-sharing10388 tty2     00:00:00 gsd-sound10395 tty2     00:00:00 gsd-xsettings10396 tty2     00:00:00 gsd-wacom10398 tty2     00:02:00 gsd-smartcard10401 tty2     00:00:02 gsd-account10415 tty2     00:00:00 gsd-a11y-settin10416 tty2     00:00:00 gsd-clipboard10417 tty2     00:00:22 gsd-color10421 tty2     00:00:00 gsd-datetime10424 tty2     00:01:25 gsd-housekeepin10426 tty2     00:00:00 gsd-keyboard10429 tty2     00:00:00 gsd-media-keys10431 ?        00:00:00 evolution-calen10434 tty2     00:00:00 gsd-mouse10479 tty2     00:00:00 gsd-disk-utilit10484 tty2     01:57:19 gnome-software10495 ?        00:00:00 tracker-store10509 tty2     00:00:00 ibus-engine-sim10516 tty2     00:00:00 tracker-miner-a10522 tty2     00:00:00 tracker-miner-f10546 ?        00:00:32 evolution-calen10583 ?        00:00:31 dconf-service10588 ?        00:00:00 evolution-addre10607 ?        00:00:33 evolution-addre10634 tty2     00:00:00 gsd-printer10829 tty2     00:00:00 ibus-engine-lib11288 ?        00:00:00 gvfsd-metadata11432 ?        00:01:28 xdg-desktop-por11436 ?        00:00:00 xdg-document-po11445 ?        00:00:03 xdg-desktop-por11456 ?        00:00:00 pipewire11458 ?        00:00:00 pipewire-media-
3418164 ?        00:00:00 sshd
3418176 pts/1    00:00:00 bash
3418244 ?        00:00:00 dbus-daemon
3418247 ?        00:00:00 dbus-kill-proce
3418253 ?        00:00:00 gio
3418262 ?        00:00:00 gvfsd
3425019 ?        00:00:00 sshd
3425031 pts/3    00:00:00 bash
3425104 ?        00:00:00 dbus-daemon
3425107 ?        00:00:00 dbus-kill-proce
3425114 ?        00:00:00 gio
3425122 ?        00:00:00 gvfsd
[root@localhost ~]# sudo kill -9 9912
[root@localhost ~]# sudo usermod -l XAlab_F16_1 user
usermod: user user is currently used by process 3418164
[root@localhost ~]# sudo kill -9 3418164
Connection closing...Socket close.Connection closed by foreign host.Disconnected from remote host(翔安) at 17:50:17.Type `help' to learn how to use Xshell prompt.
[C:\~]$ 

Connecting to 10.26.248.239:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.Activate the web console with: systemctl enable --now cockpit.socketLast login: Thu May 15 05:35:32 2025 from 10.26.255.81
(base) [user@localhost ~]$ su -
密碼:
[root@localhost ~]# sudo usermod -l XAlab_F16_1 user
usermod: user user is currently used by process 3425019
[root@localhost ~]# sudo pkill -u user
Connection closing...Socket close.Connection closed by foreign host.Disconnected from remote host(翔安) at 17:53:38.Type `help' to learn how to use Xshell prompt.
[C:\~]$ 
Connecting to 10.26.248.239:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.Activate the web console with: systemctl enable --now cockpit.socketLast login: Thu May 15 05:51:17 2025 from 10.26.255.81
(base) [user@localhost ~]$ sudo pkill -u user
[sudo] user 的密碼:
user 不在 sudoers 文件中。此事將被報告。
(base) [user@localhost ~]$ su -
密碼:
[root@localhost ~]# sudo pkill -u user
Connection closing...Socket close.Connection closed by foreign host.Disconnected from remote host(翔安) at 18:41:52.Type `help' to learn how to use Xshell prompt.
[C:\~]$ 
Connecting to 10.26.248.239:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.Activate the web console with: systemctl enable --now cockpit.socketLast login: Thu May 15 06:40:01 2025 from 10.26.255.81
(base) [user@localhost ~]$ su -
密碼:
su: 鑒定故障
(base) [user@localhost ~]$ su -
密碼:
[root@localhost ~]# nohup sudo pkill -u user &
[1] 3469106
[root@localhost ~]# nohup: 忽略輸入并把輸出追加到'nohup.out'
Connection closing...Socket close.Connection closed by foreign host.Disconnected from remote host(翔安) at 18:46:13.Type `help' to learn how to use Xshell prompt.
[C:\~]$ 

Connecting to 10.26.248.239:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.Activate the web console with: systemctl enable --now cockpit.socketLast login: Thu May 15 06:42:30 2025 from 10.26.255.81
(base) [user@localhost ~]$ who
wulu1    pts/0        2025-05-15 03:47 (10.26.248.44)
user     pts/1        2025-05-15 06:46 (10.26.255.81)
yhm      pts/2        2025-05-15 05:24 (10.26.255.81)
(base) [user@localhost ~]$ su -
密碼:
[root@localhost ~]# who
wulu1    pts/0        2025-05-15 03:47 (10.26.248.44)
user     pts/1        2025-05-15 06:46 (10.26.255.81)
yhm      pts/2        2025-05-15 05:24 (10.26.255.81)
[root@localhost ~]# sudo pkill -u user
Connection closing...Socket close.Connection closed by foreign host.Disconnected from remote host(翔安) at 18:48:56.Type `help' to learn how to use Xshell prompt.
[C:\~]$ ssh root@10.26.248.239

Connecting to 10.26.248.239:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.Activate the web console with: systemctl enable --now cockpit.socketLast login: Thu May 15 06:48:04 2025
/usr/bin/xauth:  file /root/.Xauthority does not exist
[root@localhost ~]# sudo pkill -u user
[root@localhost ~]# sudo usermod -l XAlab_F16_1 user
usermod: user user is currently used by process 3469143
[root@localhost ~]# sudo pkill -u user
[root@localhost ~]# sudo usermod -l XAlab_F16_1 user
usermod: user user is currently used by process 3469143
[root@localhost ~]# sudo kill -9 3469143
[root@localhost ~]# sudo usermod -l XAlab_F16_1 user
[root@localhost ~]# who
wulu1    pts/0        2025-05-15 03:47 (10.26.248.44)
root     pts/1        2025-05-15 06:49 (10.26.255.81)
yhm      pts/2        2025-05-15 05:24 (10.26.255.81)
[root@localhost ~]# sudo passwd XAlab_F16_1
更改用戶 XAlab_F16_1 的密碼 。
新的 密碼:
重新輸入新的 密碼:
抱歉,密碼不匹配。
passwd: 鑒定令牌操作錯誤
[root@localhost ~]# sudo passwd XAlab_F16_1
更改用戶 XAlab_F16_1 的密碼 。
新的 密碼:
重新輸入新的 密碼:
passwd:所有的身份驗證令牌已經成功更新。
[root@localhost ~]# who
wulu1    pts/0        2025-05-15 03:47 (10.26.248.44)
root     pts/1        2025-05-15 06:49 (10.26.255.81)
yhm      pts/2        2025-05-15 05:24 (10.26.255.81)
[root@localhost ~]# who
wulu1    pts/0        2025-05-15 03:47 (10.26.248.44)
root     pts/1        2025-05-15 06:49 (10.26.255.81)
yhm      pts/2        2025-05-15 05:24 (10.26.255.81)
XAlab_F16_1 pts/3        2025-05-15 07:05 (10.26.255.81)
XAlab_F16_1 pts/4        2025-05-15 07:20 (10.26.255.81)
[root@localhost ~]# who
wulu1    pts/0        2025-05-15 03:47 (10.26.248.44)
root     pts/1        2025-05-15 06:49 (10.26.255.81)
yhm      pts/2        2025-05-15 05:24 (10.26.255.81)
XAlab_F16_1 pts/3        2025-05-15 07:05 (10.26.255.81)
XAlab_F16_1 pts/4        2025-05-15 07:20 (10.26.255.81)
[root@localhost ~]# sudo visudo
visudo: /etc/sudoers.tmp 未更改
[root@localhost ~]# 

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/81960.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/81960.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/81960.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux shell 正則表達式高效使用

Linux正則表達式高效使用教程 正則表達式是Linux命令行中強大的文本處理工具,能夠極大提高搜索和匹配效率。下面為新手提供一個簡單教程,介紹如何在grep和find命令中使用正則表達式。 使用建議:使用grep時要加-E選項使其支持擴展正則表達式&…

你通俗易懂的理解——線程、多線程與線程池

一:異常處理 1.1 異常概述 (1)場景 (2)定義 (3)異常拋出機制 Java把不同的異常用不同的類表示 (4)如何對待異常 1.2 常見異常類 (1)Throwable &am…

w~自動駕駛~合集13

我自己的原文哦~ https://blog.51cto.com/whaosoft/13933252 # 小米智能駕駛技術的一些猜測 來蹭一下小米汽車智能駕駛的熱度,昨晚聽了雷總小米汽車的發布,心潮澎湃尋思下單一輛奈何現實不允許hhh。 言歸正傳吧, 本來是想主要聽一下小米…

AI 面試幫 開發日志

項目源碼 https://cnb.cool/szu/TravelBest/Platform/-/tree/main 文章目錄 架構微服務網絡通信延遲 中間件redisMongoDB 架構 微服務 優點: 模塊間解耦、職責清晰,獨立部署與擴展,單個服務故障不會影響整個系統,便于持續交付與…

論文閱讀(四):Agglomerative Transformer for Human-Object Interaction Detection

論文來源:ICCV(2023) 項目地址:https://github.com/six6607/AGER.git 1.研究背景 人機交互(HOI)檢測需要同時定位人與物體對并識別其交互關系,核心挑戰在于區分相似交互的細微視覺差異&#…

部署java項目

1.編寫shell腳本部署服務 restart.sh #!/bin/bash # # start the user program # echo "-------------------- start jk service --------------------" LOG_DIR"/home/joy/usr/app/ers-log" LOG_FILE"$LOG_DIR/log_$(date "%Y%m%d").txt&…

第18天-NumPy + Pandas + Matplotlib多維度直方圖

示例1:帶樣式的柱狀圖 python 復制 下載 import numpy as np import pandas as pd import matplotlib.pyplot as plt# 生成數據 df = pd.DataFrame(np.random.randint(10, 100, size=(8, 4)),columns=[Spring, Summer, Autumn, Winter],index=[2015, 2016, 2017, 2018, 20…

關于 Web 安全實踐:4. 文件上傳功能的風險分析與防護

定義:文件上傳風險點是指應用程序允許用戶上傳文件,但沒有嚴格校驗上傳文件的類型、內容、路徑等屬性,導致攻擊者可以上傳并執行惡意代碼。 繞過方式: 前端繞過 1. 前端限制的原理 前端限制上傳文件類型的常見方式有三種&#…

升級SpringBoot2到3導致的WebServices升級

背景 WebServices 是基于開放標準(XML、SOAP、HTTP 等)的 Web 應用程序,它們與其他 Web 應 用程序交互以交換數據。WebServices 可以將您現有的應用程序轉換為 Web 應用程序。 老代碼中有一個19年前的包,由于漏洞原因,…

Vue3中插槽, pinia的安裝和使用(超詳細教程)

1. 插槽 插槽是指, 將一個組件的代碼片段, 引入到另一個組件。 1.1 匿名插槽 通過簡單的案例來學習匿名插槽,案例說明,在父組件App.vue中導入了子組件Son1.vue,父組件引用子組件的位置添加了一個片段,比如h2標簽,然…

【Redis】AOF日志

目錄 1、背景2、工作原理3、核心配置參數4、優缺點5、AOF文件內容 1、背景 AOF(Append Only File)是redis提供的持久化機制之一,它通過記錄所有修改數據庫狀態的寫命令來實現數據庫持久化。與RDB(快照)方式不同&#…

【HTTP】connectionRequestTimeout與connectTimeout的本質區別

今天發現有的伙伴調用第三方 httpclient 的配置中 connectTimeout 和 connectionRequestTimeout 配置的不到 1 S,問了一下他,知不知道這兩個參數的意思,他說不知道。那我們今天就來了解一下這兩個參數的區別 一、核心概念解析 1.1 connectT…

react中運行 npm run dev 報錯,提示vite.config.js出現錯誤 @esbuild/win32-x64

在React項目中運行npm run dev時,如果遇到vite.config.js報錯,提示esbuild/win32-x64在另一個平臺中被使用,通常是由于依賴沖突或緩存問題導致的。解決方法是刪除node_modules文件夾,并重新安裝依賴。 如下圖: 解決辦…

EMQX開源版安裝指南:Linux/Windows全攻略

EMQX開源版安裝教程-linux/windows 因最近自己需要使用MQTT,需要搭建一個MQTT服務器,所以想到了很久以前用到的EMQX。但是當時的EMQX使用的是開源版的,在官網可以直接下載。而現在再次打開官網時發現怎么也找不大開源版本了,所以…

Python:操作Excel按行寫入

Python按行寫入Excel數據,5種實用方法大揭秘! 在日常的數據處理和分析工作中,我們經常需要將數據寫入到Excel文件中。Python作為一門強大的編程語言,提供了多種庫和方法來實現將數據按行寫入Excel文件的功能。本文將詳細介紹5種常見的Python按行寫入Excel數據的方法,并附上…

vue3中RouterView配合KeepAlive實現組件緩存

KeepAlive組件緩存 為什么需要組件緩存代碼展示緩存效果為什么不用v-if 為什么需要組件緩存 業務需求&#xff1a;一般是列表頁面通過路由跳轉到詳情頁&#xff0c;跳轉回來時&#xff0c;需要列表頁面展示上次展示的內容 代碼展示 App.vue入口 <script setup lang"…

【JAVA】比較器Comparator與自然排序(28)

JAVA 核心知識點詳細解釋 Java中比較器Comparator的概念和使用方法 概念 Comparator 是 Java 中的一個函數式接口,位于 java.util 包下。它用于定義對象之間的比較規則,允許我們根據自定義的邏輯對對象進行排序。與對象的自然排序(實現 Comparable 接口)不同,Comparat…

浪潮服務器配置RAID和JBOD

目錄 1 配置RAID2 設置硬盤為JBOD模式3 驗證結果 1 配置RAID 進入 bios 界面 選擇 “高級” - “UEFI-HII配置” 選擇 raid 卡 進入 Main Menu 點擊 Driver Management&#xff0c;可以查詢當前硬盤 返回上一級&#xff0c;點擊 Configuration Management - Create virtu…

mongodb管理工具的使用

環境&#xff1a; 遠程服務器的操作系統&#xff1a;centOS stream 9; mongoDB version:8.0; 本地電腦 navicat premium 17.2 ; 寶塔上安裝了mongoDB 目的&#xff1a;通過本地的navicat鏈接mongoDB,如何打通鏈接&#xff0c;分2步&#xff1a; 第一步&#xff1a;寶塔-&…

03-Web后端基礎(Maven基礎)

1. 初始Maven 1.1 介紹 Maven 是一款用于管理和構建Java項目的工具&#xff0c;是Apache旗下的一個開源項目 。 Apache 軟件基金會&#xff0c;成立于1999年7月&#xff0c;是目前世界上最大的最受歡迎的開源軟件基金會&#xff0c;也是一個專門為支持開源項目而生的非盈利性…