目录
三.Ubuntu Linux 16.04 LIS 字符界面使用
一.虚拟机
1.1虚拟机的介绍
虚拟机(Virtual Machine)是指可以像真实机器一样运行程序的计算机软件,通过软件模拟具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。
使用虚拟机可以在一台机器上面同时运行两个或更多Windows、Linux、UNIX操作系统,甚至可以在一台机器上安装多个Linux发行版本,使我们可以在同一台机器的Windows和Linux系统之间自由转换,就如同两台计算机在同时工作。在使用上,这台虚拟机和真正的物理机没有区别,都需要分区、格式化、安装操作系统、安装应用程序和软件,而不影响真实硬盘的数据,总之,一切操作都跟一台真正的计算机一样。
1.2网络类型的特点
选择网络连接 | 意义 |
桥接网络 | 此时虚拟机相当于网络上的一台独立计算机,与主机一样,拥有一个独立的IP地址,主机和虚拟机之间,虚拟机和主机之间可以相互访问 |
使用NAT网络 | 此时虚拟机能够访问主机,并通过主机单向访问网络上的其他主机(包括Internet网络),而其他主机不能访问此虚拟机 |
使用主机网络 | 内网模式,虚拟机与外网完全断开,只实现虚拟机与虚拟机之间的内部网络模式连接。默认情况下,虚拟机与虚拟机之间可以互相访问,虚拟机和主机之间不能访问 |
不适用网络连接 | 虚拟机中没有网卡,相当于“单机”使用 |
1.3VMware
VMware是一款功能强大的软件,特点如下。
(1)可模拟真实操作系统,做各种操作系统实验(如搭建域服务器、搭建Web服务器、搭建FTP服务器、搭建DHCP服务器、搭建DNS服务器等)。
(2)虚拟机的快照功能可以与Ghost工具备份功能相媲美,并且可以快捷创建还原点,也可以快速恢复还原点。
(3)可桥接到真实计算机上上网,更好地保障了安全性。
(4)在只有一台计算机的情况下,需要几台计算机共同搭建复杂应用环境时,在虚拟机下即可实现。
(5)可以在虚拟机中测试病毒及木马工具。
(6)真实的工具可在虚拟机中正常使用。
(7)可以快速克隆操作系统副本。
二.Ubuntu Linux系统介绍
2.1什么是Linux
Linux是一套免费使用和自由传播的类UNIX操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议,支持32位和64位硬件。Linux继承了UNIX以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
Linux有许多不同的版本,所有的版本都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型计算机和超级计算机等。
2.2Linux系统的特点和组成
2.2.1Linux特点
1.完全免费
Linux是一款免费的操作系统、用户可以通过网络或者其他途径免费获得,并可以任意修改其源代码。
2.完全兼容POSIX 1.0标准
POSIX即可移植操作系统接口。POSIX是基于Unix的,这一标准意在期望获得源代码级的软件可移植性。为一个POSIX兼容的操作系统编写的程序,可以在任何其他的POSIX操作系统上编译执行。
这使得可以在Linux下通过相应的模拟器运行常见的DOS、Windows的程序,在Windows下常见的程序都可以在Linux上正常运行,为用户从Windows转到Linux奠定了基础。
3.多用户、多任务
Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在计算机最主要的一个特点,Linux可以使多个程序同时独立的运行。
4.良好的界面
Linux同时具有字符界面和图形界面。在字符界面用户可以通过键盘输入相应的指令来进行操作。它同时也提供了类似于Windows图形界面的X-Window系统,用户可以使用相应鼠标来对其进行操作。
5.支持多种平台
Linux可以运行在多台硬件平台上。
6.安全性及可靠性好
Linux中大量网络管理、网络服务等方面的功能,可使用户很方便地建立高效稳定的防火墙、路由器、工作站、服务器等。为提高安全性,它还提供了大量的网络管理软件、网络分析软件和网络安全软件等。
7.具有优秀的开发工具
嵌入式Linux为开发者提供了一套完整的工具链,能够很方便地实现从操作系统到应用软件各个级别得调试。
8.有很好的网络支持和文件系统支持
2.2.2Linux系统的组成
Linux系统一般有4个主要部分:内核、Shell、文件系统和应用程序。内核、Shell和文件系统一起组成了基本的操作系统结构,它使得用户可以运行程序、管理文件并使用系统。
2.2.3Ubuntu Linux的特点
1.Ubuntu所有系统相关的任务均需使用sudo指令是它的一大特色,这种方式比传统的以系统管理员账号进行管理工作的方式更为安全,此为Linux、UNIX系统的基本思想之一。
2.Ubuntu也相当注重系统的易用性,标准安装完成后就可以立即投入使用。
3.为Unity7新增了一套用户桌面,用户可将传统屏幕左边的launcher放到屏幕下边,并添加了更加生动的应用图标。
4.Ubuntu与Debian使用相同的deb软件包格式,可以安装绝大部分为Debian编译的软件包,虽然不能保证完全兼容,但大多数情况下是通用的。
5.优化升级Dash,用户操作更加便利。
6.新增微信网页版应用,用户在Ubuntu Linux下可以应用微信。
三.Ubuntu Linux 16.04 LIS 字符界面使用
3.1字符界面
3.1.1进入字符界面
在Ubuntu16.04操作系统中,在桌面上单击右键,选择打开终端方式,
3.1.2Shell功能
打开一个终端窗口时,首先看到的是Shell提示符。Ubuntu 16.04系统的标准提示符包括用户登录名、机器名、当前所在的工作目录和提示符号。
以普通用户test登录名为test-virtual-machine的主机,当前的工作目录是~,表示/home/test目录,提示符号为$.
由普通用户切换到超级用户需要超级用户的密码,由超级用户切换普通用户不需要密码。超级用户的用户名为root,提示符号为#,在普通用户下执行su命令,并输入超级用户的密码即可转到超级用户。
pwd -->表示查看当前所在的路径
通过输入命令pwd发现当前目录是在/home/test(test用户的家目录或者叫做主目录)下,所以su命令可以切换用户但不能切换用户的主目录,从下图就能发现。
要想切换到root用户的同时切换到root用户的家目录,,可以使用如下命令
su -
切换到root用户下,提示符发生了变化,用户名发生了变化。
由root用户到test用户的退出命令为:exit
普通用户和超级用户除了登录的用户名和提示符不同 以外,它们的权限也是不同的,超级用户对文件和目录具有全权,而普通用户的权限是有限的。
1.date显示日期和时间
终端显示提示符后,用户就可以输入命令请示系统执行。
扩展date指令用法:
常用语法1:date (显示日期和时间)
常用语法2:date +%F (显示年月日)
等价于:date "+%Y-%m-%d"
常用语法3:date "+%F %T" (显示年月日时分秒)
等价于:date "+%Y-%m-%d %H:%M:%S"
前面三种都是当前时间
常用语法4:获取之前或者之后的某个时间
date -d "-1 day" "+%Y-%m-%d %H:%M:%S" 往前推一天
符号可选值: + 之后
- 之前
单位:day 天 mouth 月 year 年
data -d "-1 day" "+%Y-%m-%d %H:%M:%S" 表示从现在开始往前推一天。
%F 表示完整的年月日
%T 表示完整的时分秒
%Y 表示四位年份
%m 表示两位月份(带前导零)
%d 表示日期(带前导零)
%H 表示小时(带前导零)
%M 表示分钟(带前导零)
%S 表示秒数(带前导零)
2.who查看系统用户
who命令用于询问当前有哪些用户登录在系统中
3.whoami查看当前登录用户的信息
whoami用于查看目前登录用户的注册信息。
4.Tab命令补齐
命令补齐是指当输入的字符足以确定目录中一个唯一的文件时,只须按Tab键就可以自动补全该文件名剩下的部分
5.alias别名
用户给命令取得别名
例如:在windows下有cls命令,在Linux下面没有这个命令,有些小伙伴不习惯用clear来给linux清屏,现在可以通过别名机制来解决这个问题。
命令:
alias cls = 'clear'
这样就可以用"cls"命令来表示"clear"的功能了。
但是上述的起别名是临时的,一旦关机,就不再起作用
永久更改别名的方式:首先进入工作目录/home/test,nano编辑.bashrc文件(bashrc是隐藏文件,因此文件名为.bashrc),在文件中加入要定义的永久别名。
可能用到的命令:
cd /home/test 切换到/home/test目录下
ls -la /home/test 用于查看/home/test的所有文件,包括隐藏文件
找到了隐藏文件.bashrc
打开文件.bashrc
vi .bashrc回车之后在文件里面输入要更改的别名,即可。修改完之后,init 6一下,重启
6.history显示历史命令列出
语法1:history
history [n]
n参数用于表示显示仅有最后n行历史命令会被列出
3.2在字符界面下安装软件
3.2.1APT管理软件
APT即高级包管理工具。使用APT时,要确保系统连上网络。
1.软件的更新、升级
在安装命令前,要进行软件的升级,确保安装的软件是最高版本的,使用的命令如下:
sudo apt-get update
2.软件的安装
sudo apt-get install 软件包名
3.软件的移除
sudo apt-get remove 软件包名
4.搜索软件包
sudo apt-cache search 软件包名
5.显示该软件包的依赖信息
这里有一篇博客,可以查看ls源码
查看ls源码_Domay-Lin的博客-CSDN博客_ls命令源码
3.3字符界面下的关机和重启
3.3.1Ubuntu的运行级别
Ubuntu 16.04系统默认的开机运行级别是5,是图形界面,可以用runlevel命令查看当前的默认运行级别
3.3.2从图形界面转入命令界面
如果要每次开机直接进入命令行模式,使用文本编辑命令hano或者vi,修改/etc/default/grub文件。将GRUB_CMDLINE_LINUX_DEFAULT一行中的“quiet splash",修改为”quiet splash txt",后保存修改并退出。
修改/etc/default/grub文件后,使用update-grub命令,基于这些更改重新生成/boot下的GRUB2配置文件。重启即可进入命令行模式。
3.3.3从命令行转入到图形界面
把上述过程反着设置即可。
3.3.4关机和重启
在Linux系统下,常用的关机/重启命令有shutdown、halt、reboot、poweroff,他们都可以达到关机或者重启的目的,但每个命令的内部工作是不同的。
1.shutdown安全的关机命令
使用直接断掉电源的方式来关闭Linux是很危险的,因为在后台运行着许多进程,有很多客户端正登录到服务器上,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至在有的系统中会损坏硬件设备。而系统使用shutdown命令关机,系统管理员会通知所有登录的用户系统将要关闭,并且login指令会被冻结,即新的用户不能再登录。这种关机方式也是我们使用系统右上角的那个电源管理项的shutdown,是最安全的一种关机方式。
shutdown [-参数]
-H | 等价于halt |
-P | 等价于poweroff |
-h | 关闭计算机,等价于halt或者poweroff |
-k | 仅发送警告信息,注销登录用户,并没有关机(仅root用户可用) |
-c | 取消正在执行的关机,这个选项没有时间参数sudo shutdown -c |
-t | 过几分钟关机,默认为1min |
-h | 默认1分钟10s后关机 sudo shutdown -h |
-H | 默认1分钟10s后关机 sudo shutdown -H |
-h 关机时间 | 指定关机时间 sudo shutdown -h 16:00 |
显示关机提示信息 | 系统10min后关机,并且有自定义的提示信息"I am down",所有登录到服务器的客户端都可以收到关机和提示信息 sudo shutdown -h +10 I am down |
立即重新启动 | sudo shutdown -r now |
立即关机 | sudo shutdown -h now |
取消正在执行的关机 | shutdown -c |
2.halt立即关机命令
命令:halt
使用halt命令就是调用shutdown -h 命令。执行halt命令时,将杀死应用进程,执行sync系统,文件系统写操作完成后就会停止内核。
halt的参数,不建议读者使用,所以这里不在列出来。
3.reboot重新启动机器命令
命令:reboot
参数不需要掌握。
4.poweroff关闭系统后关闭电源命令
命令:poweroff
5.init
语法1:init 0 代表关机
语法2:init 3 代表切换到不带桌面的模式
语法3:init 5 代表切换到图形界面
语法4:init 6 代表重启
在这里,笔者建议关机命令用shutdown,init 0比较好 ,重启命令用init 6和reboot 不带参数的好。
3.4Putty远程登录
1.在服务器端中安装openssh-server
(1).更新
sudo apt-get update
(2).安装openssh-server
sudo apt-get install openssh-server
2.测试ssh-server是否启动
netatat -tl
3.在客户端配置Putty
安装完putty后,点击putty,输入服务器ip地址
ifconfig --该命令可以查看ip地址
在这里需要注意一点就是:要查看办公机与Linux的IP是否在同一个网段,如果在,直接在Putty上面连接,如果不在,则需要更新Linux的IP。(1)更改LinuxIP地址(2)修改网络适配器改成桥接模式
四. Ubuntu文件管理
4.1文件系统概述
文件系统时操作系统最重要的组成部分之一,操作系统之所以能够找到磁盘上面的文件,是因为有磁盘上的文件名与存储位置的记录。文件系统是解决如何在存储设备上存储数据的一套方法,包括存储布局、文件命令、空间管理、安全控制等,用于对磁盘进行存储管理即输入输出。Linux操作系统支持很多现代的流行文件系统,其中,Ext2,Ext3和Ext4最普遍。目前的大部分Linux文件系统都默认采用Ext4文件系统。
4.1.1文件系统
1.Ext2
第二代扩展文件系统,是Linux内核所用的文件系统。Ext2的经典实现为Linux内核中的Ext2fs文件系统驱动,最大可支持2TB的文件系统,到Linux核心2.6版时,扩展到可支持32TB
2.Ext3
第三代扩展文件系统,是一个日志文件系统,常用于Linux操作系统。
特点:
(1).高可用性
(2).数据的完整性
(3).文件系统的速度
(4).数据转换
(5).多种日志模式
3.Ext4
第四代扩展文件系统,是Linux系统下的日志文件系统,是Ext3文件系统的后继版本。
特点:
(1)更大的文件系统和更大的文件
Ext3文件系统最多只能支持32TB的文件系统和2TB文件,根据使用的具体架构和系统设置,实际容量上限可能比这个数字还要低,即只能容纳2TB的文件系统和16GB文件。而Ext4文件系统容量达到了1EB,文件容量则达到了16TB。
(2)更多的子目录数量
(3)更多的块和i-节点数量
(4)多块分配
(5)持久性预分配
(6)延迟分配
(7)盘区结构
(8)新的i-节点结构
(9)日志校验功能
(10)支持快速fsck
4.1.2文件系统概念
在Linux系统中有一个重要的概念:一切都是文件,实现了设备的无关性。在Unix系统中,把一切资源都看作文件,包括硬件设备,这样用户就可以用读写文件的方式实现对硬件的访问,Unix权限模型也是围绕文件的概念来建立的。所以对设备也就可以同样处理了。
1.从物理磁盘到文件系统
存储容量=磁头数X磁道数X每道扇区数X每扇区字节数
要点:
(1)磁盘有数个盘片,每个盘片两个面,每个面一个磁头
(2)盘片被划分为多个扇形区域即扇区
(3)同一盘片不同半径的同心圆为磁道
(4)不同盘片相同半径构成的圆柱面即柱面
(5)公式:存储容量=磁头数X磁道数X每道扇区数X每扇区字节数
(6)信息记录可表示为:XX磁道(柱面),XX磁头,XX扇区
将磁盘分成三块:超级块、i-点表、数据区
2.存储介质
用以存储数据的物理设备成为存储介质,如硬盘,Flash盘,光盘等
3.磁盘分区
对于容量较大的存储介质来说(通常指硬盘),在使用时需要合理的规划分区,因为牵涉到磁盘分区。
4.格式化
创建新的文件系统是一个过程,通过被称为初始化或者格式化,这个过程是针对存储介质进行的。先进行磁盘的分区,再进行文件系统的创建或者格式化。
5.挂载
在使用磁盘分区前,需要挂载该分区,这相当于激活一个文件系统。
Windows将磁盘分为若干逻辑分区,如C盘,D盘,在各个分区中挂载文件系统。这个过程是使用其内部机制完成的,用户无法深知其过程。
Linux系统中,没有磁盘的逻辑分区(即没有C盘,D盘),任何一个种类的文件系统被创建后都需要挂载到某个特点的目录才能使用。Linux使用mount和unmount命令来对文件系统进行挂载和卸载,挂载文件系统时需要明确挂载点。
补充:
Windows下常见的三种文件系统格式:FAT、FAT32、NTFs
df -T -l 用于显示磁盘的文件系统与使用情况
首先需要添加一块硬盘,这里我添加了5G的硬盘,具体操作如下: