Ubuntu系统设置常见问题处理详细总结

一、简介

本文主要总结了ubuntu常见系统问题,具体如下:
1、ubuntu不显示有线连接图标,无法保存网络ip设置;
2、ubuntu不能root登录;
3、git命令无法自动补全;
4、root用户不能git命令不能补全,普通用户可以;
5、如何设置root用户自动登录
6、ssh登录windows设置
7、sudo无需输入密码
9、设置DNS
10、ssh不能以root用户远程登陆Ubuntu系统
11、通过图形或者脚本设置静态ip后重启又会自动新增一个dhcp的ip
12、linux系统搭建tftp服务端过程
13、限制sudo的执行root权限范围

二、常见问题

注意:ubuntu默认安装无vim命令,可以使用gedit代替使用。

1、ubuntu不显示有线连接图标,无法保存网络ip设置

方法一:

/etc/NetworkManager/NetworkManager.conf中managed=false改为managed=true  
[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=true   
[device]
wifi.scan-rand-mac-address=no
/usr/lib/NetworkManager/conf.d/10-globally-managed-devices.conf新增except:type:ethernet
[keyfile]
unmanaged-devices=*,except:type:ethernet,except:type:wifi,except:type:gsm,except:type:cdma

方法二:

sudo service network-manager stop
sudo rm /var/lib/NetworkManager/NetworkManager.state
sudo service network-manager start
sudo gedit /etc/NetworkManager/nm-system-settings.conf
false ----改成---> true
sudo service network-manager restart

(1) Ubuntu Server 修改 IP地址

sudo vim /etc/network/interfaces

加入以下语句:

auto eth0
iface eth0 inet static
address xxx.xxx.xxx.xxx #IP地址
netmask xxx.xxx.xxx.xxx #子网掩码
gateway xxx.xxx.xxx.xxx #网关

(2) Ubuntu Server 修改DNS

sudo vim /etc/resolv.conf

改为如下内容:

search localdomain #如果本Server为DNS服务器,可以加上这一句,如果不是,可以不加
nameserver 172.16.3.4 #希望修改成的DNS
nameserver 172.16.3.3 #希望修改成的DNS

2、ubuntu不能root登录

1,登录普通用户, 打开终端执行命令, 使用su root或sudo -i切换到root用户(必须)

su root

按照提示输入密码即可切换用户。
若root账户密码忘记,使用如下命令重设后再切换。

sudo passwd root

2,在终端中输入如下命令,打开文件

vim /etc/pam.d/gdm-autologin  

将打开的文件中第三行前加#,注释掉语句 “auth required pam_succeed_if.so user != root quiet_success”
3,保存并退出,继续在终端执行

vim /etc/pam.d/gdm-password

将打开的文件中第三行语句加#注释掉,注释掉语句“auth required pam_succeed_if.so user != root quiet_success”
4,保存并退出。在终端继续执行

vim /root/.profile

将打开的文件中“mesg n 2> /dev/null || true” 改为

tty -s&&mesg n 2> /dev/null || true

5,保存并退出。
6,重启电脑,即可以root用户登录。

3、git命令无法自动补全

apt install bash-completion -y //重启终端

4、root用户不能git命令不能补全,普通用户可以

1.用vim打开下面打文件

vim /root/.bashrc

2.找到最后的三行,把注释掉的三行去掉前面的#,再重新登录下账户就可以

if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
. /etc/bash_completion
fi

5、如何设置root用户自动登录

1、首先要按第二点先设置可以root用户登录;
2、vim /etc/gdm3/custom.conf
添加如下内容:

[daemon]
AutomaticLoginEnable=true
AutomaticLogin=root

6、ssh登录windows设置

windows安装ssh服务步骤:
1.打开windows10,在设置/应用/应用和功能/可选功能/添加功能中加入Openssh 服务端程序,下载
2.在win+S,服务,打开本地服务界面,找到OpenSSH SSH Server,启动方式改为自动
3.打开防火墙/高级设置/新建入站规则/打开22端口(SSH默认)

7、sudo无需输入密码

设置test用户,注意将内容增加到最后,可能被group设置的分组覆盖导致无法生效

vim /etc/sudoers
#%test   ALL=(ALL) NOPASSWD: ALL
test ALL=(ALL) NOPASSWD: ALL

8、 设置su为不需要密码

如果需要对某用户su命令也不需要输入密码,则需要修改下列的:
1)切换到root权限;
2)创建group为wheel分组,命令为groupadd wheel;
3)将用户加入wheel group中,命令为usermod -G wheel test;
4)修改su的配置文件/etc/pam.d/su,增加下列项:

 auth       required   pam_wheel.so group=wheel
 auth       sufficient pam_test.so trust use_uid

9、设置DNS

注意正常我们更改/etc/resolv.conf可以临时生效,想要永久保存需要更改:

vim /etc/resolvconf/resolvconf.base
nameserver 192.168.2.40 //DNS
//重启服务
resolvconf -u
systemctl restart resolvconf.service

//也可以在resolvconf.service中的脚本中加入
vim /lib/systemd/systemd-resolved //将DNS注释去掉然后设置DNS值
DNS=8.8.8.8

10、ssh不能以root用户远程登陆Ubuntu系统

vim /etc/ssh/sshd_config

PermitRootLogin prohibit-password
StrictModes yes

改为:
在这里插入图片描述

11、通过图形或者脚本设置静态ip后重启又会自动新增一个dhcp的ip

1、关闭dhcp自动生成ip

vim /etc/netplan/00-installer-config.yaml  // dhcp4: 内容改为false
 network:
  ethernets:
    enp0s31f6:
      dhcp4: false
  version: 2

2、查看dhch自动生成配置文件目录
/etc/NetworkManager/system-connections/xxx

12、linux系统搭建tftp服务端过程

1、安装依赖包
sudo apt-get install tftp-hpa tftpd-hpa
sudo apt-get install xinetd

2、配置/etc/xinetd.conf
vi /etc/xinetd.conf
# Simple configuration file for xinetd
#
#Some defaults, and include /etc/xinetd.d/
defaults
{
#Please note that you need a log_type line to be able to use log_on_success
#and log_on_failure. The default is the following :
#log_type = SYSLOG daemon info
}
includedir /etc/xinetd.d
查看是否有 xinetd.conf 查看内容是否一致, 如果没有创建一个,并输入如下内容

3、配置/etc/default/tftpd-hpa
sudo vim /etc/default/tftpd-hpa
设置共享目录TFTP_DIRECTORY=“/srv/tftp”

创建文件夹 mkdir /srv/tftp
4、设置权限 chmod 777 /srv/tftp -R
5、重启tftp服务 sudo service tftpd-hpa start

13、限制sudo的执行root权限范围

因为有时候会要求普通用户用于部分root权限,可以通过sudo进行限制,具体如下:

vim /etc/sudoers 
//指定可执行和不可执行的命令
test ALL = ALL, !/bin/su ,!/bin/apt-get,!/bin/dpkg,!/bin/chattr  //su、apt-get、dpkg、chattr命令无权限执行
//执行会报错:Sorry, user test is not allowed to execute '/usr/sbin/su' as root
//chattr可以限制该文件被普通用户以sudo方式更改
//终端执行以下命令限制文件不可更改,取消限制用参数-i
chattr +i /etc/sudo.conf
chattr +i /etc/sudoers
chattr +i /etc/sudoers.d/

此时,普通用户不能以sudo方式执行限制的命令,同时不能更改配置

//常见需要限制的命令如下:
test ALL = ALL, !/bin/su ,!/bin/apt-get,!/bin/dpkg,!/bin/apt,!/bin/chattr,!/bin/passwd,!/sbin/visudo,!/sbin/useradd,!/sbin/adduser,!/sbin/userdel,!/sbin/deluser,!/bin/rm,!/bin/rmdir,!/bin/vi,!/bin/vim,!/bin/gedit,!/sbin/poweroff,!/sbin/reboot,!/sbin/init,!/sbin/ifup,!/sbin/ifdown

猜你喜欢

转载自blog.csdn.net/Luckiers/article/details/125819415