Linux简介(操作系统)

Linux发展史(了解)

Linux出现于1991年,是由芬兰赫尔辛基大学学生李纳斯·托瓦兹(Linus Torvalds)偶然发现的,他当时是为了方便下载学校网站的一些视频与新闻资料,自己开发的一套程序,后来加入美国自由软件基金组织协会,和众多爱好者共同开发完成 。

Linux介绍 (了解)

(1)Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux发行版本,但它们都使用了Linux内核。

(2)Linux内核网站:www.kernel.org

(3)基于内核,再增加一些桌面,应用程序,就可以发行,称为开发版。

Linux两大阵营:

(1)Redhat系列  redhat,suse,CentOS,Fedora等

(2)Debian系列   debian,ubuntu等

区别: 命令细微的区别, 安装方式

Linux应用领域(了解)

(1)Linux企业服务器

(2)嵌入式系统:Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、智能家电等嵌入式系统。

(3)电影娱乐行业:电影后期特效处理。

Linux特点(掌握)

(1)开源

源代码开放,多用户,多任务,丰富的网络功能,良好的可移植性,具有标准兼容性,良好的用户界面,出色的速度性能

(2)安全

服务器不使用图形化界面:

图形化占用资源

机房部署方便,无需配置操作界面

(3)稳定

一般不会出现蓝屏,死机,卡机的现象

(4)免费

最主要的特点

CentOS  社区版(了解)

主流:目前的Linux操作系统主要应用于生产环境,主流企业级Linux系统仍旧是CentOS(大多数使用)或者RedHat

免费:RedHat 和CentOS差别不大,CentOS是一个基于Red Hat ,Linux 提供的可自由使用源代码的企业级Linux发行版本

更新方便:CentOS独有的yum命令支持在线升级,可以即时更新系统,不像RedHat 那样需要花钱购买支持服务!

CentOS官网:http://www.centos.org/

Linux安装

安装环境:Windows7/win10 , VMware Workstation14, CentOS 6.7

VMware

VMware是一个虚拟PC的软件,可以在现有的操作系统上虚拟出一个新的硬件环境,相当于模拟出一台新的PC ,以此来实现在一台机器上真正同时运行多个独立的操作系统 。

VMware主要特点:

1、不需要分区或重新开机就能在同一台PC上使用两种以上的操作系统

2、本机系统可以与虚拟机系统网络通信

3、可以设定并且随时修改虚拟机操作系统的硬件环境

Linux目录结构(掌握)

/bin: (binaries) 存放系统命令的目录,所有用户都可以执行。

/sbin : (super user binaries) 保存和系统环境设置相关的命令,只有超级用户可以使用这些命令,有些命令可以允许普通用户查看。(root)

/root: 存放root用户的相关文件,root用户的家目录。宿主目录  超级用户

/home:用户缺省宿主目录 eg:/home/spark      /home/pengfei

/tmp:(temporary)存放临时文件

/etc:(etcetera)系统配置文件  profile

/usr:(unix software resource)系统软件共享资源目录,存放所有命令、库、手册页等

/boot:系统启动目录

/dev:(devices)存放设备文件

/lib:存放系统程序运行所需的共享库  jar包

/var:(variable) 动态数据保存位置,包含经常发生变动的文件,如邮件、日志文件、计划任务等

Linux常用命令(熟练)

cd   

英文:change directory 执行权限:所有用户

作用: 切换目录

语法:cd   [目录]
      / 切换到根目录

.. 回到上一级目录

. 当前目录

绝对路径与相对路径的区别

ls 与ll  

英文:list           执行权限:所有用户

作用:显示目录文件      语法:ls  [-alrRt]

-a  all 显示所有文件,注意隐藏文件,特殊目录

-l(long) 显示详细信息

-R(recursive)   递归显示当前目录下所有目录

-r (reverse)  逆序排序

-t(time) 按修改时间排序(降序)

ll  相当于 ls –l (一般常用命令)

pwd

英文:print working directory 执行权限:所有用户

作用:显示当前工作目录的路径

语法:pwd

mkdir

英文:make directories 执行权限:所有用户

作用:创建新目录

语法:mkdir  [-p] 目录名

-p 父目录不存在情况下先生成父目录,递归创建 (parents)

touch

执行权限:所有用户

作用:创建空文件或更新已存在文件的时间

语法:touch  文件名

创建一个空文件: touch a.txt

同时创建多个文件: touch  a.txt  b.txt  或者 touch {a.txt,b.txt}

注意:生产环境中,文件名,一定不要加空格

rm

英文:remove      执行权限:所有用户

作用:删除文件

语法: rm   [-rf] 文件或目录

-r  (recursive)删除目录,同时删除该目录下的所有文件

-f(force) 强制删除文件或目录 即使原档案属性设为唯读,直接删除,不需要逐一确认(不需要输入yes或者y)

注意:工作中,谨慎使用rm rf 命令。

mv

英文:move  执行权限:所有用户

作用:移动文件或目录、文件或目录改名

语法:mv 源文件或目录   目的目录

cp

英文:copy 执行权限:所有用户

作用:复制文件或目录

语法:cp   [–rp]  源文件或目录  目的目录

-r 递归处理,复制目录

-p 保留文件属性 (原文件的时间不变)

cat  

英文:concatenate  执行权限:所有用户

作用:显示文件内容

语法:cat   [-n] [文件名]

-n 显示行号

head  

执行权限:所有用户

作用:查看文件前几行(默认10行)

语法:head   -n 指定行数   [文件名]

tail 

执行权限:所有用户

作用:查看文件的后几行(默认10行)

语法:tail  -n 指定行数   [文件名]

追加数据 >  或者 >>

获取一个大文件的部分文件,可使用head或tail命令

head  -n  100  原文件名  > 目标文件

help帮助命令

help  查看shell内置命令的帮助信息

内置命令,使用whereis,which,man都不能查看

文件搜索命令

find      

执行权限:所有用户      作用:查找文件或目录

语法:find   [搜索路径] [匹配条件]

如果没有指定搜索路径,默认从当前目录查找

find命令选项

-name 按名称查找  精准查找

find  目录  -name  “a.txt” 在目录中查找文件a.txt

find查找中的字符匹配:

?:匹配单个字符

*:匹配所有(模糊匹配)

find  /root  -name  “a.???”    在目录/root中查找以a.开头的,且后面有三位的文件

find  /root  –name  “a*”

find查找的基本原则

占用最少的系统资源,即查询范围最小,查询条件最精准

如果明确知道查找的文件在哪一个目录,就直接对指定目录查找,不查找根目录

grep命令

执行权限:所有用户    作用:在文件中搜寻字串匹配的行并输出

语法:grep   [-cinv]  '搜寻字符串'   filename

选项与参数:

-c :输出匹配行的次数(是以行为单位,不是以出现次数为单位)

-i :忽略大小写,所以大小写视为相同

-n :显示匹配行及行号

grep -c“hadoop”/root /wc.txt   显示在wc.txt文件中,hadoop匹配了多少次

grep -ic“hadoop”/root/wc.txt   显示在wc.txt文件中,hadoop (忽略大小写)匹配了多少次

grep -n “hadoop” /root/wc.txt  显示在wc.txt文件中,hadoop匹配行及行号

which    

执行权限:所有用户   作用:显示系统命令所在目录(绝对路径及别名) 

which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。

也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令

# which ls

alias ls='ls --color=auto'

/bin/ls

whereis

执行权限:所有用户

作用:搜索命令所在目录 配置文件所在目录     

which mkdir   和   whereis  mkdir

压缩解压缩命令

gzip 

英文:GNU zip  执行权限:所有用户

作用:压缩(解压)文件,压缩文件后缀为.gz    

gzip只能压缩文件,不能压缩目录,不保留原文件

语法:gzip  文件名

-d将压缩文件解压(decompress)

解压使用gzip  –d

zip   

执行权限:所有用户

作用:压缩(解压)文件,压缩文件后缀为.zip

语法:zip   选项[-r]    [压缩后文件名称]   [文件或目录]

-r压缩目录

zip    wc.zip  /root   压缩文件;

zip -r  test.zip  /root  压缩目录

如果不加-r选项,压缩后的文件没有数据。

解压使用unzip

tar (最常用的解压命令)

source.tar.gz:源码包

tar.gz

执行权限:所有用户

作用:文件、目录打(解)包

语法:tar  [-zxcvf] 压缩后文件名  文件或目录

-c 建立一个压缩文件的参数指令(create),后缀是.tar

-x 解开一个压缩文件的参数指令(extract)

-z 以gzip命令压缩/解压缩

-v 压缩的过程中显示文件(verbose)

-f file 指定文件名,必选项

tar –zcvf 压缩   -C  /指定的压缩路径

tar –zxvf  解压   -C  /指定的解压路径

tar –zxvf  jdk1.8.0_102 –C  /usr/local/

系统关机命令

shutdown  [选项] 时间

选项: -r: 重启

-h: 关机

shutdown -h  now  立即关机     shutdown  -h  20:30   定时关机

其他关机命令   poweroff

其他重启命令  reboot  

6 VIM文本编辑器

vim/vi是Unix / Linux上最常用的文本编辑器而且功能非常强大。

VI工作模式

插入命令

命令

作用

a

在光标后附加文本

A(shift + a)

在本行行末附加文本   行尾

i

在光标前插入文本

I(shift+i)

在本行开始插入文本 行首

o

在光标下插入新行

O(shift+o)

在光标上插入新行

定位命令

命令

作用

:set nu

设置行号

:set nonu

取消行号

gg

G

到第一行

到最后一行

nG

到第n行

:n

到第n行

保存和退出命令

命令

作用

:w

保存修改

:w new_filename

另存为指定文件

:w >> a.txt

内容追加到a.txt文件中 文件需存在

:wq

保存修改并退出

shift+zz(ZZ)

快捷键,保存修改并退出

:q!

不保存修改退出

:wq!

保存修改并退出(文件所有者可忽略文件的只读属性)

不保存并退出:

1, 有修改,但是修改后的内容是不保存的

2, 有突发情况,导致窗口退出。修改文件之后,直接删除同名的.swp文件

删除命令

命令

作用

x

删除光标所在处字符   nx 删除光标所在处后n个字符

dd

删除光标所在行,ndd删除n行

:n1,n2d

删除指定范围的行(eg :1,3d   删除了123这三行)

dG

删除光标所在行到末尾的内容

D

删除从光标所在处到行尾

复制和剪切命令

命令

作用

yy、Y

复制当前行

nyy、nY

复制当前行以下n行

dd

剪切当前行

ndd

剪切当前行以下n行

p、P

粘贴在当前光标所在行下  或行上

替换和取消命令

命令

作用

r

取代光标所在处字符

R(shift + r)

从光标所在处开始替换字符,按Esc结束

u

undo,取消上一步操作

ctrl+r

redo,返回到undo之前

搜索和替换命令

命令

作用

/string

向后搜索指定字符串   搜索时忽略大小写 :set ic

?string

向前搜索指定字符串

N

搜索字符串的下一个出现位置,与搜索顺序相同

N(Shift + n)

搜索字符串的上一个出现位置,与搜索顺序相反

:%s/old/new/g

全文替换指定字符串

:n1,n2s/old/new/g

在一定范围内替换指定字符串

% 指全文,s 指开始,g 指全局替换

网络通信命令

ifconfig

英文:interface configure 执行权限:root

作用:查看和设置网卡网络配置

语法:ifconfig  -a:显示所有网卡信息

ping

执行权限:所有用户

作用:测试网络的连通性

语法:ping 选项 IP地址

-c 指定发送次数

ping 命令使用的是icmp协议,不占用端口

ping -c  3  127.0.0.1

netstat

查询端口号占用情况

英文:network statistics 执行权限:所有用户

作用:主要用于检测主机的网络配置和状况

-a  all显示所有连接和监听端口

-t (tcp)仅显示tcp相关选项

-u (udp)仅显示udp相关选项

-n 使用数字方式显示地址和端口号

-l (listening)  显示监控中的服务器的socket

netstat -tlnu      查看本机监听的端口

进程管理命令

进程和程序的区别:

1、程序是静态概念,本身作为一种软件资源长期保存;而进程是程序的执行过程,它是动态概念,有一定的生命期,是动态产生和消亡的。

2、程序和进程无 一 一 对应关系。一个程序可以由多个进程共用;另一方面,一个进程在活动中有可顺序地执行若干个程序。

进程和线程的区别:

进程: 就是正在执行的程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。

线程: 轻量级的进程;进程有独立的地址空间,线程没有;线程不能独立存在,它由进程创建;相对讲,线程耗费的cpu和内存要小于进程。

进程管理的作用?

判断服务器的健康状态

查看系统所有的进程

杀死进程

ps命令

作用:查看系统中的进程信息

语法:ps [-auxle]

常用选项

a:显示所有用户的进程

u:显示用户名和启动时间

x:显示没有控制终端的进程

e:显示所有进程,包括没有控制终端的进程

l:长格式显示

查看系统中所有进程(jps)

# ps -ef        #查看系统中所有进程,使用Linux标准命令格式

ps应用实例
 # ps -ef | grep init        查看指定进程信息

pstree

作用:查看当前进程树

语法:pstree [选项]

-p 显示进程PID

-u 显示进程的所属用户

kill 

作用:关闭进程

语法:kill [-选项] pId

kill -9 进程号(强行关闭)  常用

用户管理命令

useradd

添加用户

语法:useradd [选项] 用户名

passwd

修改密码命令

语法:passwd [选项] [用户名]

用户密码:生产环境中,用户密码长度8位以上,设置大小写加数字加特殊字符,要定期更换密码。

userdel(user delete)

删除用户  userdel  用户名

再次创建时,汇报异常,需要递归删除 –r

-r 删除账号时同时删除宿主目录(remove)

组管理命令

groupadd

添加组

语法:groupadd [选项]组名

groupdel

删除组

语法:groupdel [选项] 组名

创建用户直接指定组

Useradd 用户名 –g  组名

查看组  cat  /etc/group

磁盘空间命令(了解)

df命令

作用:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息。看剩余空间

语法:df [-hkam] [挂载点]

-h(human-readable)根据磁盘空间和使用情况 以易读的方式显示 KB,MB,GB等
-k  以KB 为单位显示各分区的信息,默认

-M 以MB为单位显示信息
-a  显示所有分区包括大小为0 的分区

du命令

作用:用于查看文件或目录的大小(磁盘使用空间)

语法:du [-abhs] [文件名目录]

-a 显示子文件的大小

-h以易读的方式显示 KB,MB,GB等

-s summarize 统计总占有量

eg:
du -a(all) /home  显示/home 目录下每个子文件的大小,默认单位为kb

du -b /home  以bytes为单位显示/home 目录下各个子目录的大小

du -h /home 以K,M,G为单位显示/home 文件夹下各个子目录的大小

du -sh /home  以常用单位(K,M,G)为单位显示/home 目录的总大小 -s summarize

df命令和du命令的区别:

df命令是从文件系统考虑的,不仅考虑文件占用的空间,还要统计被命令或者程序占用的空间。

du命令面向文件,只计算文件或目录占用的空间。

#df –h /

#du –sh /

free

作用:查看内存及交换空间使用状态

语法: free [-kmg]

选项:

-k:    以KB为单位显示,默认就是以KB为单位显示

-m:    以MB为单位显示

-g:    以GB为单位显示

防火墙

查看防火墙

Service  iptables  status

开启防火墙(不用)

Service  iptables  start

临时关闭防火墙(下次重新启动linux,防火墙开启)

Service  iptables  stop

永久关闭防火墙(建议全部永久关闭)

Chkconfig   iptables   off

Linux系统简介以及基本操作(一)的更多相关文章

  1. Linux基础学习(1)--Linux系统简介

    第一章——Linux系统简介 1.UNIX和Linux发展史: 1.1 unix发展史: (1)1965年,美国麻省理工学院(MIT).通用电气公司(GE)及AT&T的贝尔实验室联合开发Mul ...

  2. Linux学习笔记-Linux系统简介

    Linux学习笔记-Linux系统简介 UNIX与Linux发展史 UNIX是父亲,Linux是儿子. UNIX发行版本 操作系统 公司 硬件平台 AIX IBM PowerPC HP-UX HP P ...

  3. 装机预备技能,Linux系统简介,安装Linux系统,Linux基本操作-云计算学习(2)

    装机预备技能 问题 要求安装一台可用的KVM服务器: RHEL与CentOS系统有什么关联? Linux系统中第三块SCSI硬盘如何表示? 步骤 实现此案例需要按照如下步骤进行. 步骤一:RHEL系统 ...

  4. 第1章 Linux系统简介

    第1节 UNIX发展历史和发行版本 1. UNIX与Linux发展史 1.1 UNIX发展历史 (1)1965年,美国麻省理工学院(MIT).通用电气公司(GE)及AT&T的贝尔实验室联合开发 ...

  5. Linux系列教程(一)——Linux系统简介

    本系列教程将完整的讲解整个Linux相关的知识,这是楼主学完之后重新对Linux知识体系的整理.从最基础的知识开始,对于一个完全不懂Linux系统的人,相信在看完整个系列教程之后,都能对Linux有一 ...

  6. Linux基础教程(一)——Linux系统简介

    Linux的概述 Linux是基于Unix的开源免费的操作系统,由于系统的稳定性和安全性几乎成为程序代码运行的最佳系统环境.Linux是由Linus Torvalds(林纳斯·托瓦兹)起初开发的,由于 ...

  7. 第一节 Linux系统简介

    一.Linux定义 Linux 是一个操作系统,就像你多少已经了解的 Windows(xp,7,8)和 Max OS. 操作系统在整个计算机系统中的角色: Linux 是系统调用和内核那两层,直观的来 ...

  8. Linux系统简介

    1.操作系统包括 系统调用.内核. Linux 也就是系统调用和内核那两层,当然直观的来看,我们使用的操作系统还包含一些在 其上运行的应用程序,比如文本编辑器,浏览器,电子邮件. 2.Linux 本身 ...

  9. 1. linux系统简介

    一.Linux是什么 linux位于系统调用和内核的那两层,直观上来看,我们使用的操作系统还包含一些在其上运行的应用程序,包含文本编译器,浏览器,电子邮件. 二.Linux与windows的区别 1. ...

随机推荐

  1. IO流1

    一.I/0:input/output1.java.io.file表示:文件或文件夹(目录)File f = new File("文件路径");注意:相对路径:非web项目的相对都是 ...

  2. Vue 报错 listen EADDRINUSE :::8080

    今天在重启vue项目的时候,发现报了错, listen EADDRINUSE :::8080错误提示 原因:因为另一个项目占用了8080端口,我直接在命令行npm run dev第二个项目,就给出了这 ...

  3. 2019年一半已过,这些大前端技术你都GET了吗?- 上篇

    一晃眼2019年已过大半,年初信誓旦旦要学习新技能的小伙伴们立的flag都完成的怎样了?2019年对于大前端技术领域而言变化不算太大,目前三大技术框架日趋成熟,短期内不大可能出现颠覆性的前端框架(内心 ...

  4. 【JDK】JDK源码分析-Vector

    概述 上文「JDK源码分析-ArrayList」主要分析了 ArrayList 的实现原理.本文分析 List 接口的另一个实现类:Vector. Vector 的内部实现与 ArrayList 类似 ...

  5. WeihanLi.Npoi 导出支持自定义列内容啦

    WeihanLi.Npoi 导出支持自定义列内容啦 Intro 之前也有网友给提出过希望列合并或者自定义列内容的 issue 或请求,起初因为自己做 WeihanLi.Npoi 这个扩展的最初目的是导 ...

  6. hdoj 3732 Ahui Writes Word (多重背包)

    之前在做背包的题目时看到了这道题,一看,大喜,这不是裸裸的01背包吗!!  然后华丽丽的超时,相信很多人也和我一样没有考虑到数据量的大小. 时隔多日,回过头来看这道题,依旧毫无头绪....不过相比之前 ...

  7. 手把手教你grid布局

    概述 目前css布局方案中,网格布局可以算得上是最强大的布局方案了.它可以将网页分为一个个网格,然后利用这些网格组合做出各种各样的布局. 基本概念 在学习grid布局之前,我们需要了解一些基本概念 1 ...

  8. python虚拟环境完美部署

    一.前言 预处理 建议仔细看完本文章之后在进行操作,避免失误,本环境可以用于生产环境,有利于生产环境python之间的环境隔离,互相不会产生环境冲突:pyenv和pyenv-virtualenv可以完 ...

  9. Java课堂 动手动脑5

    1.了解棋盘打印:利用二维数组输出一个15*15的棋盘,棋盘的原素为“+”,就是输出一个横纵都是15个“+”的二维数组,然后再以坐标形式输入棋子“●”,替换掉原来棋盘里的“+”.再编写代码. 电脑随机 ...

  10. Spring Cloud 相关资料链接

    Spring Cloud中文网:https://springcloud.cc/ Spring Cloud API:https://springcloud.cc/spring-cloud-dalston ...