linux基本概述-程序员宅基地

技术标签: linux  

Linux操

Linux操作系统安装及服务控制

Linux概念

    1970年代第一代unix出现

1980年代由于unix商业化严重某大学教授开发类unix的minix操作系统,与unix完全不兼容

1990年代linus由minix启发开发出linux

OS:控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境的程序集合。

FSF:自由软件基金会,由1984年创办;主要的项目包含了GNU项目

为什么选择Linux开源、免费、稳定

Linux应用领域:服务器、嵌入式、个人桌面

Linux系统构成内容:硬件、Linux 内核、GNU项目软件,如bash、gcc等、各种外围程序

开放源代码软件:Firefox 网页浏览器、OpenOffice 办公套件、Apache 网站服务器软件

发行版:Red Hat 系列(Fedora、Red Hat企业版、CentOS社区版)、Debian 系列、Ubuntu 系列

Linux 安装

磁盘分区表示

硬盘和分区结构

文件系统类型

引导过程总览

系统初始化进程及文件

服务控制及优化启动过程

目录结构详细说明

系统服务控制

切换运行级别

优化启动过程

相关命令

# uname -r       //查看系统内核版本

3.10.0-862.el7.x86_64

# cat /etc/redhat-release       //查看操作系统版本

CentOS Linux release 7.5.1804 (Core)

系统硬件信息查看方法

CPU:

# cat /proc/cpuinfo

# lscpu

查看CPU负载情况:

# cat /proc/loadavg

内存:内存使用情况

# cat /proc/meminfo

MemTotal:         997956 kB    //总共内存

MemFree:          316016 kB   //空闲内存

MemAvailable:     684472 kB     //剩余可用的内存,这部分容量可由MemFree+Buffers+Cached而来,因为在缓存中的容量可以回收再分配给其他程序使用。

Buffers:            2784 kB        //缓冲区

Cached:           483144 kB     //缓存区

# free -h

             

# yum provides pstree             //查询pstree命令属于哪个程序包

# yum provides */ifconfig

MBR、GPT为分区格式【以硬盘为单位定义格式】

文件系统:NTFS、FAT 32、FAT 16、swap、ext3(redhat 5系列)、ext4(redhat 6)、XFS(redhat 7)【以分区为单位定义格式】

服务管理:

1.单个服务管理

# systemctl 控制类型 服务名称

如:# systemctl restart network          //重启网络服务

2.查询所有服务开机自启动状态:

# systemctl list-unit-files --type service  /还有一个命令"ntsysv"图形化界面的服务开机管理

3.查询单个服务启动状态:

# systemctl is-enabled 服务名称

enable为开机启动 disabled为开机不启动

4.设置单个服务开机启动:

# systemctl enable 服务名称

5.设置单个服务开机禁止启动:

# systemctl disable 服务名称

6.多个服务管理

# ntsysv           //界面统一管理多个服务开机自启

7.运行级别管理

# systemctl get-default            //查看系统默认启动级别

# runlevel        //查看当前运行级别,非系统默认启动级别

 

临时切换运行级别

# init 3             //切换运行级别为3

# init 5             //切换运行级别为5

# init 0             //关机

# init 6             //重启

设置默认启动级别为5图形模式:7

# systemctl set-default graphical.target

# systemctl get-default            //再次查看,应为5图形模式

注意:当该服务器未安装图形时,将无法启动图形模式

设置默认启动级别为3 命令行模式:

# systemctl set-default multi-user.target

运行级别配置文件在以下路径中:

# cat /etc/inittab

8.系统关机/重启操作:

关机:# init 0、# poweroff、# systemctl poweroff、

# halt、# shutdown –P、# shutdown -h now

重启:# init 6、# reboot、# systemctl reboot、# shutdown -r now

Linux命令概述

Linux命令的分类

Shell

查看及切换目录

  1. 查看当前的工作目录-pwd
  2. 切换工作目录- cd

相对路径的表现形式

ls    [选项]    [文件或目… ]

  1. 列表显示目录内容- ls

-l:显示详细信息

 -a:显示子目录和文件,包括"."开头的隐藏目录和隐藏文件

 -A:不显示包括"."开头的隐藏目录和隐藏文件

 -d:显示该文件或目录本身属性。

 -h:以单位显示文件或目录大小

 -R:以递归的方式显示目录以及子目录的所有内容

--color:为查询结果添加颜色进行显示

alias:通过别名机制简化常用的、比较长的命令

如:

      alias gohome='cd /home/zhangsan'

当在命令行中执行:"gohome"命令时进入用户zhangsan的家目录。

永久定义:

# vim /etc/profile                //末尾新起行加入定义别名

alias a='systemctl status firewalld'

取消别名定义: unalias gohome

  1. 统计目录及文件空间占用情况-du      du   [选项]    [文件或目录… ]

-a:统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录

-h:显示出目录或文件的大小(K、M),默认的大小单位为字节(KB)

  -s:只统计每个参数所占用空间总的大小,而不是统计每个子目录、文件的大小

创建目录和文件

  1. 创建新目录 – mkdir
  2. 创建空文件 – touch

3.创建链接文件 – ln

复制、删除、移动目录和文件

注意:在使用cp 和 rm命令不加f选项时,默认会提示用户是否执行操作,此时可通过以下方式取消提醒:

1.执行命令时用绝对路径

2.在正常命令前加反撇号,如:# \rm /root/abc

3.# find / -name "abc3" | xargs rm //将删除命令放在"xargs"命令之后

# cp /etc/passwd{,.back}                 //括号中的逗号表示空格,逗号的前面为空,表示只有passwd这个值

等同于# cp /etc/passwd /etc/passwd.back

# cp passwd{.back,}        //还原备份的数据

rm

 删除指定的文件或目录,选项和cp命令类似。

rm -rf 命令强制删除包括目录 不提醒

3. 移动文件或目录-mv

如果目标位置与源位置相同,则相当于执行重命名操作

查找目录和文件

1. 查找命令/程序存放目录-which

2. 查找文件或目录-find

 使用 find 命令实现多个查找条件

文件管理

  1. 查看文件内容 cat 命令

   用途:查看文件内容,只能显示文档末尾部分内容

  1. 查看文件内容 more命令

  1. 查看文件内容 less 命令

4. 查看文件内容 head、tail 命令

"tail -f" 用于刷新文件新出现的

5.统计文件内容 wc 命令

6. 检索和过滤文件内容 grep 命令

              7. 压缩命令 gzip、bzip2 命令

8. 归档命令tar命令

文本编辑器 vi 命令

vi 编辑器的工作模式

命令模式的基本操作


命令模式

末行模式

第四章安装及管理应用程序

Linux 应用程序基础

RPM包管理 rpm 命令

  • 主要功能
  • 查询、验证RPM软件包信息

  • 安装、升级、卸载RPM 软件包

  • 维护 RPM数据库信息

执行“man rpm”命令可获得

关于 rpm 命令的详细帮助信息

第五章账号和权限管理

5.1用户和组账号概述

Linux基于用户身份对资源访问进行控制

用户帐号

      超级用户 //root

      普通用户     //自己新建的用户都属于普通用户

      程序用户    //权限最低,一般只能操作程序相关联的文件,一般不允许登录到系统。例如:bin、daemon、ftp、mail等

组帐号: 基本组(私有组)、 附加组(公共组)

  1. UID和GID

UID(User IDentity,用户标识号)、GID(Group IDentify,组标识号)

root用户的UID的固定值为0、root组帐号的GID号为固定值0

1~499的UID、GID默认保留给程序用户使用,普通用户/组使用的UID、GID号在500~60000之间

5.2用户账号文件 /etc/passwd

5.3用户账号文件 /etc/shadow

字段1:用户帐号的名称

字段2:加密的密码字串信息

字段3:上次修改密码的时间

字段4:密码的最短有效天数,默认值为0

字段5:密码的最长有效天数,默认值为99999

字段6:提前多少天警告用户口令将过期,默认值为7

字段7:在密码过期之后多少天禁用此用户

字段8:帐号失效时间,默认值为空

字段9:保留字段(未使用)

  1. 默认只有root用户能够读取文件中的内容,并且不允许root直接编辑该文件中的内容
  2. 上次修改密码的时间,表示从1970年01月01日(可理解为Unix系统的诞生日)算起到最近一次修改密码时间隔的天数

5.4添加用户账号

  1. 例如:

——创建名为st02的用户帐号,并将其UID号指定为504

[root@localhost ~]# useradd -u 504 st02

[root@localhost ~]# tail -1 /etc/passwd

st02:x:504:504::/home/st02:/bin/bash

——创建一个考试测试用的帐号exam01,指定属于users组,该帐号于2009-07-30失效

[root@localhost ~]# useradd -g users -e 2009-07-30 exam01

[root@localhost ~]# useradd -d /ftphome/mike -G ftpuser -s /sbin/nologin mike

-----指定mike的基本组为mike,并加入到ftpuser组,指定家目录为/ftphome/mike,不允许mike通过本地登录服务器

5.5设置/更改用户口令 passwd

5.6修改用户账号的属性 usermod

5.7删除用户账号 userdel

5.8用户账号的初始配置文件

  • 文件来源
    • 新建用户帐号时,从 /etc/skel 目录中复制而来
  1. /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
  2. /etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
  3. ~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该

文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.

  1. ~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该

该文件被读取.

  1. ~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.
  2. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.
  3. ~/.bash_profile 是交互式、login 方式进入 bash 运行的
  4. ~/.bashrc 是交互式 non-login 方式进入 bash 运行的
  5. 通常二者设置大致相同,所以通常前者会调用后者。

5.9组账号文件

5.10添加组账号 groupadd

5.11添加删除组成员 gpasswd

5.12删除组账号 groupdel

5.13查询账号信息

5.14文件/目录的权限和归属

5.15查看文件/目录的权限和归属

  1. “-rw-r—r--”部分的第一个字符表示文件类型,可以是d(目录)、b(块设备文件)、c(字符设备文件),减号“-”(普通文件)、字母“l”(链接文件)等

5.16文件类型

5.17设置文件和目录的权限 chmod

5.18设置文件和目录的归属 chown

5.19设置文件和目录默认权限 umask

5.20特殊的权限 suid

5.20.1特殊的权限 sticky

5.20.2特殊的权限 ACL

第六章磁盘和文件系统管理(一)

6.1检测并确认新硬盘

(系统磁盘空间不足,需要增加新硬盘)而引出fdisk命令

  1. 新挂接的硬盘可能未包含任何分区( Disk /dev/sdb doesn't contain a valid partition table
  2. 对于已有的分区,将通过列表的方式输出以下信息:
    1. Device:分区的设备文件名称。
    2. Boot:是否是引导分区,是则有“*”标识。
    3. Start:该分区在硬盘中的起始位置(柱面数)。
    4. End:该分区在硬盘中的结束位置(柱面数)。
    5. Blocks:分区的大小,以Blocks(块)为单位,默认的块大小为1024字节。
    6. Id:分区类型的ID标记号,对于EXT3分区为83,LVM分区为8e。
    7. System:分区类型

6.2创建文件系统

系统下次启动时加载新建的交换分区,那么必须修改/etc/fstab文件:

/dev/sdb5                swap        swap        defaults         0 0

6.3挂载、卸载文件系统

6.3.1设置文件系统的自动挂载

第四字段:挂载参数,即mount命令“-o”选项后可使用的参数,如defaults、rw等

    第五字段:表示文件系统是否需要dump备份(dump是一个备份工具),一般设为1时表示需要,设为0时将被dump所忽略

    第六字段:该数字用于决定在系统启动时进行磁盘检查的顺序,0不进行检查,1优先,2其次。对于根分区应设为1,其它分区设为2

6.4查看磁盘使用情况

  1. “-h”选项可以显示更易读的容量单位,

“-T”选项用于显示对应文件系统的类型

6.5 LVM (逻辑卷管理)概述

    • 动态调整磁盘容量,从而提高磁盘管理的灵活性
    • 需要注意:/boot 分区用于存放引导文件,不能基于 LVM 创建
    • 图形界面管理工具
      • system-config-lvm /centos7系列光盘源文件中不带该程序

pvcreate  设备名1  [设备名2   … …]

vgcreate  卷组名  物理卷名1     物理卷名2

lvcreate   -L  容量大小  -n  逻辑卷名  卷组名

lvextend  -L  +大小  /dev/卷组名/逻辑卷名

6.6 LVM 应用

由于用户数量众多,邮件存储需要大量的空间,考虑到动态扩容的需要,计划增加两块 SCSI 硬盘并构建 LVM 逻辑卷(挂载到“/mailbox”目录下)专门用于存放邮件数据

6.7磁盘配额概述

6.8启用磁盘配额支持

  1. 如果分区已经挂载,修改了/etc/fstab文件以后,可以执行 mount -o remount /mailbox 进行重新挂载
  2. 若不修改fstab文件,在挂载命令行中也可以手动添加磁盘配额支持,例如:

       mount  -o  remount,usrquota,grpquota  /dev/sdb1  /mailbox

6.8.1磁盘配额管理

  • 验证磁盘配额功能
    • 切换到设置配额的分区(挂载目录)
    • 创建指定数量的文件:使用 touch 命令,或 cp 命令
    • 创建指定容量的文件:使用 dd 命令,或 cp 命令

第八章进程和计划任务管理

8.1程序和进程的关系

8.2.1查看进程信息 ps

  1. ps命令结合“aux”选项使用时,将显示系统中所有的进程信息

PID:该进程在系统中的数字ID号,在当前系统中是唯一的;   

%CPU:CPU占用百分比;    %MEM:内存占用百分比

8.2.2查看进程信息 top

  1. 可适当介绍top工具的命令按键:P、M、N、h、q
      1. 按P键根据CPU占用情况对进程列表进行排序
      2. 按M键根据内存占用情况进行排序
      3. 按N键根据启动时间进行排序
      4. 按h键可以获得top程序的在线帮助信息
      5. 按q键可以正常退出top程序
      6. 使用空格键可以强制更新进程状态显示

8.2.3查看进程信息 pgrep

8.2.4查看进程信息 pstree

8.3进程的启动方式

8.3.1进程的前后台调度

8.4终止进程的运行

8.5计划任务管理 at

8.6计划任务管理 crond

  1. 用户只需执行“crontab -e”命令后会自动调用文本编辑器(默认为vi)并打开“/var/spool/cron/用户名”文件,无需手动指定文件位置

8.7 crontab 任务配置的格式

第九章分析和排查系统故障

9.1日志文件

/var/log/cron:记录crond计划任务产生的事件信息。

/var/log/dmesg:记录Linux系统在引导过程中的各种事件信息。

/var/log/maillog:记录进入或发出系统的电子邮件活动。

/var/log/lastlog:记录每个用户最近的登录事件。

/var/log/rpmpkgs:记录系统中安装的各rpm包列表信息。

/var/log/secure:记录用户认证相关的安全事件信息。

/var/log/wtmp:记录每个用户登录、注销及系统启动和停机事件。

/var/run/btmp:记录失败的、错误的登录尝试及验证事件。

9.2内核及系统日志

9.3用户日志分析

9.4程序日志分析

9.5日志管理策略/搭建日志服务器

9.6修复 MBR 扇区故障

  1. 常见的系统启动类故障包括:MBR扇区故障、GRUB引导故障、丢失系统文件、遗忘root密码……
  2. MBR即Master Boot Record,主引导记录,位于硬盘的第一个扇区(512字节),其中包含了系统引导程序、硬盘分区表信息
  3. 如果没有MBR的备份文件,恢复难度会比较大,可能需要使用“诺顿磁盘医生(Norton Disk Doctor)”之类能够按分区位置查找修复的磁盘工具

9.7修复 GRUB 引导故障

9.8遗忘 root 用户密码

9.9修复文件系统

  • Linux系统开机后,当提示“Give root password for maintenance”时,只需输入root用户的密码,即可进入到一个临时的Shell环境,用户可以对出现错误的文件系统进行修复
  • 必要时可以执行“dd if=/dev/zero of=/dev/sdb7 bs=512 count=4”命令模拟文件系统故障,然后演示修复过程

9.10磁盘资源耗尽故障

9.11检测磁盘坏道

第十章 Linux基础网络设置

10.1查看网络接口信息 ifconfig

10.2查看主机名称hostname

10.3查看路由表条目 route

10.3查看网络连接情况 netstat

10.4

测试网络连接 ping--- [root@localhost ~]# ping 192.168.4.110

跟踪数据包 traceroute--测试从当前主机到目的主机之间经过的网络节点---[root@localhost ~]# traceroute 192.168.7.7

域名解析nslookup--- [root@localhost ~]# nslookup www.google.com

10.5网络流量监测

10.6设置网络接口参数 ifconfig

10.7设置路由记录 route

10.8修改主机名 hostname

10.9网络接口配置文件

10.10启用、禁用网络接口配置

10.11主机名称配置文件

10.12域名解析配置文件

1、“search localdomain”行用来设置默认的搜索域

2、最多支持三个不同的DNS服务器地址

10.13本地主机映射文件

10.14 使用 DHCP 动态配置主机地址

10.14.1 安装 DHCP 服务器

10.14.2 主配置文件

10.15 启动 DHCP 服务

10.16 使用 DHCP 客户端

第十一章FTP文件传输服务

11.1 FTP 服务概述

11.2 Vsftpd 服务基础

11.3基于系统用户的 FTP 服务

11.4 构建基于虚拟用户的 FTP 服务

第十二章 DNS

一、理论基础

1、DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议使用UDP/TCP 53端口号,UDP负责域名解析请求报文,TCP负责多台DNS服务器之间区域传送,当域名解析请求单个报文字节数过大时,如超过512字节,可能会采用TCP 53进行通信,因此在防火墙定义策略时,可同时开启53TCP/UDP协议。

2、DNS 的分布式数据库是以域名为索引的,每个域名实际上就是一棵很大的逆向树中路径,这棵逆向树称为域名空间(domain name space)。如图所示树的最大深度不得超过127 层,树中每个节点都有一个可以长达63 个字符的文本标号。

3、DNS域名解析过程

首先,客户端先在本地缓存查找有没有域名缓存,如果没有,客户端发出DNS请求翻译IP地址或主机名。DNS服务器在收到客户机的请求后:

(1)检查DNS服务器的缓存,若查到请求的地址或名字,即向客户机发出应答信息;

(2)若没有查到,则在数据库中查找,若查到请求的地址或名字,即向客户机发出应答信息;

(3)若没有查到,则将请求发给根域DNS服务器,并依序从根域查找顶级域,由顶级查找二级域,二级域查找三级,直至找到要解析的地址或名字,即向客户机所在网络的DNS服务器发出应答信息,DNS服务器收到应答后现在缓存中存储,然后,将解析结果发给客户机。

(4)若没有找到,则返回错误信息。

4、DNS的分类

主DNS服务器:就是一台存储着原始资料的DNS服务器。

从DNS服务器:使用自动更新方式从主DNS服务器同步数据的DNS服务器。也称辅助DNS服务器。

缓存服务器:不负责本地解析,采用递归方式转发客户机查询请求,并返回结果给客户机的DNS服务器。同时缓存查询回来的结果,也叫递归服务器。

根提示服务器:根据系统中的13组根服务器的IP地址寻求域名解析(需要当前DNS服务器连接外网

转发器:这台DNS发现非本机负责的查询请求时,不再向根域发起请求,而是直接转发给指定的一台或者多台服务器。自身并不缓存查询结果。

5、DNS中记录类型

SOA
定义了该域中的权威名称服务器,一般与ns一致
比如:dns.chengdu.com 
示例:
@[l51]         IN    SOA    dns.baidu.com. admin.baidu.com.  (     

                      1408010001 ; 更新序列号,表示修改的依次顺序,可随意定义,不可超过10    

                      1H ; 从服务器下载数据时间间隔为1小时    

                      5M ; 下载失败后的重试间隔为5分钟   

                      2W ; 超过该时间任无法下载则放弃,为两周    

                      6D ; 无效解析记录的生存周期    

)
NS
域的授权名称服务器,在当前域中能够负责解析域名的服务器有哪些
NSDNameDNSFQDN
baidu.com.        64899    IN    NS    ns2.baidu.com.     

baidu.com.        64899    IN    NS    ns4.baidu.com.     

baidu.com.        64899    IN    NS    dns.baidu.com.     

baidu.com.        64899    IN    NS    ns7.baidu.com.     

baidu.com.        64899    IN    NS    ns3.baidu.com.
MX
域的邮件交换器,要跟着一个优先级值,越小越高
baidu.com.        7200    IN    MX    20 jpmx.baidu.com.     
baidu.com.        7200    IN    MX    20 mx50.baidu.com.     
baidu.com.        7200    IN    MX    10 mx.n.abc.com.     
baidu.com.        7200    IN    MX    20 mx1.baidu.com.
A
IPV4主机地址
AAAA
IPV6主机地址
PTR
解析IP的指针,反向记录
CNAME
权威(正式)名称,定义别名记录
www.baidu.com.        1154    IN    CNAME    www.a.abc.com.

6、DNS命名规范

1. 26个英文字母

2. “0,1,2,3,4,5,6,7,8,9”十个数字

3. “-”(英文中的连词号)

4. 最多63字节长度


 [l51]当前DNS服务器的域名,可直接用@代替

作系统安装及服务控制

Linux概念

    1970年代第一代unix出现

1980年代由于unix商业化严重某大学教授开发类unix的minix操作系统,与unix完全不兼容

1990年代linus由minix启发开发出linux

OS:控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境的程序集合。

FSF:自由软件基金会,由1984年创办;主要的项目包含了GNU项目

为什么选择Linux开源、免费、稳定

Linux应用领域:服务器、嵌入式、个人桌面

Linux系统构成内容:硬件、Linux 内核、GNU项目软件,如bash、gcc等、各种外围程序

开放源代码软件:Firefox 网页浏览器、OpenOffice 办公套件、Apache 网站服务器软件

发行版:Red Hat 系列(Fedora、Red Hat企业版、CentOS社区版)、Debian 系列、Ubuntu 系列

Linux 安装

磁盘分区表示

硬盘和分区结构

文件系统类型

引导过程总览

系统初始化进程及文件

服务控制及优化启动过程

目录结构详细说明

系统服务控制

切换运行级别

优化启动过程

相关命令

# uname -r       //查看系统内核版本

3.10.0-862.el7.x86_64

# cat /etc/redhat-release       //查看操作系统版本

CentOS Linux release 7.5.1804 (Core)

系统硬件信息查看方法

CPU:

# cat /proc/cpuinfo

# lscpu

查看CPU负载情况:

# cat /proc/loadavg

内存:内存使用情况

# cat /proc/meminfo

MemTotal:         997956 kB    //总共内存

MemFree:          316016 kB   //空闲内存

MemAvailable:     684472 kB     //剩余可用的内存,这部分容量可由MemFree+Buffers+Cached而来,因为在缓存中的容量可以回收再分配给其他程序使用。

Buffers:            2784 kB        //缓冲区

Cached:           483144 kB     //缓存区

# free -h

             

# yum provides pstree             //查询pstree命令属于哪个程序包

# yum provides */ifconfig

MBR、GPT为分区格式【以硬盘为单位定义格式】

文件系统:NTFS、FAT 32、FAT 16、swap、ext3(redhat 5系列)、ext4(redhat 6)、XFS(redhat 7)【以分区为单位定义格式】

服务管理:

1.单个服务管理

# systemctl 控制类型 服务名称

如:# systemctl restart network          //重启网络服务

2.查询所有服务开机自启动状态:

# systemctl list-unit-files --type service  /还有一个命令"ntsysv"图形化界面的服务开机管理

3.查询单个服务启动状态:

# systemctl is-enabled 服务名称

enable为开机启动 disabled为开机不启动

4.设置单个服务开机启动:

# systemctl enable 服务名称

5.设置单个服务开机禁止启动:

# systemctl disable 服务名称

6.多个服务管理

# ntsysv           //界面统一管理多个服务开机自启

7.运行级别管理

# systemctl get-default            //查看系统默认启动级别

# runlevel        //查看当前运行级别,非系统默认启动级别

 

临时切换运行级别

# init 3             //切换运行级别为3

# init 5             //切换运行级别为5

# init 0             //关机

# init 6             //重启

设置默认启动级别为5图形模式:7

# systemctl set-default graphical.target

# systemctl get-default            //再次查看,应为5图形模式

注意:当该服务器未安装图形时,将无法启动图形模式

设置默认启动级别为3 命令行模式:

# systemctl set-default multi-user.target

运行级别配置文件在以下路径中:

# cat /etc/inittab

8.系统关机/重启操作:

关机:# init 0、# poweroff、# systemctl poweroff、

# halt、# shutdown –P、# shutdown -h now

重启:# init 6、# reboot、# systemctl reboot、# shutdown -r now

Linux命令概述

Linux命令的分类

Shell

查看及切换目录

  1. 查看当前的工作目录-pwd
  2. 切换工作目录- cd

相对路径的表现形式

ls    [选项]    [文件或目… ]

  1. 列表显示目录内容- ls

-l:显示详细信息

 -a:显示子目录和文件,包括"."开头的隐藏目录和隐藏文件

 -A:不显示包括"."开头的隐藏目录和隐藏文件

 -d:显示该文件或目录本身属性。

 -h:以单位显示文件或目录大小

 -R:以递归的方式显示目录以及子目录的所有内容

--color:为查询结果添加颜色进行显示

alias:通过别名机制简化常用的、比较长的命令

如:

      alias gohome='cd /home/zhangsan'

当在命令行中执行:"gohome"命令时进入用户zhangsan的家目录。

永久定义:

# vim /etc/profile                //末尾新起行加入定义别名

alias a='systemctl status firewalld'

取消别名定义: unalias gohome

  1. 统计目录及文件空间占用情况-du      du   [选项]    [文件或目录… ]

-a:统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录

-h:显示出目录或文件的大小(K、M),默认的大小单位为字节(KB)

  -s:只统计每个参数所占用空间总的大小,而不是统计每个子目录、文件的大小

创建目录和文件

  1. 创建新目录 – mkdir
  2. 创建空文件 – touch

3.创建链接文件 – ln

复制、删除、移动目录和文件

注意:在使用cp 和 rm命令不加f选项时,默认会提示用户是否执行操作,此时可通过以下方式取消提醒:

1.执行命令时用绝对路径

2.在正常命令前加反撇号,如:# \rm /root/abc

3.# find / -name "abc3" | xargs rm //将删除命令放在"xargs"命令之后

# cp /etc/passwd{,.back}                 //括号中的逗号表示空格,逗号的前面为空,表示只有passwd这个值

等同于# cp /etc/passwd /etc/passwd.back

# cp passwd{.back,}        //还原备份的数据

rm

 删除指定的文件或目录,选项和cp命令类似。

rm -rf 命令强制删除包括目录 不提醒

3. 移动文件或目录-mv

如果目标位置与源位置相同,则相当于执行重命名操作

查找目录和文件

1. 查找命令/程序存放目录-which

2. 查找文件或目录-find

 使用 find 命令实现多个查找条件

文件管理

  1. 查看文件内容 cat 命令

   用途:查看文件内容,只能显示文档末尾部分内容

  1. 查看文件内容 more命令

  1. 查看文件内容 less 命令

4. 查看文件内容 head、tail 命令

"tail -f" 用于刷新文件新出现的

5.统计文件内容 wc 命令

6. 检索和过滤文件内容 grep 命令

              7. 压缩命令 gzip、bzip2 命令

8. 归档命令tar命令

文本编辑器 vi 命令

vi 编辑器的工作模式

命令模式的基本操作


命令模式

末行模式

第四章安装及管理应用程序

Linux 应用程序基础

RPM包管理 rpm 命令

  • 主要功能
  • 查询、验证RPM软件包信息

  • 安装、升级、卸载RPM 软件包

  • 维护 RPM数据库信息

执行“man rpm”命令可获得

关于 rpm 命令的详细帮助信息

第五章账号和权限管理

5.1用户和组账号概述

Linux基于用户身份对资源访问进行控制

用户帐号

      超级用户 //root

      普通用户     //自己新建的用户都属于普通用户

      程序用户    //权限最低,一般只能操作程序相关联的文件,一般不允许登录到系统。例如:bin、daemon、ftp、mail等

组帐号: 基本组(私有组)、 附加组(公共组)

  1. UID和GID

UID(User IDentity,用户标识号)、GID(Group IDentify,组标识号)

root用户的UID的固定值为0、root组帐号的GID号为固定值0

1~499的UID、GID默认保留给程序用户使用,普通用户/组使用的UID、GID号在500~60000之间

5.2用户账号文件 /etc/passwd

5.3用户账号文件 /etc/shadow

字段1:用户帐号的名称

字段2:加密的密码字串信息

字段3:上次修改密码的时间

字段4:密码的最短有效天数,默认值为0

字段5:密码的最长有效天数,默认值为99999

字段6:提前多少天警告用户口令将过期,默认值为7

字段7:在密码过期之后多少天禁用此用户

字段8:帐号失效时间,默认值为空

字段9:保留字段(未使用)

  1. 默认只有root用户能够读取文件中的内容,并且不允许root直接编辑该文件中的内容
  2. 上次修改密码的时间,表示从1970年01月01日(可理解为Unix系统的诞生日)算起到最近一次修改密码时间隔的天数

5.4添加用户账号

  1. 例如:

——创建名为st02的用户帐号,并将其UID号指定为504

[root@localhost ~]# useradd -u 504 st02

[root@localhost ~]# tail -1 /etc/passwd

st02:x:504:504::/home/st02:/bin/bash

——创建一个考试测试用的帐号exam01,指定属于users组,该帐号于2009-07-30失效

[root@localhost ~]# useradd -g users -e 2009-07-30 exam01

[root@localhost ~]# useradd -d /ftphome/mike -G ftpuser -s /sbin/nologin mike

-----指定mike的基本组为mike,并加入到ftpuser组,指定家目录为/ftphome/mike,不允许mike通过本地登录服务器

5.5设置/更改用户口令 passwd

5.6修改用户账号的属性 usermod

5.7删除用户账号 userdel

5.8用户账号的初始配置文件

  • 文件来源
    • 新建用户帐号时,从 /etc/skel 目录中复制而来
  1. /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
  2. /etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
  3. ~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该

文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.

  1. ~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该

该文件被读取.

  1. ~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.
  2. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.
  3. ~/.bash_profile 是交互式、login 方式进入 bash 运行的
  4. ~/.bashrc 是交互式 non-login 方式进入 bash 运行的
  5. 通常二者设置大致相同,所以通常前者会调用后者。

5.9组账号文件

5.10添加组账号 groupadd

5.11添加删除组成员 gpasswd

5.12删除组账号 groupdel

5.13查询账号信息

5.14文件/目录的权限和归属

5.15查看文件/目录的权限和归属

  1. “-rw-r—r--”部分的第一个字符表示文件类型,可以是d(目录)、b(块设备文件)、c(字符设备文件),减号“-”(普通文件)、字母“l”(链接文件)等

5.16文件类型

5.17设置文件和目录的权限 chmod

5.18设置文件和目录的归属 chown

5.19设置文件和目录默认权限 umask

5.20特殊的权限 suid

5.20.1特殊的权限 sticky

5.20.2特殊的权限 ACL

第六章磁盘和文件系统管理(一)

6.1检测并确认新硬盘

(系统磁盘空间不足,需要增加新硬盘)而引出fdisk命令

  1. 新挂接的硬盘可能未包含任何分区( Disk /dev/sdb doesn't contain a valid partition table
  2. 对于已有的分区,将通过列表的方式输出以下信息:
    1. Device:分区的设备文件名称。
    2. Boot:是否是引导分区,是则有“*”标识。
    3. Start:该分区在硬盘中的起始位置(柱面数)。
    4. End:该分区在硬盘中的结束位置(柱面数)。
    5. Blocks:分区的大小,以Blocks(块)为单位,默认的块大小为1024字节。
    6. Id:分区类型的ID标记号,对于EXT3分区为83,LVM分区为8e。
    7. System:分区类型

6.2创建文件系统

系统下次启动时加载新建的交换分区,那么必须修改/etc/fstab文件:

/dev/sdb5                swap        swap        defaults         0 0

6.3挂载、卸载文件系统

6.3.1设置文件系统的自动挂载

第四字段:挂载参数,即mount命令“-o”选项后可使用的参数,如defaults、rw等

    第五字段:表示文件系统是否需要dump备份(dump是一个备份工具),一般设为1时表示需要,设为0时将被dump所忽略

    第六字段:该数字用于决定在系统启动时进行磁盘检查的顺序,0不进行检查,1优先,2其次。对于根分区应设为1,其它分区设为2

6.4查看磁盘使用情况

  1. “-h”选项可以显示更易读的容量单位,

“-T”选项用于显示对应文件系统的类型

6.5 LVM (逻辑卷管理)概述

    • 动态调整磁盘容量,从而提高磁盘管理的灵活性
    • 需要注意:/boot 分区用于存放引导文件,不能基于 LVM 创建
    • 图形界面管理工具
      • system-config-lvm /centos7系列光盘源文件中不带该程序

pvcreate  设备名1  [设备名2   … …]

vgcreate  卷组名  物理卷名1     物理卷名2

lvcreate   -L  容量大小  -n  逻辑卷名  卷组名

lvextend  -L  +大小  /dev/卷组名/逻辑卷名

6.6 LVM 应用

由于用户数量众多,邮件存储需要大量的空间,考虑到动态扩容的需要,计划增加两块 SCSI 硬盘并构建 LVM 逻辑卷(挂载到“/mailbox”目录下)专门用于存放邮件数据

6.7磁盘配额概述

6.8启用磁盘配额支持

  1. 如果分区已经挂载,修改了/etc/fstab文件以后,可以执行 mount -o remount /mailbox 进行重新挂载
  2. 若不修改fstab文件,在挂载命令行中也可以手动添加磁盘配额支持,例如:

       mount  -o  remount,usrquota,grpquota  /dev/sdb1  /mailbox

6.8.1磁盘配额管理

  • 验证磁盘配额功能
    • 切换到设置配额的分区(挂载目录)
    • 创建指定数量的文件:使用 touch 命令,或 cp 命令
    • 创建指定容量的文件:使用 dd 命令,或 cp 命令

第八章进程和计划任务管理

8.1程序和进程的关系

8.2.1查看进程信息 ps

  1. ps命令结合“aux”选项使用时,将显示系统中所有的进程信息

PID:该进程在系统中的数字ID号,在当前系统中是唯一的;   

%CPU:CPU占用百分比;    %MEM:内存占用百分比

8.2.2查看进程信息 top

  1. 可适当介绍top工具的命令按键:P、M、N、h、q
      1. 按P键根据CPU占用情况对进程列表进行排序
      2. 按M键根据内存占用情况进行排序
      3. 按N键根据启动时间进行排序
      4. 按h键可以获得top程序的在线帮助信息
      5. 按q键可以正常退出top程序
      6. 使用空格键可以强制更新进程状态显示

8.2.3查看进程信息 pgrep

8.2.4查看进程信息 pstree

8.3进程的启动方式

8.3.1进程的前后台调度

8.4终止进程的运行

8.5计划任务管理 at

8.6计划任务管理 crond

  1. 用户只需执行“crontab -e”命令后会自动调用文本编辑器(默认为vi)并打开“/var/spool/cron/用户名”文件,无需手动指定文件位置

8.7 crontab 任务配置的格式

第九章分析和排查系统故障

9.1日志文件

/var/log/cron:记录crond计划任务产生的事件信息。

/var/log/dmesg:记录Linux系统在引导过程中的各种事件信息。

/var/log/maillog:记录进入或发出系统的电子邮件活动。

/var/log/lastlog:记录每个用户最近的登录事件。

/var/log/rpmpkgs:记录系统中安装的各rpm包列表信息。

/var/log/secure:记录用户认证相关的安全事件信息。

/var/log/wtmp:记录每个用户登录、注销及系统启动和停机事件。

/var/run/btmp:记录失败的、错误的登录尝试及验证事件。

9.2内核及系统日志

9.3用户日志分析

9.4程序日志分析

9.5日志管理策略/搭建日志服务器

9.6修复 MBR 扇区故障

  1. 常见的系统启动类故障包括:MBR扇区故障、GRUB引导故障、丢失系统文件、遗忘root密码……
  2. MBR即Master Boot Record,主引导记录,位于硬盘的第一个扇区(512字节),其中包含了系统引导程序、硬盘分区表信息
  3. 如果没有MBR的备份文件,恢复难度会比较大,可能需要使用“诺顿磁盘医生(Norton Disk Doctor)”之类能够按分区位置查找修复的磁盘工具

9.7修复 GRUB 引导故障

9.8遗忘 root 用户密码

9.9修复文件系统

  • Linux系统开机后,当提示“Give root password for maintenance”时,只需输入root用户的密码,即可进入到一个临时的Shell环境,用户可以对出现错误的文件系统进行修复
  • 必要时可以执行“dd if=/dev/zero of=/dev/sdb7 bs=512 count=4”命令模拟文件系统故障,然后演示修复过程

9.10磁盘资源耗尽故障

9.11检测磁盘坏道

第十章 Linux基础网络设置

10.1查看网络接口信息 ifconfig

10.2查看主机名称hostname

10.3查看路由表条目 route

10.3查看网络连接情况 netstat

10.4

测试网络连接 ping--- [root@localhost ~]# ping 192.168.4.110

跟踪数据包 traceroute--测试从当前主机到目的主机之间经过的网络节点---[root@localhost ~]# traceroute 192.168.7.7

域名解析nslookup--- [root@localhost ~]# nslookup www.google.com

10.5网络流量监测

10.6设置网络接口参数 ifconfig

10.7设置路由记录 route

10.8修改主机名 hostname

10.9网络接口配置文件

10.10启用、禁用网络接口配置

10.11主机名称配置文件

10.12域名解析配置文件

1、“search localdomain”行用来设置默认的搜索域

2、最多支持三个不同的DNS服务器地址

10.13本地主机映射文件

10.14 使用 DHCP 动态配置主机地址

10.14.1 安装 DHCP 服务器

10.14.2 主配置文件

10.15 启动 DHCP 服务

10.16 使用 DHCP 客户端

第十一章FTP文件传输服务

11.1 FTP 服务概述

11.2 Vsftpd 服务基础

11.3基于系统用户的 FTP 服务

11.4 构建基于虚拟用户的 FTP 服务

第十二章 DNS

一、理论基础

1、DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议使用UDP/TCP 53端口号,UDP负责域名解析请求报文,TCP负责多台DNS服务器之间区域传送,当域名解析请求单个报文字节数过大时,如超过512字节,可能会采用TCP 53进行通信,因此在防火墙定义策略时,可同时开启53TCP/UDP协议。

2、DNS 的分布式数据库是以域名为索引的,每个域名实际上就是一棵很大的逆向树中路径,这棵逆向树称为域名空间(domain name space)。如图所示树的最大深度不得超过127 层,树中每个节点都有一个可以长达63 个字符的文本标号。

3、DNS域名解析过程

首先,客户端先在本地缓存查找有没有域名缓存,如果没有,客户端发出DNS请求翻译IP地址或主机名。DNS服务器在收到客户机的请求后:

(1)检查DNS服务器的缓存,若查到请求的地址或名字,即向客户机发出应答信息;

(2)若没有查到,则在数据库中查找,若查到请求的地址或名字,即向客户机发出应答信息;

(3)若没有查到,则将请求发给根域DNS服务器,并依序从根域查找顶级域,由顶级查找二级域,二级域查找三级,直至找到要解析的地址或名字,即向客户机所在网络的DNS服务器发出应答信息,DNS服务器收到应答后现在缓存中存储,然后,将解析结果发给客户机。

(4)若没有找到,则返回错误信息。

4、DNS的分类

主DNS服务器:就是一台存储着原始资料的DNS服务器。

从DNS服务器:使用自动更新方式从主DNS服务器同步数据的DNS服务器。也称辅助DNS服务器。

缓存服务器:不负责本地解析,采用递归方式转发客户机查询请求,并返回结果给客户机的DNS服务器。同时缓存查询回来的结果,也叫递归服务器。

根提示服务器:根据系统中的13组根服务器的IP地址寻求域名解析(需要当前DNS服务器连接外网

转发器:这台DNS发现非本机负责的查询请求时,不再向根域发起请求,而是直接转发给指定的一台或者多台服务器。自身并不缓存查询结果。

5、DNS中记录类型

SOA
定义了该域中的权威名称服务器,一般与ns一致
比如:dns.chengdu.com 
示例:
@[l51]         IN    SOA    dns.baidu.com. admin.baidu.com.  (     

                      1408010001 ; 更新序列号,表示修改的依次顺序,可随意定义,不可超过10    

                      1H ; 从服务器下载数据时间间隔为1小时    

                      5M ; 下载失败后的重试间隔为5分钟   

                      2W ; 超过该时间任无法下载则放弃,为两周    

                      6D ; 无效解析记录的生存周期    

)
NS
域的授权名称服务器,在当前域中能够负责解析域名的服务器有哪些
NSDNameDNSFQDN
baidu.com.        64899    IN    NS    ns2.baidu.com.     

baidu.com.        64899    IN    NS    ns4.baidu.com.     

baidu.com.        64899    IN    NS    dns.baidu.com.     

baidu.com.        64899    IN    NS    ns7.baidu.com.     

baidu.com.        64899    IN    NS    ns3.baidu.com.
MX
域的邮件交换器,要跟着一个优先级值,越小越高
baidu.com.        7200    IN    MX    20 jpmx.baidu.com.     
baidu.com.        7200    IN    MX    20 mx50.baidu.com.     
baidu.com.        7200    IN    MX    10 mx.n.abc.com.     
baidu.com.        7200    IN    MX    20 mx1.baidu.com.
A
IPV4主机地址
AAAA
IPV6主机地址
PTR
解析IP的指针,反向记录
CNAME
权威(正式)名称,定义别名记录
www.baidu.com.        1154    IN    CNAME    www.a.abc.com.

6、DNS命名规范

1. 26个英文字母

2. “0,1,2,3,4,5,6,7,8,9”十个数字

3. “-”(英文中的连词号)

4. 最多63字节长度


 [l51]当前DNS服务器的域名,可直接用@代替

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_74870596/article/details/132044802

智能推荐

从零开始搭建Hadoop_创建一个hadoop项目-程序员宅基地

文章浏览阅读331次。第一部分:准备工作1 安装虚拟机2 安装centos73 安装JDK以上三步是准备工作,至此已经完成一台已安装JDK的主机第二部分:准备3台虚拟机以下所有工作最好都在root权限下操作1 克隆上面已经有一台虚拟机了,现在对master进行克隆,克隆出另外2台子机;1.1 进行克隆21.2 下一步1.3 下一步1.4 下一步1.5 根据子机需要,命名和安装路径1.6 ..._创建一个hadoop项目

心脏滴血漏洞HeartBleed CVE-2014-0160深入代码层面的分析_heartbleed代码分析-程序员宅基地

文章浏览阅读1.7k次。心脏滴血漏洞HeartBleed CVE-2014-0160 是由heartbeat功能引入的,本文从深入码层面的分析该漏洞产生的原因_heartbleed代码分析

java读取ofd文档内容_ofd电子文档内容分析工具(分析文档、签章和证书)-程序员宅基地

文章浏览阅读1.4k次。前言ofd是国家文档标准,其对标的文档格式是pdf。ofd文档是容器格式文件,ofd其实就是压缩包。将ofd文件后缀改为.zip,解压后可看到文件包含的内容。ofd文件分析工具下载:点我下载。ofd文件解压后,可以看到如下内容: 对于xml文件,可以用文本工具查看。但是对于印章文件(Seal.esl)、签名文件(SignedValue.dat)就无法查看其内容了。本人开发一款ofd内容查看器,..._signedvalue.dat

基于FPGA的数据采集系统(一)_基于fpga的信息采集-程序员宅基地

文章浏览阅读1.8w次,点赞29次,收藏313次。整体系统设计本设计主要是对ADC和DAC的使用,主要实现功能流程为:首先通过串口向FPGA发送控制信号,控制DAC芯片tlv5618进行DA装换,转换的数据存在ROM中,转换开始时读取ROM中数据进行读取转换。其次用按键控制adc128s052进行模数转换100次,模数转换数据存储到FIFO中,再从FIFO中读取数据通过串口输出显示在pc上。其整体系统框图如下:图1:FPGA数据采集系统框图从图中可以看出,该系统主要包括9个模块:串口接收模块、按键消抖模块、按键控制模块、ROM模块、D.._基于fpga的信息采集

微服务 spring cloud zuul com.netflix.zuul.exception.ZuulException GENERAL-程序员宅基地

文章浏览阅读2.5w次。1.背景错误信息:-- [http-nio-9904-exec-5] o.s.c.n.z.filters.post.SendErrorFilter : Error during filteringcom.netflix.zuul.exception.ZuulException: Forwarding error at org.springframework.cloud..._com.netflix.zuul.exception.zuulexception

邻接矩阵-建立图-程序员宅基地

文章浏览阅读358次。1.介绍图的相关概念  图是由顶点的有穷非空集和一个描述顶点之间关系-边(或者弧)的集合组成。通常,图中的数据元素被称为顶点,顶点间的关系用边表示,图通常用字母G表示,图的顶点通常用字母V表示,所以图可以定义为:  G=(V,E)其中,V(G)是图中顶点的有穷非空集合,E(G)是V(G)中顶点的边的有穷集合1.1 无向图:图中任意两个顶点构成的边是没有方向的1.2 有向图:图中..._给定一个邻接矩阵未必能够造出一个图

随便推点

MDT2012部署系列之11 WDS安装与配置-程序员宅基地

文章浏览阅读321次。(十二)、WDS服务器安装通过前面的测试我们会发现,每次安装的时候需要加域光盘映像,这是一个比较麻烦的事情,试想一个上万个的公司,你天天带着一个光盘与光驱去给别人装系统,这将是一个多么痛苦的事情啊,有什么方法可以解决这个问题了?答案是肯定的,下面我们就来简单说一下。WDS服务器,它是Windows自带的一个免费的基于系统本身角色的一个功能,它主要提供一种简单、安全的通过网络快速、远程将Window..._doc server2012上通过wds+mdt无人值守部署win11系统.doc

python--xlrd/xlwt/xlutils_xlutils模块可以读xlsx吗-程序员宅基地

文章浏览阅读219次。python–xlrd/xlwt/xlutilsxlrd只能读取,不能改,支持 xlsx和xls 格式xlwt只能改,不能读xlwt只能保存为.xls格式xlutils能将xlrd.Book转为xlwt.Workbook,从而得以在现有xls的基础上修改数据,并创建一个新的xls,实现修改xlrd打开文件import xlrdexcel=xlrd.open_workbook('E:/test.xlsx') 返回值为xlrd.book.Book对象,不能修改获取sheett_xlutils模块可以读xlsx吗

关于新版本selenium定位元素报错:‘WebDriver‘ object has no attribute ‘find_element_by_id‘等问题_unresolved attribute reference 'find_element_by_id-程序员宅基地

文章浏览阅读8.2w次,点赞267次,收藏656次。运行Selenium出现'WebDriver' object has no attribute 'find_element_by_id'或AttributeError: 'WebDriver' object has no attribute 'find_element_by_xpath'等定位元素代码错误,是因为selenium更新到了新的版本,以前的一些语法经过改动。..............._unresolved attribute reference 'find_element_by_id' for class 'webdriver

DOM对象转换成jQuery对象转换与子页面获取父页面DOM对象-程序员宅基地

文章浏览阅读198次。一:模态窗口//父页面JSwindow.showModalDialog(ifrmehref, window, 'dialogWidth:550px;dialogHeight:150px;help:no;resizable:no;status:no');//子页面获取父页面DOM对象//window.showModalDialog的DOM对象var v=parentWin..._jquery获取父window下的dom对象

什么是算法?-程序员宅基地

文章浏览阅读1.7w次,点赞15次,收藏129次。算法(algorithm)是解决一系列问题的清晰指令,也就是,能对一定规范的输入,在有限的时间内获得所要求的输出。 简单来说,算法就是解决一个问题的具体方法和步骤。算法是程序的灵 魂。二、算法的特征1.可行性 算法中执行的任何计算步骤都可以分解为基本可执行的操作步,即每个计算步都可以在有限时间里完成(也称之为有效性) 算法的每一步都要有确切的意义,不能有二义性。例如“增加x的值”,并没有说增加多少,计算机就无法执行明确的运算。 _算法

【网络安全】网络安全的标准和规范_网络安全标准规范-程序员宅基地

文章浏览阅读1.5k次,点赞18次,收藏26次。网络安全的标准和规范是网络安全领域的重要组成部分。它们为网络安全提供了技术依据,规定了网络安全的技术要求和操作方式,帮助我们构建安全的网络环境。下面,我们将详细介绍一些主要的网络安全标准和规范,以及它们在实际操作中的应用。_网络安全标准规范