一、基本命令
所有命令都可以使用--help
选项来查看命令帮助
-
mkdir [路径]
// 创建一个目录,不能递归创建
mkdir -p [路径]
// 递归创建,意思就是可以创建一个不存在的目录 -
cd [路径]
// 进入目录 -
ls -a [路径]
// 列出路径的所有文件,包括以.开头的隐藏文件
ls -l [路径]
// 列出路径所有文件,及其权限和所属组,可以简写为“ll” -
touch [路径+文件名]
// 创建一个文件 -
cp
源文件路径 目标路径 // 将文件复制到目标路径 -
mv
源文件路径 目标路径 // 将文件剪切到目标路径,用mv可以实现对文件的重命名,做法:保持源文件路径和目标文件路径相同,仅文件名不同 find [目录] --name [文件名|支持正则表达式]
-
chown [用户] [文件]
// 将文件所有者设置为某个用户
chown [用户:用户组] [文件]
// 将文件所有者设置为某用户,且所属组设置为某用户组
chown -R [用户:用户组] [路径]
// 将某个目录下所有文件设定为指定的的所有者和所属组 -
chgrp [组名] [文件]
// 将文件的所属组设置为指定组 -
chmod [u/g/o/a] [+/-/=] [r/w/x] 文件名
// 给文件增加权限
例:chmod o+w file.txt
为其他用户增加写入权限
chmod [3个八进制数] [文件]
// 用八进制形式表示权限
八进制表示形式
4代表r读权限 ,2代表w写权限,1代表x执行权限
一个文件若赋予读和写的权限,则权限值为4+2=6
三个八进制数每个表示的含义:
第一个,表示文件所有者所拥有的权限
第二个,表示文件所属组所拥有的权限
第三个,表示其他用户对该文件的权限
例如:chmod 764 file.txt
// 所有者:读/写/执行权限;所属组:读/写权限;其他:读权限。
二、输出重定向
通俗的讲,重定向输出就是把要输出的文件信息写入到一个文件中去,而不是将要输出的文件信息输出到显示屏
- 输出覆盖形式:
ls /etc > /list.txt
将ls /etc
命令的结果写到/list.txt
文件中(先清空list.txt
文件的内容再写入新的内容) - 输出追加形式:
ls /etc >> /list.txt
将ls /etc
命令的结果写到/list.txt
文件中(将新内容追加到list.txt
文件中,不会清除list.txt
文件的原有内容)
三、管道
管道是将前一个命令的输出作为后一个命令的输入
命令1 | 命令2 | 命令3 | ......
例如:ls /etc | grep host*
ls /etc
命令会列出所有/etc
目录下所有文件,这个结果会被grep
接收到,grep
根据规则host*
来筛选以host*
开头的文件显示在屏幕上
四、vim编辑器操作
编辑模式:按
i
键进入编辑模式,左下角会显示---INSERT或---插入
字样,此时键盘输入的所有内容都会被写入到文件中命令模式:按ESC键可以退出编辑模式,左下角的
---INSERT或---插入
会消失,在此模式可以直接输入一个冒号:
,然后输入wq
可以保存并退出编辑器。
q
:退出
w
:保存
!
:强制
例如:wq
保存退出,wq!
强制保存退出,q!
不保存强制退出
五、RPM和YUM安装软件包
5.1 RPM方式
安装:rpm -ivh [软件包名]
卸载:rpm -e [软件包名]
5.2 YUM源本地配置
- 先挂载光盘:
mount /dev/sr0 /cdrom
挂载前需要使虚拟机连接光驱,并把/cdrom
目录创建出来。 - 编辑并新建一个
repo
文件
vim /etc/yum.repos.d/local.repo
然后加入以下内容
[local]
name=local
baseurl=file:///cdrom
enabled=1
gpgcheck=0
- 执行以下命令
yum clean all
清除缓存
yum list
建立新的缓存
六、用户和组管理
-
useradd <用户>
// 创建用户 -
groupadd <群组>
// 创建用户组 -
passwd <用户>
// 设置用户密码 -
usermod -g <群组> <用户>
// 修改用户所属的群组。
usermod -G <群组> <用户>
// 将用户从原有群组移入到指定组里,并且用户会从原群组消失 -
gpasswd -a <用户> <群组>
// 把用户添加到群组里,并不会影响用户原所属组, -
groups <用户>
// 查看用户所在组
七、磁盘管理
使用fdisk命令进行分区管理。
7.1 创建普通分区
使用fdisk /dev/sda命令进入磁盘管理。
上图可以看出,/sda仍有3916-3060=856扇区的空间没有使用,且分区号1和2已经被使用,下面以此磁盘为例,进行剩余扇区进行分区。
- 输入命令
fdisk /dev/sda
进入磁盘管理,输入n
添加一个分区。
- 输入
p
建立主分区,并设置分区号和分区大小
-
查看新建立的分区
- 保存分区退出
fdisk
命令
- 使用
partx -a /dev/sda
更新分区表
- 使用
mkfs.ext4 /dev/sda3
格式化新分区
- 编辑配置文件
vim /etc/fstab
,把新分区加入到配置文件,开机自动挂载
7.2 创建交换分区
-
输入命令
fdisk /dev/sda
进入磁盘管理,输入n
添加一个分区。
-
MBR
分区类型最大支持4个主分区,这一步系统会自动分配分区号为4
-
查看分区
-
修改分区类型号
-
保存分区并退出
fdisk
命令
-
刷新分区表
-
使用
swapon -s
查看正在使用的交换分区
-
使用
mkswap /dev/sda4
格式化新建立的swap分区
-
使用
swap /dev/sda4
挂载swap
新分区
-
编辑配置文件
vim /etc/fstab
,把新的swap分区加入到配置文件,开机自动挂载
八、rpm和yum安装软件包
8.1 rpm安装方式
命令格式:rpm -ivh <软件包名>
rpm
属于手动安装软件包,不会自动安装包的依赖。
下面以安装dhcpd
软件包为例:
-
将光盘连接到虚拟机
-
创建一个挂载目录
/cdrom
-
挂载光盘
-
执行命令:
rpm -ivh /cdrom/Packages/dhcp-4.1.1-19.P1.el6.i686.rpm
-
卸载软件包命令:
rpm -e dhcp
8.2 yum安装软件包
依旧以安装dhcp
为例子
-
将光盘连接到虚拟机
- 创建一个挂载目录
/cdrom
-
挂载光盘
- 新建一个
repo
文件
执行命令:vim /etc/yum.repos.d/local.repo
加入以下内容:
- 保存退出后执行两条命令:
yum clean all
和yum list
建立缓存:
- 执行yum安装命令:
yum install dhcp
九、配置DHCP服务
-
使用yum安装dhcp服务
- 设置Linux的IP地址:
ifconfig eth1 192.168.202.5 netmask 255.255.255.0
eth1
是网卡名字,通过ifconfig
命令可以查看网卡名字
注意:IP地址和DHCP配置的网络段相同才能正确启动DHCP服务
- 配置dhcp配置文件
执行命令:vim /etc/dhcp/dhcpd.conf
- 启动DHCP服务:
service dhcpd start
-
在VMware中设置VMnet8网卡
-
查看物理机VMnet8获取IP情况
十、NFS服务配置
服务端配置
- 创建一个共享目录
mkdir -p /var/nfs/oshu
在此目录中新建一个test.txt
文件touch /var/nfs/oshu/test.txt
在NFS配置中将此目录作为共享目录提供给客户端连接使用 - 编辑配置文件
vim /etc/exports
添加以下内容:
/var/nfs/oshu
设置共享目录
192.168.202.0/24
本机IP的网络段及掩码
(rw,sync)
rw表示客户端有读写权限,sync表示将共享文件存入磁盘,和内存,以提高读写性能
- 关闭SELinux和防火墙
setenforce 0
关闭SELinux
service iptables stop
关闭防火墙 - 重启NFS服务
service nfs restart
客户端配置
- 测试服务器NFS连通状态
showmount -e 192.168.202.129
- 创建一个挂载点
mkdir -p /special/oshu
挂载点就是将服务端的共享目录映射到这个目录下,方便客户端下载共享文件 - 修改自动挂载配置
vim /etc/auto.master
加入以下内容:
这是自动挂载服务的配置文件,会自动将服务以指定配置进行挂载
/special
自动挂载到此目录
/etc/auto.server
自定义的配置文件,自动挂载服务将会按照此配置文件进行挂载 - 编写自定义配置文件
/etc/auto.server
加入以下内容:
oshu
共享目录名字
-rw
表示具有读写权限
192.168.202.129:/var/nfs/oshu
表示ip地址为192.168.202.129
的服务器的共享目录是/var/nfs/oshu
- 重启autofs自动挂载服务
service autofs restart
- 查看挂载到
/special
的共享目录oshu
十一、设置服务开机自动启动
命令格式:
chkconfig [--list][系统服务]
查看服务启动情况
chkconfig [--level <等级代号>][系统服务][on/off]
设置服务在某个等级上开机启动或不启动
<等级代号>:0~6,对应着Linux的七个启动等级
最常用就两个3和5:
3:完全多用户模式(纯文本的黑底白字模式)
5:桌面多用户模式(图形界面)
例子:
-
查看DHCP服务的启动情况
chkconfig --list dhcpd
-
设置DHCP在3和5启动等级上开机启动
chkconfig --level 3 dhcpd on
chkconfig --level 5 dhcpd on
执行命令后,通过chkconfig --list dhcpd
可以看到DHCP启动情况
-
设置NFS在3和5启动等级上开机启动
chkconfig --level 3 nfs on
chkconfig --level 5 nfs on
查看nfs服务启动情况chkconfig --list nfs
注意:启动等级可以一次设置多个,例如:chkconfig --level 35 nfs on
可以同时将NFS服务在3和5等级设置开机启动