前言

发展历史

linus 林纳斯 赫尔辛基大学 在自己的笔记本上安上自己写的操作系统 基于Linux内核

Linux内核 也是基于unix内核开发出来 unix 不开源 只能军方和大学使用

Linux内核纯c语言实现 Linux操作系统底层全部是汇编语言 大量的位运算 最大的榨干计算机每一条指令 所以速度很快

git 最牛的代码版本管理工具 没有之一 git svn 都是版本管理工具 linus 两周时间写出来

git 优势:

1.团队协作不需要联网 每个人的电脑都是一个版本库

2.上传速度快 svn需要30秒 git只需要3秒

Linux优势

  • 免费 开源 如果不开源 咱们国家至少落后50年
  • 速度快 消耗资源比较少 128m的内存 足够跑起来 丝毫不卡
  • 稳定 安全 不宕机 蠕虫病毒 勒索病毒 感染的全是 windows
  • 应用领域广 路由器 公交车刷卡等嵌入式支持多平台
  • 多用户 多任务

分类

  • 移动端
  • Android
  • ios
  • windows phone
  • Symbian
  • blackberry
  • PC端
  • windows
  • mac os
  • Ubuntu
  • 麒麟
  • 服务器操作系统
  • windows server 2018
  • macos server
  • redhat rhct rhce rhca
  • centos
  • Ubuntu

按照 系统内核来分类 :

windows 内核

Linux内核

两大阵营:

redhat :redhat centos

redhat: 红帽 最成功的商业系统

centos: 社区版的 redhat 免费

fedora: 个人版的redhat

debian: Ubuntu debian deepin

debian 纯粹的 自由软件的发行版 强大的开源库

Ubuntu 有好的桌面Linux

deepin国人制作的发行版

unix 内核

macos

安装操作系统

### 虚拟机
> 虚拟化技术
>
> 将一台物理机 划分成n台逻辑计算机 最大限度榨干计算机性能

虚拟化技术

  • cpu要支持虚拟化 在cpu划分若干空间 用来跑新的操作系统
  • 进程 就是 操作系统在cpu上分配一个空间
  • docker 容器技术 说到底 在虚拟机上跑新的虚拟机

如何实现虚拟化

  • windows: vmvare workstation virtualbox
  • mac: paralles desktop

前提

  • 每个人的电脑 开机进入bios 不一样 进入bios 以后 有个 cpu设置 virtual technology 选择enable 保存退出
  • 电脑 最好64位

安装操作系统

  • windows
  • 老毛桃 大白菜、雨林木风、番茄家园 制作系统启动盘
  • 下载 纯净版 windows 镜像 iso iso其实就是个压缩包 放到u盘指定的位置
  • 重启 进入bios U盘启动 进入winpe
  • 格式化c盘
  • 将系统安装在 c盘中
  • Linux
  • 下载 Linux镜像 i386 586 表示32位 amd64 表示 64位操作系统 https://opsx.alibaba.com/mirror

分区方案

  1. boot 200m分区的类型:逻辑分区 新分区的位置 空间起始位置 ext4日志文件系统 挂载点 /boot
  2. home 2048m 分区的类型:逻辑分区 新分区的位置 空间起始位置 ext4日志文件系统 挂载点 /home
  3. swap 2048m 内存的2倍 分区的类型:逻辑分区 新分区的位置 空间起始位置 交换空间
  4. 剩余的空间 分区的类型:逻辑分区 新分区的位置 空间起始位置 ext4日志文件系统 挂载点
  5. 接下来就是 硬盘格式化 选择继续

切换桌面 命令行

  • 从桌面切换到命令行 快捷键: ctrl+alt+f1~f6
  • 从命令行切换到图形界面 :ctrl+alt+f7

yum源

其实类似于手机的应用商店默认从Ubuntu官网上下载软件,但是受距离的限制导致很慢,所以国内像阿里云、163、清华大学就将 yum源从官网拉取到自己的服务器,然后用户只需要从aliyun、163、清华大学去下载即可

系统设置->软件和更新 ->中国站点 ->选择阿里云即可 要重新加载一下 更新缓存

远程连接

常见端口号

  • http 80
  • https 443
  • smtp 25
  • pop3 110
  • ssh 22
  • scp 22 用来像将本地的文件传送到服务器上
  • mysql 3306

远程连接我们的Ubuntu1604 服务器

需要先安装openssh-server

因为我们安装操作系统的过程中这个用户比超级管理员权限小比普通用户权限大我们在安装软件的时候 需要提权限 需要在前面 加上 sudo

sudo apt-get install openssh-server

service ssh start|stop|restart

接下来可以 用xshell/putty/scrt

命令提示符

ghgh@ghgh-virtual-machine:~$
ghgh 用户名
ghgh-virtual-machine 主机名
~ 用户的家目录
$ 普通用户正在输入
# 管理员用户正在输入
普通用户家目录 ~ = /home/用户名/
管理员用户的家目录 ~ = /root/

Ubuntu默认没有激活root

  • 唤起root

sudo passwd root

备注:如果root不写,默认就是修改root

  • 切换用户

su root root

不写 默认切换到 root

cd 切换目录 如果cd 后面什么都不写 表示切换到该用户的家目录

  • 目录

普通用户的家目录 /home/用户名

超级管理员的家目录是 /root/

常用的快捷键

快捷键用途

ctrl+c 强制终止正在执行的

ctrl+a快速回到命令的开头

ctrl+e快速回到命令的结尾

clear清空屏幕

ctrl+u清空

tab自动补全命令

上箭头上一条命令

下箭头下一条命令

常见命令

ls 列出所有的文件 及子目录
cd 切换目录 whoami 查看当前哪个用户登陆
vi/vim 文件名 修改 reboot 重启
init 6 重启 shutdown -h now #立即关机
halt #立即关机
init 0 #立即关机
power off #立即关机

命令出错原因

  • Linux严格区分大小写 apt-get upgrade 更新yum源 如果 apt-get UPgrade 这就出错
  • command not found 表示 命令找不到 这说明 你的命令出错了
  • 命令 没有安装 也会报错 提示你安装 比如 vim /etc/1808.html 提示你先安装 sudo apt-get install vim
  • 命令中间 不能多空格

安装软件

sudo apt-get -y install 包名 #安装软件 -y 不会提示你是否安装
sudo apt-get -y remove 报名 #卸载软件
sudo apt-get update 获取最新的软件包列表
sudo apt-get upgrade 如果包需要更新 那么就自动更新

在 ubuntu 下面安装我们的pycharm

sudo snap install pycharm-professional --classic

professional community

安装搜狗拼音输入法

1.sudo apt-get install curl cd //切换到家目录
2.curl -O http://cdn2.ime.sogou.com/dl/index/1524572264/sogoupinyin_2.2.0.0108_amd64.deb?st=yCoFwRDSEMxpgtR2cAAQ1g&e=1544432169&fn=sogoupinyin_2.2.0.0108_amd64.deb
3.添加源 sudo add-apt-responsitory ppa:fcitx-team/nightly
4.sudo apt-get update
5.sudo apt-get install -f
6.sudo apt-get install fcitx
7.sudo apt-get install fcitx-config-gtk
8.sudo apt-get install fcitx-table-all
9.sudo apt-get install im-switch
10.cd 家目录 ls
11.sudo dpkg -i sogoupinyin_2.2.0.0108_amd64.deb
12 到终端上 系统设置->语言支持->键盘输入法系统设置 选择fcitx 重启Linux

快照和克隆

  • 快照 记录当前服务器的状态
  • 克隆 复制一模一样的虚拟机

Linux基础第一课——基础知识了解的更多相关文章

  1. swift 第一课 基础知识-1

    1. 基本的打印: print("这是学习 swift 的第一课") var varA = print("a 的值是 \(varA)") //注:字符串打印参数 ...

  2. HTML第一课——基础知识普及【1】

    请关注公众号:自动化测试实战 HTML概念及编写规范 html叫做超本文标记语言,注意它知识标记语言,不是编程语言. 编写规范: 由标记(html, div, p, h1等)组成 标记成对出现(< ...

  3. HTML第一课——基础知识普及【2】

    关注公众号:自动化测试实战 img标签 我们先看一下文档结构: 这里我们文件当前位置就是lesson.html,所以现在我们img属性src给的值要进入imgs文件夹,所以我们可以用相对路径来表示,看 ...

  4. python第一课--基础知识

    python简介 Python是一种计算机程序设计语言.是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的.大型项目的 ...

  5. Python基础第一课

    Python基础 安装软件并配置环境变量 1.第一句python --初学后缀名可以是任何数 --后期学习需要导入模块时不是py后缀名会报错 2.两种执行方式 Python解释器 py文件路径 Pyt ...

  6. Python学习,第一课 - 基础学习

    前言. 本内容全部以python3所讲 一.Python安装 windows 1.下载安装包 https://www.python.org/downloads/ 2.安装 默认安装路径:C:\pyth ...

  7. 潭州课堂25班:Ph201805201 爬虫基础 第一课 (课堂笔记)

    爬虫的概念: 其实呢,爬虫更官方点的名字叫数据采集,英文一般称作spider,就是通过编程来全自动的从互联网上采集数据.比如说搜索引擎就是一种爬虫.爬虫需要做的就是模拟正常的网络请求,比如你在网站上点 ...

  8. IOS之swift第一课基础代码

    import Foundation //import Foundation 导入模块,专业术语也是导入 包,库的 意思. var str = "Hello World" //声明一 ...

  9. [妙味JS基础]第一课:属性操作、图片切换、短信发送模拟

    知识点总结 HTML的属性操作:读.写 元素.属性名 => “读” 元素.属性名=新的值 => “写” 例如: oBtn.value => “读” oBtn.value='按钮' = ...

随机推荐

  1. (转) C# Async与Await的使用

    (转) C# Async与Await的使用 class Program { static void Main(string[] args) { Console.WriteLine("主线程测 ...

  2. Java多线程--JDK并发包(2)

    Java多线程--JDK并发包(2) 线程池 在使用线程池后,创建线程变成了从线程池里获得空闲线程,关闭线程变成了将线程归坏给线程池. JDK有一套Executor框架,大概包括Executor.Ex ...

  3. 中国网建SMS短信接口调用(java发送和接收手机短信)

    1.先注册账号,一定要填写好签名格式.不填会返回-51错误.   代码信息接口详细==>http://sms.webchinese.cn/api.shtml   . 2.测试代码 package ...

  4. 【Linux】CentOS安装solr 4.10.3

    Solr是什么? Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器.Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展,并对索 ...

  5. Mybatis的类型处理器

    Mybatis在预处理语句(PreparedStatement)中设置一个参数时,会用默认的typeHandler进行处理. 这句话是什么意思呢,当你想用姓名查询一个人的信息时 <select ...

  6. python-策略模式

    源码地址:https://github.com/weilanhanf/PythonDesignPatterns 说明: 策略指的就是为了达到某一目的而采取的手段或者方法.为了实现软件设计咪表,对象可能 ...

  7. Python学习笔记之—— File(文件) 对象常用函数

    file 对象使用 open 函数来创建,下表列出了 file 对象常用的函数: 1.file.close() close() 方法用于关闭一个已打开的文件.关闭后的文件不能再进行读写操作, 否则会触 ...

  8. 如何为APK签名?

      1.用来生成应用签名的文件 ①默认: debug.keystore > debug签名的应用程序不能在Android Market上架销售,它会强制你使用自己的签名.> 不同电脑使用此 ...

  9. [Android] 对自定义图片浏览器经常内存溢出的一些优化

    首先关于异步加载图片可以参见 夏安明 的博客:http://blog.csdn.net/xiaanming/article/details/9825113 这篇文章最近有了新的更改,大概看了一下,内容 ...

  10. Centos7 用yum命令安装LAMP环境(php+Apache+Mysql)以及php扩展

    1.yum -y update    // 更新系统 1.1)yum -y install gcc g++ gcc-c++ make kernel-devel kernel-headers 1.2)v ...