青海企业网站建设开发,只需要手机号的广告,免费wordpress主题推荐,wordpress wordfence目录结构 【在 Linux 世界里#xff0c;一切皆文件】 linux 的文件系统是采用级层式的树状目录结构#xff1b; 序号名称介绍备注1/#xff1a;根目录一般根目录下只存放目录#xff0c;在 linux 下有且只有一个根目录#xff0c;所有的东西都是从这里开始#xff1b; 当…目录结构 【在 Linux 世界里一切皆文件】 linux 的文件系统是采用级层式的树状目录结构 序号名称介绍备注1/根目录一般根目录下只存放目录在 linux 下有且只有一个根目录所有的东西都是从这里开始 当在终端里输入 /home其实是在告诉电脑先从 /根目录开始再进入到 home 目录 2 /bin [常用] (/usr/bin 、 /usr/local/bin) 是 Binary 的缩写, 这个目录存放着最经常使用的命令 可执行二进制文件的目录如常用的命令 ls、 tar、 mv、 cat 等 3 /sbin /usr/sbin 、 /usr/local/sbin s 就是 Super User 的意思这里存放的是系统管理员使用的系统管理程序 4/home [常用]存放普通用户的主目录在 Linux 中每个用户都有一个自己的目录一般该目录名是以用户的账号命名 系统默认的用户家目录新增用户账号时用户的家目录都存放在此目录下 ~ 表示当前用户的家目录 ~edu 表示用户 edu 的家目录 5/root [常用]该目录为系统管理员也称作超级权限者的用户主目录 系统管理员root的家目录 6/lib系统开机所需要最基本的动态连接共享库 其作用类似于 Windows 里的 DLL 文件几乎所有的应用程序都需要用到这些共享库 7/lostfound这个目录一般情况下是空的当系统非法关机后这里就存放了一些文件 8/etc [常用] 所有的系统管理所需要的配置文件和子目录 不建议在此目录下存放可执行文件 重要的配置文件有 /etc/inittab/etc/fstab/etc/init.d/etc/X11/etc/sysconfig/etc/xinetd.d 9/boot [常用] 存放的是启动 Linux 时使用的一些核心文件包括一些连接文件以及镜像文件 例如 linux 的内核文件 /boot/vmlinuz 系统引导管理器 /boot/grub 10/proc [不能动]这个目录是一个虚拟的目录 它是系统内存的映射访问这个目录来获取系统信息 11/srv [不能动] service 缩写该目录服务启动之后需要访问的数据目录 如 www 服务需要访问的网页数据存放在 /srv/www 内 12/sys [不能动]这是 linux2.6 内核的一个很大的变化该目录下安装了 2.6 内核中新出现的一个文件系统 13/tmp一般用户或正在执行的程序临时存放文件的目录任何人都可以访问重要数据不可放置在此目录下 14/dev类似于 windows 的设备管理器把所有的硬件用文件的形式存储 存放linux系统下的设备文件访问该目录下某个文件相当于访问某个设备常用的是挂载光驱mount/dev/cdrom /mnt 15/media [常用]linux 系统会自动识别一些设备 例如 U 盘、光驱等等当识别后 linux 会把识别的设备挂载到这个目录下 16/mnt [常用]系统提供该目录是为了让用户临时挂载别的文件系统的 我们可以将外部的存储挂载在/mnt/上然后进入该目录就可以查看里的内容 d:/myshare 17/opt这是给主机额外安装软件所存放的目录 默认为空 如安装 ORACLE 数据库就可放到该目录下 18/var [常用]这个目录中存放着在不断扩充着的东西习惯将经常被修改的目录放在这个目录下包括各种日志文件 例如 /var/log随时更改的日志文件 /var/spool/mail邮件存放的目录 /var/run程序或服务启动后其 PID 存放在该目录下 19 /selinux [security-enhanced linux] SELinux 是一种安全子系统,它能控制程序只能访问特定文件, 有三种工作模式可以自行设置. 20/usr [常用]这是一个非常重要的目录用户的很多应用程序和文件都放在这个目录下类似与 windows 下的 program files 目录 例如 /usr/bin存放应用程序 /usr/share存放共享数据 /usr/lib存放不能直接运行的却是许多程序运行所必需的一些函数库文件 /usr/local存放软件升级包 这是另一个给主机额外安装软件所安装的目录一般是通过编译源码方式安装的程序 /usr/share/doc系统说明文件存放目录 /usr/share/man程序说明文件存放目录 /usr/local [常用] centos下载
以网易镜像站来做演示
1、首先我们输入网址 http://mirrors.163.com/进到网易开源镜像站。 这里给我们提供了很多资源大家可根据自己的需求去 search
2、我们点击进入 CentOS 这一选项可以看到有很多版本供大家选择这里我们选 7.8 版本。 3、点击版本后进入这一目录我们点击进入这一选项。 4、选择“X86”就好。 5、在这里我们可以看到有不同版本的镜像可以根据自己的需求进行下载。 安装CentOS7.6
检查 BIOS 虚拟化支持 新建虚拟机 配置虚拟机的内存 配置处理器 分配的处理器内核多虚拟机速度快 配置网络 正式安装 Centos 系统 说明: 选择第一个不需要 Test this media 否则检测时间很长 选择安装软件默认是最小化安装. 软件选择(套餐)
需要什么安装好后也可以再安装。也可以根据需要勾选附加项 比如这里我勾选了兼容库和基本开发工具(jdk,gcc), 安装好后也可以卸载更新等操作 【备注实际生产中选用最小安装】
安装位置进行分区操作 【备注注意要耐心等待不要鼠标乱点】 先指定/boot 分区即引导分区大小为 1G, 然后点击添加挂载点. swap 分区设备类型和文件系统 [备注实际生产过程中打开 Kdump]
设置网络和主机名, 安装好后也可以设置 设置你的主机名然后点击完成即可. 点击开始安装就开始了 注意在实际生产环境密码一定要复杂否则容易造成安全隐患 创建其它用户也可以安装成功后再创建 完成后面的设置 默认以普通用户登录,可以切换成 root, 点击未列出 连接网络就可以上网了 contos安装mysql5.7(CentOS7.6) 1.新建文件夹/opt/mysql并cd进去 : mkdir /opt/mysql 2.运行wget http://dev.mysql.com/get/mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar下载mysql安装包 PScentos7.6自带的类mysql数据库是mariadb会跟mysql冲突要先删除。 3.运行tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar 4.运行rpm -qa|grep mari查询mariadb相关安装包 5.运行rpm -e --nodeps mariadb-libs卸载 6.然后开始真正安装mysql依次运行以下几条 rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm 7.运行systemctl start mysqld.service启动mysql 8.然后开始设置root用户密码 Mysql自动给root用户设置随机密码运行grep password /var/log/mysqld.log可看到当前密码 9.运行mysql -u root -p用root用户登录提示输入密码可用上述的可以成功登陆进入mysql命令行 10.设置root密码对于个人开发环境如果要设比较简单的密码生产环境服务器要设复杂密码可以运行 set global validate_password_policy0; 提示密码设置策略 validate_password_policy默认值1 11.set password for rootlocalhost password(hspedu100); 12.运行flush privileges;使密码设置生效 Centos7启动流程分析 第一步、硬件启动阶段 这一步和CentOS6差不多详细请看图
第二步、GRUB2引导阶段 从这一步开始CentOS6和CentOS7的启动流程区别开始展现出来了。CentOS7的主引导程序使用的是grub2。 这一步的流程显示加载两个镜像再加载MOD模块文件把grub2程序加载执行接着解析配置文件/boot/grub2/grub.cfg根据配置文件加载内核镜像到内存之后构建虚拟根文件系统最后转到内核。 在这里grub.cfg配置文件已经比较复杂了但并不用担心到了CentOS7中一般是使用命令进行配置而不直接去修改配置文件了。不过我们可以看到grub.cfg配置文件开头注释部分说明了由/etc/grub.d/目录下文件和/etc/default/grub文件组成。 一般修改好配置后都需要使用命令grub2-mkconfig -o /boot/grub2/grub.cfg将配置文件重新生成。
第三步、内核引导阶段 这一步与CentOS6也差不多加载驱动切换到真正的根文件系统唯一不同的是执行的初始化程序变成了/usr/lib/systemd/systemd
第四步、systemed初始化阶段又叫系统初始化阶段 CentOS7中我们的初始化进程变为了systemd。执行默认target配置文件/etc/systemd/system/default.target这是一个软链接与默认运行级别有关。然后执行sysinit.target来初始化系统和basic.target来准备操作系统。接着启动multi-user.target下的本机与服务器服务并检查/etc/rc.d/rc.local文件是否有用户自定义脚本需要启动。最后执行multi-user下的getty.target及登录服务检查default.target是否有其他的服务需要启动。 注意/etc/systemd/system/default.target指向了/lib/systemd/system/目录下的graphical.target或multiuser.target。而graphical.target依赖multiuser.targetmultiuser.target依赖basic.targetbasic.target依赖sysinit.target所以倒过来执行。 System概述了解systemd即为system daemon是Linux下的一种init软件开发目标是提供更优秀的框架以表示系统服务间的以来关系并依此实现系统初始化时服务的并行启动同时达到降低Shell系统开销的效果最终代替现在常用的System V与BSD风格的init程序。 与多数发行版使用的System V风格的init相比systemd采用了以下的新技术A.采用Socket激活式与总线激活式服务以提高相互依赖的各服务的并行运行性能B.用Cgroup代替PID来追踪进程即使是两次fork之后生成的守护进程也不会脱离systemd的控制。 unit对象unit表示不同类型的systemd对象通过配置文件进行标识和配置文件中主要包含了系统服务、监听socket、保存的系统快照以及其他与init相关的信息。也就是CentOS6中的服务器启动脚本
(1)./etc/systemd/system/default.target 这是一个软链接和默认运行级别相关
# ll /etc/systemd/system/default.target
lrwxrwxrwx. 1 root root 36 12月 9 15:47 /etc/systemd/system/default.target - /lib/systemd/system/graphical.target
我们可以到这个目录下看看
# cd /lib/systemd/system/
# ls *.target
anaconda.target local-fs.target runlevel2.target
basic.target machines.target runlevel3.target
bluetooth.target multi-user.target runlevel4.target
cryptsetup-pre.target network-online.target runlevel5.target
cryptsetup.target network-pre.target runlevel6.target
ctrl-alt-del.target network.target shutdown.target
default.target nfs-client.target sigpwr.target
emergency.target nss-lookup.target sleep.target
final.target nss-user-lookup.target slices.target
getty-pre.target paths.target smartcard.target
getty.target poweroff.target sockets.target
graphical.target printer.target sound.target
halt.target rdma-hw.target suspend.target
hibernate.target reboot.target swap.target
hybrid-sleep.target remote-cryptsetup.target sysinit.target
initrd-fs.target remote-fs-pre.target system-update.target
initrd-root-fs.target remote-fs.target timers.target
initrd-switch-root.target rescue.target time-sync.target
initrd.target rpcbind.target umount.target
iprutils.target rpc_pipefs.target virt-guest-shutdown.target
kexec.target runlevel0.target
local-fs-pre.target runlevel1.target
这里可以看到runlevel开头的target文件对应着CentOS6的启动级别不过一样是软链接指向了同目录下的其他文件也算一种向下兼容吧
# ll runlevel*.target
lrwxrwxrwx. 1 root root 15 4月 5 22:10 runlevel0.target - poweroff.target
lrwxrwxrwx. 1 root root 13 4月 5 22:10 runlevel1.target - rescue.target
lrwxrwxrwx. 1 root root 17 4月 5 22:10 runlevel2.target - multi-user.target
lrwxrwxrwx. 1 root root 17 4月 5 22:10 runlevel3.target - multi-user.target
lrwxrwxrwx. 1 root root 17 4月 5 22:10 runlevel4.target - multi-user.target
lrwxrwxrwx. 1 root root 16 4月 5 22:10 runlevel5.target - graphical.target
lrwxrwxrwx. 1 root root 13 4月 5 22:10 runlevel6.target - reboot.target
可以看到我的default.target与runlevel5.target指向的是同一个文件可以看出我的默认运行级别是5。
(2)./usr/lib/systemd/system/
这个目录存储每个服务的脚本类似CentOS6的/etc/init.d/。
(2)./run/systemd/system/
系统执行过程中产生的脚本。
(3)./etc/systemd/system/
类似于CentOS6的/etc/rc.d/rc#.d/SXX类文件的功能管理员建立的执行脚本大部分是软链接
Over 制作自己的min linux(基于CentOS7.6) 首先我们在现有的linux添加一块大小为20G的硬盘 点击完成就OK了 可以使用 lsblk 查看需要重启 添加完成后点击确定然后启动现有的linux(centos7.6)。 通过fdisk来给我们的/dev/sdb进行分区 1 [rootlocalhost ~]# fdisk /dev/sdb 2 Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel 3 Building a new DOS disklabel with disk identifier 0x4fde4cd0. 4 Changes will remain in memory only, until you decide to write them. 5 After that, of course, the previous content wont be recoverable. 6 7 8 Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) 9 10 11 WARNING: DOS-compatible mode is deprecated. Its strongly recommended to 12 switch off the mode (command c) and change display units to 13 sectors (command u). 14 15 16 Command (m for help): n 17 Command action 18 e extended 19 p primary partition (1-4) 20 p 21 Partition number (1-4): 1 22 First cylinder (1-2610, default 1): 23 Using default value 1 24 Last cylinder, cylinders or size{K,M,G} (1-2610, default 2610): 500M 25 26 27 Command (m for help): n 28 Command action 29 e extended 30 p primary partition (1-4) 31 p 32 Partition number (1-4): 2 33 First cylinder (15-2610, default 15): 34 Using default value 15 35 Last cylinder, cylinders or size{K,M,G} (15-2610, default 2610): 36 Using default value 2610 37 #查看分区 38 Command (m for help): p 39 40 41 Disk /dev/sdb: 21.5 GB, 21474836480 bytes 42 255 heads, 63 sectors/track, 2610 cylinders 43 Units cylinders of 16065 * 512 8225280 bytes 44 Sector size (logical/physical): 512 bytes / 512 bytes 45 I/O size (minimum/optimal): 512 bytes / 512 bytes 46 Disk identifier: 0x4fde4cd0 47 48 49 Device Boot Start End Blocks Id System 50 /dev/sdb1 1 14 112423 83 Linux 51 /dev/sdb2 15 2610 20852370 83 Linux 52 #保存并退出 53 Command (m for help): w 54 The partition table has been altered! 接下来我们对/dev/sdb的分区进行格式化 [rootlocalhost ~]# mkfs.ext4 /dev/sdb1 [rootlocalhost ~]# mkfs.ext4 /dev/sdb2 创建目录并挂载新的磁盘 #mkdir -p /mnt/boot /mnt/sysroot #mount /dev/sdb1 /mnt/boot #mount /dev/sdb2 /mnt/sysroot/ 安装grub, 内核文件拷贝至目标磁盘 #grub2-install --root-directory/mnt /dev/sdb #我们可以来看一下二进制确认我们是否安装成功 #hexdump -C -n 512 /dev/sdb #cp -rf /boot/* /mnt/boot/ 修改 grub2/grub.cfg 文件, 标红的部分 是需要使用 指令来查看的 在grub.cfg文件中 , 红色部分用 上面 sdb1 的 UUID替换蓝色部分用 sdb2的UUID来替换, 紫色部分是添加的表示selinux给关掉同时设定一下init告诉内核不要再去找这个程序了不然开机的时候会出现错误的 ### BEGIN /etc/grub.d/10_linux ### menuentry CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core) --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option gnulinux-3.10.0-957.el7.x86_64-advanced-2eef594e-68fc-49a0-8b23-07cf87dda424 { load_video set gfxpayloadkeep insmod gzio insmod part_msdos insmod ext2 set roothd0,msdos1 if [ x$feature_platform_search_hint xy ]; then search --no-floppy --fs-uuid --setroot --hint-bioshd0,msdos1 --hint-efihd0,msdos1 --hint-baremetalahci0,msdos1 --hinthd0,msdos1 6ba72e9a-19ec-4552-ae54-e35e735142d4 else search --no-floppy --fs-uuid --setroot 6ba72e9a-19ec-4552-ae54-e35e735142d4 fi linux16 /vmlinuz-3.10.0-957.el7.x86_64 rootUUIDd2e0ce0f-e209-472a-a4f1-4085f777d9bb ro crashkernelauto rhgb quiet LANGzh_CN.UTF-8 selinux0 init/bin/bash initrd16 /initramfs-3.10.0-957.el7.x86_64.img } menuentry CentOS Linux (0-rescue-5bd4fb8d8e9d4198983fc1344f652b5d) 7 (Core) --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option gnulinux-0-rescue-5bd4fb8d8e9d4198983fc1344f652b5d-advanced-2eef594e-68fc-49a0-8b23-07cf87dda424 { load_video insmod gzio insmod part_msdos insmod ext2 set roothd0,msdos1 if [ x$feature_platform_search_hint xy ]; then search --no-floppy --fs-uuid --setroot --hint-bioshd0,msdos1 --hint-efihd0,msdos1 --hint-baremetalahci0,msdos1 --hinthd0,msdos1 6ba72e9a-19ec-4552-ae54-e35e735142d4 else search --no-floppy --fs-uuid --setroot 6ba72e9a-19ec-4552-ae54-e35e735142d4 fi linux16 /vmlinuz-0-rescue-5bd4fb8d8e9d4198983fc1344f652b5d rootUUIDd2e0ce0f-e209-472a-a4f1-4085f777d9bb ro crashkernelauto rhgb quiet selinux0 init/bin/bash initrd16 /initramfs-0-rescue-5bd4fb8d8e9d4198983fc1344f652b5d.img } ### END /etc/grub.d/10_linux ### 7.创建目标主机根文件系统 #mkdir -pv /mnt/sysroot/{etc/rc.d,usr,var,proc,sys,dev,lib,lib64,bin,sbin,boot,srv,mnt,media,home,root} 8.拷贝需要的bash(也可以拷贝你需要的指令)和库文件给新的系统使用 #cp /lib64/*.* /mnt/sysroot/lib64/ #cp /bin/bash /mnt/sysroot/bin/ 9.现在我们就可以创建一个新的虚拟机然后将默认分配的硬盘 移除掉指向我们刚刚创建的磁盘即可. 这时很多指令都不能使用比如 ls , reboot 等可以将需要的指令拷贝到对应的目录即可 如果要拷贝指令重新进入到原来的 linux系统拷贝相应的指令即可比较将 /bin/ls 拷贝到 /mnt/sysroot/bin 将/sbin/reboot 拷贝到 /mnt/sysroot/sbin roothspedu100 ~]# mount /dev/sdb2 /mnt/sysroot/ [roothspedu100 ~]# cp /bin/ls /mnt/sysroot/bin/ [roothspedu100 ~]# cp /bin/systemctl /mnt/sysroot/bin/ [roothspedu100 ~]# cp /sbin/reboot /mnt/sysroot/sbin/ 再重新启动新的min linux系统就可以使用 ls , reboot 指令了 其他
CUP内核的确认
开始--任务管理器--性能--打开资源监视器--2CPU16个内核
常见的镜像站 阿里云开源镜像站https://mirrors.aliyun.com/ 清华大学开源软件镜像站https://mirrors.tuna.tsinghua.edu.cn/ 中科大开源软件镜像站https://mirrors.ustc.edu.cn/ 网易云开源镜像站http://mirrors.163.com/ 搜狐开源镜像站http://mirrors.sohu.com/ 华为开源镜像站https://mirrors.huaweicloud.com/
提示生成复杂密码
https://suijimimashengcheng.51240.com/ 网络连接方式