一 Linux操作系统概述

l为什么要学习Linux操作系统:

1、  大部分服务端都是使用Linux操作系统(Django,爬虫,科学运算等项目是部署到服务器中的)

2、  一些企业和学校(国外学校)采用Linux进行研发和教学

3、  很多嵌入式开发使用Linux系统

4、  大数据、云计算,采用Linux操作系统(CentOS)

Linux系统的特点:

1. 开放、开源、多用户的网络操作系统

2. 可靠地系统安全、良好的移植性

3. 出色的运行速度

4. 基于unix

5. 加入GNU组织(GNU---自由软件组织 copyleft)

Linux 的组成

1. 内核: 是系统的内脏, 是运行程序和管理像磁盘和打印机等硬件设备的核心程序

2. shell(外壳):是系统的用户界面,提供了用户和内核进行交互操作的一种接扣。它接受用户输入的命令把它送入内核去执行,是一个命令解释器但它不仅是命令解释器, 而且还是高级编程语言, shell编程。

3. 文件系统: 文件系统是文件存放在磁盘等存储设备上的组织方法, Linux支持多种文件系统如:ext3、ext2、NFS、SMB、iso9660等。类似于window的 fat32和ntfs

4. 应用程序:标准的Linux操作系统都会有一套应用程序列如: x-window,openoffice等。

Linux 版本

1. 内核版本,最新版本为5.0版本 http://www. kernel.org/

2. 发行版本: 一些厂商将Linux系统内核于应用软件和文档包装起来,并提供一些安装界面和系统设定管理工具的一个软件包的集合,列如:

Redhat Linux centos Debian Ubuntu Novell/SuSE  Linux等。

Redhat:Rhel(企业版) centos(社区版)

Debian: Debian Ubuntu(桌面)

二、Linux系统安装

 

安装vmware虚拟机

(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。

在VM中安装Linux操作系统

三、Linux目录结构

bin   存放二进制可执行文件(cd,ls,cat,mkdir等)

boot  存放用于系统引导时使用的各种文件

dev   用于存放设备文件

etc    存放系统配置文件

home  存放所有用户文件的根目录

lib    存放跟文件系统中的程序运行所需要的共享库及内核模块

mnt   系统管理员安装临时文件系统的安装点

opt    额外安装的可选应用程序包所放置的位置

proc   虚拟文件系统,存放当前内存的映射

root   超级用户目录

sbin   存放二进制可执行文件,只有root才能访问

tmp   用于存放各种临时文件

usr    用于存放系统应用程序,比较重要的目录/usr/local 本地管理员软件安装目录

var    用于存放运行时需要改变数据的文件

四、Linux系统环境(CentOS)

分为命令交互通道和图形界面交互通道,默认进入图形界面交互通道。

Ctrl+Alt+F2 由图形通道进入命令通道

Ctrl+Alt+F1 由命令通道进入图形通道

1、图形界面交互模式下的

terminal: 图形界面的命令终端,它是图形界面交互通道的延伸,要依赖于图形界面(类似于命令交互通道)

二、命令交互通道

[zrgk@localhost ~]$

zrgk 用户名

localhost 主机名

~  路径 ,假如当前的路径正好是 该用户存放数据的根目录 ,则显示~

$ 用户类型  $表示普通用户   #超级用户

五、Linux常用命令

Linux基本命令

1、  cd 切换目录

例如: cd Desktop 切换到桌面

cd .. 切换到上级目录(Linux中cd和..之间必须有空格)

2、man(manual)  帮助命令,相当于windows中的 help

例如: man ls 查看 ls命令的使用方式    q退出

 

3、ls 查看目录内容

ls –l 查看详细信息  也可以直接使用 ll

ls –a 查看全部文件(包括隐藏文件)

4、mkdir 创建目录

例如: mkdir java 创建一个java目录

cd java

mkdir JEE 在java目录下,又创建一个JEE目录

5、tab 自动补全

6、touch 创建一个普通空白文件

例如: touch aa.txt

7、echo 把内容重定向到指定文件中,如果文件有则打开,无则创建

例如: echo “helloworld” > aa.txt  覆盖原有数据

  echo “helloworld” >> aa.txt 追加方式

8、cat 查看文件内容

例如: cat aa.txt

9、more 查看文件内容,分页显示,按空格翻页

10、cp 复制

例如:cp aaa.txt  ./java/jee 把aaa.txt 拷贝到 java/jee目录下

cp aaa ./java/jee –r  拷贝文件夹

11、mv 剪切、重命名

mv bbb.txt ./java/jee 把bbb.txt 剪切到 java/jee 目录下

mv bbb.txt aaa.txt 把bbb.txt 重命名为aaa.txt

12、rm 删除

rm aaa.txt 删除aaa.txt

-f : 假如要删除的文件不存在,也不提示  rm aaa.txt -f

-i : 删除前提示 ,默认不删除,要删除,输入y  rm aaa.txt -i

-d : 删除空白目录

rm python–d  python必须是一个空白目录(不包含任何文件的文件夹)

-r :递归删除       rm –r python   删除python这个文件夹 有提示

rm –rf python 没有提示

13、wc 统计字符数

154  233  3418

154 :行数

233 :单词数

3418 :字符数

例如: wc aa.txt

14、ln 创建链接文件

默认创建的是硬连接,好比复制 ,但是两个文件会同步

ln aaa.txt bbb   硬连接

ln –s aaa.txt bbb 软连接 类似于windows中创建一个快捷方式

15、pwd 查看当前路径的绝对路径

16、passwd 设置密码(需要先输入原密码,再设置新密码)

17、su  切换用户

su root

su zrgk

由其他用户切换到root目录不需要输入密码

由root用户切换到其他用户不需要输入密码

Linux系统命令

1、stat 查看文件的详细信息

例如:stat aaa.txt

2。who与whoami

who 查看在线的用户

whoami 查看当前自己的用户

3、hostname     显示主机名

4、uname        显示系统信息

uname –a     显示完整的系统信息

5、top       显示当前耗时的进行的信息 ,每3秒刷新一次

cltr+c 中断

6、ps 显示当前进程的快照 (没有自动刷新的效果)

7、du 显示文件大小信息

8、df 磁盘使用情况

9、ifconfig 查看或配置网卡信息,相当于windows中的ipconfig

设置虚拟机ip地址:

1、设置vmware的连接方式

NAT模式:共享宿主机的ip地址,在网上邻居找不到(默认)

这里说的共享主机ip,不是和宿主机的ip完全相同

而是一种内部映射(类似于网吧中的一个光纤(一个ip),带多台电脑)

桥接方式:需要单独设置ip,可以在网上邻居查找

仅主机模式:只有宿主机才能访问虚拟机,其他机器不能访问虚拟机

2、  图形界面设置ip地址

3、  命令方式设置ip地址   切换到root用户

ifconfig eth0 192.168.15.122 netmask 255.255.255.0

eth0----------->第一块以太网卡

10、ping命令    和windows的ping命令相同

11、clear 清除   windows cls

12、kill    杀死进程

Kill pid (pid指进程id,使用top命令或ps命令查看)

13、netstat 网络连接详细信息

14、useradd 操作用户

切换到root用户    cat /etc/passwd   查看所有用户信息

例如:zrgk:x:500:500:zrgk:/home/zrgk:/bin/bash

zrgk  用户名

x     密码 已加密  加密文件存放在 /etc/shadow 目录下

500   账号id    user id

500   组id      group id

home/zrgk 该账号存放文件的默认位置

/bin/bash 该账号shell脚本的解析方式     (sh、bash、rbash)

2 创建账号:

useradd lixin –d  /home/lixin –s /bin/bash

lixin 用户名

-d   指定该用户的home路径

-s   指定该用户的shell脚本解析方式

操作步骤:

1 创建 /home/lixin 目录

2 执行 useradd 命令

3 用passwd命令改密码

4 使用su命名切换用户

打包、压缩(解压)文件

    常见压缩文件格式:

Windows  rar 、zip

Linux     gz、bzip、zip

1、tar 打包命令 (归档文件)

tar –cxzjvf 打包后的文件 欲打包的文件

- c :创建的一个归档文件 ,即打包文件夹

- x :拆包

- z :以gzip 格式压缩,默认压缩倍数 6倍  (0-9)

- j :以bzip2格式压缩

- v :显示打包或者拆包的文件信息

- f : 后面紧接一个 归档文件

例如: tar –cvf news.tar ./java   把当前目录下的java目录打包

      tar –xvf news.tar 拆包

2、 gzip 压缩文件

--压缩:

gzip news.tar 对归档文件直接进行压缩,生成 new.tar.gz文件

--解压:

gzip –d new.tar.gz  把压缩文件解压成归档文件

1、  打包及压缩

--打包及压缩

tar –czvf news.tar.gz ./java       对java文件进行打包及压缩

拆包及解压缩

tar –xzvf news.tar.gz    对new.tar.gz 进行解压

七、管理软件

Windows   .exe 安装、卸载

安装:双击执行.exe 文件

卸载:该软件的唯一标识(包名, 当软件做到公认时,包名就会简短,例如MySQL、QQ等)

Linux:

ubuntu  : 对debian的升级  所以  *.deb 格式

安装:sudo dpkg –i 要安装的文件 (I   install)

卸载:sudo dpkg –r 包名

red hat :*.rpm    rpm命令

CentOS : 是Red Hat的社区版    *.rpm

rpm –ivh xxx.rpm   离线安装

yum –y install xxx   在线安装

vim 软件,相当于windows中的记事本,但是功能比记事本强大

1 安装vim  CentOS系统,默认安装了vim

Ubuntu 系统 需要安装

2 使用 vim

例如:vim aaa.txt 使用 vim 打开 aaa.txt 文档

操作模式:

1 一般模式:默认进入的模式,这个模式不能编辑文档,只能查看文档

在一般模式中按i (insert) 进入编辑模式

2 编辑模式:

该模式可以编辑文档,按esc进入一般模式

3 命令模式:在一般模式中按 进入命令模式

q  安全退出,当没有操作该文档,则直接按q退出vim

q! 当修改了内容,不想保存  q!强制退出

wq 保存退出

set number 显示行号

set nonumber 不显示行号

4 vim中翻页

ctrl+f  ctrl+b

5 vim中检索(查找)    按/键

八、使用ssh远程安全访问Linux系统

8.1  SSH

传统的网络服务程序,FTP、POP、telnet 本质上都是不安全的,因为它们在网络上通过明文传送口令和数据,这些数据非常容易被截获。SSH叫做Secure Shell。通过SSH,可以把传输数据进行加密,预防攻击,传输的数据进行了压缩,可以加快传输速度。

OpenSSH

 

SSH是芬兰一家公司开发。但是受到版权和加密算法限制,现在很多人都使用OpenSSH。OpenSSH是SSH的替代软件,免费。

OpenSSH由客户端和服务端组成。

CentOS系统中默认安装了OpenSSH

 

通过windows ssh客户端来访问linux服务端

Windows系统 使用 putty 软件访问 Linux服务端

8.2      
安装Python

8.3      
安装django部署环境

8.4      
 IDE及常用工具安装

8.5      
安装JDK、配置环境变量、运行HelloWorld程序

1.安装JDK

步骤:

1、进入root用户

9        
把Linux版本的JDK(jdk1.7) 文件 拷贝到 /opt

3、解压:

如果是.gz文件 使用 tar -xzvf 命令解压

如果是 .bin文件(可执行文件) 使用 ./xxx.bin 执行后就自动解压

4、在bin 目录下编写HelloWorld.java
程序   编译、运行

(在bin 目录下运行 javac命令和java命令时,需要加 ./)

./javac HelloWorld.java

./java HelloWorld

5、设置环境变量

1       vim
etc/profile

2       一定要加在文件的末尾

export
JAVA_HOME="/opt/jdk1.7.0_51"

export PATH="$JAVA_HOME/bin:$PATH"

3  刷新配置,让配置生效

source /etc/profile (一定要刷新,不刷新不能生效)

4       编写HelloWorld.java  编译、运行

九、设置Linux系统防火墙

service iptables stop 关闭防火墙

service iptables start 开启防火墙

Linux操作系统文档的更多相关文章

  1. Linux操作系统主机名(hostname)简介

    http://www.jb51.net/LINUXjishu/10938.html 摘要:本文是关于Linux操作系统主机名(hostname)的文档,对主要配置文件/etc/hosts进行简要的说明 ...

  2. 专家解读Linux操作系统内核中的GCC特性

    专家解读Linux操作系统内核中的GCC特性   Linux内核使用GNU Compiler Collection (GCC)套件的几个特殊功能.这些功能包括提供快捷方式和简化以及向编译器提供优化提示 ...

  3. 【Linux操作系统分析】设备驱动处理流程

    1 驱动程序,操作系统,文件系统和应用程序之间的关系 字符设备和块设备映射到操作系统中的文件系统,由文件系统向上提供给应用程序统一的接口用以访问设备. Linux把设备视为文件,称为设备文件,通过对设 ...

  4. Linux操作系统进程模型分析进程

    Linux操作系统简介 Linux拥有现代操作系统的功能,如真正的抢先式多任务处理,支持多用户内存,保护虚拟内存,支持SMP.UP,符合POSIX 标准联网.图形用户接口和桌面环境具有快速性.稳定性等 ...

  5. awk、grep、sed是linux操作文本的三大利器,也是必须掌握的linux命令之一

    awk.grep.sed是linux操作文本的三大利器,也是必须掌握的linux命令之一.三者的功能都是处理文本,但侧重点各不相同,其中属awk功能最强大,但也最复杂.grep更适合单纯的查找或匹配文 ...

  6. 【Linux基础】Unix与Linux操作系统介绍

    一.Unix和Linux操作系统概述 1.Unix是什么 UNIX是一个计算机操作系统,一个用来协调.管理和控制计算机硬件和软件资源的控制程序. 2.Unix特点 (1)多用户:在同一时刻可以有多个用 ...

  7. Tutorial 01_熟悉常用的Linux操作和Hadoop操作

    (一)熟悉常用的Linux 操作cd 命令:切换目录 (1) 切换到目录“/usr/local” (2) 切换到当前目录的上一级目录 (3) 切换到当前登录Linux 系统的用户的自己的主文件夹  ...

  8. linux学习笔记:第二单元 UNIX和Linux操作系统概述

    第二单元 UNIX和Linux操作系统概述 UNIX是什么 UNIX操作系统的特点 UNIX 与Linux的关系 GNU项目与自由软件 GUN计划 自由软件意味着什么 Linux简介 Linux是什么 ...

  9. 安装Linux系统,学习Linux操作基础

    20189230杨静怡 2018-2019-2 <移动平台开发实践>第1周学习总结 安装Linux系统内容总结 一.学习"基于VirtualBox虚拟机安装Ubuntu图文教程& ...

随机推荐

  1. python 字符串模板

    from string import Template print(type(Template)) mystr = Template("hi,$name 你是$baby") pri ...

  2. Codeforces 959D. Mahmoud and Ehab and another array construction task(构造, 简单数论)

    Codeforces 959D. Mahmoud and Ehab and another array construction task 题意 构造一个任意两个数都互质的序列,使其字典序大等于a序列 ...

  3. 1.7 JAVA异常总结

    1.7 JAVA异常总结 异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理错误引起的. 三种异常:分别为检查性异常(一般异常).运行时异常(非检查性异常).错误 Throwab ...

  4. 焦虑的 BAT、不安的编程语言,揭秘程序员技术圈生存现状!

    [程序人生编者按]在迭代不休的技术圈中,仅在过去的一个月期间,我们见证了有史以来第一张黑洞照片的诞生:经历了为让人义愤填膺的 996:思考了作为程序员的年龄之槛:膜拜了技术大神的成长历程:追逐了如编程 ...

  5. CNN中感受野大小的计算

    1 感受野的概念 从直观上讲,感受野就是视觉感受区域的大小.在卷积神经网络中,感受野的定义是 卷积神经网络每一层输出的特征图(feature map)上的像素点在原始图像上映射的区域大小. 2 感受野 ...

  6. [转]MySQL查询语句执行过程详解

    Mysql查询语句执行原理 数据库查询语句如何执行?语法分析:首先进行语法分析,对使用sql表示的查询进行语法分析,生成查询语法分析树.语义检查:检查sql中所涉及的对象以及是否在数据库中存在,用户是 ...

  7. JavaScript如何封装插件

    什么是封装呢? 我的理解就是 把一个功能单独做成一个组件,就像做饺子,以前做饺子必须自己先用面粉做饺子皮,再做饺子馅,然后再手工包饺子,但是现在人们发明了自动包饺子机器,虽然机器里面的每一步骤和你自己 ...

  8. Mysql Errors

    Mysql Errors Table of Contents 1. ERROR 1044 1.1. 42000 2. ERROR 1045 2.1. 28000 2.1.1. 无登录权限 2.1.2. ...

  9. 利用Smarty实现文本隔行变色

    行变色 php页面 <?phpinclude "libs/Smarty.class.php";$smarty = new Smarty(); $link = mysql_co ...

  10. PCL基础

    博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=264 许可 建议每一个文件包含一个描述代码作者的许可,这对于用户了解使用该代 ...