linux-ubuntu-使用时一些小问题整理-持续更新
linux - ubuntu 使用时一些小问题整理 — 持续更新
ubuntu 中 root用户默认不存在解决办法
root 默认不存在,要使用 root 需要为 root 设置新密码:
sudo passwd root
然后再输入密码,就可以使用root:
su root
下载vim:
apt-get install vim
在Ubuntu系统中,将用户添加到 sudoers
文件中,使其能够以超级用户权限执行命令,通常可以通过以下几种方法实现:
方法1:将用户添加到 sudo
组
Ubuntu系统中,
sudo
组的成员默认具有
sudo
权限。因此,将用户添加到
sudo
组是最简单且推荐的方式。
打开终端 。
使用以下命令将用户添加到
sudo
组 :sudo usermod -aG sudo <username>
其中,
<username>
是需要添加到sudo
组的用户名。注销并重新登录 ,或者重启系统,使更改生效。
方法2:直接编辑 sudoers
文件
虽然不推荐直接编辑
sudoers
文件,因为操作不当可能会导致系统权限问题,但有时也可以通过以下步骤实现:
打开终端 。
使用
visudo
命令编辑sudoers
文件 :sudo visudo
visudo
命令会打开一个文本编辑器(通常是nano
或vi
),并自动检查语法错误。在文件中添加以下行 :
<username> ALL=(ALL:ALL) ALL
这表示用户
<username>
可以以任何用户的身份执行任何命令。保存并退出编辑器 :
- 如果使用的是
nano
,按Ctrl+X
,然后按Y
确认保存,最后按Enter
键退出。 - 如果使用的是
vi
,按Esc
键,输入:wq
并按Enter
键保存并退出。
- 如果使用的是
修改用户的shell类型、问题:用户的提示符只有 $
pupu用户的提示符只有
$
,没有显示当前目录等信息,并且快捷键用不了,这可能是因为其默认的shell是
sh
而不是
bash
。
sh
不支持一些快捷键操作,如方向键等,因此需要将pupu用户的shell改为
bash
。
编辑 /etc/passwd
文件
使用文本编辑器打开
/etc/passwd
文件:
sudo vi /etc/passwd
找到pupu用户对应的行,将行末的
/bin/sh
改为
/bin/bash
,修改后的行类似如下:
pupu:x:1002:1003::/home/pupu:/bin/bash
保存并退出编辑器。
使配置生效
切换到pupu用户,查看是否能够正常显示提示符和使用快捷键:
su - pupu
检查环境变量配置
如果修改shell类型后问题仍然存在,可以检查pupu用户的环境变量配置。编辑
~/.bashrc
文件,确保其中没有错误的配置:
nano ~/.bashrc
如果发现异常配置,可以参考默认的
/etc/skel/.bashrc
文件进行修复。
使用 useradd
命令创建用户
sudo useradd -m -s /bin/bash 新用户名
-m
:自动创建用户的家目录(/home/新用户名
)。-s /bin/bash
:指定用户的默认shell为bash,确保支持快捷键和完整功能。
设置用户密码
sudo passwd 新用户名
按提示输入并确认新用户的密码。
添加到用户组
sudo usermod -aG sudo 新用户名
将新用户添加到sudo组,使其具有管理员权限。
验证用户配置
切换到新用户,检查家目录、shell功能和快捷键是否正常:
su - 新用户名
通过以上步骤创建的新用户,其提示符会显示用户名、主机名和当前目录,并且支持方向键等快捷键操作。
恢复home家目录
以root用户身份登录,并且当前所在目录是根目录
/
。从输出结果来看,根目录下有一个异常的
home
目录(
home$'\b'
),这可能是由于之前的误操作导致的。
修复步骤
1. 删除异常的 home
目录
首先,删除这个异常的
home
目录:
rm -rf /home$'\b'
2. 重新创建正常的 home
目录
创建一个正常的
home
目录:
mkdir /home
3. 设置 home
目录的权限
确保
home
目录的权限正确:
chmod 755 /home
4. 重新创建用户的家目录
为
pupu
和
ubuntu
用户重新创建他们的家目录:
mkdir /home/pupu
mkdir /home/ubuntu
5. 设置家目录的所有权和权限
确保这些家目录的所有权和权限正确:
chown -R pupu:pupu /home/pupu
chown -R ubuntu:ubuntu /home/ubuntu
chmod 700 /home/pupu
chmod 700 /home/ubuntu
6. 恢复默认的shell配置文件
如果家目录被删除,用户的shell配置文件(如
.bashrc
、
.profile
等)也会丢失。我们可以从系统的默认配置文件中恢复这些文件。
对于
pupu
用户:
cp /etc/skel/.bashrc /home/pupu/
cp /etc/skel/.profile /home/pupu/
chown pupu:pupu /home/pupu/.bashrc
chown pupu:pupu /home/pupu/.profile
对于
ubuntu
用户:
cp /etc/skel/.bashrc /home/ubuntu/
cp /etc/skel/.profile /home/ubuntu/
chown ubuntu:ubuntu /home/ubuntu/.bashrc
chown ubuntu:ubuntu /home/ubuntu/.profile
7. 验证修复结果
切换到
pupu
用户,验证是否能够正常访问家目录并执行操作:
su - pupu
同样,切换到
ubuntu
用户进行验证:
su - ubuntu
修复 .git
目录权限解决方案
在上传代码到gitee的时候如果是第一次,并且在 git commit 的时候忽略了他的报错 ,再使用sudo去使用root权限上传就会导致虽然代码上传了,但是没有绿点的问题。
方法 1:修复
.git
目录权限
将
.git
目录及其文件的所有权归还给当前用户(替换
pupu
为你的实际用户名):
sudo chown -R pupu:pupu .git
此命令递归修复
.git
目录下所有文件的属主,确保普通用户有读写权限。
方法 2:直接修复关键文件权限
如果仅需修复
COMMIT_EDITMSG
文件:
sudo chown pupu:pupu .git/COMMIT_EDITMSG
后续操作
重新提交代码 :
git add . git commit -m "你的提交信息" git push
验证提交者信息 :
提交后检查 Git 日志,确保作者信息正确:
git log --pretty=format:"%h - %an, %ae, %ad"
如果作者信息仍为
root
,使用git commit --amend
修正(见下文)。
修正历史提交的作者信息(可选)
如果之前的提交仍关联
root
身份,可通过以下命令修正:
git commit --amend --author="你的Gitee用户名 <你的Gitee绑定邮箱>"
git push --force
关键注意事项
避免使用
sudo
操作 Git :
- Git 仓库无需 root 权限,始终以普通用户操作。
- 如果遇到权限问题,优先修复目录权限,而非使用
sudo
。检查全局 Git 配置 :
- 确保已正确配置全局邮箱和用户名:
git config --global user.email "你的Gitee绑定邮箱" git config --global user.name "你的Gitee用户名"
强制推送的风险 :
git push --force
会覆盖远程仓库历史,仅在私有仓库或独立开发时使用。
ubuntu、vim编译器配置:
curl https://gitee.com/mirrorvim/vim-fast/raw/master/shell/webinstall.sh | bash
((在安装完毕后如果遇到输出混乱的问题,可以直接关闭终端重启就可以了))
出现
后按下回车
出现下图,安装完成
xshell,tmux 打开的颜色混乱
- xshell中 “工具” -> “选项” -> “高级”->“使用本色”,打开后重启xshell
- tmux
1. 通过`echo $TERM` 查找终端类型,通常是`xterm-256color`或者`screen-256color`
2. 编辑`~/.tmux.conf` 添加
set -g default-terminal "xterm-256color"
#set -g default-terminal "screen-256color" # 如果使用screen-256color则用这条指令
set-option -ga terminal-overrides ",*256col*:Tc"
3. 重启tmux
- 如果还是无法解决,可以切换主题为onedark,并关闭termguicolors,设置
- let g:onedark_termcolors=256
其他问题直接查看大佬的gitee就行