本文$表示普通用户的输入,#表示root用户的输入。
1. Linux简介
1.1 Linux系统中的目录结构
与Windows不同,Linux系统使用一个目录结构代表整个文件系统。使用斜杠“/”表示整个目录的起点,成为根分区。下面介绍根目录下的子目录:
bin目录:主要存放普通用户可以使用的命令,例如:rm、sort等。
boot目录:用于存放Linux启动所需的文件,例如:内核、引导文件等。
dev目录:存放设备文件,例如:磁盘、光盘、键盘等。
etc目录:系统和服务的配置文件,例如系统用户密码、网络接口、防火墙等,该目录设置有严格的权限,普通用户通常仅能只读。
home目录:存放普通用户的家目录。
lib目录:存放系统及相关软件的依赖库文件。
media目录:挂载可移动媒体,例如光驱、U盘等。
mnt目录:临时挂载一些磁盘设备或者移动设备。
opt目录:额外的软件安装目录,也可以放软件安装包。
proc目录:系统运行时将相关暂存信息放在此目录,包括网络、磁盘和进程等。
root目录:root用户的家目录,一般存放root的初始化文件,个人文件。
sbin目录:存放一些系统管理命令,例如:route、mkfs.exts等,一般情况普通用户不能执行。
tmp目录:存放系统或者进程运行时产生的临时文件,用户也可以存放临时文件。
usr目录:方法帮助文档,也存放一些配置文件和程序等。
var目录:存放许多类型的文件,例如日志文件、数据库文件和Web服务器程序文件等。
1.2 虚拟机的网络连接方式
NAT方式,网络地址转换方式,此时虚拟机网络将作为主机的私有网络。物理主机相当于一个路由,物理主机使用的网络连接为外部网络,虚拟机使用的网络为内部网络。虚拟机将自动获取IP地址、网关、DNS地址等信息。优点是简单,缺点是外部网络无法访问到虚拟机。
桥接方式,常用的连接方式,相当于将虚拟机直接连接到与物理主机相连的交换机上。
2. Linux系统入门
几乎所有的Linux命令都有相似的格式,这个基本格式如下:
command [option] [parameter]
Linux系统中的命令有命令字、选项和参数3部分组成。
命令的选项可以细化命令的功能,命令的选项可以使用一个或多个字母、单词。使用选项时应该在选项前使用减号,引用多个选项时可以分开写,也可以合并在一起。如果选项是一个单词,通常是用两个减号。参数是命令需要操作的对象,很多命令都需要参数,如果有多个参数需要用空格隔开,如果参数是一个字符串,用放入双引号中。
2.1 帮助命令
help命令是内置的Bash Shell命令,例如:$help cd。很多命令也提供了help选项,例如:date
--help。
man手册也是很详细的帮助手册,包括系统配置、用户命令和库函数。
info命令也是帮助命令。
2.2 Shell
Linux系统中安装了多个Shell,功能各异,用法大相径庭。
Bourne Shell,简称Bsh,最早的UNIX
Shell,缺少进程控制,但还是很多人使用,几乎所有UNIX都安装Bsh。
C Shell,简称Csh,与C语言的语法结构相似。
Korn Shell,简称Ksh,新增了数学运算、行内编辑等功能。
Bourne Again
Shell,简称Bash,是GNU的项目,是目前最为流行的Shell,几乎所有Linux发行版作为Bash的默认Shell。
Z Shell,简称Zsh,拥有强大的功能融合众多Shell的优点。
使用默认的Bash以为的Shell时,首先查看系统安装了哪些Shell:
#cat /etc/shells
#bash --version
查看当前所用的bash:
$echo $SHELL
临时修改Shell:
$ksh
修改用户默认的Shell:
$chsh
$/bin/dash
$grep zhangzhizhi /etc/passwd
$重新登陆
2.3 Bash的基本操作
查看绑定的快捷键:
#bind -P
命令行自动补全:Tab键
命令历史功能:上下方向键
2.4 管道和输入/输出
管道格式为:
#command1 | command2 | command3
先执行命令1,然后通过管道将命令1的输出结果交给命令2处理,一直传递。例如查看系统中是否安装了gcc编译器软件包:
#rpm -aq | grep gcc
管道用来辅助处理输出。