码迷,mamicode.com
首页 > 其他好文 > 详细

实现基于网络的yum源和包管理工具

时间:2020-03-30 00:07:39      阅读:32      评论:0      收藏:0      [点我收藏+]

标签:bsd   编辑   ati   gid   new t   created   defaults   desc   util   

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

配置本地源####
建立本地源目录
[[email protected] lgp]#mkdir /mnt/cdrom
[[email protected] lgp]#mkdir /yum

挂载Centos光盘
[[email protected] lgp]#mount /dev/cdrom /mnt/cdrom

备份repo
[[email protected] lgp]#cd /etc/yum.repo.d/
[[email protected] lgp]#mkdir backup
[[email protected] lgp]#mv CentOS-Base.repo CentOS-CR.repo CentOS-Vault.repo CentOS-Vault.repo ./backup

编辑Centos-Media.repo
[[email protected] lgp]#vim Centos-Media.repo

清除yum缓存
[[email protected] lgp]#yum clean all

技术图片

配置网络源:
yam -y install httpd
编辑
技术图片

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

1下载httpd2.4源码包到当前路径,并解压
2使用yum安装若干依赖包:
3进入解压后的文件夹,运行configure文件,指定安装路径和配置文件路径,生成
![](https://s4.51cto.com/images/blog/202003/29/8e4856f7db1 1d29c17a6bf6fcb4ef725.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
4编译源码:make
5安装:make install
6启动httpd服务:/apps/httpd24/bin/apachectl start
7在浏览器地址栏中输入主机IP地址,即可成功访问httpd默认首页
技术图片

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

先装上一块10G的硬盘,扫描一下,此时磁盘上面没有任何信息
[[email protected] ~]#echo ‘- - -‘ >/sys/class/scsi_host/host2/scan
[[email protected] ~]#lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 10G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 4G 0 part [SWAP]
├─sda3 8:3 0 2G 0 part /
├─sda4 8:4 0 1K 0 part
└─sda5 8:5 0 2G 0 part /data
sdb 8:16 0 10G 0 disk
sr0 11:0 1 4.3G 0 rom
[[email protected] ~]#lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs de1c872e-abea-498c-a07a-38750913e570 /boot
├─sda2 swap d133fd09-7e88-4e2c-b9bb-b9c86638cf5a [SWAP]
├─sda3 xfs e7dace1d-16b2-4400-bf0a-d7c1027c6f8c /
├─sda4
└─sda5 xfs 89bc32ab-6c2d-481f-ab50-be09a5b73192 /data
sdb
sr0 iso9660 CentOS 7 x86_64 2018-11-25-23-54-16-00
在/dev/sdb上创建分区,大小为2G

[[email protected] ~]#lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 10G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 4G 0 part [SWAP]
├─sda3 8:3 0 2G 0 part /
├─sda4 8:4 0 1K 0 part
└─sda5 8:5 0 2G 0 part /data
sdb 8:16 0 10G 0 disk
sr0 11:0 1 4.3G 0 rom
[[email protected] ~]#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 0x8be52446.

Command (m for help): p

Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 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: 0x8be52446

Device Boot Start End Blocks Id System

Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
g create a new empty GPT partition table
G create an IRIX (SGI) partition table
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition‘s system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)

Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-20971519, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +2G
Partition 1 of type Linux and of size 2 GiB is set

Command (m for help): p

Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 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: 0x8be52446

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.
[[email protected] ~]#fdisk -l

Disk /dev/sda: 10.7 GB, 10737418240 bytes, 20971520 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: 0x0001658e

Device Boot Start End Blocks Id System
/dev/sda1 * 2048 411647 204800 83 Linux
/dev/sda2 411648 8800255 4194304 82 Linux swap / Solaris
/dev/sda3 8800256 12994559 2097152 83 Linux
/dev/sda4 12994560 20971519 3988480 5 Extended
/dev/sda5 12996608 17190911 2097152 83 Linux

Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 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: 0x8be52446

Device Boot Start End Blocks Id System
/dev/sdb1 2048 4196351 2097152 83 Linux
[[email protected] ~]#lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 10G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 4G 0 part [SWAP]
├─sda3 8:3 0 2G 0 part /
├─sda4 8:4 0 1K 0 part
└─sda5 8:5 0 2G 0 part /data
sdb 8:16 0 10G 0 disk
└─sdb1 8:17 0 2G 0 part
sr0 11:0 1 4.3G 0 rom
创建文件系统,-b指定块大小为2048,-m指定预留空间,-L指定卷名

[[email protected] ~]#mkfs.ext4 -b 2048 -m 1 -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

[[email protected] ~]#lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs de1c872e-abea-498c-a07a-38750913e570 /boot
├─sda2 swap d133fd09-7e88-4e2c-b9bb-b9c86638cf5a [SWAP]
├─sda3 xfs e7dace1d-16b2-4400-bf0a-d7c1027c6f8c /
├─sda4
└─sda5 xfs 89bc32ab-6c2d-481f-ab50-be09a5b73192 /data
sdb
└─sdb1 ext4 TEST 38615919-cf0f-4eb7-ae22-ace6223dca1e
sr0 iso9660 CentOS 7 x86_64 2018-11-25-23-54-16-00
查看磁盘的UUID,写进/etc/fstab,

[[email protected] ~]#blkid /dev/sdb1
/dev/sdb1: LABEL="test" UUID="38615919-cf0f-4eb7-ae22-ace6223dca1e" TYPE="ext4"
[[email protected] ~]#tail -1 /etc/fstab
UUID=38615919-cf0f-4eb7-ae22-ace6223dca1e /test ext4 defaults 0 0
创建目录,挂载所有fstab文件指定的文件系统
[[email protected] ~]#mkdir /test
[[email protected] ~]#mount -a
[[email protected] ~]#lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 10G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 4G 0 part [SWAP]
├─sda3 8:3 0 2G 0 part /
├─sda4 8:4 0 1K 0 part
└─sda5 8:5 0 2G 0 part /data
sdb 8:16 0 10G 0 disk
└─sdb1 8:17 0 2G 0 part /test
sr0 11:0 1 4.3G 0 rom
查看分区是否有facl权限
[[email protected] ~]#tune2fs -l /dev/sdb1
tune2fs 1.42.9 (28-Dec-2013)
Filesystem volume name: test
Last mounted on: <not available>
Filesystem UUID: 38615919-cf0f-4eb7-ae22-ace6223dca1e
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery 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
Filesystem OS type: Linux
Inode count: 131072
Block count: 1048576
Reserved block count: 10485
Free blocks: 994651
Free inodes: 131061
First block: 0
Block size: 2048
Fragment size: 2048
Group descriptor size: 64
Reserved GDT blocks: 512
Blocks per group: 16384
Fragments per group: 16384
Inodes per group: 2048
Inode blocks per group: 256
Flex block group size: 16
Filesystem created: Wed Mar 25 13:35:35 2020
Last mount time: Wed Mar 25 13:46:06 2020
Last write time: Wed Mar 25 13:46:06 2020
Mount count: 1
Maximum mount count: -1
Last checked: Wed Mar 25 13:35:35 2020
Check interval: 0 (<none>)
Lifetime writes: 65 MB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Required extra isize: 28
Desired extra isize: 28
Journal inode: 8
Default directory hash: half_md4
Directory Hash Seed: 3054c428-09e3-4262-abdd-b3ef0741a97a
Journal backup: inode blocks

4、创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小 为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录
环境:/dev/sdb盘还有不到8G空间(暂按8G计算),再从/dev/sdc盘中划分出12G,合计20G空间制作物理卷

[[email protected] ~]#echo ‘- - -‘ >/sys/class/scsi_host/host2/scan
[[email protected] ~]#lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 10G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 4G 0 part [SWAP]
├─sda3 8:3 0 2G 0 part /
├─sda4 8:4 0 1K 0 part
└─sda5 8:5 0 2G 0 part /data
sdb 8:16 0 10G 0 disk
└─sdb1 8:17 0 2G 0 part /test
sdc 8:32 0 16G 0 disk
sr0 11:0 1 4.3G 0 rom
分区

[[email protected] ~]#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.

Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
Partition number (2-4, default 2): 2
First sector (4196352-20971519, default 4196352):
Using default value 4196352
Last sector, +sectors or +size{K,M,G} (4196352-20971519, default 20971519):
Using default value 20971519
Partition 2 of type Linux and of size 8 GiB is set

Command (m for help): t
Partition number (1,2, default 2): 2
Hex code (type L to list all codes): 8e
Changed type of partition ‘Linux‘ to ‘Linux LVM‘

Command (m for help): p

Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 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: 0x8be52446

Device Boot Start End Blocks Id System
/dev/sdb1 2048 4196351 2097152 83 Linux
/dev/sdb2 4196352 20971519 8387584 8e Linux LVM

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.

[[email protected] ~]#fdisk /dev/sdc
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 0x81bb6c08.

Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-33554431, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-33554431, default 33554431): +12G
Partition 1 of type Linux and of size 12 GiB is set

Command (m for help): t
Selected partition 1
Hex code (type L to list all codes): 8e
Changed type of partition ‘Linux‘ to ‘Linux LVM‘

Command (m for help): p

Disk /dev/sdc: 17.2 GB, 17179869184 bytes, 33554432 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: 0x81bb6c08

Device Boot Start End Blocks Id System
/dev/sdc1 2048 25167871 12582912 8e Linux LVM

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[[email protected] ~]#partprobe
Warning: Unable to open /dev/sr0 read-write (Read-only file system). /dev/sr0 has been opened read-only.
[[email protected] ~]#lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 10G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 4G 0 part [SWAP]
├─sda3 8:3 0 2G 0 part /
├─sda4 8:4 0 1K 0 part
└─sda5 8:5 0 2G 0 part /data
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 2G 0 part /test
└─sdb2 8:18 0 8G 0 part
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 12G 0 part
sr0 11:0 1 4.3G 0 rom
创建物理卷

[[email protected] ~]#pvcreate /dev/sdb2
Physical volume "/dev/sdb2" successfully created.
[[email protected] ~]#pvs
PV VG Fmt Attr PSize PFree
/dev/sdb2 lvm2 --- <8.00g <8.00g
[[email protected] ~]#pvcreate /dev/sdc1
Physical volume "/dev/sdc1" successfully created.
[[email protected] ~]#pvs
PV VG Fmt Attr PSize PFree
/dev/sdb2 lvm2 --- <8.00g <8.00g
/dev/sdc1 lvm2 --- 12.00g 12.00g
[[email protected] ~]#pvdisplay
"/dev/sdb2" is a new physical volume of "<8.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdb2
VG Name
PV Size <8.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID vjsQVU-6ihn-v5kD-82nY-O68O-42Iv-7lvEyA

"/dev/sdc1" is a new physical volume of "12.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdc1
VG Name
PV Size 12.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID TAYOcw-uI9D-OmBI-kl2P-gBfD-GNXA-nor1vD
创建物理卷组,-s指定块大小为16M

[[email protected] ~]#vgcreate -s 16M testvg /dev/sdb2 /dev/sdc1
Volume group "testvg" successfully created
[[email protected] ~]#vgs
VG #PV #LV #SN Attr VSize VFree
testvg 2 0 0 wz--n- <19.97g <19.97g
[[email protected] ~]#vgdisplay
--- Volume group ---
VG Name testvg
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 2
Act PV 2
VG Size <19.97 GiB
PE Size 16.00 MiB
Total PE 1278
Alloc PE / Size 0 / 0
Free PE / Size 1278 / <19.97 GiB
VG UUID vrXxL9-gewG-0Bo9-VNii-1vrJ-8AFs-xL5r0O
创建逻辑卷,大小为5G

[[email protected] ~]#lvcreate -n testvg -L 5G testvg
Logical volume "testvg" created.
[[email protected] ~]#lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
testvg testvg -wi-a----- 5.00g
[[email protected] ~]#lvdisplay
--- Logical volume ---
LV Path /dev/testvg/testvg
LV Name testvg
VG Name testvg
LV UUID cfkOjV-PcjM-uc9C-vrdZ-U6vZ-JGRW-9LYj0q
LV Write Access read/write
LV Creation host, time centos7, 2020-03-25 15:33:25 +0800
LV Status available
open 0
LV Size 5.00 GiB
Current LE 320
Segments 1
Allocation inherit
Read ahead sectors auto

  • currently set to 8192
    Block device 253:0
    写入/etc/fstab

[[email protected] ~]#blkid /dev/testvg/testvg
/dev/testvg/testvg: UUID="c048c0e0-378f-4659-a622-b7b4b78c0a30" TYPE="xfs"
[[email protected] ~]#echo "UUID=c048c0e0-378f-4659-a622-b7b4b78c0a30 /users xfs defaults 0 0" >> /etc/fstab
[[email protected] ~]#tail -1 /etc/fstab
UUID=c048c0e0-378f-4659-a622-b7b4b78c0a30 /users xfs defaults 0 0
挂载

[[email protected] ~]#mkdir /users
[[email protected] ~]#mount -a
[[email protected] ~]#lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 10G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 4G 0 part [SWAP]
├─sda3 8:3 0 2G 0 part /
├─sda4 8:4 0 1K 0 part
└─sda5 8:5 0 2G 0 part /data
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 2G 0 part /test
└─sdb2 8:18 0 8G 0 part
└─testvg-testvg 253:0 0 5G 0 lvm /users
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 12G 0 part
sr0 11:0 1 4.3G 0 rom /mnt/cdrom

实现基于网络的yum源和包管理工具

标签:bsd   编辑   ati   gid   new t   created   defaults   desc   util   

原文地址:https://blog.51cto.com/14671983/2482931

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!