1.1)任务一: centos 7安装。 磁盘不用使用默认分区。 服务器配置 4c4g core GB ## 4hcg 最少二个分区(二个挂载点) 一个是/boot 分区 (不能使用lvm) 一个 / 根分区 (建议使用lvm) lvm 在 /etc/fstab 第一列 是设备名,三种写法 UUID="5ced8321-b8ed-477d-bd9d-edcd2f1c2fce" ##怎么查看uuid, 非lvm情况下 lsblk -f -t | 支持lvm blkid /dev/centos/root /dev/mapper/vgname-lvname # 而且是个链接文件 /dev/vgname/lvname # 而且是个链接文件 1.2)任务2 : 初始化 4个工作 1.2.1) selinux关闭 security enhanced linux ## disalbed 需要重启os才能生效。 工作中99.99%情况下都是disabled掉,只有考证rhce的时候,不让关闭。但是可以设置 permissive . 1.2.2) 临时修改。 setenforcing 0 setenforing 1 1.2.2) firewalld服务 disable掉 # systemctl stop firewalld # # systemctl disable firewalld #不随系统启动 即便stop,disable掉firewalld,防火墙规则还有。只是一个用户界面。翻译。 把人类好理解的 firewall-cmd 命令,翻译成iptables ## 命令 xxx-cmd 这个命令肯定是客户端 ##xx-cli ,xxx-ctl 这个命令肯定是客户端 #凡是 xxx-d daemon守护进程 服务端进程 long running iptables -nL #查看防火墙规则 iptables -F #F flush 清空所有防火墙规则 iptables -X #-X 清空自定义规则。 1.2.3) 网卡配置文件,让网卡开机active. 修改网卡配置文件 /etc/sysconfig/network-scripts/ifcfg-ensxxx 网卡名字 ens33 可以修改为 eth0 , 需要用到 命令grub2-mkconfig,需要重新生成grub配置文件 grub-mkconfig -o /boot/grub2/grub.cfg #IPADDR= #GATEWAY= #DNS1= #DNS2= #PEERDNS=yes #NM_CONTROLLED=yes #默认是yes,默认由NetworkManager 服务来管理网络 #BOOTPROTO=dhcp|static|none #boot protocol #single point failure/SPF 防止"单点故障" BOOTPROTO=dhcp nmcli 命令 一次性查询 ipaddr, gateway, dns 。 nmlci conn show ens33 | egrep -i "gateway|address|dns" 1.2.4) 可选 任务三: gedit ~/.bashrc ##文件打开后,在最后一行增加如下 export PS1='[\u@\h `pwd`]# ' ## 修改完成后,生效的几种方法 source ~/.bashrc exec bash bash 退出ssh登陆,重新登陆。 1.2.4) (可选)任务三:virbr0 ## virtual bridge systemctl status libvirtd ## qemu kvm虚拟机程序。= windows vmware systemctl disable libvirtd 然后重启。 1.2.5) 任务四: disale enable 一个服务,其实就是创建或者删除一个 (软)链接 17 systemctl disable sshd 18 ls /etc/systemd/system/multi-user.target.wants/sshd.service 19 systemctl enable sshd 20 ls -l /usr/lib/systemd/system/sshd.service 21 ls -l /etc/systemd/system/multi-user.target.wants/sshd.service 1.2.6)任务五: unit文件的目录。 查看所有unit文件。 631 systemctl status sshd 632 cd /usr/lib/systemd/system/ 633 ls |egrep "sshd|firewalld|named|dhcpd|vsftpd" 634 ls |egrep "sshd|firewalld|named|dhcpd|vsftpd" | grep service$ 查看所有systemctl 控制的服务 systemctl list-unit-files | grep keyword 1.2.4) 任务六: 校验ISO光盘完整性。 rpm包校验签名。 校验算法: sha256, md5sum, gpg/pgp 压缩算法: tar -zcvf tar -jcvf ## z gzip压缩算法 j bzip2压缩算法。 [root@primary ~ ]#sha256sum CentOS-7-x86_64-DVD-2009.iso e33d7b1ea7a9e2f38c8f693215dd85254c3a4fe446f93f563279715b68d07987 CentOS-7-x86_64-DVD-2009.iso [root@primary ~]#md5sum CentOS-7-x86_64-DVD-2009.iso 5a3b0b3f4a6654ee195ec6edb6d938a4 CentOS-7-x86_64-DVD-2009.iso 1.2.5) 任务七: systemctl 控制运行级别 # runlevel, init, systemctl 运行级别含义,运行级别查询和修改。 !!! 参考excel 。 重在操作和练习,不是理论。 1.2.6) 任务八: 目录结构 / # 表示 根目录 文件夹 /bin # binary 二进制 .exe /sbin # superuser binary /boot # boot 启动 reboot 系统启动的配置文件和相关内核文件等。 /dev # device 设备 block device快设备(硬盘 光盘), character device字符设备(键盘) /dev/zero /dev/null /dev/urandom /dev/stdin /dev/stdout /dev/stderr /etc # 等等,其他。配置文件 /home # 家庭, u普通用户"家目录", 如 admin用户默认家目录在 /home/admin aaa用户家目录 /home/aaa /root # 超级用户 root用户的“家目录” /root /lib # library lib库文件 /lib64 # 64 library lib库 /media # 空目录, 通常用来挂载iso文件 或者硬盘 /mnt # 空目录 mount /opt # 空目录 option /srv # 空目录 service /proc # 内存文件系统,特殊目录, 内核调节参数会涉及到。 process缩写, ps aux, pstree/tree, pgrep pkill /run # 运行,程序运行时存放的内容 /sys # linux kernel运行的模块存放的内容 # lsmod 【list modules查看内核模块】 mod按tab modprobe 加载内核模块 insmod加载内核模块 /tmp # temporaly 临时目录 /usr # 用户存放的一些内容 /var # variable 变量, /var/named /var/log/ 日志存放目录 命令和文件举例 tree / -L 2 # 命令如果不存在,则 yum search tree # yum -y install tree # 查看树形文件系统目录结构 是死的 pstree -p # -p pid, pid=1=systemd 进程是在内存里运行,是活的running 。 ## 如果命令不存在,yum provides *pstree # yum -y install psmisc 1.2.7) 磁盘命令规则 分区全名规则。 !!! 参考excel表格 1.2.8) linux启动引导过程 开机主板加电 >> bios固件 可执行程序 basic input output system >> mbr分区(一个盘最多支持4个主分区扩展分区),启动标志位 所在分区的第1个扇区叫 mbr扇区 master boot record 512byte字节=446(二进制)+64(16*4分区表信息)+2 >> gpt(一个盘支持最多128个分区) >> grub程序+grub配置文件 /boot/grub2/grub.cfg #启动时候 看到上下选择的菜单。对应/boot/grub2/grub.cfg 里面 menuentry >> 硬盘上读取文件 systemd 拉起systemd 进程 这时候才是操作系统起来了。 systemd pid=1 process id 再拉进fork出其他进程 ## systemctl 控制去行级别, 控制服务enable/disale >>/bin/login 需要输入用户和密码才能登陆。 实验: mbr损坏(需要备份才能修复) mbr扇区512个字节,任意一个字节出错或者丢失,在mbr这步卡住,无法继续。、 grub损坏(不需要备份) grub-mkconfig -o /boot/grub2/grub.cfg 忘记root 密码 1.2.9) 选项, 长选项,短选项(合并), 命令字 选项(option),参数(argument,parameter) 以ls 命令为例 ls --all ## --all查看所有文件,包括隐藏文件和隐藏目录。 以.开头的文件或者目录叫隐藏文件和隐藏目录。 ls --all /etc/selinux 命令字 选项 参数 ls -a = ls --all #短选项 -a -l -t -F -sh 长选项 --all #短选项可以合并,而且一般不讲究先后顺序。 ls -a -l -t -F = ls -altF ls -alt | head ls -alt | tail ls -altr | head 1.2.10) 绝对路径 相对路径 绝对路径 以 / 开头的叫绝对路径。 ##类似海拔高度。 相对路径 不以 / 开头的叫相对路径。 有可能是 ./开头,或者 ../开头 默认情况下,不加路径情况下,指 ./ 当前目录 二个特殊的路径 ./ ../表示上一级目录 ../../ 上二级目录 1.2.11) 几个命令 man # manual = 手册 handbook 任何命令前面加 man, 查询这个命令的用法。 支持搜索和翻页 搜索 /keywork ?keyword 按n ,按N 。按q退出 翻页 空格 pageup pagedown, 上下箭头 ## man less vim 支持搜索和翻页,方法一样。 ls ## 不需要跳到那个目录 也可以查看那个目录的文件。 pwd ## present working directory 当前工作目录。 cd cd #回家目录 cd ~ #波浪线 表示家目录 cd - #回到上一次目录。 cd ../ ##回到上一级目录 cd ../../ ##回到上二级目录。 ################### 第二章节 概览: bash shell/ 文件查看 5剑客 cat head tail more less 文件统计和检索 wc grep find 文件压缩和打包 tar(主) 次要:gzip bzip2 vim 用法: 三种模式. 命令模式(重点) 插入模式 末行模式 2.1) /bin/bash 命令解释器,介于用户和内核之间一个解释翻译器。 分类: #如何区分 type ls ##或者 type -a ls 有些命令比较特殊,即是外部命令,也是内部命令 内部命令: bash集成,没有单独对应的二进制文件. # help read # read --help 外部命令: 有单独对应的二进制文件 which ls . # man ls type -a read type -a echo 2.1.2) 快捷键 ctrl + u # 光标往前全部删除 ctrl + k # 光标往后全部删除 ctrl + L # 清空屏幕 等同于 clear ctrl + c # 中断执行的程序 ping命令 ping -c 3 baidu.com home # 光标回首 #跟vim 用法相同,而且在vim里面,在插入和命令模式下都可以使用 end # 光标回尾 #跟vim 用法相同,而且在vim里面,在插入和命令模式下都可以使用 2.1.3) 重定向和管道符 > 清空重定向 #如果文件不存在,则创建文件再写入。 ##如果文件存在,则清空文件内容 再写入 >> 追加重定向 ## append追加 | 管道符 ## 前面命令的输出,作为后面命令的输入。 举例 man ls > ls.manual.txt ls -l > /tmp/aa.log ls -l >> /tmp/aa.log ls -alt | wc -l ls -alt | head 2.2) 文件查看 5剑客 cat head tail more less ## 文件是有头 有尾。 如日志文件,每秒都在产生新日志。追加写入到日志文件。 /var/log/messags !!!参考excel表格。 2.3)文件统计和检索 grep #超级重要 每个选项的含义 #过滤 (文本)文件内容 find #掌握基本用法 简单用法 ##查找文件, #跟windows搜索文件一样 wc #很简单 # word count !!!参考excel表格