主要用途

/boot         存放系统引导必需的文件,包括内核、启动配置

/bin、/sbin   存放各种命令程序(bin下存放普通用户的,sbin下存放root的)

/dev          存放硬盘、键盘、鼠标、光驱等各种设备文件

/etc          存放Linux系统及各种程序的配置文件

/root、/home/  用户名 分别是管理员root、普通用户的默认家目录

/var          存放日志文件、邮箱目录等经常变化的文件

/proc         存放内存中的映射数据,不占用磁盘

/tmp          存放系统运行过程中使用的一些临时文件


----------------------------------------------------------------------------------------------------------------------------------------------

权限数值化: 基本权限 r=4  w=2  x=1

                    附加权限 SUID=4  SGID=2  Stiky Bit=1

 使用数值形式来设置权限


[root@svr7 ~]# mkdir /test01

[root@svr7 ~]# ls -ld /test01


[root@svr7 ~]# chmod 007 /test01

[root@svr7 ~]# ls -ld /test01


[root@svr7 ~]# chmod 700 /test01

[root@svr7 ~]# ls -ld /test01


[root@svr7 ~]# chmod 750 /test01

[root@svr7 ~]# ls -ld /test01


[root@svr7 ~]# chmod 755 /test01

[root@svr7 ~]# ls -ld /test01


-------------------------------------------------------------------------------------------------------------------------------------------------

历史命令  HISTORY

管理/调用曾经执行过的命令

– histroy:查看历史命令列表

– history -c:清空历史命令

– !n:执行命令历史中的第n条命令

– !str:执行最近一次以str开头的历史命令



调整历史命令的数量

[root@svr7 ~]# vim /etc/profile

  HISTSIZE=1000       //默认记录1000条



[root@svr7 ~]# history -c

[root@svr7 ~]# history 


[root@svr7 ~]# cat /etc/redhat-release 


[root@svr7 ~]# hostname


[root@svr7 ~]# history


[root@svr7 ~]# !cat



------------------------------------------------------------------------------------------------------------------------------------

du,统计文件的占用空间

 – du [选项]... [目录或文件]...


 – -s:只统计每个参数所占用的总空间大小

 – -h:提供易读容量单位(K、M等)


[root@svr7 ~]# du -sh /root/ /home/ /etc/

4.0M /root/

35M /etc/

132M /boot/


date,查看/调整系统日期时间

 – date +%F                       #年月日

 – date +%R                       #时间

 – date +"%Y-%m-%d %H:%M:%S"      #年月日,时分秒

 – date -s yyyy-mm-dd HH:MM:SS"   #修改日期时间

    

[root@svr7 ~]# date +%Y%m%d

[root@svr7 ~]# date +%Y-%m-%d

[root@svr7 ~]# date +%F

[root@svr7 ~]# date -s "2017-11-11 9:46"


-------------------------------------------------------------------------------------------------------------------------------------------------


  自定义Yum仓库


1.众多自定义RPM软件包,将真机上tools目录上传到虚拟机A

 真机:

  [root@room9pc14 桌面]# scp -r tools [email protected]:/

 虚拟机A:

  [root@svr7 ~]# ls /


2.生成repodata仓库数据文件

  [root@svr7 ~]# createrepo  /tools/other/

  [root@svr7 ~]# ls  /tools/other/

  [root@svr7 ~]# ls  /tools/other/repodata/


3.书写客户端,指定新的仓库源

[root@svr7 ~]# vim /etc/yum.repos.d/dvd.repo 

 [dvd]

 name=dvd

 baseurl=http://192.168.4.254/rhel7

 enabled=1

 gpgcheck=0

 [myrpm]

 name=myrpm

 baseurl=file:///tools/other

 enabled=1

 gpgcheck=0

[root@svr7 ~]# yum repolist


--------------------------------------------------------------------------------------------------------------------------------------------


[root@svr7 ~]# yum -y install cmatrix

[root@svr7 ~]# rpm -q cmatrix


  查询rpm包安装清单

[root@svr7 ~]# rpm -ql cmatrix


[root@svr7 ~]# cmatrix

[root@svr7 ~]# cmatrix -C red



[root@svr7 ~]# oneko &        #放入后台

[root@svr7 ~]# killall oneko  #杀掉所有的oneko程序


-----------------------------------------------------------------------------------------------------------------------------------------

 zip归档工具,跨平台的压缩工具


归档+压缩操作

  – zip [-r] 备份文件.zip 被归档的文档...


[root@svr7 ~]# zip  -r  /opt/test.zip  /boot/   /etc/passwd

[root@svr7 ~]# ls  /opt


释放归档+解压操作

  – unzip 备份文件.zip [-d 目标文件夹]


[root@svr7 ~]# unzip  /opt/test.zip  -d   /mnt/

[root@svr7 ~]# ls  /mnt

[root@svr7 ~]# ls  /mnt/etc

[root@svr7 ~]# ls  /mnt/boot


-----------------------------------------------------------------------------------------------------------------------------------------------

 vim文本编辑器


[root@svr7 ~]# cp /etc/passwd /opt/test

[root@svr7 ~]# vim /opt/test


 命令模式操作


光标跳转

  Home 键 或 ^、数字 0           跳转至行首

  End键 或“$”键                       跳转到行尾

  PgUp 键、PgDn 键               向上翻页、向下翻页

  1G 或 gg                 跳转到文件的首行

  G                       跳转到文件的末尾行



复制粘贴

   复制 yy、5yy              复制光标处的一行、5行

   粘贴 p                    粘贴到光标处之后

  x 或 Delete键                       删除光标处的单个字符

  dd、6dd 删除光标处的一行、6行

  d^ 从光标处之前删除至行首

  d$ 从光标处删除到行尾

  u                        撤销


查找/撤销/保存

  /word 向后查找字符串“word”

  n、N 跳至后/前一个结果

  u 撤销最近的一次操作

  Ctrl + r 取消前一次撤销操作

  ZZ 保存修改并退出


 末行模式操作



    :r /etc/filesystems    读入其他文件内容


 [root@svr7 ~]# echo 123 > /opt/1.txt

 [root@svr7 ~]# echo abc > /opt/2.txt

 [root@svr7 ~]# vim /opt/2.txt

                        

                :r  /opt/1.txt

                :r  /etc/passwd

                :r  /etc/redhat-release



字符串替换


 :s /old/new        替换当前行第一个“old”

 :s /old/new/g      替换当前行所有的“old”

 :n,ms /old/new/g   替换第n-m行所有的“old”

 :%s /old/new/g     替换文件内所有的“old



 :s  /root/admin          替换当前行第一个“root”

 :s  /root/admin/g        替换当前行所有的“root”

 :1,10s /root/admin/g     替换第1-10行所有的“root”

 :%s   /root/admin/g      替换文件内所有的 root



------------------------------------------------------------------------------------------------------------------------------------------


:set  nu|nonu     显示/不显示行号

:set  ai|noai     启用/关闭自动缩进


--------------------------------------------------------------------------------------------------------------------------------------------

/root/.vimrc        #此文件默认没有,但可以再vim修改配置

vim /root/.vimrc

    修改配置文件,设置vim预先执行的操作


[root@svr7 ~]# vim /root/.vimrc


 set nu

 set ai


-----------------------------------------------------------------------------------------------------------------------------------------


创建软连接(快捷方式):ln -s  原始文件/目录  软连接文件

[root@svr7 ~]# ln -s /etc/sysconfig/network-scripts/ifcfg-eth0  /opt/eth0

[root@svr7 ~]# ls -l /opt/eth0

lrwxrwxrwx. 1 root root 41 11月 11 14:11 /opt/eth0 -> /etc/sysconfig/network-scripts/ifcfg-eth0


创建硬连接:ln 原始文件  硬连接文件


ln,创建软连接(快捷方式)


 # ln -s /etc/sysconfig/network-scripts/ifcfg-eth0  /opt/eth0

 # ls /opt/


 # ls -l  /opt/eth0 

 # cat  /opt/eth0



 # ln -s /etc/redhat-release  /opt/rh

 # ls /opt/


 # cat  /opt/rh



  i节点 : 编号标识硬盘的存储空间


ln,创建软连接

      软连接 --> 原始文档 --> i节点 --> 文档数据



ln,创建软连接

– 软连接 --> 原始文档 --> i节点 --> 文档数据

– ln -s 原始文件或目录 软连接文件

若原始文件或目录被删除,连接文件将失效

软连接可存放在不同分区/文件系统


ln,创建硬连接

– 硬连接 --> i节点 --> 文档数据

– ln 原始文件 硬连接文件

若原始文件被删除,连接文件仍可用

硬连接与原始文件必须在同一分区/文件系统

软连接和硬连接

区别:软连接-若原始文件或目录被删除,连接文件将失效

                    软连接可存放在不同分区/文件系统


         硬连接-若原始文件被删除,连接文件仍可用

                    硬连接与原始文件必须在同一分区/文件系统

硬连接不支持创建目录



[root@svr7 ~]# rm -rf  /opt/*

[root@svr7 ~]# echo  123  >  /opt/A

[root@svr7 ~]# cd  /opt/

[root@svr7 opt]# cat A

[root@svr7 opt]# ln -s  /opt/A  /opt/A1   #软连接

[root@svr7 opt]# ls 

[root@svr7 opt]# ln  /opt/A  /opt/A2    #硬连接

[root@svr7 opt]# ls 


[root@svr7 opt]# cp  A   A3              #复制

[root@svr7 opt]# ls

[root@svr7 opt]# ls  -i       #只有硬连接不会产生新文件


[root@svr7 opt]# rm  -rf  /opt/A

[root@svr7 opt]# ls

[root@svr7 opt]# cat  A1

cat: A1: 没有那个文件或目录

[root@svr7 opt]# cat  A2

[root@svr7 opt]# cat  A3

----------------------------------------------------------------------------------------------------------------------------------------

系统环境变量

     PATH : 提供命令程序的搜寻路径 


   提示命令没有找到?

     1.命令有误

     2.命令没有安装

     3.该命令的程序,没有在PATH值中


[root@svr7 /]# vim /opt/hello 

 #!/bin/bash

 echo 'hello world'

[root@svr7 /]# chmod +x /opt/hello 

[root@svr7 /]# hello   #运行失败


[root@svr7 /]# echo $PATH

[root@svr7 /]# ln -s /opt/hello  /usr/bin/hello

[root@svr7 /]# hello   #运行成功


---------------------------------------------------------------------------------------------------------------------------------------

   源码包编译安装

 

主要优点

– 获得软件的最新版,及时修复bug

– 软件功能可按需选择/定制,有更多软件可供选择

– 源码包适用各种平台



 RPM包:rpm、yum  运行安装

         


        利用gcc、make工具                  make install

  源码包 ------------------------>可以执行的程序--------------------------->运行安装


 步骤1:安装gcc、make


 [root@svr7 /]# yum -y install  gcc  make

 [root@svr7 /]# rpm -q gcc

 [root@svr7 /]# rpm -q make


 步骤2:tar解包,释放源代码至指定目录

  # rm -rf /opt/*

  # tar -xf /tools/inotify-tools-3.13.tar.gz -C /opt/

  # ls /opt/

    # 以下所有步骤都要在,解压目录下执行


 步骤3: ./configure 配置,指定安装目录/功能模块等选项

   # cd   /opt/inotify-tools-3.13/

   # ./configure  --prefix=/mnt/myrpm


./         当前运行的程序


 步骤4:make 编译,生成可执行的二进制程序文件

   # make


 步骤5:make install 安装,将编译好的文件复制到安装目录

   # make install

   # ls /mnt/myrpm/


----------------------------------------------------------------------------------------------------------------------------------------------

获取命令帮助,man帮助


         5 : 文本文件的帮助信息


[root@svr7 /]# man  passwd

[root@svr7 /]# man  5  passwd



    通常 会提供“--help”帮助选项


------------------------------------------------------------------------------------------------------------------------------------------------


  补充:  

      wc -l 文件的绝对路径       #统计文件有多少行


  1. 请统计Linux一共有多少用户?

 [root@svr7 /]# wc  -l  /etc/passwd

   43 /etc/passwd


  2.统计/etc目录下,以".conf"结尾的文件有多少个?(不包含子目录)


  [root@svr7 /]# ls -l /etc/*.conf |  wc -l 


  3.统计/etc目录下,以".conf"结尾的文件有多少个?(包含子目录)


  [root@svr7 /]# find /etc -name "*.conf"  | wc -l



find选项


   -mtime  +|-修改天数


[root@svr7 /]# find /var/log/  -mtime  +1000   #1000天之前


[root@svr7 /]# find /var/log/  -mtime  -10      #最近10之内



--------------------------------------------------------------------------------------------------------------------------------------------------

 查看网络链接信息


  netstat  -anptu


          -a: 列出所有的进程

          -n:以数字的形式显示

          -p:进程名称及PID信息

          -t:tcp连接

          -u:udp连接


-------------------------------------------------------------------------------------------------------------------------------------------


主机名与IP地址映射关系   /etc/hosts(DNS解析)只为本机提供解析


[root@svr7 /]# tail -2 /etc/hosts

192.168.4.7   svr7.tedu.cn

192.168.4.10  haha.tedu.cn


[root@svr7 /]# ping svr7.tedu.cn


[root@svr7 /]# ping haha.tedu.cn



---------------------------------------------------------------------------------------------------------------------------------------------

0.0.0.0: 22

表示本机所有ip地址(网卡)都开放22号端口