hawei EulerOS - 安装后的基本配置操作

概述

为了在本地先测试, 再将东西上传到华为云服务器, 在本地搭了一个EulerOS的虚拟机环境.
因为EulerOS是基于CentOS改进的, 所以用到的操作可以参考CentOS环境.

记录一下操作过程, 以后用到的时候参考.

环境搭建

vmware16.x + 模拟我的华为云服务器的配置(2CPU + 4G内存 + 40G硬盘)
iso安装镜像 : EulerOS-V2.0SP5-x86_64-dvd.iso
中文向导, 自动分区, 设置root口令, 装基本系统(没有勾选其他附加选项)
安装过程挺快的, 10分钟不到.

关机命令

安装完虚拟机后, 想关机做快照, 使用shutdown命令不好使.
查华为官方文档
在这里插入图片描述
查到必须使用systemctl来关机, 而不是shutdown
在这里插入图片描述

systemctl poweroff

试试能不能ping通外网

如果在虚拟机中直接ping百度, 是ping不通的.
在这里插入图片描述

查看当前网络配置

在这里插入图片描述
可以看到网卡IP没配置

查看网卡配置文件名称

网卡文件路径为 /etc/sysconfig/network-scripts

在这里插入图片描述
可以看到网卡配置文件名称位 ifcfg-ens33

查看虚拟网卡编辑器, 确定要修改的IP信息

在这里插入图片描述
可以看到网关可以设置为192.168.236.2, 掩码可以设置为255.255.255.0

在这里插入图片描述
可以看到虚拟机中的EulerOS的IP, 可以设置为192.168.236.x
x的有效范围 = (x == 1) || ((x >= 3) && (x <= 127))

现在就可以假设要改的IP信息如下:
网关 = 192.168.236.2
掩码 = 255.255.255.0
IP = 192.168.236.60

配置静态IP

cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens33.bk
vi ./ifcfg-ens33

输入i, 进入插入模式
先将原始内容用 # 字符先注释掉
然后按照官方文档改成我们上面假设的IP信息
按q退出编辑模式, 键入 wq, 保存并退出.
查看编辑完的网卡配置文件
在这里插入图片描述
重启网络

systemctl restart network

查看网卡状态
在这里插入图片描述
现在看到网卡已经有IP了.

退出虚拟网卡编辑器
从主机ping虚拟机

C:\Users\me>ping 192.168.236.60

正在 Ping 192.168.236.60 具有 32 字节的数据:
来自 192.168.236.60 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.236.60 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.236.60 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.236.60 的回复: 字节=32 时间<1ms TTL=64

192.168.236.60 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 0ms,平均 = 0ms

可以看到, 可以ping通虚拟机内的EulerOS

查看主机地址, 在win10中, iponfig, 看到主机地址为 192.168.1.4

从虚拟机中ping主机

在这里插入图片描述
可以看到, EulerOS可以ping通主机.
从虚拟机中的EulerOS ping外网试试, 拿baidu试试
先从主机上ping百度

C:\Users\chenx>ping www.baidu.com

正在 Ping www.baidu.com [180.101.49.12] 具有 32 字节的数据:
来自 180.101.49.12 的回复: 字节=32 时间=37ms TTL=52
来自 180.101.49.12 的回复: 字节=32 时间=47ms TTL=52
来自 180.101.49.12 的回复: 字节=32 时间=38ms TTL=52

180.101.49.12 的 Ping 统计信息:
    数据包: 已发送 = 3,已接收 = 3,丢失 = 0 (0% 丢失)

可以看到百度现在的IP为180.101.49.12
在EulerOS中, ping IP和域名试试.
在这里插入图片描述
可以看到, 可以ping通外网IP, 但是ping不同外网域名.
这说明, 按照官方文档配置网卡时, 没有配置DNS.
现在继续修改 ifcfg-ens33, 将DNS加上.
在这里插入图片描述
再ping www.baidu.com, 可以ping通了
在这里插入图片描述

添加非root的用户

root用户只能用于本地
如果用SSH工具(e.g. SecretCRT)登录, 不能使用root用户

# 添加用户 noroot
adduser noroot

# 修改远程用户 noroot 的口令
passwd noroot


在主机中用SecretCRT远程连接EulerOS

查了一下, 现在最新的SecretCRT版本为9.2.3, 但是没找到和谐版.
只找到一个 SecretCRT 8.7.3.2279 的便携和谐版, 就用这个当SSH工具.
在这里插入图片描述
输入口令后, 连上了.
在这里插入图片描述
如果有权限不够的地方, 就用sudo + 命令 来执行.
如果执行的命令需要权限, 又没有加上sudo来执行, EulerOS就直接让输入root用户的口令, 如果通过了验证, 就会继续执行命令.

[noroot@localhost ~]$ systemctl restart network
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
管理系统服务或组件需要认证。
Authenticating as: root
Password: 
==== AUTHENTICATION COMPLETE ===

现在用SecretCRT登录上EulerOS, 看看网卡配置文件的内容

[noroot@localhost ~]$ clear
[noroot@localhost ~]$ cd /etc/sysconfig/network-scripts/
[noroot@localhost network-scripts]$ cat ./ifcfg-ens33
# TYPE=Ethernet
# PROXY_METHOD=none
# BROWSER_ONLY=no
# BOOTPROTO=dhcp
# DEFROUTE=yes
# IPV4_FAILURE_FATAL=no
# IPV6INIT=yes
# IPV6_AUTOCONF=yes
# IPV6_DEFROUTE=yes
# IPV6_FAILURE_FATAL=no
# IPV6_ADDR_GEN_MODE=stable-privacy
# NAME=ens33
# UUID=ebb72046-766e-43f7-8a5d-466cc2504126
# DEVICE=ens33
# ONBOOT=no

TYPE=Ethernet
BOOTPROTO="static"
NAME=ens33
UUID=ebb72046-766e-43f7-8a5d-466cc2504126
DEVICE=ens33
IPADDR=192.168.236.60
NETMASK=255.255.255.0
GATEWAY=192.168.236.2
STARTMODE="auto"
DNS1=8.8.8.8
DNS2=8.8.4.4

[noroot@localhost network-scripts]$ 

现在输入 systemctl poweroff, 关闭并退出EulerOS, 做个虚拟机镜像快照.
现在是IP配好的状态, 以后好多实验都可以用这个快照.

为普通用户分配特权

如果从SSH工具远程登录, 要执行root权限的命令时, 如果没有配置 /etc/sudoers, 命令是不允许运行的
e.g.

[noroot@localhost ~]$ yum install –y nginx
已加载插件:fastestmirror
您需要 root 权限执行此命令。
[noroot@localhost ~]$ sudo yum install –y nginx

我们信任您已经从系统管理员那里了解了日常注意事项。
总结起来无外乎这三点:

    #1) 尊重别人的隐私。
    #2) 输入前要先考虑(后果和风险)。
    #3) 权力越大,责任越大。

[sudo] noroot 的密码:
noroot 不在 sudoers 文件中。此事将被报告。
[noroot@localhost ~]$ 

现在看看 /etc/sudoers 的内容
直接在EulerOS本地登录
more /etc/sudoers
在这里插入图片描述
可以看到 EulerOS是给了一个模板的, 只是功能还没打开, 都用 #字符注释掉了.
那现在去编辑/etc/sudoers文件, 将从远程SSH工具登录的sudo选项打开
从/etc/sudoers开头的注释可以看出, 必须用visudo编辑才行

visudo
在这里插入图片描述
看到组可以运行任何命令设置被屏蔽了.
打开这句, 使wheel组可以运行任何命令
在这里插入图片描述

查看组列表

[noroot@localhost ~]$ cat /etc/group
root:x:0:
bin:x:1:
daemon:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mem:x:8:
kmem:x:9:
wheel:x:10:
cdrom:x:11:
mail:x:12:
man:x:15:
dialout:x:18:
floppy:x:19:
games:x:20:
tape:x:33:
video:x:39:
ftp:x:50:
lock:x:54:
audio:x:63:
nobody:x:99:
users:x:100:
utmp:x:22:
utempter:x:35:
input:x:999:
systemd-journal:x:190:
systemd-network:x:192:
dbus:x:81:
polkitd:x:998:
libstoragemgmt:x:997:
tss:x:59:
ssh_keys:x:996:
rpc:x:32:
ntp:x:38:
chrony:x:995:
sshd:x:74:
slocate:x:21:
stapusr:x:156:
stapsys:x:157:
stapdev:x:158:
noroot:x:1000:

可以看到 wheel 组的级别值 = 10, 权力还不小

给用户改组(将用户noroot的组改到wheel), 必须在本地root用户身份运行

sudo usermod -a -G wheel noroot

在SecretCRT上试试noroot用户是否可以sudo

[noroot@localhost ~]$ visudo
visudo: /etc/sudoers: 权限不够
[noroot@localhost ~]$ sudo visudo
visudo: /etc/sudoers.tmp 未更改
[noroot@localhost ~]$ 

可以看到现在noroot用户可以在SecretCRT上, 用sudo来执行高权限的命令了.

切换到root用户

用sudo时, 要在有权限的命令前面, 每次都加sudo, 有点烦.
可以切换到root用户, 再继续操作.
因为现在的用户noroot已经可以执行sudo命令, 所以直接切到root用户来操作, 方便一些

su - root

看看添加的源中, 都有些啥软件?

sudo yum list
# 这么列出来挺多的, 看不全

# 直接查, e.g. nignx
[noroot@localhost yum.repos.d]$ sudo yum list | grep nginx
nginx.x86_64                          1:1.21.5-1.hce2          base             
nginx-all-modules.noarch              1:1.21.5-1.hce2          base             
nginx-filesystem.noarch               1:1.21.5-1.hce2          base             
nginx-help.noarch                     1:1.21.5-1.hce2          base             
nginx-mod-http-image-filter.x86_64    1:1.21.5-1.hce2          base             
nginx-mod-http-perl.x86_64            1:1.21.5-1.hce2          base             
nginx-mod-http-xslt-filter.x86_64     1:1.21.5-1.hce2          base             
nginx-mod-mail.x86_64                 1:1.21.5-1.hce2          base             
nginx-mod-stream.x86_64               1:1.21.5-1.hce2          base             
pcp-pmda-nginx.x86_64                 5.3.5-6.hce2             base             
[noroot@localhost yum.repos.d]$ sudo yum search nginx
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
============================================================ N/S matched: nginx =============================================================
nginx-all-modules.noarch : Nginx modules
nginx-filesystem.noarch : Filesystem for the Nginx server
nginx-help.noarch : Documents for nginx
nginx-mod-http-image-filter.x86_64 : HTTP image filter module for nginx
nginx-mod-http-perl.x86_64 : HTTP perl module for nginx
nginx-mod-http-xslt-filter.x86_64 : XSLT module for nginx
nginx-mod-mail.x86_64 : mail modules for nginx
nginx-mod-stream.x86_64 : stream modules for nginx
pcp-pmda-nginx.x86_64 : Performance Co-Pilot (PCP) metrics for the Nginx Webserver
nginx.x86_64 : A HTTP server, reverse proxy and mail proxy server

  名称和简介匹配 only,使用“search all”试试。
[noroot@localhost yum.repos.d]$ 

可以看出, 用 sudo yum search xx, 比较详细, 还带简介.

总结

到此, 已经可以正常使用EulerOS.
现在装第三方软件(e.g. nginx, apache), 还有点问题, 应该和yum库配置有关系, 正在实验.

END

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐