软件包及文件系统管理

1、自建yum仓库,分别为网络源和本地源

本地源:

[root@wjl ~]# vim /etc/yum.repos.d/local.repo
[iso]
name=local repository
baseurl=file:///tmp/repository
enabled=1
gpgcheck=0

[root@wjl ~]# mkdir /tmp/repository
[root@wjl ~]# mount /dev/cdrom /mnt   #将本地光盘挂载至一个空目录中
[root@wjl ~]# cp -aR /mnt/Packages /tmp/repository   #将本地光盘中Packages目录里所有rpm包复制到新建的目录中
[root@wjl ~]# createrepo /tmp/repository   #将新建目录创建为一个yum仓库
[root@wjl ~]# yum clean all;yum makecache
[root@wjl ~]# yum -y install httpd   #验证yum仓库是否成功创建

网络源:(以阿里云镜像网站的epel源为例)

[root@wjl ~]# wget s -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo   #虚拟机上搭建的是rhel7.0版本的系统,因此下载epel7的源
[root@wjl ~]# cat /etc/yum.repos.d/epel.repo
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
baseurl=http://mirrors.aliyun.com/epel/7/$basearch   #区别于本地源,网络源由http://开头,指向网络中的某个yum仓库
failovermethod=priority   #指明启用由某个baseurl指定的URL,启用级别为自上而下
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

[epel-debuginfo]
name=Extra Packages for Enterprise Linux 7 - $basearch - Debug
baseurl=http://mirrors.aliyun.com/epel/7/$basearch/debug
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=0

[epel-source]
name=Extra Packages for Enterprise Linux 7 - $basearch - Source
baseurl=http://mirrors.aliyun.com/epel/7/SRPMS
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=0

2、编译安装http2.4,实现可以正常访问,并将编译步骤和结果提交。

[root@wjl ~]# firefox

httpd2.4.43安装过程:

[root@wjl ~]# ls ./Download   #浏览器下载将默认保存在当前用户家目录下的Download目录中
httpd-2.4.43.tar.gz
[root@wjl ~]# mv ./Download/httpd-2.4.43.tar.gz /usr/local/src   #/usr/local/src目录保存源代码程序
[root@wjl ~]# tar xzvf /usr/local/src/httpd-2.4.43.tar.gz
[root@wjl ~]# ls /usr/local/src
httpd-2.4.43  httpd-2.4.43.tar.gz
[root@wjl ~]# yum -y install gcc apr-devel apr-util apr-util-devel pcre-devel openssl-devel  #安装httpd程序的依赖包
[root@wjl ~]# mkdir /usr/local/src/{httpd,httpd.conf}   #httpd保存编译生成的程序,httpd.conf保存配置文件
[root@wjl ~]# cd /usr/local/src/httpd-2.4.43
[root@wjl httpd-2.4.43]# ./configure --prefix=/usr/local/src/httpd --sysconfdir=/usr/local/src/httpd.conf --enable-ssl --enable-so   #--prefix用于指定程序路径,--sysconfdir用于指定配置文件的路径,--enable-ssl用于启动加密,--enable-so用于启用共享库
checking for chosen layout... Apache
checking for working mkdir -p... yes
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
...
configure: summary of build options:
    Server Version: 2.4.43
    Install prefix: /usr/local/src/httpd
    C compiler:     gcc -std=gnu99
    CFLAGS:           -pthread  
    CPPFLAGS:        -DLINUX -D_REENTRANT -D_GNU_SOURCE  
    LDFLAGS:           
    LIBS:             
    C preprocessor: gcc -E

[root@wjl ~]# make;make install
[root@wjl ~]# echo “export PATH=$PATH:/usr/local/src/httpd/bin” >> /etc/profile  #添加一条环境变量,便于直接使用httpd程序自带的命令
[root@wjl ~]# source /etc/profile
[root@wjl ~]# apachectl start   #启动httpd程序
httpd: Could not open configuration file /usr/local/src/httpd/.conf/httpd.conf: No such file or directory   #报错信息指明存放程序的路径下缺少httpd.conf配置文件
[root@wjl ~]# mkdir /usr/local/src/httpd/.conf
[root@wjl ~]# cp -a /usr/local/src/httpd.conf/httpd.conf /usr/lcoal/src/httpd/.conf
[root@wjl ~]# apachectl start
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message   #报错信息指明httpd的域名解析出现问题
[root@wjl ~]# vim /usr/local/src/httpd/.conf/httpd.conf
...
52  Listen 80
...
198 ServerName localhost:80
[root@wjl ~]# apachectl start

注:最终没有实验成功,虽然启动httpd程序没有报错,但是仍没有成功启动程序。实验步骤如上。

3、创建一个2G的文件系统,块大小为2048byte,预留1%的可用空间,文件系统ext4,卷标为TEST,要求此分区开机后自动挂载至/test目录,且默认由acl挂载选项

虚拟机设置中添加一块硬盘(一直按“下一步”即可创建):

创建文件系统:

[root@wjl ~]# lsblk   #用于查看可用设备信息,sdb为新添加的硬盘设备
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda             8:0    0   20G  0 disk
├─sda1          8:1    0  500M  0 part /boot
└─sda2          8:2    0 19.5G  0 part
  ├─rhel-root 253:0    0 17.5G  0 lvm  /
  └─rhel-swap 253:1    0    2G  0 lvm  [SWAP]
sdb             8:16   0   20G  0 disk
sr0            11:0    1  3.5G  0 rom  /media/cdrom
[root@wjl ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x58049ec4.


Command (m for help): n   #用于添加新分区
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p   #p表示主分区,e表示扩展分区,此处添加一个主分区
Partition number (1-4, default 1): 1   #添加的主分区编号为1
First sector (2048-41943039, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +2G   #主分区大小为2G
Partition 1 of type Linux and of size 2 GiB is set


Command (m for help): p   #查看已添加的新分区


Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x58049ec4

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     4196351     2097152   83  Linux


Command (m for help): w   #保存并退出    
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[root@localhost ~]# mke2fs -b 2048 -m 1 -t ext4 -L TEST /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=TEST
OS type: Linux
Block size=2048 (log=1)
Fragment size=2048 (log=1)
Stride=0 blocks, Stripe width=0 blocks
131072 inodes, 1048576 blocks
10485 blocks (1.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=269484032
64 block groups
16384 blocks per group, 16384 fragments per group
2048 inodes per group
Superblock backups stored on blocks:
16384, 49152, 81920, 114688, 147456, 409600, 442368, 802816

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
[root@wjl ~]# tune2fs -l /dev/sdb1   #用于查看分区设备/dev/sdb1的超级块信息,超级块中包含了一个分区中所有的属性信息
...
ilesystem features:      has_journal ext_attr resize_inode dir_index filetype extent 64bit flex_bg sparse_super huge_file uninit_bg dir_nlink extra_isize

Filesystem flags:         signed_directory_hash
Default mount options:    user_xattr
Filesystem state:         clean
Errors behavior:          Continue
...
[root@wjl ~]# tune2fs -o acl /dev/sdb1   #为分区设备添加默认挂载属性acl
...
ilesystem features:      has_journal ext_attr resize_inode dir_index filetype extent 64bit flex_bg sparse_super huge_file uninit_bg dir_nlink extra_isize
Filesystem flags:         signed_directory_hash
Default mount options:    user_xattr acl
Filesystem state:         clean
Errors behavior:          Continue
...
[root@wjl ~]# mkdir /test
[root@wjl ~]# echo “/dev/sdb1 /test ext4 defaults 0 0” >> /etc/fstab
[root@wjl ~]# mount -a
[root@wjl ~]# df -h | grep /dev/sdb1
/dev/sdb1              2.0G  9.1M  1.9G   1% /test

 4、创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小为16MB,而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录。(添加硬盘的方法如3题)

[root@wjl ~]# lsblk
...
sdb             8:16   0   20G  0 disk
└─sdb1          8:17   0    2G  0 part /test
sdc             8:32   0   10G  0 disk
sdd             8:48   0   10G  0 disk
...
[root@wjl ~]# pvcreate /dev/sdc /dev/sdd   #创建物理卷PV
  Physical volume "/dev/sdc" successfully created
  Physical volume "/dev/sdd" successfully created
[root@wjl ~]# vgcreate -s 16M testvg /dev/sdc /dev/sdd   #创建PE大小为16M的卷组testvg,此卷组中包含了两个10G的PV,则VG大小为20G
  Volume group "testvg" successfully created
[root@wjl ~]# vgs   #简要查看VG信息
  VG     #PV #LV #SN Attr   VSize  VFree
  rhel     1   2   0 wz--n- 19.51g     0
  testvg   2   0   0 wz--n- 19.97g 19.97g
[root@wjl ~]# lvcreate -L 5G -n testlv testvg   #创建大小为5G的名为testlv的逻辑卷
  Logical volume "testlv" created
[root@wjl ~]# mke2fs -t xfs /dev/mapper/testvg/testlv   #将逻辑卷格式化为xfs文件系统类型
[root@wjl ~]# mkdir /users
[root@wjl ~]# mount /dev/mapper/testvg-testlv /users
[root@wjl ~]# df -h | grep
/dev/mapper/testvg-testlv  5.0G   33M  5.0G   1% /users

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值