rhce通关必知必会

author author     2022-12-10     628

关键词:

考前一:更改虚机root密码
? 在开机启动出现内核选项时按e,进入启动编辑模式;
? 光标定位到以linux16开头的这一行,按下键盘上的[End]键,直接跳到这一行的末尾,追加rd.break;
? 按Ctrl+x重启进入单用户模式;
? mount -o remount,rw /sysroot
? chroot /sysroot
? echo redhat |passwd –-stdin root
? touch /.autorelabel //为了让selinux生效,否则系统不能正常启动;
? exit
? reboot
?
考前二:配置YUM源
? cd /etc/yum.repos.d/
? vim local.repo
[local.repo]
name=local.repo
baseurl=http://server.rhce.cc/dvd
gpgcheck=0
enabled=1
? scp local.repo system2:/etc/yum.repos.d/

第一题:配置SELinux
SELinux必须在两个系统system1和system2中运行于Enforcing模式
? vim /etc/selinux/config
SELINUX=enforcing
? setenforce 1
第二题:配置SSH访问
按以下要求配置SSH访问:
用户能够从域rhce.cc内的客户端通过SSH远程访问您的两个虚拟机系统
在域my133t.org内的客户端不能访问您的两个虚拟机系统。
system1:
? vim /etc/hosts.allow
sshd : 192.168.122.0/255.255.255.0
或 sshd : .rhce.cc
? vim /etc/hosts.deny
sshd : .my133t.org
? systemctl restart sshd
? systemctl enable sshd
? scp /etc/hosts.allow /etc/hosts.deny system2:/etc/
system2:
? systemctl restart sshd
? systemctl enable sshd
第三题:自定义用户环境
在系统system1和system2上常见自定义命令名为qstat
此自定义命令将执行以下命令:
/bin/ps -Ao pid,tt,user,fname,rsz
此命令对系统中所有用户生效。
system1:
? vim /etc/profile
alias qstat=‘/bin/ps -Ao pid,tt,user,fname,rsz‘
? source /etc/profile
? qstat
system2重复system1步骤即可。
第四题:配置端口转发
在系统system1配置端口转发,要求如下:
在192.168.122.0/24网络中的系统,访问system1的本地端口5423将被转发到80
此设置必须永久有效。
system1:
? man -k firewall
? man firewalld.richlanguage
/examples
EXAMPLE5:
rule family="ipv6" source address="1:2:3:4:6::" forward-port to-addr="1::2:3:4:7" to-port="4012" protocol="tcp" port="4011"
? firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" forward-port to-port="80" protocol="tcp" port="5423"‘(添加转发规则)
? firewall-cmd --add-rich-rule ‘rule family="ipv4" source address="192.168.122.0/24" forward-port to-port="80" protocol="tcp" port="5423"‘ --permanent (使其永久生效)
第五题:配置聚合链路
在system1.rhce.cc和system2.rhce.cc之间按以下要求配置一个链路:
此链路使用接口eth1和eth2
此链路在一个接口失效时仍然能工作
此链路在system1使用下面的地址:172.16.11.25/255.255.255.0
此链路在system2使用下面的地址:172.16.11.35/255.255.255.0
此链路在系统重启之后仍然保持正常状态
system1:
? cd /usr/share/doc/teamd-1.9/example_ifcfgs/1/
? cp * /etc/sysconfig/network-scripts
? cd /etc/sysconfig/network-scripts
? vim ifcfg-team_test0
DEVICE=”team_test0”
NAME=”team_test0”
DEVICETYPE=”Team”
ONBOOT=”yes”
BOOTPROTO=none
NETMASK=255.255.255.0
IPADDR=172.16.11.25
TEAM_CONFIG=’“runner”: “name”: “activebackup”’
? vim ifcfg-eth1
DEVICE=”eth1”
NAME=”eth1”
DEVICETYPE=”TeamPort”
ONBOOT=”yes”
TEAM_MASTER=”team_test0”
? vim ifcfg-eth2
DEVICE=”eth2”
NAME=”eth2”
DEVICETYPE=”TeamPort”
ONBOOT=”yes”
TEAM_MASTER=”team_test0”
? systemctl restart network
? scp ifcfg-eth1 ifcfg-eth2 ifcfg-team_test0 system2:/etc/sysconfig/network-scripts

system2:
? vim ifcfg-team_test0
DEVICE=”team_test0”
NAME=team_test0
DEVICETYPE=”Team”
ONBOOT=”yes”
BOOTPROTO=none
NETMASK=255.255.255.0
IPADDR=172.16.11.35
TEAM_CONFIG=’“runner”: “name”: “activebackup”’
? systemctl restart network
第六题:配置IPv6地址
在您的考试系统上配置接口eth0使用下列IPv6地址:
system1上的地址应该是200e:ac18:e0a/64
system2上的地址应该是200e:ac18:e14/64
两个系统必须能与网络200e:ac18/64内的系统通信
地址必须在重启后依旧生效
两个系统必须保持当前的IPv4地址并能通信
system1:
? nmcli con
? nmcli con modify eth0 ipv6.method auto
? nmcli con modify eth0 ipv6.addresses 200e:ac18:e0a/64
? nmcli con modify eth0 ipv6.method manual
? systemctl restart network
? ifconfig eth0
system2:
? nmcli con
? nmcli con modify eth0 ipv6.method auto
? nmcli con modify eth0 ipv6.addresses 200e:ac18:e14/64
? nmcli con modify eth0 ipv6.method manual
? systemctl restart network
? ifconfig eth0
? ping6 200e:ac18:e14/64
? ping6 200e:ac18:e0a/64

第七题:配置本地邮件服务
在系统system1和system2上配置邮件服务,满足以下要求:
这些系统不接收外部发送来的邮件
这些系统上本地发送的任何邮件都会自动路由到rhgls.rhce.cc
这些系统上发送的邮件显示来自于rhce.cc
您可以通过发送邮件到本地用户‘dave’来测试您的配置
系统rhgls.rhce.cc已经配置把此用户的邮件转到下列URL
http://rhgls.rhce.cc/received_mail/11
system1:
? firewall-cmd --add-service=smtp
? firewall-cmd --add-service=smtp --permanent
? vim /etc/postfix/main.cf
mydestination = //设置为空,这样本地就不能收任何邮件了
relayhost = [rhgls.rhce.cc] //本地发送任何邮件都会被路由到rhgls.rhce.cc
myorigin = rhce.cc //系统上发送的邮件显示来自于rhce.cc
? systemctl restart postfix
? systemctl enable postfix
? 发送测试邮件验证:
? yum install mailx -y
? echo aaaaa |mail -s ‘aaa’ dave
? 在浏览器中打开http://rhgls.rhce.cc/received_mail/11,打开邮件查看
? scp main.cf system2:/etc/postfix
system2
? firewall-cmd --add-service=smtp
? firewall-cmd --add-service=smtp --permanent
? systemctl restart postfix
systemctl enable postfix
第八题:通过SMB共享目录
在system1上配置SMB服务
您的SMB服务器必须是STAFF工作组的一个成员
共享/common目录,共享名必须为common
只有rhce.cc域内的客户端可以访问common共享
common必须是可以浏览的
用户andy必须能够读取共享中的内容,如果需要的话,验证的密码是redhat
? firewall-cmd –-add-service=samba
? firewall-cmd –-add-service=samba --permanent
? yum install samba -y
? systemctl start smb
? systemctl enable smb
? vim /etc/samba/smb.conf
workgroup = STAFF
? mkdir /common (在/创建common文件夹)
? chcon -R -t samba_share_t /common (一定要更改上下文,chcon是临时的)
? semanage fcontext -a -t samba_share_t ‘/common(/.)?‘(永久更改上下文)
? restorecon -vr /common
? vim /etc/samba/smb.conf
[common]
path = /common
hosts allow = 192.168.122.0/24
? id andy (查看andy用户,没有该用户的话就创建)
? useradd andy
? echo redhat |passwd –-stdin andy
? yum whatprovides
/smbpasswd (查找安装SMB密码插件)
? yum install samba-client -y
? smbpasswd -a andy (创建验证密码,输入密码redhat两次)
在system2上进行验证:
? smbclient -L //system1 -U andy%redhat (查看共享目录)
? smbclient //system1/common -U andy%redhat (浏览共享目录)
第九题:配置多用户SMB挂载
在system1共享通过SMB目录/miscellaneous满足以下要求:
共享名为miscellaneous
共享目录miscellaneous只能被rhce.cc域中的客户端使用
共享目录miscellaneous必须可以被浏览
用户silene必须能以读的方式访问此共享,访问密码是redhat
用户akira必须能以读写的方式访问此共享,访问密码是redhat
此共享永久挂载在system2.rhce.cc上的/mnt/multi目录,并使用用户silene作为认证。任何用户可以通过用户akira来临时获取写的权限。
? mkdir /miscellaneous (在/下创建共享目录miscellaneous)
? chcon -R -t samba_share_t /miscellaneous (SMB创建共享目录后一定要更改上下文)
? vim /etc/samba/smb.conf
[miscellaneous]
path = /miscellaneous
hosts allow = 192.168.122.0/24
writable = no
write list = akira
? chmod o+w /miscellaneous/ (赋予其他人可以写入的权限)
? id silene
? id akira
? useradd silene
? echo redhat |passwd –-stdin silene
? useradd akira
? echo redhat |passwd –-stdin akira
? smbpasswd -a silene
? smbpasswd -a akira
? systemctl restart smb
? systemctl enable smb
在system2上
? mkdir /mnt/multi
? vim /etc/fstab (参阅man mount.cifs)
//system1/miscellaneous /mnt/multi cifs defaults,username=silene,password=redhat,multiuser,sec=ntlmssp 0 0
验证:
? smbclient //system1/miscellaneous -U silene%redhat (测试读写)
? smbclient //system1/miscellaneous -U akira%redhat (测试读写)
? smbclient -L //system1 -U andy%redhat
? yum install cifs-u -y
? mount -a
? df -hT
? cifscreds add system1 -u silene
? cifscreds add system1 -u akira
第十题:配置NFS服务
在system1配置NFS服务,要求如下:
以只读的方式共享目录/public同时只能被rhce.cc域中的系统访问
以读写的方式共享目录/protected能被rhce.cc域中的系统访问
访问/protected需要通过Keyberos安全加密,您可以使用下面URL提供的密钥
http://host.rhce.cc/materials/nfs_server.keytab
目录/protected应该包含名为confidential拥有人为ldapuser11的子目录
用户ldapuser11能以读写方式访问/protected/confidential
system1
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.0/24 service name=nfs accept‘
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.0/24 service name=nfs accept‘ --permanent
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.0/24 service name=rpc-bind accept‘
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.0/24 service name=rpc-bind accept‘ –permanent
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.0/24 service name=mountd accept‘
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.0/24 service name=mountd accept‘ –permanent
? mkdir /public
? vim /etc/exports
/public
(ro,sync)
? exportfs -avr
在system2上验证
? showmount -e system1
? mount system1:/public /mnt (如果出现mount报错,重启system1和system2的nfs和rpcbind服务)
? umount /mnt
继续在system1上操作
? mkdir /protected
? wget -O /etc/krb5.keytab http://host.rhce.cc/materials/nfs_server.keytab
? vim /etc/exports
/protected (rw,sync,sec=krb5p)
? vim /etc/sysconfig/nfs
RPCNFSDARGS="-V 4.2"
? chcon -R -t public_content_t /protected
? mkdir /protected/confidential
? chcon -R -t public_content_t /protected
? chown ldapuser11 /protected/confidential
? systemctl restart nfs-server
? systemctl enable nfs-server
? systemctl restart nfs-secure-server
? systemctl enable nfs-secure-server
第十一题:挂载一个NFS共享
在system2上挂载一个来自system1.rhce.cc的NFS共享,并符合下列要求:
/public挂载在下面的目录上/mnt/nfsmount
/protected挂载在下面的目录上/mnt/nfssecure并使用安全的方式
密钥下载URL如下:http://host.rhce.cc/materials/nfs_client.keytab
用户ldapuser11能够在/mnt/nfssecure/confidential上创建文件
这些文件系统在系统启动时自动挂载
? showmount -e system1
? mkdir /mnt/nfsmount
? vim /etc/fstab
system1.rhce.cc:/public /mnt/nfsmount nfs defaults 0 0
? mount -a
? df -hT
? mkdir /mnt/nfssecure
? wget -O /etc/krb5.keytab http://host.rhce.cc/materials/nfs_client.keytab
? systemctl restart nfs-secure-server
? systemctl enable nfs-sercure-server
? vim /etc/fstab
system1.rhce.cc:/protected /mnt/nfssecure nfs defaults,v4.2,sec=krb5p 0 0
? mount -a
? df -hT
? ssh ldapuser11@system2.rhce.cc
第十二题:配置web站点
system1上配置一个站点http://system1.rhce.cc然后执行下述步骤:
从http://rhgls.rhce.cc/materials/station.html下载文件,
并且将文件重命名为index.html不要修改此文件的内容
将文件index.html拷贝到您的web服务器的DocumentRoot目录下
来自于rhce.cc域的客户端可以访问此Web服务
来自于my133t.org域的客户端拒绝访问此Web服务
system1
? yum groupinstall web
-y
如果yum groupinstall web* -y 安装有问题的话,执行下面的命令安装:
? yum install httpd mod_ssl mod_wsgi -y
? systemctl start httpd
? systemctl enable httpd
? vim /etc/httpd/conf/httpd.conf
ServerName system1.rhce.cc:80
? wget -O /var/www/html/index.html http://rhgls.rhce.cc/materials/station.html
? firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.0/24 service name=http accept‘
? firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.0/24 service name=http accept‘ –-permanent
? systemctl restart httpd
? ping system1.rhce.cc 获得ip地址为192.168.122.100
? vim /etc/hosts
192.168.122.100 system1.rhce.cc
验证:在火狐浏览器中输入system1.rhce.cc登录成功即可。
第十三题:配置安全web服务
为站点http://system1.rhce.cc配置TLS
加密一个已签名证书,从http://host.rhce.cc/materials/system1.crt获取;
此证书的密钥,从http://host.rhce.cc/materials/system1.key获取;
此证书的签名授权信息,从http://host.rhce.cc/materials/domain11.crt获取;
? cd /etc/httpd/conf.d
? wget http://host.rhce.cc/materials/system1.crt
? wget http://host.rhce.cc/materials/system1.key
? wget http://host.rhce.cc/materials/domain11.crt
? vim ssl.conf
SSLCertificateFile /etc/httpd/conf.d/system1.crt
SSLCertificateKeyFile /etc/httpd/conf.d/system1.key
SSLCertificateChainFile /etc/httpd/conf.d/domain11.crt
? systemctl restart httpd
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.0/24 service name=https accept‘
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.0/24 service name=https accept‘ --permanent
第十四题:配置虚拟主机
在system1上扩展您的web服务器,为站点http://www.rhce.cc创建一个虚拟主机;
然后执行下述步骤:
设置DocumentRoot为/var/www/virtual
从http://rhgls.rhce.cc/materials/www.html
下载文件并重命名为index.html不要对文件index.html的内容做任何修改;
将文件index.html放到虚拟主机的DocumentRoot目录下
确保andy用户能够在/var/www/virtual目录下创建文件
注意:原始站点http://system1.rhce.cc必须仍然能够访问
名称服务器rhce.cc提供对主机名www.rhce.cc的域名解析
? ping www.rhce.cc
获取到IP地址为192.168.122.100
? vim /etc/hosts
192.168.122.100 www.rhce.cc
? mkdir /var/www/virtual
? wget -O /var/www/virtual/index.html http://rhgls.rhce.cc/materials/www.html
? setfacl -m u:andy:rwx /var/www/virtual
? cp /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf /etc/httpd/conf.d/vhost.conf
? vim /etc/httpd/conf.d/vhost.conf
<VirtualHost www.rhce.cc:80>
DocumentRoot /var/www/virtual
ServerName www.rhce.cc
</VirtualHost>
<VirtualHost system1.rhce.cc:80>
DocumentRoot /var/www/html
ServerName system1.rhce.cc
</VirtualHost>
? systemctl restart httpd
验证:清除网页缓存后访问www.rhce.cc和system1.rhce.cc,正常即可。
第十五题:配置web内容的访问
在您的system1上的web服务器的DocumentRoot目录下,创建一个名为secret的目录,要求如下:
从http://rhgls.rhce.cc/materials/private.html下载一个文件副本到这个目录;
并且重命名为index.html
不要对这个文件做任何修改;
从system1上,任何人都可以浏览secret的内容;
但是从其他系统不能访问这个目录的内容。
? mkdir /var/www/html/secret /var/www/virtual/secret
? wget -O /var/www/html/secret/index.html http://rhgls.rhce.cc/materials/private.html
? wget -O /var/www/virtual/secret/index.html http://rhgls.rhce.cc/materials/private.html
参考http.conf中Directory的内容,继续编辑vhost.conf
? vim /etc/httpd/conf.d/vhost.conf
<VirtualHost www.rhce.cc:80>
DocumentRoot /var/www/virtual
ServerName www.rhce.cc
</VirtualHost>
<VirtualHost system1.rhce.cc:80>
DocumentRoot /var/www/html
ServerName system1.rhce.cc
</VirtualHost>
<Directory “/var/www/html/secret”>
AllowOverride None
Require local
</Directory>
<Directory “/var/www/virtual/secret”>
AllowOverride None
Require local
</Directory>
? systemclt restart httpd
验证:在物理机上访问www.rhce.cc/secret system1.rhce.cc/secret 两个网址不可访问才正常。然后本机访问可正常访问才算成功。
? curl -s www.rhce.cc/secret/index.html
? curl -s system1.rhce.cc/sectet/index.html
第十六题:实现动态Web内容
在system1上配置提供动态Web内容,要求如下:
动态内容由名为dynamic.rhce.cc的虚拟主机提供
虚拟主机侦听在端口8998
从http://rhgls.rhce.cc/materials/webapp.wsgi下载一个脚本
然后放在适当的位置,无论如何不要求修改此文件的内容
客户端访问http://dynamic.rhce.cc:8998/时应该接收到动态生成的web页面
此http://dynamic.rhce.cc:8998/必须能被rhce.cc域内的所有系统访问
? ping dynamic.rhce.cc
? vim /etc/hosts
192.168.122.100 dynamic.rhce.cc dynamic
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.0/24 port port=8998 protocol=tcp accept‘
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.0/24 port port=8998 protocol=tcp accept‘ --permanent
? vim /etc/httpd/conf/httpd.conf
Listen 8998
? vim /etc/httpd/conf.d/vhost.conf
<VirtualHost www.rhce.cc:80>
DocumentRoot /var/www/virtual
ServerName www.rhce.cc
</VirtualHost>
<VirtualHost system1.rhce.cc:80>
DocumentRoot /var/www/html
ServerName system1.rhce.cc
</VirtualHost>
<VirtualHost dynamic.rhce.cc:8998>
DocumentRoot /var/www/html/yy
ServerName dynamic.rhce.cc
</VirtualHost>
<Directory "/var/www/html/secret">
AllowOverride None
Require local
</Directory>
<Directory "/var/www/virtual/secret">
AllowOverride None
Require local
</Directory>
? yum install mod_wsgi -y
? wget -P /var/www/html/yy/ http://rhgls.rhce.cc/materials/webapp.wsgi
? vim /etc/httpd/conf.d/vhost.conf
<VirtualHost www.rhce.cc:80>
DocumentRoot /var/www/virtual
ServerName www.rhce.cc
</VirtualHost>
<VirtualHost system1.rhce.cc:80>
DocumentRoot /var/www/html
ServerName system1.rhce.cc
</VirtualHost>
<VirtualHost dynamic.rhce.cc:8998>
DocumentRoot /var/www/html/yy
ServerName dynamic.rhce.cc
WSGIScriptAlias /var/www/html/yy/webapp.wsgi
</VirtualHost>
<Directory "/var/www/html/secret">
AllowOverride None
Require local
</Directory>
<Directory "/var/www/virtual/secret">
AllowOverride None
Require local
</Directory>
找改端口模板
? vim /etc/ssh/sshd_config
semanage port -a -t ssh_port -p tcp portnumber
修改成http_port_t
? yum whatprovides /semanage
? yum install policycoreutils-python-2.2.5-11.el7.x86_64 -y
? semanage port -a -t http_port_t -p tcp 8998
? systemctl restart httpd
第十七题:创建一个脚本
在system1上创建一个名为/root/script的脚本,让其提供下列特性:
当运行/root/script foo输出为bar
当运行/root/script bar 输出为foo
当没有任何参数或者参数不是foo或者bar时,其错误输出产生以下的信息:
/root/script foo|bar
? vim /root/script
#!/bin/bash
case $1 in
foo)
echo bar
;;
bar)
echo foo
;;
)
echo ‘/root/script foo|bar’;;
esac
? chmod +x /root/script
第十八题:创建一个添加用户的脚本
在system1上创建一个脚本,名为/root/mkusers
此脚本能实现为系统system1创建本地用户;
并且这些用户的用户名来自一个包含用户名列表的文件;
如果没有提供参数,此脚本应该给出下面的提示信息:
Usage:/root/mkusers
然后退出并返回相应的值;
如果提供一个不存在的文件名,此脚本应该给出下面的提示信息:
Input file not found
然后退出并返回相应的值;
创建的用户登录shell为/bin/false
此脚本不需要为用户设置密码;
您可以从下面的URL获取用户名列表作为测试用:
http://rhgls.rhce.cc/materials/userlist
? vim /root/mkusers
#!/bin/bash
if [ $# -eq 0 ];then
echo "Usage:/root/mkusers"
exit 1
fi
if [ ! -f $1 ];then
echo "Input file not found"
exit 1
fi
while read aa
do
useradd -s /bin/false $aa
done < $1
? wget http://rhgls.rhce.cc/materials/userlist
? chmod +x mkusers
验证:执行脚本
? ./mkusers
? ./mkusers dfafsd
? ./mkusers userlist
第十九题:配置iSCSI
配置system1提供一个iSCSI服务,
磁盘名为iqn.2014-09.com.example.domain:system1
并符合下列要求:
服务端口为3260
使用iscsi_vol作其后端卷,其大小为3G
此服务只能被system2.rhce.cc访问
? yum install target -y
? systemctl start target
? systemctl enable target
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.200 port port=3260 protocol=tcp accept‘
firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=192.168.122.200 port port=3260 protocol=tcp accept‘ –permanent
? lsblk
? fdisk /dev/vda
? p?n?p?+3G
? partprobe /dev/vda
? targetcli
? ls /
? /backstores/block create iscsi_vol /dev/vda4
? ls /
? /iscsi create iqn.2014-09.com.example.domain:system1
? ls /
? cd iscsi/iqn.2014-09.com.example.domain:system1/tpg1
? acls/ create iqn.2014-09.com.example.domain:xx
? ls /
? luns/ create /backstores/block/iscsi_vol
? portals/ create 0.0.0.0 3260
? exit
第二十题:配置iSCSI的客户端
配置system2使其能连接在system1上提供的
iqn.2014-09.com.example.domain11:system1
并符合以下要求:
iSCSI设备在系统启动的期间自动加载;
块设备iSCSI上包含一个大小为1700MiB的分区;
并格式化为xfs;
此分区挂载在/mnt/data上;
同时在系统启动的期间自动挂载;
? yum install iscsi

? vim /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2014-09.com.example.domain11:xx
? systemctl start iscsid
? systemctl enable iscsid
? iscsiadm -m discovery -t st -p system1.rhce.cc -l
? fdisk /dev/sda
n?p?+1700M?w
? mkfs.xfs /dev/sda1
? vim /etc/fstab
/dev/sda1 /mnt/data xfs defaults,_netdev 0 0
? mkdir /mnt/data
? mount -a
第二十一题:配置一个数据库
在system1上创建一个MariaDB数据库,名为Contacts,并符合以下条件:
数据库应该包含来自数据库复制的内容,
复制文件的URL为http://rhgls.rhce.cc/materials/users.mdb
数据库只能被localhost访问。
除了root用户,此数据库只能被用户Luigi查询,此用户密码为redhat
root用户的密码为redhat,同时不允许空密码登录
? yum install mariadb-server mariadb -y
? systemctl start mariadb
? systemctl enable mariadb
? mysql
show databases;
create database Contacts;
? wget http://rhgls.rhce.cc/materials/user.mdb
? mysql
use Contacts
source /root/users.mdb
show tables;
grant select on Contacts. to Luigi@’localhost’ identified by ‘redhat’;
set password=password(‘redhat’);
第二十二题:数据库查询
在系统system1上使用数据库Contacts,并使用相应的SQL查询以回答下列问题:
密码是tangerine的人的名字?
有多少人的姓名是John同时居住在Santa Clara?
? mysql -uroot -predhat
use Contacts
show tables;
desc loc;
desc name;
desc pass;
select
from name join pass where name.aid=pass.bid and password=’tangerine’;
select from name join loc where name.aid=loc.cid and firstname=’John’ and
loction=’Santa Clara’;
select count(
) from name join loc where name.aid=loc.cid and firstname=’John’
and loction=’Santa Clara’;

架构实践架构师必知必会的5种业界主流的架构风格

 【架构实践】架构师必知必会的5种业界主流的架构风格目录 【架构实践】架构师必知必会的5种业界主流的架构风格 查看详情

架构实践架构师必知必会的5种业界主流的架构风格

 【架构实践】架构师必知必会的5种业界主流的架构风格目录 【架构实践】架构师必知必会的5种业界主流的架构风格 查看详情

正则表达式必知必会读书笔记

架构图模拟小案例1.匹配美元 查看详情

tcp/ip,必知必会的

...TCP拥塞控制 0前言本文整理了一些TCP/IP协议簇中需要必知必会的十大问题,既是面试高频问题,又是程序员必备基础素养。 1TCP/IP模型TCP/IP协议模型(TransmissionControlProtocol/InternetProtocol 查看详情

必知必会

1什么是MySQL   MySQL是一个关系型数据库管理系统,属于Oracle旗下产品。MySQL是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,关系数据库管理系统)应用软件之一。在J... 查看详情

必知必会的设计原则——合成复用原则(代码片段)

 设计原则系列文章 必知必会的设计原则——单一职责原则必知必会的设计原则——开放封闭原则必知必会的设计原则——依赖倒置原则必知必会的设计原则——里氏替换原则必知必会的设计原则——接口隔离原则必知必... 查看详情

hive必知必会(代码片段)

hive: 基于hadoop,数据仓库软件,用作OLAPOLAP:onlineanalyzeprocess 在线分析处理OLTP:onlinetransactionprocess在线事务处理 事务: ACID A:atomic 原子性 C:consistent 一致性 I:isolation 隔离性 D:durability 持久性 1读未提交   脏读 //事务... 查看详情

mysql必知必会(代码片段)

姊妹篇——Hive必知必会(数据仓库):https://hiszm.blog.csdn.net/article/details/119907136文章目录第一章:数据库基础基本概念什么是SQL第二章:MySQL简介第三章:了解数据库和表第四章:检索数据SELECT语句第五章:... 查看详情

crypto必知必会(代码片段)

crypto必知必会最近参加了个ctf比赛,在i春秋,南邮方面刷了一些crypto密码学题目,从中也增长了不少知识,在此关于常见的密码学知识做个小总结!Base编码Base编码中用的比较多的是base64,首先就说一下Base64编码方式将字符串以... 查看详情

jetty必知必会

导语如果是开发老鸟,请阅读快速入门,这已经足够。如果是新手,请阅读全文,这里有你想要的热部署,debug配置等内容,能够提高开发效率,避免浪费时间。简介jetty是一个应用服务器,类似于tomcat、resin,但是更轻量,尤其... 查看详情

01《正则表达式必知必会》(已看)(仅存放)

【01】《正则表达式必知必会》  共149页。扫描版,中文版。SamsTeachYourselefRegularExpressionsin10minutesBenForta著。杨涛翻译 【】魔芋:这本书已经没有用了。内容已吸收。 内容较为基础,也很全面。  **附件列表&... 查看详情

《正则表达式必知必会》读书笔记

《正则表达式必知必会》读书笔记 *正则表达式入门1.正则表达式的两种基本用途:搜索和替换。2.正则表达式是一些用来匹配和处理文本的字符串。小结:正则表达式是文本处理方面功能最强大的工具之一,正则表达式语言... 查看详情

h5系列之history(必知必会)(代码片段)

H5系列之History(必知必会)目录概念兼容性属性方法H5方法概念理解HistoryApi的使用方式目的是为了解决哪些问题作用:ajax获取数据时,可以改变历史记录,从而可以使用浏览器的后退和前进。【】规范地址:http://www.w3.org/TR/html5... 查看详情

hadoop必知必会——重要部分整理

上一篇的传送门:Hadoop必知必会——重要部分整理(一)一、HDFS在读文件时,如果一个块突然坏了客户端读取完DataNode上的块之后会进行checksum验证,就是把客户端读取到本地的块与HDFS上的原始块进行校验ÿ... 查看详情

springmvc--必知必会(代码片段)

  SpringMVC基于模型--视图--控制器(Model-View-Controller,MVC)模式实现,属于SpringFrameWork的后续产品,已经融合在SpringWebFlow里面。它通过一套注解,让一个简单的Java类成为处理请求的控制器,而无需实现任何接口。同时它还支持... 查看详情

scala必知必会(代码片段)

文章目录入门概述安装JavaVSScalaval和var基本数据类型lazy在Scala中的应用开发工具IDEAMaven函数方法定义默认参数命名参数可变参数条件语句循环语句面向对象概述类的定义和使用抽象类伴生类和伴生对象case和trait集合数组ListSetMapOpt... 查看详情

customview必知必会——问题清单

目录第1章(绘图基础)一、基本图形绘制二、路径三、文字四、Region五、Canvas(画布)六、控件的使用方法第2章(视图动画)一、视图动画标签二、视图动画的代码实现三、插值器初探四、动画示例五、逐帧动画第... 查看详情

iptables必知必会用法

防火墙iptables包过滤型防火墙防火墙的类别:代理服务器(proxy):代理client访问internet,分割内部与外部网络IPFilter:进入本机的tcp/ip封装协议进行过滤软件防火墙(逻辑上实现)    硬件防火墙(硬件配合软件实现)ipt... 查看详情