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. Set接口的使用

    Set集合里多个对象之间没有明显的顺序.具体详细方法请参考API文档(可见身边随时带上API文档有多重要),基本与Collection方法相同.只是行为不同(Set不允许包含重复元素). Set集合不 ...

  2. 【JDK】JDK源码分析-Map

    Map 接口 Map 是一个接口,它表示一种“键-值(key-value)”映射的对象(Entry),其中键是不重复的(值可以重复),且最多映射到一个值(可以理解为“映射”或者“字典”). Map 常 ...

  3. Mobile game forensics

    My friend Carrie'd like to know "Garena 传说对决" violates any mobile risks such as insecure d ...

  4. 什么是redis的缓存雪崩与缓存穿透

    今天来分享一下Redis几道常见的面试题: 如何解决缓存雪崩? 如何解决缓存穿透? 如何保证缓存与数据库双写时一致的问题? 一.缓存雪崩 1.1 什么是缓存雪崩? 首先我们先来回答一下我们为什么要用缓 ...

  5. 从原理层面掌握@SessionAttribute的使用【一起学Spring MVC】

    每篇一句 不是你当上了火影大家就认可你,而是大家都认可你才能当上火影 前言 该注解顾名思义,作用是将Model中的属性同步到session会话当中,方便在下一次请求中使用(比如重定向场景~). 虽然说 ...

  6. NLP(十四)自制序列标注平台

    背景介绍   在平时的NLP任务中,我们经常用到命名实体识别(NER),常用的识别实体类型为人名.地名.组织机构名,但是我们往往也会有识别其它实体的需求,比如时间.品牌名等.在利用算法做实体识别的时候 ...

  7. 从boosting谈起

    Boosting 将一些表现效果一般(可能仅仅优于随机猜测)的模型通过特定方法进行组合来获得一个表现效果较好的模型.抽象地说,模型的训练过程是对一任意可导目标函数的优化过程. Adaptive boo ...

  8. API开发之接口安全(二)-----sign校验

    上一章 我们说了 sign的生成 那么 我们如何确定这个sign的准确性呢 下来 我们说说 校验sign的那些事 在拿到header里面的内容之后 我们首先需要对其内容的基本参数做一个校验 我们补充下 ...

  9. SpringMVC 原理 - 设计原理、启动过程、请求处理详细解读

    SpringMVC 原理 - 设计原理.启动过程.请求处理详细解读 目录 一. 设计原理 二. 启动过程 三. 请求处理 一. 设计原理 Servlet 规范 SpringMVC 是基于 Servle ...

  10. 纯数据结构Java实现(0/11)(开篇)

    为嘛要写 本来按照我的风格,其实很不喜欢去写这些细节的东西,因为笔记上直接带过了. 本来按照我的风格,如果要写,那也是直接上来就干,根本不解释这些大纲,参考依据. 本来按照我的风格,不想太显山露水,但 ...