三、常用命令
2.用户、权限管理
(1)查看当前用户:whoami
(1)查看当前用户:whoami
(2)查看登陆用户:who
-m或am I :只显示运行who命令的用户名、登录终端和登录时间
-q或--count:只显示用户的登录账号和登录用户的数量
-u:在登录时间后显示该用户最后一次操作到当前的时间间隔
last:所有用户所有操作细节
-q或--count:只显示用户的登录账号和登录用户的数量
-u:在登录时间后显示该用户最后一次操作到当前的时间间隔
last:所有用户所有操作细节
(3)查看登录用户:w
与who命令相比,w命令的功能更强大,它不但可以显示当前有哪些用户登录到系统,还可以显示这些用户正在进行的操作,并给出更加详细和科学的统计数据。
w [选项] [用户名]
用户名可以省略,则查看当前所有登录用户的信息。
w [选项] [用户名]
用户名可以省略,则查看当前所有登录用户的信息。
-h:只显示运行who命令的用户名、登录终端和登录时间
(4)退出登录账户:exit
(5)切换账户:su 用户名
su/su root 则切换至管理员
su - 用户名 则切换到对应的用户时,会将当前的工作目录自动转换到切换后的用户主目录。
su/su root 则切换至管理员
su - 用户名 则切换到对应的用户时,会将当前的工作目录自动转换到切换后的用户主目录。
(6)创建工作组:groupadd 组名
删除工作组: groupdel 组名
注意:需要切换到【root】用户
删除工作组: groupdel 组名
注意:需要切换到【root】用户
(7)修改用户所在组:usermod -g 组名 用户名
组名和用户名可以相同
注意:如果是ubuntu平台,需要在命令前加“sudo”,如果在某些操作需要管理员才能操作,ubuntu无需切换到root用户即可操作,只需加“sudo”即可。sudo是ubuntu平台下允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,减少了root 用户的登陆和管理时间,提高了安全性。
组名和用户名可以相同
注意:如果是ubuntu平台,需要在命令前加“sudo”,如果在某些操作需要管理员才能操作,ubuntu无需切换到root用户即可操作,只需加“sudo”即可。sudo是ubuntu平台下允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,减少了root 用户的登陆和管理时间,提高了安全性。
(8)添加新用户:useradd -d 目录 用户名 -g 组名 -m
(9)删除用户:userdel abc(用户名) 删除abc用户,但不 会自动删除用户的主目录
userdel -r abc 删除用户,同时删除用户 的主目录
userdel -r abc 删除用户,同时删除用户 的主目录
(10)设置用户密码:
普通用户:passwd
超级用户:passwd 用户名
普通用户:passwd
超级用户:passwd 用户名
(11)查询用户登录情况:last
不管是哪位用户从哪里登录,管理员都可以通过last命令查出,以及是否有人非法登录。
(12)修改文件权限:
字母法:chmod 用户类型+|-|=rwx 文件|目录 文件|目录
数字法:chmod 777 文件名
ugo
r值为4 w值为2 x值为 -的值为0不具任何权限
ugo
r值为4 w值为2 x值为 -的值为0不具任何权限
注意:如果想递归所有目录加上相同权限,需要加上参数“ -R ”。
如:chmod 777 test/ -R 递归 test 目录下所有文件加 777 权限。
如:chmod 777 test/ -R 递归 test 目录下所有文件加 777 权限。
(13)设定文件所有者:chown 用户名 文件名|目录名
设定文件所属组:chgrp 组名 文件名|目录名
设定文件所属组:chgrp 组名 文件名|目录名
3.系统管理
(1)查看当前日历:cal
cal -y 显示整年日历
(1)查看当前日历:cal
cal -y 显示整年日历
(2)显示或设置时间:date
设置时间格式(需要管理员权限):
date [MMDDhhmm[[CC]YY][.ss]] +format
CC为年前两位yy为年的后两位,前两位的mm为月,后两位的mm为分钟,dd为天,hh为小时,ss为秒。如: date 010203042016.55。
设置时间格式(需要管理员权限):
date [MMDDhhmm[[CC]YY][.ss]] +format
CC为年前两位yy为年的后两位,前两位的mm为月,后两位的mm为分钟,dd为天,hh为小时,ss为秒。如: date 010203042016.55。
(3)查看进程信息:ps (参数)
-a 显示终端上的所有进程,包括其他用户的进程
-u 显示进程的详细状态
-x 显示没有控制终端的进程
-w 显示加宽,以便显示更多的信息
-r 只显示正在运行的进程
-a 显示终端上的所有进程,包括其他用户的进程
-u 显示进程的详细状态
-x 显示没有控制终端的进程
-w 显示加宽,以便显示更多的信息
-r 只显示正在运行的进程
(4)动态显示进程:top
在top命令执行后,可以按下按键得到对显示的结果进行排序:
按键 含义
M 根据内存使用量来排序
P 根据CPU占有率来排序
T 根据进程运行时间的长短来排序
U 可以根据后面输入的用户名来筛选进程
K 可以根据后面输入的PID来杀死进程。
q 退出
h 获得帮助
(5)终止进程:kill
格式:kill [-signal] pid
信号值从0到15,其中9为绝对终止,可以处理一般信号无法终止的进程。
kill命令指定进程号的进程,需要配合 ps 使用。
格式:kill [-signal] pid
信号值从0到15,其中9为绝对终止,可以处理一般信号无法终止的进程。
kill命令指定进程号的进程,需要配合 ps 使用。
(6)后台程序:&、jobs、fg
用户可以将一个前台执行的程序调入后台执行,方法为:命令 &
如果程序已经在执行,ctrl+z可以将程序调入后台
jobs查看后台运行程序
fg编号(编号为通过jobs查看的编号),将后台运行程序调出到前台
如果程序已经在执行,ctrl+z可以将程序调入后台
jobs查看后台运行程序
fg编号(编号为通过jobs查看的编号),将后台运行程序调出到前台
(7)关机重启:reboot、shutdown、init
reboot 重新启动操作系统
init 0 关机
init 6 重启
shutdown -h 20:25 系统在今天的20:25 会关机
shutdown -h +10 系统再过十分钟后自动关机
shutdown –r now 重新启动操作系统,
shutdown会给别的用户提示
reboot 重新启动操作系统
init 0 关机
init 6 重启
shutdown -h 20:25 系统在今天的20:25 会关机
shutdown -h +10 系统再过十分钟后自动关机
shutdown –r now 重新启动操作系统,
shutdown会给别的用户提示
(8)字符界面和图形界面的切换
适用大部分平台
Ctrl + Alt + F2 切换到字符界面
Ctrl + Alt + F7 切换到图形界面
适用大部分平台
Ctrl + Alt + F2 切换到字符界面
Ctrl + Alt + F7 切换到图形界面
(9)检测磁盘空间:df (参数)
df命令用于检测文件系统的磁盘空间占用和空余情况,可以显示所有文件系统对节点和磁盘块的使用情况。
-a 显示所有文件系统的磁盘使用情况
-m 以1024字节为单位显示
df命令用于检测文件系统的磁盘空间占用和空余情况,可以显示所有文件系统对节点和磁盘块的使用情况。
-a 显示所有文件系统的磁盘使用情况
-m 以1024字节为单位显示
(10)检测目录所占磁盘空间:du
du [选项] 目录或文件名
-a 递归显示指定目录中各文件和子目录中文件占用的数据块
-s 显示指定文件或目录占用的数据块
-b 以字节为单位显示磁盘占用情况
-l 计算所有文件大小,对硬链接文件计算多次
du [选项] 目录或文件名
-a 递归显示指定目录中各文件和子目录中文件占用的数据块
-s 显示指定文件或目录占用的数据块
-b 以字节为单位显示磁盘占用情况
-l 计算所有文件大小,对硬链接文件计算多次
(11)格式化:mkfs
mkfs [选项] 设备文件名 [blocks]
mkfs [选项] 设备文件名 [blocks]
(12)应用软件的安装和卸载
rpm [选项] [软件包名]
rpm [选项] [软件包名]
它是一种软件打包发行并且实现自动安装的程序,需要用rpm程序安装的软件包,其后缀是.rpm,并可以对这种程序包进行安装、卸装和维护。
-i 指定安装的软件包
-h 使用“#”显示详细的安装过程及进度
-v 显示安装的详细信息
-q 查询系统是否已安装指定的软件包
-a 查看系统已安装的所有软件包
-e 卸载软件包
--nodeps 配合-e参数使用,强制卸载不检查依赖项
--force 强制操作 如强制安装删除等
-h 使用“#”显示详细的安装过程及进度
-v 显示安装的详细信息
-q 查询系统是否已安装指定的软件包
-a 查看系统已安装的所有软件包
-e 卸载软件包
--nodeps 配合-e参数使用,强制卸载不检查依赖项
--force 强制操作 如强制安装删除等
(13)查看或配置网卡信息:ifconfig
显示字段 说明
eth0 网络接口名称
Link encap 链路封装协议
Hwaddr 网络接口的MAC地址
Inet addr IP地址
Bcast 广播地址
Mask 子网掩码
UP 网络接口状态标识,UP已经启用,DOWN已经停用
BROADCAST 广播标识,标识网络接口是否支持广播
RUNNING 传输标识,标识网络接口是否已经开始传输分组数据
MULTICAST 多播标识,标识网络接口是否支持多播
MTU,Metric MTU:最大传输单位,单位:字节。Metric:度量值,用于RIP建立网络路由用
RX bytes 接收数据字节统计
TX bytes 发送数据字节统计
通过ifconfig配置网络参数,可自行查找资料。
显示字段 说明
eth0 网络接口名称
Link encap 链路封装协议
Hwaddr 网络接口的MAC地址
Inet addr IP地址
Bcast 广播地址
Mask 子网掩码
UP 网络接口状态标识,UP已经启用,DOWN已经停用
BROADCAST 广播标识,标识网络接口是否支持广播
RUNNING 传输标识,标识网络接口是否已经开始传输分组数据
MULTICAST 多播标识,标识网络接口是否支持多播
MTU,Metric MTU:最大传输单位,单位:字节。Metric:度量值,用于RIP建立网络路由用
RX bytes 接收数据字节统计
TX bytes 发送数据字节统计
通过ifconfig配置网络参数,可自行查找资料。
(14)测试远程主机连通性:ping
ping [参数] 远程主机IP地址
ctrl+c停止
参数具体看资料
ping [参数] 远程主机IP地址
ctrl+c停止
参数具体看资料
(15)网络路由设置:route
(16)监控网络状态:netstat
具体输出信息查阅资料
具体输出信息查阅资料
四、编辑器
1.gedit编辑器
保存ctrl+s
查找ctrl+f
替换ctrl+h
1.gedit编辑器
保存ctrl+s
查找ctrl+f
替换ctrl+h
2.vi编辑器
进入文本编辑器:vim 按i
vi 文件名
进入文本编辑器有两种模式:文本编辑模式 命令行模式 两个模式通过esc键切换
进入文本编辑器:vim 按i
vi 文件名
进入文本编辑器有两种模式:文本编辑模式 命令行模式 两个模式通过esc键切换
(1)vi的插入模式
【i】 在光标位置处插入
【a】 在光标右侧位置插入
【o】 在光标下方开启新一行
【O】 在光标上方开启新一行
【I】 将光标定位在本行行首
【A】 将光标定位在本行行尾
【i】 在光标位置处插入
【a】 在光标右侧位置插入
【o】 在光标下方开启新一行
【O】 在光标上方开启新一行
【I】 将光标定位在本行行首
【A】 将光标定位在本行行尾
(2)vi的退出
【ZZ】退出保存
【:wq】退出保存
【:w 文件名】退出保存并为文件
【:q】退出 如果文件没有被修改
【:q!】退出 不保存
【ZZ】退出保存
【:wq】退出保存
【:w 文件名】退出保存并为文件
【:q】退出 如果文件没有被修改
【:q!】退出 不保存
(3)vi的删除和修改功能
【nx 】 删除光标之后n个字符(num.)
【Nx】删除光标之前的n个字符
【D】删除光标所在位置到本行行尾
【ndd】删除光标位置所在的n行
【nyy】复制光标所在位置的n行(只能向下复制)
【p】在光标当前位置粘贴
【dG】删除光标所在行到文件结尾
【J】将光标所在行和下一行合并 在两行之间加入了一个空格
【.】执行上一次操作
【u】撤销
【nx 】 删除光标之后n个字符(num.)
【Nx】删除光标之前的n个字符
【D】删除光标所在位置到本行行尾
【ndd】删除光标位置所在的n行
【nyy】复制光标所在位置的n行(只能向下复制)
【p】在光标当前位置粘贴
【dG】删除光标所在行到文件结尾
【J】将光标所在行和下一行合并 在两行之间加入了一个空格
【.】执行上一次操作
【u】撤销
(4)vi的行定位功能
【ctrl+f】向下翻页 光标向下
【ctrl+b】向上翻页 光标向上
【gg】定位光标在文件第一行行首
【G/:$】定位在文件最后一行行首
【mG/mgg】定位到m行行首
【ctrl+f】向下翻页 光标向下
【ctrl+b】向上翻页 光标向上
【gg】定位光标在文件第一行行首
【G/:$】定位在文件最后一行行首
【mG/mgg】定位到m行行首
(5)vi的文本查找功能
【/查找内容】内容切换【n】(寻找下一个)和【N】(回到前一个)
【?】寻找上一个
【/^内容】查找以内容开始的行
【/内容$】查找以内容结尾的行
【.】在查找时使用通配符匹配任意一个字符
【/查找内容】内容切换【n】(寻找下一个)和【N】(回到前一个)
【?】寻找上一个
【/^内容】查找以内容开始的行
【/内容$】查找以内容结尾的行
【.】在查找时使用通配符匹配任意一个字符
(6)的替换功能
【r】替换光标所在位置内容
【:r 文件名】在光标下一行插入一个新的文件内容
【:s/p1/p2/g】在当前行用p2替换p1
【:g/p1//s/p2/g】在整个文本中用p2替换p1
【:n1,n2 s/p1/p2/g】将n1到n2行中所以p1用p2替换
【r】替换光标所在位置内容
【:r 文件名】在光标下一行插入一个新的文件内容
【:s/p1/p2/g】在当前行用p2替换p1
【:g/p1//s/p2/g】在整个文本中用p2替换p1
【:n1,n2 s/p1/p2/g】将n1到n2行中所以p1用p2替换
(7)vi的set指令
:set ic 搜寻时忽略大小写
:set noic 搜寻时不忽略大小写
:set nu 显示行号
:set nonu 不显示行号
:set ic 搜寻时忽略大小写
:set noic 搜寻时不忽略大小写
:set nu 显示行号
:set nonu 不显示行号
五、远程登录
1.windows和linux互连
(1)远程登录
(1)安装软件
(2)打开linux服务器,选择网络连接模式,选择桥接模式,并且复制复制网络连接状态
(3)重启linux服务器
(4)同xshell建立连接,选择ssh协议,并设置ip地址(在linux中:ifconfig)
(5)windows防火墙是否关闭,ping命令是否连接成功。
127.0.0.1
1.windows和linux互连
(1)远程登录
(1)安装软件
(2)打开linux服务器,选择网络连接模式,选择桥接模式,并且复制复制网络连接状态
(3)重启linux服务器
(4)同xshell建立连接,选择ssh协议,并设置ip地址(在linux中:ifconfig)
(5)windows防火墙是否关闭,ping命令是否连接成功。
127.0.0.1
2.linux系统远程连接到linux服务器
sudo ssh -l 用户名 ip地址 密码
sudo ssh -l 用户名 ip地址 密码
3.上传下载:(linux和windows)
lcd切换本地路径
cd切换本地远程服务器路径
lcd切换本地路径
cd切换本地远程服务器路径
上传:【put】 文件1 文件2 目录
下载:【get】 文件1 文件2 目录
下载:【get】 文件1 文件2 目录
4.远程服务器搭建:
(1)通过lcd和put上传文件http.tar.gz
(2)tar -zxcvf http.tar.gz cd http 解压
(3)切换超级用户 make
(4)启动程序./myhttp start
(5)通过ip地址访问网页
(1)通过lcd和put上传文件http.tar.gz
(2)tar -zxcvf http.tar.gz cd http 解压
(3)切换超级用户 make
(4)启动程序./myhttp start
(5)通过ip地址访问网页
5.创建网页:
(1)确定http目录
(2)vi hello.c 代码
(3)gcc -o hello.cgi hello.c
(4)启动程序./myhttp start
(5)通过ip地址127.0.0.1访问网页
(1)确定http目录
(2)vi hello.c 代码
(3)gcc -o hello.cgi hello.c
(4)启动程序./myhttp start
(5)通过ip地址127.0.0.1访问网页