目录
Linux与Windows的区别
Linux的目录功能
Linux常用命令总结命令格式与目录处理命令ls
RPM包-yum在线管理
rpm软件包管理简介
VIM常用操作
vim小技巧
vi命令
服务器注意事项
脚本安装包
源码包的安装
Linux严格区分大小写 跟Windows区别
Linux所有内容都以文件形式保存,包括硬盘.硬件文件/dev/sd[a-p] 光盘文件/dev/sr0
Linux没有扩展名
ls/bin/ 常用的系统命令.
ls/etc/ 常见配置文件
每一种软件都有自己的后缀名Linux没有这种概念
Linux不靠扩展名区分文件类型
有时可以更直观的管理类型,写不写扩展名无所谓.但是常见类型写可以更清晰地使用.
Linux所以存储设备都必须挂载后才能使用.把设备名与文件名合成挂载.手工分配盘符.
Windows下的程序不能直接在Linux中安装和运行
不同操作系统文件不易交互
/bin/ :存放系统命令的目录,普通用户和超级用户都可以执行.不过放在/bin下的命令在单用户模式下也可以执行
/sbin/ :保存和系统环境设置相关的命令,只有超级用户可以使用这些命令进行系统环境设置,但是有些命令可以允许普通用户观看
/usr/bin/:存放系统命令的目录,普通用户和超级用户都可以执行.这些命令和系统启动无关,在单用户模式下不能执行.
/usr/sbin/存放根文件系统不必要的系统管理命令,例如多数服务程序.只有超级用户可以使用.
/boot/:系统启动目录,保存系统启动相关的文件,如内核文件和启动引导程序(grub)文件等
/dev/:设备文件保存位置.Linux所有内容都以文件形式保存,包括硬件.这个就是来保存所有硬件设备文件的.
/etc/:配置文件保存位置.系统内所有采用默认安装方式(rpm安装)的服务的配置文件全部都保存在这个目录中,如用户账户和密码,服务的启动脚本,常用服务的配置文件等.
/home/:普通用户的家目录.建立每个用户时,每个用户要有一个默认登录位置,这个位置就是这个用户的家目录,所有普通用户的家目录就是在/home下建立一个和用户名相同的目录.
/lib/:系统调用的函数库保存位置
/media/:挂载目录.
/mnt/:挂载目录,早期Linux中只有这一个挂载目录,并没有细分.
/usr/local/:软件保存位置(第三方)
/proc/:虚拟文件系统,该目录中的数据并不保存到硬盘中,而是保存到内存当中.主要保存系统的内核,进程,外部设备状态和网络状况等.保存cpu信息,设备驱动,文件系统列表,网络协议
/sys/虚拟文件系统
/root/超级用户的家目录.
/tmp/临时目录
/usr/系统软件资源目录
/var/动态数据保存位置.主要保存缓存,日志等
命令格式 : 命令[-选项][参数]
例: ls -la /etc
说明 个别命令使用不遵循此格式
当有多个选项时可以写在一起.
简化选项与完整选项 -a等于--all
隐藏文件不用经常找,不用不找
命令:ls
名称:ls
英文:list
命令所在路径:/bin/ls
执行权限所有用户
功能描述:显示目录文件
语法: ls选项[-ald][文件或目录]
-a 显示所有文件,包括隐藏文件
-l 详细信息显示
-d 查看目录属性
-rw-r--r--
-文件类型(-二进制文件d目录l软连接文件)
rw- r-- r--
u g o
u所有者 g所属组 o其他人
r读 w写 x执行
-d 目录信息
-a隐藏文件查询
-h选项的意思是生成的结果有利于人看,也就是不是用默认的byte做单位,而是根据实际情况调整。
目录处理命令
命令名称:mkdir
英文: make directories
命令所在路径; /bin/mkdir
执行权限: 所有用户
语法: mkdir -p[目录名]
功能描述:创建新目录
-p递归创建
mkdir -p /tmp/japan/boduo 多级创建目录
命令名称:cd
英文:change directory
命令所在路径: shell内置命令
执行权限:所有用户
语法:cd[目录]
功能描述:切换目录
cd /tmp/japan/boduo 切换到指定目录
cd .. 回到上一级目录.空格点点
命令名称:pwd
英文:print working directory
命令路径: /bin/pwd
执行权限:所有用户
语法: pwd
功能描述:显示当前目录
pwd /tmp/japan 显示绝对目录
命令名称:rmdir
英文: remove empty directories
命令路径: /bin/rmdir
执行权限:所有用户
语法:rmdir[目录名]
功能描述:删除空目录
rmdir /tmp/japan 删除空目录
命令名称:cp
英文:copy
路径:/bin/cp
执行权限:所有用户
语法: cp -rp[原文件或目录][目标目录]
-r 复制目录
-p保留文件属性
功能描述:复制文件或目录
cp -r /tmp/japan/longze /root/longxie 复制并更改文件名
命令名称:mv
英文: move
路径:/bin/mv
执行权限:所有用户
语法:mv[原文件或目录][目标目录]
功能描述:剪切文件 改名
命令名称:rm
英文:remove
路径: /bin/rm
执行权限:所有用户
语法: rm -rf[文件或目录]
-r删除目录
-f强制执行
功能描述:删除文件
rm -rf /tmd/qwe 删除一个目录
文件处理命令
命令名称: touch
路径: /bin/touch
执行权限: 所有用户
语法: touch[文件名]
功能描述:创建空文件
touch japan.list创建文件
命令名称:cat
路径:/bin/cat
执行权限:所有用户
语法: cat[文件名]
功能描述: 显示文件内容
-n显示行号
命令名称: tac
路径: /usr/bin/tac
执行权限:所有用户
语法:tac[文件名]
功能描述:显示文件内容(反向列示)
命令名称:more
路径: /bin/more
执行权限:所有用户
语法: more[文件名]
(空格)或f 翻页
(Enter) 换行
q或Q 退出
功能描述:分页显示文件内容
more /etc/services 分页
命令名称:less
路径: /usr/bin/less
执行权限:所有用户
语法:less[文件名]
功能描述:分页显示文件内容(可向上翻页)
less /etc/services 可以向上
pgup 上翻页.可以搜索/**关键词会反白显示 搜索到后按n下一个匹配的关键词
命令名称:head
路径:/usr/bin/head
执行权限:所有用户
语法:head[文件名]
功能描述:显示文件前面几行 默认前10行
-n指定行数
head -n 20 /etc/services 显示20行数据
命令名称 tail
路径:/usr/bin/tail
执行权限:所有用户
语法:tail[文件名]
功能描述:显示文件后面几行
-n指定行数 没有默认10行
-f动态显示文件末尾内容
tail -n 3 /*** 显示最后三行
命令名称:chmod
英文:change the permission mode of a file
路径: /bin/chmod
执行权限:所有用户
语法: chmod[{ugoa}{+-=}{rwx}][文件或目录]
[mode=421][文件或目录]
-R 递归修改
功能描述:改变文件或目录权限
权限数字表示 r----4
w----2
x----1
rwxrw-r--
7 6 4
r 读权限 可以查看文件内容 可以列出目录中的内容
w 写权限 可以修改文件内容 可以在目录中创建,删除文件
x 执行权限 可以执行文件 可以进入目录
对目录有写权限就可以删除目录下创建删除文件.
命令名称:chown
英文:change file ownership
路径: /bin/chown
执行权限:所有用户
语法: chown[用户][文件或目录]
功能描述:改变文件或目录的所有者
命令名称:chgrp
英文:change file group ownership
路径: /bin/chgrp
执行权限:所有用户
语法:chgrp[用户组][文件或目录]
功能描述:改变文件或目录的所属组
命令名称 umask
英文: the user file-creation mask
路径: Shell内置命令
执行权限:所有用户
语法 umask[-S]
-S 以rwx形式显示新建文件缺省权限
功能描述: 显示,设置文件的缺省权限
命令名称: find
路径: /bin/find
执行权限:所有用户
语法: find[搜索范围][匹配条件]
功能描述:文件搜索
-name 根据文件名搜索分大小写 *任意字符 ???单个字符
-iname不分大小写
-size +n 大于 -n小于 n等于 +204800 在根目录下查找大于100mb文件
一个数据块 512字节 0.5k 100MB=102400kb=204800
-user *** 在根目录下查找所有者为***的文件
-group 根据所属组查找
-cmin -5 在**下查找5分钟内被修改过属性的文件和目录
-amin 访问时间access ***访问过
-cmin 文件属性change 文件所有的ls信息
-mmin 文件内容modify 文件内容改变
-size +163840 -a -size -204800 大于80mb小于100mb文件
-a 两个条件同时满足,多加条件
-o两个条件满足任意一个即可
-name inittab -exec ls -l{}\; 在***下查找inittab文件显示其详细信息
-exec/-ok 命令{}\; 对搜索结果执行操作
-type 根据文件类型查找 f文件 d目录 l软连接文件
-inum 根据i节点查找 ls -i查找i节点 每个文件有自己的i节点
命令名称:locate
路径: /usr/bin/locate
执行权限:所有用户
语法: locate 文件名
功能描述: 在文件资料库中查找文件
locate -i部分大小写
命令名称:which
路径:/usr/bin/which
执行权限:所有用户
语法:which命令
功能描述:搜索命令所在目录及别名信息
命令名称:whereis
路径 /usr/bin/whereis
执行权限:所有用户
语法:whereis[命令名称]
功能描述:搜索命令所在目录及帮助文档路径
*****************************
命令名称:grep
路径:/bin/grep
执行权限:所有用户
语法:grep -iv[指定字串][文件]
功能描述:在文件中搜寻字串匹配的行并输出
-i 不区分大小写
-v 排除指定字符
************重点***********
命令名称:man
英文:manual
路径: /usr/bin/man
执行权限: 所有用户
语法: man[命令或配置文件]
功能描述: 获得帮助信息
man ls 查看ls命令的帮助信息
man services 查看配置文件services的帮助信息
/ -* 查找单个命令,空格翻页 n下一个 不需要加绝对路径
1---命令的帮助 5----配置文件的帮助
命令名称:help
路径:shell内置命令
执行权限:所有用户
语法:help命令
功能描述:获得shell内置命令的帮助信息
help umask 查看***命令的帮助信息
info 查找信息
whatis 命令 可以获得简单的命令信息
apropos 配置文件 可以获得配置文件的相关信息
0 特殊权限
022 --- -w- -w-
链接命令
多个ip地址 ens33:1-> 1代表第几个ip地址
命令名称:useradd
路径: /use/sbin/useradd
执行权限root
语法: useradd用户名
功能描述:添加新用户
命令名称:passwd
路径: /usr/bin/passwd
执行权限:所有用户
语法:passwd用户名
功能描述:设置用户密码
命令名称:who
路径 /usr/bin/who
执行权限:所有用户
语法 who
功能描述:查看登录用户信息
命令名称:w
路径 /usr/bin/w
执行权限:所有用户
语法:w
功能描述:查看登录用户详细信息
命令名称:gzip
路径: /bin/gzip
执行权限:所有用户
语法: gzip[文件]
功能描述:压缩文件
压缩后文件格式:.gz 压缩了之后原文件没了,只能压缩文件不能压缩目录
命令名称:gunzip
路径:/bin/gunzip
执行权限:所有用户
语法:gunzip[压缩文件]
功能描述:解压缩.gz的压缩文件
命令名称:tar
路径 /bin/tar
执行权限:所有用户
语法 tar选项 [-zcf][压缩后文件名][目录]
-c 打包
-v 显示详细信息
-f 指定文件名
-z 打包同时压缩
-x 解包
-f 指定解压文件
-z 解压缩
-v 显示详细信息
-t 查看打包信息
功能描述:打包目录
tar -cjf japan.tar.bz2 japan
tar -cvf tes.tar /etc 需要打包的目录 打包成tes.tar
命令名称:zip
路径 /usr/bin/zip
执行权限:所有用户
语法:zip 选项[-r][压缩后文件名][文件或目录]
-r 压缩目录
功能描述: 压缩文件或目录
压缩后格式: .zip
命令名称: unzip
路径: /usr/bin/unzip
语法: unzip[压缩文件]
功能描述: 解压.zip的压缩文件 不分目录还是文件
命令名称:bzip2
路径 /usr/bin/bzip2
执行权限:所有用户
语法 bzip2 选项[-k][文件]
-k 产生压缩文件后保留原文件
功能描述:压缩文件
压缩后格式: .bz2
压缩后格式:.tar.gz 打包不是压缩
命令名称:write
路径: /usr/bin/write
执行权限:所有用户
语法 write<用户名>
功能描述: 给用户发信息,以Ctrl+D保存结束
命令名称:wall
英文: write all
路径: /usr/bin/wall
执行权限:所有用户
语法:wall[message]
功能描述:发广播信息
命令名称:ping
路径: /bin/ping
执行权限 所有用户
语法 ping 选项 IP地址
-c 指定发送次数
功能描述: 测试网络连通性
命令名称: ifconfig
英文: interface configure
路径: /sbin/ifconfig
执行权限:root
语法:ifconfig 网卡名称 IP地址
功能描述: 查看和设置网卡信息
eth0 真实网卡 lo回环地址
命令名称 mail
路径: /bin/mail
执行权限 所有用户
命令名称:last
路径: /usr/bin/last
执行权限:所有用户
语法: last
功能描述:列出目前与过去登入系统的用户信息 重要日志文件
命令名称:lastlog
路径: /usr/bin/lastlog
执行权限:所有用户
语法lastlog
功能描述: 检查某特定用户上次登录的时间
-u 502 加上用户的uid
命令名称: traceroute
路径 /bin/traceroute
执行权限:所有用户
语法:traceroute
功能描述: 显示数据包到主机间的路径 查询访问的地点,访问地址过程ip
命令名称:netstat
路径 /bin/netstat
执行权限:所有用户
语法:netstat[选项]
功能描述 : 显示网络相关信息
选项
-t : TCP协议 稳定
-u : UDP协议 更快 不稳
-l : 监听
-r : 路由
-n : 显示ip地址和端口号
# netstat -tlun 查看本机监听的端口
# netstat -an 查看本机所有的网络连接
# netstat -rn 查看本机路由表
发起端口随机 收端口固定的
命令名称 setup
路径 /usr/bin/setup
执行权限:root
语法setup
功能描述:配置网络
sudo 命令语法
sudo [-bhHpV][-s ][-u <用户>][指令]
或
sudo [-klv]
参数
-b 在后台执行指令。
-h 显示帮助。
-H 将HOME环境变量设为新身份的HOME环境变量。
-k 结束密码的有效期限,也就是下次再执行sudo时便需要输入密码。
-l 列出目前用户可执行与无法执行的指令。
-p 改变询问密码的提示符号。
-s 执行指定的shell。
-u <用户> 以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份。
-v 延长密码有效期限5分钟。
-V 显示版本信息。
-S 从标准输入流替代终端来获取密码
sudo 是一种权限管理机制,管理员可以授权于一些普通用户去执行一些 root 执行的操作,而不需要知道 root 的密码。
命令名称 挂载命令
路径 /bin/mount
执行权限:所有用户
语法: mount [-t 文件系统]设备文件名 挂载点
# mount -t iso9660 /dev/sr0/mnt/cdrom
命令名称 shutdown
shutdown[选项]时间 会正确保存关机前数据
选项:
-c: 取消前一个关机命令
-h:关机
-r:重启
其他关机命令:halt poweroff init ()
其他重启: reboot init 6
系统运行级别
0 关机
1 单用户--------------最小系统
2 不完全多用户,不含NFS服务 无网络
3 完全多用户----------最小系统
4 未分配
5 图形界面
6 重启
X一般都是图形界面
cat /etc/inittab id:3:initdefault: 修改系统默认运行级别
runlevel 查询系统运行级别 init * 改变级别
ps -aus 所有的进程
cal查看日历
ln -s 软链接 (源文件 新文件)
ln (源文件 新文件)硬链接
free -m -h查看内容占内存大小。 m-mb h-g
history 查看之前输入过的命令
命令名称logout 操作完了一定要退出登录
功能描述 退出登录
>课添加多个覆盖文件覆盖
>> 叠加
cat 原文件名>覆盖文件名
echo 输出一串字符
wc -l 统计一个文件多少行
grep 过滤文 grep‘r’ /etc/
ps aux | grep 'init' | grep -v 'grep'反向过滤 查看没有包含grep文件
kill杀死进程 后面加进程代号
kill -9 pid强制杀死 可以杀死工作号 也可以杀死pid
firefox & 后台打开----工作号
fg % 工作号,代表后台程序调到前台运行
bg % 工作号直接在后台运行
jobs 查看工作号
pstree 查看进程树 pstree | grep 'bash'
pkill -9 进程名
vi 只能编辑文件
vim 可以编辑目录下的文件
pgrep ‘bash’ 过滤出进程的pid
fdisk -l /dev/sdb查看硬盘信息 不加命令选择硬盘可以创建分区
partprobe 更新分区列表
mkfs.ext4 格式化系统,扩展分区不能格式
dd if=/dev/sda1 of=/opt/test bs=1G count=1 硬盘文件拷贝 不能写太大的文件
显示当前路径du
显示当前所用内存df -h
登录用户名 tty本地终端 pts远程终端 登录时间 ip地址
减少使用搜索命令,搜索精度要高.不要再高峰期搜索
文件把人分三类.所有者只能有一个所属组,所属者,其他人.
默认大小字节
yum在线管理
解决安装依赖性
虽然方便,yum不是必须上网,可以用光盘当做本地.yum在很多公司当做售后服务,需要掏一定的费用,但centos不用,别的有可能需要.
没有yum这个包 rpm手工安装 yum在线安装
因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。
两者的不同,在于CentOS并不包含封闭源代码软件。
1.IP地址配置和网络yum源
IP地址配置
setup #使用setup工具
vi /etc/sysconfig/network-scripts/ifcfg-eth0 #配置文件
把ONBOOT="NO"改为
ONBOOT="yes" #启动网卡
service network restart
#重启网络服务
网络yum源
vi /etc/yum.repos.d/CentOS-Base.repo
[base] 容器说明,一定要放在[]中
name 容器说明,自己可以随便写
mirrorlist 镜像站点,这个可以注释掉
baseurl 我们的yum源服务器的地址,默认是Centos官方的yum源服务器,是可以使用的.
如果你觉得慢可以改成你喜欢的yum源地址
enabled 此容器是否生效,如果不写或携程enable=1都是生效,写成enable=0就是不生效
gpgcheck 如果是1是指RPM的数字证书生效,如果0则不生效
gpgkey 数字证书的公钥文件保存位置.不用修改
联网用CentOS-Base.repo 没联网用 CentOS-Media.repo
2.yum命令
查询 yum list
#查询所有可用软件安装包
yum groupinstall '开发工具'安装工具包
yum serach关键字
yum -y install 包名
选项:
install 安装
-y 自动回答yes
update ***包名 升级
remove ***包名 卸载
wget 加上下载地址可以在线下载
安装原则 最小化安装 手工装 不要用yum卸载或者升级用什么装什么
YUM软件组管理命令
yum grouplist #列出所有可用的软件组列表
yum groupinstall 软件组名 #安装指定软件组,组名可以有grouplist查询出来
yum groupremove 软件组名 #写在指定软件组
如果软件组名中有空格 要用双引号把软件包名括起来
光盘yum源搭建
挂载光盘 mount /
修改光盘yum源文件
vim CentOS-Media.repo
#
baseurl=file:///mnt/room 挂载地址
注释不存在的地址
把enabled=0改为enabled=1,让这个yum源配置文件生效
修改/etc/yum.repos.d
改变其他yum源后缀使其文件失效
#搜索服务器上所有和关键字相关的包
部署服务的步骤
1.准备环境
关闭防火墙:service iptables stop (chkconfig iptables off)
service iptables status 查看防火墙状态
关闭selinux : setenforce 0(vim /etc/sysconfig/selinux)SELINUX=disabled
配置ip地址
2.安装软件包
3.修改配置文件
vim /etc/httpd/conf/httpd.conf
DocumentRoot "/var/www/html"
4.重启服务
5.测试
tar -f /var/log/messages 系统日志目录
smbpasswd -a 用户名 创建smb用户
usermod -s /sbin/nologin 用户名 拒绝用户登录系统
软件包分类
源码包
1.开源,如果有足够的能力,可以修改源代码
***2.可以自由选择所需的功能
3.软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高
4.卸载方便
缺点:
1.安装过程步骤较多,尤其是安装较大的软件集合时(如LAMP环境搭建),容易出现拼写错误
2.编译过程时间较长,安装比二进制安装时间长
3.因为是编译安装,安装过程中一旦报错新手很难解决 以后用源码包装,对Linux结构等会有一个提高
RPM包
1.二进制包的优点
2.包管理系统简单,只通过几个命令就可以实现包的安装,升级,查询和卸载
3.安装速度比源码包安装的快
缺点
1.经过编译,不在可以看到源代码
***2.功能选择不如源码包灵活
3.依赖性 a-b-c 安装依赖性,安装a就得先安装b安装b就得先安装c.删除也是有顺序a-b-c
rpm包管理
rpm包命令管理
1.RPM包命名原则
httpd-2.2.16-15.e16.centos.1.i686.rpm
httpd 软件包名
2.2.15 软件版本
15 软件发布的次数
e16.centos 适合的Linux平台 noarch 适合各种平台
i686 适合的硬件平台
rpm rpm包扩展名 **给管理员看的应该用.rpm命名.便于管理
RPM包依赖性
树形依赖: a-->b--c
环形依赖: a-->b-->c--a 用命令全部一起安装解决
模块依赖: 模块依赖查询网站: www.rpmfind.net
包全名与包名
包全名: 操作的包是没有安装的软件包时,使用包全名,而且要注意路径
包名:操作已经安装的软件包时,使用包名,是搜素/var/lib/rpm中的数据库
RPM安装
rpm -ivh 包全名
选项:
-i(install) 安装
-v(verbose) 显示详细信息
-h(hash) 显示进度
--nodeps 不检测依赖性 **不能使用,如果使用装完不能用,软件没有底层不能使用
RPM包升级
rpm -Uvh包全名
选项
-U(upgrade) 升级
RPM包卸载
rpm -e包名
选项
-e(erase) 卸载
--nodeps 不检测依赖性
查询包是否安装
rpm -q 包名
#查询包是否安装
选项
-q 查询(query)
rpm -qa
查询所有已经安装的RPM包
选项
-a 所有(all)
查询软件包详细信息
rpm -qi包名
选项
-i 查询软件信息(information)
-p 查询未安装包信息(package)
查询包中文件安装位置
rpm -ql包名
信息
-l 列表(list)mn8
-p 查询未安装包信息(package)
查询系统文件属于哪个RPM包
rpm -qf系统文件名
信息
-f 查询系统文件属于哪个软件包(file)
查询软件包的依赖性
rpm -qR 包名
选项
-R查询软件包的依赖性(requires)
-p查询未安装包信息(package)
RPM包校验
rpm -V已安装的包名
选项
-V 校验指定RPM包中的文件(verify)
S 文件大小是否改变
M 文件的类型或文件的权限(rwx)是否被改变
5 文件MD5校验和是否改变(可以看成文件内容是否改变)
D 设备的中,从代码是否改变
L 文件路径是否改变
U 文件的属主(所有者)是否改变
G 文件的属组是否改变
T 文件的修改时间是否改变
c 配置文件(config file)
d 普通文档(documentation)
g "鬼"文件(ghost file)很少见,就是该文件不应该被这个RPM包包含
l 授权文件(license file)
r 描述文件(read me)
RPM包中文件提取
rpm2cpio 包全名|\
cpio -idv .文件绝对路径
rpm2cpio #将rpm包转换为cpio格式的命令
cpio #是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件
cpio选项<文件|设备>
选项
-i: copy-in模式,还原
-d: 还原时自动新建目录
-v: 显示还原过程
安装和升级用包全名,剩下不用
脚本安装包
二进制包(RPM包,系统默认包---都是二进制包) 二进制包不能看到源代码
Windows所有软件包都不能直接在Linux中使用
vim简介
vim是一个功能强大的全屏幕文本编辑器.是Linux/UNIX上最常用的文本编辑器,他的作用是建立,编辑,显示文本文件
vim没有菜单,只有命令
vi filename 进入一个文件 进入命令模式输入i a o
set number 设计行号
插入命令
a 在光标所在字符后插入
A 在光标所在行尾插入
i 在光标所在字符前插入
I 在光标所在行行首插入
o 在光标下插入新行
O 在光标上插入新行
********定位命令***********
:set nu 设置行号
:set nonu 取消行号
gg 到第一行
G 到最后一行
nG 到第n行
:n 到第n行
$ 移至行尾
O 移至行首
***********删除命令**********
x 删除光标所在处字符
nx 删除光标所在处后n个字符
dd 删除光标所在行,ndd删除n行
dG 删除光标所在处到行尾内容
D 删除光标所在处到行尾内容
:n1,n2d 删除指定范围的行
*******复制和剪切命令******
yy 复制当前行
nyy 复制当前行以下n行
dd 剪切当前行
ndd 剪切当前行以下n行
p、P 粘贴在当前光标所在行下或行上
******替换和取消命令********
r 取代光标所在处字符
R 从光标所在处开始替换字符,按Esc结束
u 取消上一步的操作
******搜索和搜索替换命令*******
/string 搜索指定字符串
搜索时忽略大小写:set ic
n 搜索指定字符串的下一个出现位置
:%s/old/new/g 全文替换指定字符串 g不询问
:n1,n2s/old/new/g 在一定范围内替换指定字符串 c询问
*******保存和退出命令******
:w 保存修改
:w new_filename 另存为指定文件
:wq 保存修改并退出
ZZ 快捷键,保存修改并退出
:q! 不保存修改退出
:wq! 保存修改并退出(文件所有者及root可使用)
导入命令执行结果:r!命令
定义快捷键:map 快捷键触发命令
范例: :map ^P I#
:map ^B 0x
连续行注释 :n1,n2s/^/#/g
:n1,n2s/^#//g
:n1,n2s/^/\/\//g
替换 :ab mymail [email protected]
vi命令
yy:复制
4yy:复制 光标所在行开始向下4行
p:粘贴
dd:删除
2dd: 光标所在行 向下 2行
D:从当前的光标开始剪切,一直到行末
d0:从当前的光标开始剪切,一直到行首
x:删除当前的光标,每次只删除一个
o:删除当前的前面那个光标,每次只删除一个
h:左 l:右 j:下 k:上
H:当前屏幕的上方
M:当前屏幕的中间
L:当前屏幕的下方
Ctrl+f------------>向下翻一页代码
Ctrl+b------------>向上翻一页代码
Ctrl+d------------>向下翻半页代码
Ctrl+u------------>向下翻半页代码
20G:快速回到定位的第20行
G: 快速定位到代码最后一行
gg:快速回到整个代码的第一行
w:向后跳一个单词的长度,即跳到下一个单词的开始处
b:向前跳一个单词的长度,即跳到上一个单词的开始处
u:撤销刚刚的操作
Ctrl+r:反撤销
选择一片代码
V:光标经过那那就选中
v:光标到哪那就被选中
>>:向右移动的代码
<<:整体向左移动
.:执行上一次执行的命令
{:按段移动,上移
}:按段移动,下移
r:智能替换一个
R:能够从光标处往后一直替换
/ ***: 搜索
n:下一个搜索
N:上一个搜索
:1,16 1-16替换 %s/hello/word/g
shift+zz 保存并且退出
远程服务器不允许关机,只能重启.
重启时应该关闭服务.
不要在服务器访问高峰运行高负载命令
远程配置防火墙时不要把自己踢出服务器:防火墙是一个过滤器.
指定合理地密码规范并定期更新
合理分配权限
*定期备份重要数据和日志
脚本安装包
脚本安装包并不是独立的软件包类型,常见安装的是源码包
是人为把安装过程写成了自动安装的脚本,只要执行脚本,定义简单的参数,就可以完成安装.
非常类似于Windows下软件的安装方式
Webmin的作用
webmin是一个基于web的Linux系统管理界面,您就可以通过图形化的方式设置用户账号.Apache,dns,文件共享等服务.
下载软件
http://sourceforge.net/projects/webadmin/files/webmin/
解压缩,并进入加压缩目录
执行安装脚本
区别
安装之前的区别:概念上的区别
安装之后的区别:安装位置的不同
RPM包安装位置
/etc/ 配置文件安装目录
/usr/bin/ 可执行的命令安装目录
/usr/lib/ 程序所使用的库函数保存位置
/usr/share/doc/ 基本的软件使用手册保存位置
/usr/share/man/ 帮助文件保存位置
#大体安装位置
源码包安装位置
安装在指定位置中 一般用/usr/local/软件名/
安装位置不同带来的影响
RPM包安装的服务可以使用系统服务管理命令(service)来管理,例如RPM包安装的apache的启动方法是:
/etc/rc.d/init.d/httpd start
service httpd start
源码包安装的服务则不能被服务管理命令管理,因为没有安装到默认路径中.所以只能用绝对路径进行服务的管理
如 /usr/local/apache2/bin/apachectl start
安装准备
安装C语言编译器 yum install gcc-* glibc-* -y
下载源码包
http://mirror.bit.edu.cn/apache/httpd/
源码包的保存位置 /usr/local/src/
软件安装位置 /usr/local/
如何确定安装过程报错
安装过程停止
并出现error,warning或no的提示
下载源码包
解压缩下载 (tar) tar xvf Python-3.7.tgz
进入压缩目录
./configure 软件配置与检查 添加编译参数 例如 --prefix 指定安装路径
定义需要的功能选项
检测系统环境是否符合安装要求
把定义好的功能选项和检测系统环境的信息都写入Makefile文件,用于后续的编辑
make 编译
make clean清除编译留下的垃圾
make install编译安装
卸载:make uninstall 或 手动删除