First Week :Linux系统学习

Linux常用命令

主要包括几大板块:1. 用户以及用户组 2. 文件系统 3. 权限管理 4.路径

用户以及用户组

管理员:UID为0。
注:不是名字叫做root的就一定是管理员,只有uid是0的才算是管理员。
用户组依靠GID区分
一个用户只能有一个基本用户组,但可以有多个扩展用户组

0.显示用户信息

**id 用户名**   #可以显示用户的详细信息,包括uid gid等等

1.创建/删除/修改用户

 ```
 useradd  用户名  默认家目录存放在/home,默认的shell解释器是/bin/bash,并且创建一个与用户同名的用户组
 # 参数 -d 指定用户主目录
 # -u 指定用户的uid
 # -g  指定用户的基本用户组
 # -G 指定用户的扩展用户组
 # -s 指定用户的默认shell解释器
 # -e 指定账户的到期时间 格式:hh:mm:ss
 eg:创建一个用户并指定家目录路径,用户uid和shell解释器
		useradd -d home/linux  -u 8888 -s sbin/nologin linuxdown
 ```

useradd和adduser的区别
1、useradd在使用该命令创建用户是不会在/home下自动创建与用户名同名的用户目录,而且不会自动选择shell版本,也没有设置密码,那么这个用户是不能登录的,需要使用passwd命令修改密码。
应用场景:不需要登陆的,仅提供应用软件的可执行权限。

#使用useradd创建一个有家目录和密码的用户,并能够切进去
mkdir /home/用户名
useradd -d /home/用户名 用户名
passwd  密码
切到root用户
vim /etc/passwd
#将新用户的shell解释器改为bash

2、adduser在使用该命令创建用户是会在/home下自动创建与用户名同名的用户目录,系统shell版本,会在创建时会提示输入密码,更加友好。
应用场景:需要远程登录的用户。

Q1:解释什么是用户的主目录?
工作目录与用户主目录
从逻辑上讲,用户在登录到Linux系统中之后,每时每刻都处在某个目录之中,此目录被称做工作目录或当前目录(Working Directory)。工作目录是可以随时改变的。用户初始登录到系统中时,其主目录(HomeDirectory)就成为其工作目录。工作目录用“.”表示,其父目录用“…”表示。
用户主目录是系统管理员增加用户时创建起来的(以后也可以改变),每个用户都有自己的主目录,不同用户的主目录一般互不相同。
用户刚登录到系统中时,其工作目录便是该用户主目录,通常与用户的登录名相同。
用户可以通过一个**~**字符来引用自己的主目录。
Q2:什么是shell?
它是用户使用Linux的桥梁,提供了用户与内核进行交互操作的一种接口。指定shell解释器相当于选择一种语言供用户使用,每种语言对应的命令有些区别。
常见的shell解释器:bash、sh、csh、ksh等
可以在/etc/shells中查看

userdel 用户名
#参数 -r 同时删除用户的主目录  
# -f 强制删除用户
usermod 用户名
#用于修改用户的属性
-c  修改用户账户的备注信息
*-d -m 参数-m与-d连用  重新指定用户主目录并自动转移旧数据*
*-e  修改账户的到期时间
-g  修改基础用户组
-G 修改扩展用户组*
-L 锁定用户禁止登陆系统
-U 解锁用户允许登陆系统
*-s  变更默认终端*
*-u 修改uid*
(斜体是和useradd命令一致的参数 可对照记忆)
 eg:将用户linuxprob的扩展用户组修改为root
 usermod -G root linuxprob

2.添加/删除用户组,查看用户组信息

groupadd 用户组名
参数:-f 如果指定的组已经存在,显示成功并退出。如果存在gid同时使用-g时,-g失效。
	-g 指定gid,gid必须唯一,除非与-o选项一起使用
	-o 允许添加一个非唯一的gid
	-p  设置新密码

groupdel  用户组名	
参数:-h 显示用户帮助信息
-r  CHROOT_DIR chroot到的目录

groupmod [选项] 组名
参数;-g  修改gid
-n NEW_GROUP  改名为NEW_GROUP
-o 允许使用重复的gid
-p  PASSWORD  将密码修改为加密过的PASSWORD
-r CHROOT_DIR chroot到的目录??


#查看用户组信息
grep 用户组名 /etc/group

3. 查看用户

#查看当前用户
whoa**加粗样式**mi

#查看登陆用户
**who**
属性:-q  显示用户登陆账号和登陆用户的数量

**w** 
显示**当前登陆系统的用户**信息,全面且强大,可以显示当前有哪些用户登录到系统,还可以显示这些用户正在进行的操作,并给出更加详细和科学的统计数据。
**w 用户名**  显示**指定用户**的信息
属性:-h 只显示运行who命令的用户名/登陆终端和登陆时间
-s  短列表 ,不显示用户登录时间、JCPU 和 PCPU 时间
-u:忽略执行程序的名称,以及该程序的PCPU时间

4. 密码操作

passwd 用户名
#几种情况
1.root用户为普通用户设置密码,命令后需要加上指定的用户名
2.root用户为自己设置密码,不需要指定用户名
3.普通用户为root用户设置密码,需要切换到root用户才可以或者使用sudo
4.普通用户为自己设置密码,后面不需要指定用户名

注意:通过超级用户(root)为普通用户设置密码的时候,设置 1 位密码都可以;
但是普通用户为自己设置密码的时候,应该是有密码长度限制的。

5. 用户切换和退出登陆

#普通用户执行某个命令时使用root权限;sudo 是 ubuntu 平台下允许系统管理员让普通用户执行一些或者全部的 root 命令的一个工具,减少了 root  用户的登陆和管理时间,提高了安全性。
**sudo *****

#切换用户
**su 用户名**
**su root**
**su -root** 切换到root用户,同时当前工作目录也切换到root的主目录

**exit**  退出终端/退出当前登陆用户,返回到上一个登陆账户/退出远程登陆账户

文件系统

0.目录结构

linux系统目录结构图/usr unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。
/home 用户主目录的基点
/bin 二进制可执行命令
/dev 设备特殊文件
/etc 系统管理和配置文件

1. 查看文件

#cat tac nl
#more less
#head tail
**cat  [-AbEnTv] 文件**    一般用于查看纯文本文件,字数较少的
      A 可以列出特殊字符 
      b 列出行号,空白行不标行号
      E 结尾的断行字节显示
      n 显示行号 空白行也显示
      v 列出一些看不出来的特殊字符
**tac  文件**  文件内容从最后一行开始显示
**nl  [-bnw] 文件**  显示行号 
     b行号指定方式ba空行也要显示行号;bt空行不显示行号; 
     n 行号展示方式 ln最左方显示 rn最右方显示且加0 rz右方显示且不加0
     w 行号栏占的位数
**more 文件**  一页一页的翻动  空格表示翻下一页  一般用于查看纯文本文件,字数较多的
**less** 
**head -n number 文件** 
**tail -n number 文件**  number表示取出最后几行  默认number=10

2. 创建文件

# cat touch
**cat>>filename**    #使用cat创建文件系统默认的文件属性作为新文件的属性,并接受键盘输入作为文件内容,结束时以ctrl+d退出并保存
**cat file1 file2 >> file3** 将多个文件合并到一个新文件 
**touch filename**  #可以同时创建多个文件,也可以批量创建  用的不多,主要用于修改指定文件的访问和修改时间属性。
touch -r existFilename filename  #根据existFilename的访问和修改时间属性  确定filename的访问和修改时间属性

3. 删除文件

rm 文件名
参数:-f 强制删除
-r  删除目录

4. 修改文件

5.复制文件/剪切

**cp 源文件  目的文件**
   参数:-p 保留原始文件的属性
   -d  若文件为链接文件,则保留链接文件的属性
   -r 递归持续复制  用于目录
   -i  若目标文件存在询问是否覆盖
   -a   相当于-pdr
 **dd [参数]**
    按照指定大小和个数的数据块来复制文件或转换文件
    -if  输入文件名称
    of  输出文件名称
    bs  设置每个块的大小
    count  设置要复制块的个数
**mv 源文件 目的文件** #用于将文件重命名或者剪切
eg:mv x.log  linux.log  #在同一目录下对某个文件进行剪切相当于将某个文件重命名

6.其他小命令

  1. 替换文本中的字符串
**tr  [原始字符] [目标字符]**
    eg: cat anaconda-ke.cfg  | tr [a-z] [A-Z]
        先使用cat命令读取待处理文本,使用管道 将文本内容传递给tr命令进行替换
  1. 统计命令
**wc  [参数]  文本**  #用于统计指定文本的行数l,字数w,字节数c
 参数:-l  只显示行数
 -w  只显示单词数
 -c  只显示字节数
 eg:wc  -l /etc/passwd   可用于统计当前系统的用户数
  1. 查看文件具体信息
**stat  文件名**  #用于查看文件的具体存储信息和时间
命令stat anaconda-ks.cfg会显示出文件的三种时间状态(已加粗):Access、Modify、Change
  1. 按列提取文本
**cut  [参数]  文本**
参数:-f  设置需要看的列数
-d 设置间隔符号
eg:提取全部用户名   passwd在保存用户数据信息时,用户信息的每一项值之间是采用冒号来间隔的。
    尝试提取出passwd文件中的用户名信息,即提取以冒号(:)为间隔符号的第一列内容:
    head -n 2 /etc/passwd
    cut -d: -f1 /etc/passwd
    -d设置分割符为:
    -f设置只看一列
  1. 比较多个文本差异
**diff  [参数] 文件**
参数:--brief 确认两个文件是否不同
-c 详细比较出多个文件的差异之处
eg:diff --brief  diff_A.txt  diff_B.txt   #判断两个文件diff_A.txt 和 diff_B.txt  是否相同
        diff -c diff_A.txt  diff_B.txt  #描述两个文件具体哪里不同
  1. 关键词搜索
**grep [选项] [文件]**
        参数:-b  将可执行文件当作文本文件搜索
        -c 仅显示找到的行数
        -i 忽略大小写
        -n  显示行号
        -v 反向选择,仅列出没有关键词出现的行
     eg:在Linux系统中,/etc/passwd文件是保存着所有的用户信息,而一旦用户的登录终端被设置成/sbin/nologin,则不再允许登录系统,因此可以使用grep命令来查找出当前系统中不允许登录系统的所有用户信息:
     grep /sbin/nologin  /etc/passwd
  1. 按照指定条件查找文件
find  [查找路径] 寻找条件 操作
参数:-name 	匹配名称
-perm 	匹配权限(mode为完全匹配,-mode为包含即可)
-user 	匹配所有者
-group 	匹配所有组
-mtime -n +n 	匹配修改内容的时间(-n指n天以内,+n指n天以前)
-atime -n +n 	匹配访问文件的时间(-n指n天以内,+n指n天以前)
-ctime -n +n 	匹配修改文件权限的时间(-n指n天以内,+n指n天以前)
-nouser 	匹配无所有者的文件
-nogroup 	匹配无所有组的文件
-newer f1 !f2 	匹配比文件f1新但比f2旧的文件
--type b/d/c/p/l/f 	匹配文件类型(后面的字幕字母依次表示块设备、目录、字符设备、管道、链接文件、文本文件)
-size 	匹配文件的大小(+50KB为查找超过50KB的文件,而-50KB为查找小于50KB的文件)
-prune 	忽略某个目录
-exec …… {}\; 	后面可跟用于进一步处理搜索结果的命令(下文会有演示)

7. 压缩解压

.tar.gz的文件   tar -zcvf 压缩包名.tar.gz 文件/目录 
               tar -zxvf 压缩包名.tar.gz 
zip文件   zip -q -r 压缩包名.zip 文件/路径
              unzip 压缩包名

8. 软连接/硬连接

Linux的文件系统中,保存在磁盘分区中的文件会被分配一个编号,称为索引节点号inode。
**硬链接:**多个文件名指向同一索引节点是存在的,这种连接就被称为是硬连接。通俗的说,就是有着相同inode号但是文件名并不相同。
作用是允许一个文件拥有多个有效路径名,避免误删除。
具有的特性:1)文件具有相同的inode号和data block,不占用实际空间。
2)只能对已存在的文件进行创建
3)不能对目录创建,只能对文件创建
4)删除一个硬连接文件不影响其他有相同inode号的文件
5)不可以交叉文件系统进行硬链接的创建
注:当删除文件时,只有当指向某个文件的所有硬连接全部删除,才能够真正的删除。

**link 旧文件 新文件
ln  旧文件 新文件**

**软连接/符号链接:**类似于快捷方式,是一个含有特殊数据块内容的普通文件,文件用户数据块中存放的内容是另一文件的路径名的指向
作用:方便管理 / 解决文件系统磁盘管理空间不足的问题
特性:1)可以对不存在的文件名进行创建
2)可对目录和文件创建
3)可以跨文件系统
注:删除软链接并不影响所指向的文件,但若被指向的原文件被删除,相关软链接就变成了死链接。

**ln -s  旧文件 软链接
ln -s  旧文件  软链接目录**

可以由ls命令查看,第一列就是inode号

查看某一文件的信息

stat 文件名
ll -ih
ll -i

Q:inode是什么呢?
inode,它是文件或者目录在一个文件系统中的唯一标识,文件的实际数据放置在数据区域(data block),它存储着文件重要参数信息,也就是元数据 (metadata),比如创建时间、修改时间、文件大小、属主、归属的用户组、读写权限、数据所在block号等

8. 创建/删除文件夹

mkdir 文件夹名
rmdir 文件夹名

权限管理

1.文件权限

文件权限和归属
对于文件而言:
可读:可以读取文件的实际内容
可写:能够编辑/新增/修改/删除文件的实际内容
可执行:能够运行一个脚本程序
对于目录而言:
可读:能读取目录中的文件列表
可写:能够在目录中新增/删除/重命名文件
可执行:能够进入该目录
文件夹只有读权限 cd切不进去 必须具有可执行权限才行

1)查看文件信息
ls -l

其中排在权限前面的减号(-)是文件类型,新手经常会把它跟无权限混淆。
常见的文件类型包括有:普通文件(-)、目录文件(d)、链接文件(l)、管道文件(p)、块设备文件(b)以及字符设备文件(c)。
文件信息解释

2)文件权限的表示

文件权限有两种表示方式:数字表示和字符表示
文件权限的字符与数字表示 如:751 表示文件属主可读/可写/可执行,文件属组可读/可执行,其他用户只能执行
对应的字符表示为:rwxr-x–x

3)修改文件权限/属主/属组

a:修改文件权限:可以使用数字法和字符法两种格式修改

1. 字母法 **chmod  [-ugoa]  [+-=]   rwx** 文件名
u:user表示该文件的
g:group表示该文件的所有者属于同一组者,即用户组
o:other 其他人
a:all表示三者皆是

+:增加权限
-:撤销权限
=:设定权限 注:为文件设定权限的时候,文件的权限就只会保留设定的权限,其他权限全部消失
 - 数字法 **chmod  三位数字 文件名**
eg:chmod 751 test.zip   修改test.zip文件的权限为751

b:修改文件属主

**chown 用户名 文件或者目录名**
eg:chown abc  test.zip  将test.zip的属主修改为用户abc

c:修改文件属组

**chgrp  用户组名 文件或者目录名**
eg: chgrp  chen test  #将文件test的属组修改为用户组chen
4)文件的特殊权限

1 : SUID
可以让二进制程序的执行者临时拥有属主的权限。
例如:临时给普通用户修改/etc/shadow文件的权限 可以修改自己的密码
是一种有条件的临时的特殊授权方法
2 : SGID
二进制程序时:可以让执行者临时获取文件所有组的权限;
目录时:让目录内新创建的文件自动继承该目录原有的用户组的名词
3 : SBIT

2. 管道符/重定向

1)输入输出重定向 / 重定向到文件
  • 标准输入重定向(STDIN,文件描述符为0):默认从键盘输入,也可从其他文件或命令中输入。
    命令 < 文件 	将文件作为命令的标准输入
	命令 << 分界符 	从标准输入中读入,直到遇见分界符才停止
	命令 < 文件1 > 文件2 	将文件1作为命令的标准输入并将标准输出到文件2
  • 标准输出重定向(STDOUT,文件描述符为1):默认输出到屏幕。
命令 > 文件 						将标准输出重定向到一个文件中(清空原有文件的数据)
命令 2> 文件 					将错误输出重定向到一个文件中(清空原有文件的数据)
命令 >> 文件 					将标准输出重定向到一个文件中(追加到原有内容的后面)
命令 2>> 文件 					将错误输出重定向到一个文件中(追加到原有内容的后面)
命令 >> 文件 2>&1 或 命令 &>> 文件 	将标准输出与错误输出共同写入到文件中(追加到原有内容的后面)
  • 错误输出重定向(STDERR,文件描述符为2):默认输出到屏幕。

  • 重定向到文件

tee命令用于读取标准输入的数据,并将其内容输出成文件。

tee file1 file2
参数: -a或--append  附加到既有文件的后面,而非覆盖它.
  -i或--ignore-interrupts  忽略中断信号。
  --help  在线帮助。
  --version  显示版本信息
2)管道命令符

作用:前一个命令原本要输出到屏幕的信息当作是后一个命令的标准输入

eg:用一条命令来完成密码重置操作
**echo "linuxprob" | passwd --stdin root**
搜索与bash有关的进程信息 同时重定向到文件result.txt中
**ps aux | grep bash | tee result.txt**

注:管道命令符只能在一个命令组合中使用多次

3)通配符
通配符含义
*任意字符
单个任意字符
[a-z]单个小写字符
[A-Z]单个大写字符
[a-Z]单个字母
[0-9]单个数字
[:alpha:]任意字母
[:upper:]任意大写字母
[:lower:]任意小写字母
[:digit:]所有数字
[:punct:]标点符号
eg:匹配所有在/dev目录中且以sda开头的文件
ls -l /dev/sda*
4)转义字符

反斜杠(\):使反斜杠后面的一个变量变为单纯的字符。

单引号(’’):转义其中所有的变量为单纯的字符串。

双引号(""):保留其中的变量属性,不进行转义处理。

反引号(``):把其中的命令执行后返回结果。

5)环境变量
变量名称作用
HOME用户主目录

磁盘管理

网络管理以及配置

1.网络命令

1)hostname命令

hostname #没有选项,显示主机名
hostname -d  #显示所在域名
hostname -f #显示完整的主机名+域名
hostname -i #显示当前机器的ip地址
hostname 新的主机名 #临时设置主机名
    #通过/etc/sysconfig/network文件修改主机名需要重启才能够生效  HOSTNAME的值

2)ping ip地址
ping 命令用来向指定的ip地址发送数据包,主要有两点作用:测试网络是否畅通,查看连接的速度
可以使用ctrl+c停止命令

ping ip地址
参数:-c number  #可以定义ping的次数

3)ifconfig
查看用户网络配置,显示当前网络设备配置。
iwconfig
查看无线网卡的信息,设置基本的wifi网络信息

4)nslookup
给定ip地址时可以显示主机名,找到给定域名的所有IP地址
eg:nslookup marsge.cn

5)traceroute
用来查看数据包在提交到远程系统或者网站时所经过的路由器的IP地址、跳数和响应时间。

6)telnet
通过telnet协议连接目标主机
telnet hostname port ** 使用指定的端口telnet 主机名,用于测试主机是否在线或者网络是否正常。

7)netstat
最常用的命令,

netstat -g   #显示该主机订阅的所有多播组
netstat  -nap | grep port  #显示使用该端口的应用进程的进程id
netstat -a #显示tcp和udp的所有连接
netstat -t/-tcp  显示tcp的
netstat  -u/udp  显示udp的

2.网络理论知识

1)三种模型结构

1、OSI七层参考模型:在网络历史的早期,国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)共同出版了开放系统互联的七层参考模型。一台计算机操作系统中的网络过程包括从应用请求(在协议栈的顶部)到网络介质(底部) ,OSI参考模型把功能分成七个分立的层次。
2、另一种是TCP/IP四层模型,主要包括:应用层、运输层、网际层和网络接口层。
tcp-ip
3、五层体系结构:应用层、运输层、网络层、数据链路层、物理层。
五层说法只是OSI和TCP/IP的综合,实际应用还是TCP/IP的四层结构。为了方便可以把下两层称为网络接口层。

应用层 :

应用层是最接近终端用户的OSI层,这就意味着OSI应用层与用户之间是通过应用软件直接相互作用的。【应用层并非由计算机上运行的实际应用软件组成,而是由向应用程序提供访问网络资源的API组成的】主要有一些针对特定应用的协议。
协议:HTTP/FTP/SMTP/DNS
HTTP:超文本传输协议,工作原理:Client端创建一个套接字(IP,端口号),同时向Server端发送TCP连接请求,并通过确认信息确认建立好TCP连接了。Client端利用TCP连接向Server端发送相应的请求命令。Server端接收到请求后进行相应的处理,然后将处理结果以响应response的形式返回给Client端。完成请求、应答之后,Client端和Server端通过关闭套接字结束本次的TCP连接。
可以了解一下*请求报文格式、响应报文格式,cookie,web缓存(代理服务器)*这些概念。爬虫最开始要做的一件事就是模仿浏览器向目的网站发送请求,获取到返回的响应结果,再对结果进行处理,获取需要的信息。
FTP:文件传输协议,工作过程:客户机程序根据需求发送命令,服务器程序响应命令的一个过程。建立控制连接和数据连接,分别用于传送客户机程序发出命令、接收服务器返回响应信息和传输文件内容。
在这里插入图片描述
DNS:域名系统,分布式网络目录服务系统,它通过一个遍布全球的分布式数据库,提供主机名称和IP地址之间的映射。
在这里插入图片描述
在这里插入图片描述

SMTP:邮件传输协议,由发送者邮件代理、发送者邮件服务器、接收者邮件服务器,接收者代理4个程序的参与。
在这里插入图片描述

传输层:

管理两个节点之间的数据传输。传输单位:数据段。
协议:TCP/UDP
报文格式,字段含义
三次握手、四次挥手原理
提供服务:拥塞控制、重传

网络层:

地址管理和路由选择。传输单位:数据包。
协议:IP/RIP/OSPF
ipv4格式

数据链路层:

通过物理网络链路提供可靠的数据传输。 传输单位:帧。
作用:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等,ARP协议/RARP协议,帧。
协议:ARP/RARP/PPP

物理层 :

负责最后将信息编码成电流脉冲或其它信号用于网上传输。它由计算机和网络介质之间的实际界面组成,可定义电气信号、符号、线的状态和时钟要求、数据编码和数据传输用的连接器。所有比物理层高的层都通过事先定义好的接口而与它通话。
负责0、1 比特流(0/1序列)与电压的高低、光的闪灭之间的转换,bit。
协议:IEEE 802.1A,IEEE 802.2 到IEEE 802.11

补充:
表示层 :主要负责数据格式的转换。
会话层 :通信管理,负责建立和断开通信连接。

ARP攻击
ARP是地址解析协议,目的是实现IP地址到MAC地址(电脑唯一的标识符)的转换。通过广播+维护ARP映射表来实现。
pc1想要通过广播方式找到pc2的mac地址,当pc3听到时,接收广播包并发送含有自己mac地址的回应包,pc1接收到多个回应包时会根据到达时间判断到底哪个是真(后到达)哪个是假的,pc3就会一直连续不断的这样的回应包。

2)IPV4

ipv4长度32位,常采用点分十进制表示法,x.x.x.x.的格式。
IP地址的分类:A类B类C类D类E类
ip地址类型A类:地址范围1.0.0.0 - 127.255.255.255,用于给政府机构/大型规模公司等,中国只有一个A类地址;第一块和第二块网络号要保留。
B类:地址范围128.0.0.0 - 191.255.255.255,用于给中等规模的公司。
C类:地址范围192.0.0.0 - 223.255.255.255,用于给任何有需要的人。
D类:地址范围224.0.0.0 - 239.255.255.255,用于保留做各种实验。
注:ABC三类地址的主机号全0和全1均须要保留,主机号全为0是子网网络地址,全为1是子网广播地址。
其他特殊IP地址:待更新。。。

子网划分

借用主机号的一部分作为子网的子网号,划分出更多的子网ip地址,结构:网络号-子网号-主机号。
子网掩码:网络号和子网号全改为1,主机号全改为0.
主机号不能够全为1或0.
子网数由每个子网中主机与路由器数量确定。
可变长度的子网掩码:待更新。。。
CDIR:待更新。。。

路径

…/和./表示上级目录和当前目录
绝对路径:从根目录开始写起的文件名或者目录名 /home/a/test.txt
相对路径:相对于目前路径的文件名写法 ./home/a

1.工作目录切换命令

pwd   #用于显示用户当前 所处的目录
cd  目录名称  #用于切换工作路径
     cd ~  切换到当前用户的主目录
     cd ~username  切换到其他用户的主目录
     cd -  切换到上一次所处的目录
ls  [-ald]  [文件]
    参数:-a  可以看到全部文件,包括隐藏文件
    -l 可以查看文件的属性/大小等详细信息
    -d  可以查看目录属性

并发问题

高并发

通过设计保证系统能够同时并行处理很多请求。
高并法的相关指标:响应时间/吞吐量/每秒响应请求数QPS/并发用户数

提升系统并发能力

互联网分布式架构设计,提高系统并发能力。

互联网分层架构

1. 垂直扩展

提升单机处理能力 (1)增强硬件性能 ,CPU/内存/硬盘(2)提升单机架构能力,Cache/异步等

2. 水平扩展

增加服务器的数量,线性扩充系统性能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值