dgg 删除光标前的所有内容
dG 删除光标后的所有内容
dg0 删除行第一个
ctrl+shift+t, 两个终端开在同一个页面
配置yum源:
vim base.repo
[base]
name=base
baseurl=http://classroom.example.com/content/rhel7.0/x86_64/dvd
gpgcheck=0
yum repolist 查看到列出的包,表示成功。
在客户端做一遍
①配置 SELinux
SElinux 有三种模式,请将 server0 与 desktop0 运行为强制模式
vim /etc/selinux/config
SELINUX=enforcing
setenforce 1
getenforce
在客户端做一遍
②配置 SSH 访问
用户能够从网络 172.25.0.0/16 内的客户端通过 SSH 访问您的两个虚拟机系统
在域 my133t.org 内的客户端不能访问您的两个虚拟机系统
# vim /etc/hosts.allow
sshd : 172.25.0.
# vim /etc/hosts.deny
sshd : 172.17.10.
man -k rich 找到firewalld.richlanguage
man firewalld.richlanguage | grep rule.*service
firewall-cmd --add-rich-rule=' rule family="ipv4" source address="172.17.10.0/24" service name="ssh" reject'
firewall-cmd --add-rich-rule=' rule family="ipv4" source address="172.17.10.0/24" service name="ssh" reject' --permanent
history -a
vim .bash_history
在客户端粘贴:
# vim /etc/hosts.allow
sshd : 172.25.0.
# vim /etc/hosts.deny
sshd : 172.17.10.
family="ipv4" source address="172.17.10.0/24" service name="ssh" reject'
firewall-cmd --add-rich-rule=' rule family="ipv4" source address="172.17.10.0/24" service name="ssh" reject' --permanent
③自定义用户环境
在系统 server0 和 desktop0 上创建自定义命令为 psa,
此自定义命令将执行 /bin/ps -aux,
此命令对系统中所有用户有效。
vim /etc/bashrc
alias psa='/bin/ps -aux'
source /etc/bashrc
psa
在客户端重复一遍操作
④配置防火墙端口转发
在 server0 上配置端口转发,在 172.25.0.0/16 中的系统,访问 server0 的本地端口 5423 将被转发到 80,
此设置永久生效。
man firewalld.richlanguage | grep rule.*forward
firewall-cmd --permanent --add-rich-rule 'rule family="ipv4" source address="172.25.0.0/16" forward-port to-port="80" protocol="tcp" port="5423"'
firewall-cmd --reload
验证方法1:firewall-cmd --list-all
验证方法2:
yum -y install httpd
echo test > /var/www/html/index.html
systemctl restart httpd
systemctl enable httpd
然后去客户端测试,本地(server0)不走防火墙:
切换到desktop0,输入:
curl http://server0:5423 ,看到输出内容,
⑤配置链路聚合
在 server0 和 desktop0 之间按以下要求配置链路聚合
此链路使用接口 eth1 和 eth2
此链路在一个接口失效后,仍然能工作
此链路在 server0 上使用地址 192.168.0.11/24
此链路在 desktop0 上使用地址 192.168.0.10/24
此链路在系统重启后依然保持正常状态
man -k team
man teamd.conf | grep back
man -k nmcli
man nmcli-examples | grep nmcli.*team
nmcli con add type team con-name Team1 ifname Team1 config '{"runner": {"name": "activebackup"}'
nmcli device status 查看多一张网卡
nmcli con add type team-slave con-name Team1-slave1 ifname eth1 master Team1
nmcli con add type team-slave con-name Team1-slave2 ifname eth2 master Team1
man nmcli | grep -A 1 nmcli.*mod
nmcli con mod Team1 connection.autoconnect yes ipv4.method manual ipv4.addresses "192.168.0.11/24"
nmcli con up Team1
ip a s
在客户端复制一遍: 192.168.0.11/24改成10
nmcli con add type team con-name Team1 ifname Team1 config '{"runner": {"name": "activebackup"}
nmcli con add type team-slave con-name Team1-slave1 ifname eth1 master Team1
nmcli con add type team-slave con-name Team1-slave2 ifname eth2 master Team1
nmcli con mod Team1 connection.autoconnect yes ipv4.method manual ipv4.addresses
"192.168.0.10/24"
nmcli con up Team1
ip a s Team1
teamdctl team1 state
⑥配置 IPV6 地址
在您的考试系统上配置接口 eth0 使用如下 IPv6 地址
server0 上的 IP 地址应该是 fddb:fe2a:ab1e::0:64/64
desktop0 上的 IP 地址应该是 fddb:fe2a:ab1e::0:65/64
两个系统必须能与网络 fddb:fe2a:ab1e 内的系统通信
地址必须在重启后依然生效
两个系统保持当前的 IPv4 地址并能通信
man nmcli | grep -A 1 nmcli.*mod
nmcli con mod "System eth0" connection.autoconnect yes ipv6.method manual ipv6.addresses "fddb:fe2a:ab1e::0:64/64"
nmcli connection up 'System eth0'
在客户端:
nmcli con mod "System eth0" connection.autoconnect yes ipv6.method manual ipv6.addresses "fddb:fe2a:ab1e::0:65/64"
⑦配置本地邮件服务
在 server0 和 desktop0 上配置邮件服务,满足如下要求
这些系统不接受外部发来的邮件
在这些系统上本地发送任何邮件都回被路由到 classroom.example.com
从这些系统上发送的邮件显示来自于 classroom.example.com
您可以通过发送邮件到 ldapuser0 来测试您的配置
您可以通过访问 http://classroom.example.com/mail 来验证您的配置
yum search mail,找到postfix.x86_64
rpm -qc postfix ,查到配置文件
# vim /etc/postfix/main.cf
切换到最后一行找到下面这个路径
readme_directory = /usr/share/doc/postfix-2.10.1/README_FILES
新开一个端口切换进去
#cd /usr/share/doc/postfix-2.10.1/README_FILES
# vim STANDARD_CONFIGURATION_README 编辑STAN 用tab补齐
进去后输入 /null 找到下面几个配置
3 myorigin = $mydomain
4 relayhost = $mydomain
5 inet_interfaces = loopback-only
6 mydestination =
复制到/etc/postfix/main.cf的最下面,
继续在配置文件中寻找 /local ,找到下面这行
5 local_transport = error:local mail delivery is disabled 也复制过去
然后在/etc/postfix/main.cf中修改
myorigin = example.com 修改这个域
relayhost = [classroom.example.com] 还有这个,其他不用动,记得加个中括号
inet_interfaces = loopback-only
mydestination =
local_transport = error:local mail delivery is disabled
mynetworks = 127.0.0.0/8 [::1]/128 r!postconf |grep ^mynetworks 额外添加一个网卡配置,不容易报错
:wq! 保存退出e
记得两边都做一下,可以直接将这5条配置复制过去,不用修改,配置一样
#systemctl restart postfix
#systemctl enable postfix
测试:
echo test |mail -s test ldapuser0@server0.example.com 这个test是邮件名称
刷新网页
⑧在 server0 上配置 SAMBA 服务
您的 samba 服务器必须是 STAFF 工作组的一个成员
只有网段 172.25.0.0/16 内的客户端可以访问 /common 共享
common 必须是可以浏览的
用户 floyd 必须能够读取共享中的内容,如果需要的话,验证密码是 flectrag
yum search samba
yum -y install samba-client.x86_64 samba-common.x86_64 samba.x86_64
rpm -qc samba-common ,查询配置文件
vim /etc/samba/smb.conf
查找工作组: /workgroup ,
workgroup=STAFF
在最后一行添加:
[common]
path=/common
hosts allow=127. 172.25.
browseable=yes
valid users= floyd
mkdir /common
man semanage fcontext | grep \#
semanage fcontext -a -t samba_share_t "/common(/.*)?" ,通过数据库修改目录为 /common
restorecon -R -v /common ,立即生效
ls -ldZ /common/ ,查看 floyd属于other,可以读取
useradd floyd
smbpasswd -a floyd ,给floyd创建密码
pdbedit -L ,列出当前有Samba用户
rpm -ql samba | grep service ,查询服务名字
systemctl restart smb nmb
systemctl enable smb nmb
firewall - cmd -- permanent -- add -service=samba
firewall -cmd -- reload ,重启防火墙,让服务立即生效
切换到客户端:
yum -y install samba-client
smbclient -L server0 -U flovd%flectrag
smbclient //server0/common -U floyd%flectrag
⑨通过SMB共享目录
在server0上配置SMB服务:
SMB服务器必须是STAFF工作组的一个成员
共享/common目录,共享名必须为common
只有example.com域内的客户端可以访问common共享
Common必须是可以浏览的
用户rob,samba密码为redhat , 只读权限访问common共享
1、安装服务,samba,samba-client,2、创建所需要的用户和目录,3、修改配置、4,启动服务并设置开机自启,5,设置防火墙通行,6,客户端检测
yum -y install samba samba-client
useradd -s /sbin/nologin rob
smbpasswd -a rob
mkdir /common
man semanage fcontext | grep \#
semanage fcontext -a -t samba_share_t '/common(/.*)?'
restorecon -v /common/
getsebool -a | grep samba_e 找到这个路径
setsebool -P samba_export_all_rw 1 -P是永久生效,1是开机自启
setsebool -P samba_export_all_ro 1
vim /etc/samba/smb.conf
workgroup = STAFF 修改工作组, 可以直接搜索group
[common] 模板可以切换到配置文件最下面,有模板。
path = /common
browseable = yes
hosts allow = 172.25.0.0/24
# systemctl enable smb nmb
# systemctl restart smb nmb
# firewall-cmd --add-service=samba
# firewall-cmd --add-service=samba --permanent
测试:在desktop上操作
# yum -y install cifs-utils.x86_64 samba-client.x86_64
# smbclient -L //server0/common -U rob%redhat
# mkdir /tmp/common 创建一个挂载点
# mount -t cifs -o username=rob,password=redhat //server0.example.com/common /mnt 测试挂载一下
echo 123 > /mnt/file123 创建一个文件试试,创建失败为正确,因为题目要求没有写权限
# umount /mnt/ 取消挂载 ,完成
⑩配置多用户SMB挂载
在server0上配置SMB服务,共享/devops目录,满足如下要求:
共享名必须为devops
只有example.com域内的客户端可以访问devops共享
devops必须是可以浏览的
用户rob,samba密码为redhat,只读权限访问devops共享
用户brian,samba密码为redhat,读写权限访问devops共享
使用用户 rob永久挂载该共享到desktop0.example.com 的/mnt/multiuser 目录,其他任何用户可以通过用户 brian 来临时获取写的权限。
# mkdir /devops
# useradd -s /sbin/nologin brian
# smbpasswd -a brian
# setfacl -m u:brian:rwx /devops/
# semanage fcontext -a -t samba_share_t '/devops(/.*)?'
# restorecon -v /devops/
# vim /etc/samba/smb.conf 在最后面添加下面参数
[devops]
path = /devops
browseable = yes
write list = brian
hosts allow = 172.25.0.0/24
# systemctl restart smb nmb
接着在Desktop上操作。
# mkdir /mnt/multiuser 最好先下载samba-client 和cifs这软件 ,以免挂载不上
在server上yum下载cifs-untils文件,需要用到配置文件
# yum -y install cifs-utils.x86_64
# man mount.cifs
输出/crede 找下面这个模板
username=value
password=value
domain=value
切换回desktop
# vim /root/smb
username=rob
password=redhat
domain=STAFF
# vim /etc/fstab 其中需要的一些模板都在server上的 man mount.cifs 可以找到
//server0/devops /mnt/multiuser cifs credentials=/root/smb,sec=ntlmssp,_netdev,multiuser 0 0
#mount -a
在desktop上面测试
# su - rob
$ cifscreds add server0
$ touch /mnt/multiuser/sss
$ logout
# su - brian
$ cifscreds add server0
$ touch /mnt/multiuser/sss
$ logout
# chmod 400 /root/smb 测试,rob下不能创建,brian可以创建就是成功了
⑩在 server0 上配置 NFS 服务
以只读的方式共享 /public,同时只能被 example.com 内用户访问
以读写的方式共享 /protected 能被 example.com 内用户访问
访问 /protected 需要通过 kerberos 安全加密,您可以使用下边链接的秘钥:http://classroom.example.com/pub/keytabs/server0.keytab
目录 /protected 应该包含名为 project 拥有人为 ldapuser1 的子目录
用户 ldapuser1 能以读写的方式访问 /protected/project
# yum -y install nfs-utils
# mkdir -p /protected/project
# mkdir /public
# chown -R ldapuser0 /protected/project
# vim /etc/exports
/public *.example.com(ro,sec=sys)
/protected *.example.com(rw,sec=krb5p,sync)
# vim /etc/sysconfig/nfs
RPCNFSDARGS="-V 4.2" 在这一行添加 -V 4.2 ,直接在双引号中添加即可
wget -O /etc/krb5.keytab
klist -k /etc/krb5.keytab
systemctl enable nfs-server nfs-secure-server
systemctl restart nfs-server nfs-secure-server
firewall-cmd --add-service=nfs
firewall-cmd --add-service=nfs --permanent
firewall-cmd --add-service=rpc-bind
firewall-cmd --add-service=rpc-bind --permanent
firewall-cmd --add-service=mountd
firewall-cmd --add-service=mountd --permanent
11.挂载一个NFS共享
在desktop0上挂载一个来自server0上的NFS共享,并符合下列要求:
/pulbic共享挂载到本地的/mnt/nfsmount
/protected挂载到本地的/mnt/nfssecure,并使用安全的方式
密钥下载地址:http://classroom.example.com/pub/keytabs/desktop0.keytab
用户ldapuser0能够在/mnt/nfssecure/project上创建文件
这些文件系统在系统启动时自动挂载
在客户端! ,desktop0上:
# vim /etc/chrony.conf 确认时间同步
server classroom.example.com iburst
# systemctl restart chronyd.service
# systemctl enable chronyd
# chronyc sources -v
一般都是默认安装的
# mkdir -p /mnt/nfsmount /mnt/nfssecure
# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/desktop0.keytab
# klist -k /etc/krb5.keytab
# vim /etc/fstab
server0.example.com:/public /mnt/nfsmount nfs sec=sys 0 0
server0.example.com:/protected /mnt/nfssecure nfs sec=krb5p,v4.2 0 0
# systemctl enable nfs-secure
# systemctl start nfs-secure.service
# mount -a
# su - ldapuser0
$ kinit 密码是kerberos
#df -Th 看到两个目录都挂载上就是对了
12.实现一个web服务器
在server0上配置一个站点http://server0.example.com,然后执行以下步骤:
从http://classroom.example.com/materials/station.html下载文件
将文件重命名为index.html,绝对不能修改此文件的内容
将index.html拷贝到你的web服务器的DocumentRoot目录下
来自example.com域的客户端可以访问此web站点
来自my133t.org域的客户端拒绝访问此web站点
虚拟主机配置文件为vhost-server0.conf
# yum -y install httpd mod_ssl mod_wsgi 安装所需要的安装包
httpd是web,mod_ssl是安全web,mod_wsgi是动态web
# wget -O /var/www/html/index.html http://classroom.example.com/materials/station.html
# cat /var/www/html/index.html
<h1 style="color:blue"> server0.example.com</h1>
# vim /etc/httpd/conf.d/vhost-server0.conf
新开一个server0端口,找模板
# vim /etc/httpd/conf.d/ssl.conf 输入 /Vir 找到后面带着443的这个模板,
# vim /etc/httpd/conf/httpd.conf 然后在这个里面继续找模板,搜索Directory,找到这个目录
<VirtualHost _default_:80> 修改443端口为80端口
DocumentRoot /var/www/html 最好去掉引号。实际有没有 无所谓
ServerName server0.example.com
<Directory /var/www/html> 这改成指定目录
Require host example.com 这也要改一下
Require all denied
</Directory>
</VirtualHost>
:wq!
#systemctl restart httpd
#systemctl enable httpd
#firewall-cmd --add-service=http
#firewall-cmd --add-service=https
#firewall-cmd --add-service=http --permanent
#firewall-cmd --add-service=https --permanent
2配置安全web服务
站点http://server0.example.com配置TLS加密:
签名的证书:http://classroom.example.com/pub/tls/certs/server0.crt
证书的密钥:http://classroom.example.com/pub/tls/private/server0.key
证书的授权信息:http://classroom.example.com/pub/example-ca.crt
再开一个server端,方便配置
# vim /etc/httpd/conf.d/ssl.conf 就这样开着不用动,千万别动
在另外一个server端操作
# cat /etc/httpd/conf.d/vhost-server0.conf > /etc/httpd/conf.d/server0-ssl.conf
这里是方便模板cp。删除一些没用的,其他的从SSL开始 都是在另外那个打开配置文件的server端里面去找模板复制
# vim /etc/httpd/conf.d/server0-ssl.conf
<VirtualHost _default_:443>
DocumentRoot /var/www/html
ServerName server0.example.com
SSLEngine on 从这开始找模板
SSLProtocol all -SSLv2 -SSLv3 多加一个v3
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
SSLHonorCipherOrder on
SSLCertificateFile /etc/pki/tls/certs/server0.crt 结尾的名字和题目上模板名字一样,比较方便
SSLCertificateKeyFile /etc/pki/tls/private/server0.key
SSLCACertificateFile /etc/pki/tls/certs/example-ca.crt
</VirtualHost>
:wq!
# cat /etc/httpd/conf.d/server0-ssl.conf
# wget http://classroom.example.com/pub/tls/certs/server0.crt -O /etc/pki/tls/certs/server0.crt
# wget http://classroom.example.com/pub/tls/private/server0.key -O /etc/pki/tls/private/server0.key
# wget http://classroom.example.com/pub/example-ca.crt -O /etc/pki/tls/certs/example-ca.crt
# chmod 600 /etc/pki/tls/private/server0.key
# systemctl restart httpd
验证:
[root@desktop0 ~]# curl http://server0.example.com -k
<h1 style="color:blue"> server0.example.com</h1>
显示出来就表示成功了
3配置虚拟主机
在server0上扩展你的web服务器,为站点http://www0.example.com创建一个虚拟主机,
然后执行以下步骤:
设置DocumentRoot为/var/www/virtual
从http://classroom.example.com/materials/www.html下载文件,并重命名为
index.html,不要对文件index.html内容做任何修改
将index.htm文件放到虚拟主机的DocumentRoot目录下
确保floyd用户能够在/var/www/virtual目录下创建文件
虚拟主机配置文件为vhost-www0.conf
注意:原始站点http://server0.example.com必须仍然能够访问。站点的所用的域名网
络中已有DNS服务器解析
#mkdir /var/www/virtual
#wget -O /var/www/virtual/index.html http://classroom.example.com/materials/www.html
cat /var/www/virtual/index.html 查看主页内容
#useradd floyd
#setfacl -m u:floyd:rwx /var/www/virtual/
切换到conf.d 目录:
cd /etc/httpd/conf.d
cp vhost-server0.conf vhost-www0.conf 复制,修改
#vim /etc/httpd/conf.d/vhost-www0.conf
<VirtualHost _default_:80>
DocumentRoot /var/www/virtual
ServerName www0.example.com
<Directory /var/www/virtual>
Require all granted
</Directory>
</VirtualHost>
#systemctl restart httpd.service
#curl http://www0.example.com
能出来就对了
4配置web内容的访问
在你的server0站点DocumentRoot目录下创建一个名为private的目录,
要求如下:
从http://classroom.example.com/materials/private.html下载一个文件副本到这个
目录,并且重命名为index.html。不要对这个文件的内容作任何修改
从server0上,任何人都可以浏览private的内容,但是从其他系统就不能访问这个
目录的内容
切记在server0上配置
# mkdir /var/www/html/private
# wget -O /var/www/html/private/index.html http://classroom.example.com/materials/private.html
# vim /etc/httpd/conf.d/vhost-server0.conf
添加下面这些
<Directory /var/www/html/private>
Require all denied
Require local
</Directory>
# systemctl restart httpd
测试:
[root@server0 ~]# curl http://server0.example.com/private/index.html
[root@desktop0 ~]# curl http://server0.example.com/private/index.html
考试时候不确定是server0做还是www做,所以尽量都做一遍,就把上面3条命令中的html都改为virtual就可以,编辑中的html也改成virtual,重启一下httpd就可以
5实现动态Web内容
在server0上配置提供动态web内容,要求如下:
动态内容由名为webapp0.example.com的虚拟主机提供
虚拟主机监听在端口8908
从http://classroom.example.com/materials/webinfo.wsgi下载一个脚本, 然后放
在适当的位置,无论如何不要修改此文件的内容
客户端访问http://webapp0.example.com:8908/时应该接收到动态生成的web 页面
http://webapp0.example.com:8908必须能够被example.com域内所有系统访问
# mkdir -p /var/www/webapp
# wget -O /var/www/webapp/webinfo.wsgi http://classroom.example.com/materials/webinfo.wsgi
# cat /var/www/webapp/webinfo.wsgi
# semanage port -l | grep http
# semanage port -a -t http_port_t -p tcp 8908
# firewall-cmd --add-port=8908/tcp
# firewall-cmd --add-port=8908/tcp --permanent
切换到conf.d 目录:
cd /etc/httpd/conf.d
cp vhost-server0.conf vhost-webapp.conf 复制,修改
# vim /etc/httpd/conf.d/webapp.conf
Listen 8908
<VirtualHost _default_:8908>
ServerName webapp0.example.com
WSGIScriptAlias / /var/www/webapp/webinfo.wsgi
</VirtualHost>
# systemctl restart httpd
# curl http://webapp0.example.com:8908 只要出结果就对,或者网页firefox也访问一下,刷新几次,显示结果不同就是对了
创建一个脚本
在server0上创建一个名为/root/foo.sh的脚本,让其提供下列特性:
当运行/root/foo.sh redhat,输出fedora
当运行/root/foo.sh fedora,输出redhat
当没有任何参数或者参数不是redhat或者fedora时,其错误输出产生以下的信
息:/root/foo.sh redhat|fedora
# vim /root/foo.sh
#!/bin/bash
case $1 in
redhat)
echo "fedora"
;;
fedora)
echo "redhat"
;;
*)
echo "/root/foo.sh redhat|fedora"
exit 1
;;
esac
# chmod 755 /root/foo.sh
测试:
# /root/foo.sh
/root/foo.sh redhat|fedora
# /root/foo.sh redhat
fedora
# /root/foo.sh fedora
redhat
配置iSCSI服务端
配置server0提供一个iSCSI服务磁盘名为iqn.2014-11.com.example:server0,并符合下列要
求:
服务端口为3260
使用iscsi_store作为其后端卷,其大小为3G
此服务只能被desktop0.example.com访问
# yum -y install targetcli.noarch
# fdisk /dev/vdb 考试应该只有vda一块盘,道理一样
n-p- +4G-t-8e-w
# partprobe
# vgcreate iscsi_store /dev/vdb1
# lvcreate -L 3G -n iscsi_store iscsi_store
# targetcli
/> ls
/> /backstores/block create iscsi_store /dev/iscsi_store/iscsi_store
/> ls
/> /iscsi create iqn.2014-11.com.example:server0
/> ls
/> cd iscsi/iqn.2014-11.com.example:server0/tpg1/
/iscsi/iqn.20...:server0/tpg1> acls/ create iqn.2014-11.com.example:desktop0
/> ls
/iscsi/iqn.20...:server0/tpg1> luns/ create /backstores/block/iscsi_store
/> ls
/iscsi/iqn.20...:server0/tpg1> portals/ create 172.25.0.11
/> ls
/iscsi/iqn.20...:server0/tpg1> cd /
/> saveconfig
/> exit
# systemctl enable target.service
# systemctl start target.service
#firewall-cmd --add-port=3260/tcp
#firewall-cmd --add-port=3260/tcp --permanent
部署MariaDB数据库
在server0上部署MariaDB。要求如下:
仅允许从server0系统上使用登陆到数据库
登陆数据库所用的账号为root,密码为root_password
从http://content.example.com/courses/rhce/rhel7.0/materials/mariadb/mariadb.dump 上下载文件,并将其恢复为legacy库
用户名----密码----权限
mary mary_password 对legacy库的所有数据有选择操作权限
legacy legacy_password 对legacy库的所有数据有选择、插入、更新、删除操作权限
report report_password 对legacy库的所有数据有选择操作权限
# yum -y install mariadb*
# systemctl enable mariadb.service
# systemctl start mariadb.service
# firewall-cmd --add-service=mysql
# firewall-cmd --add-service=mysql --permanent
# mysql_secure_installation
回车>Y>输入题目要求的密码>全部是Y就行了
# vim /etc/my.cnf
在第二行插入
skip-networking=1
# systemctl restart mariadb.service
# wget http://content.example.com/courses/rhce/rhel7.0/materials/mariadb/mariadb.dump
# mysql -uroot -proot_password
> create database legacy;
> show databases;
>quit
# mysql -uroot -proot_password legacy < mariadb.dump
# mysql -uroot -proot_password
MariaDB [(none)]> use legacy;
MariaDB [legacy]> show tables;
man grant 查看帮助
> grant select on legacy.* to mary@'%' identified by 'mary_password'; @'%' 表示来自任何主机
> grant select,insert,update,delete on legacy.* to legacy@'%' identified by 'legacy_password';
> grant select on legacy.* to report@'%' identified by 'report_password';
grant 授权
数据查询填空
在server0上登陆数据库,对legacy库进行查询,并将结果填入相应的框格中。
Q1在product表中,查询RT-AC68U的产品id()
Q2查询类别为Servers的产品的数量()
请在http://classroom.example.com/cgi-bin/mariadb提交
use legacy
show tables
desc product ;
MariaDB [legacy]> show tables;
MariaDB [legacy]> select * from product;
MariaDB [legacy]> select id,name from product where name='RT-AC68U';
这样会查看到数值id,然后登陆网址,将数值写上去。
MariaDB [legacy]> select * from category;
可以看到servers对应id是多少,此处对应是2
> select sum(stock) from product where id_category=2;
将数值填写即可完成
最后先将客户端 umount -a ,然后 服务端 reboot,等服务端起来 先systemctl status nfs 先看nfs状态 ,等nfs状态起来后,在启动客户端