内容摘要
- 系统目录结构
- 命令ls的使用
- 文件类型
- 命令alias的使用
- 相对、绝对路径
- 命令cd的使用
- 目录和文件的创建及删除 mkdir rmdir touch
- 命令rm的使用
- 环境变量PATH
- 命令cp的使用
- 命令mv的使用
- 查看文档cat_more_less_head_tail
- 文件或目录权限 chmod
- 更改目录或文件的所有者和所属组chown
二、根目录的定义
- bin&sbin: 下分别放置普通用户及root用户的命令(root用户可使用两个目录), s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
- boot: 该目录下存放的是启动linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
- dev: dev时Device的缩写。该目录下存放的时linux的外部设备。在linux中,访问设备的方式和访问文件的方式是相同的。
- etc : 系统配置文件目录(例如网卡配置文件:ls /etc/sysconfig/network-scriptes/ifcfg-ens33)
- home: 用户家目录。在linux中, 每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
- lib&lib64: 这两个目录下存放的是系统最基本的动态链接共享库,其作用类似于windows里的DLL文件,几乎所有的应用程序到需要用到。(ldd /bin/ls 可用来查看相关命令调用的库文件)
- media: 系统会自动识别一些设备,如U盘,光驱等,当识别后,linxu会把识别的目录挂载到该目录下。
- mnt: 系统提供该目录是为了让用户临时挂载别的文件系统。我们可以将光驱挂载到/mnt/上,然后进入该目录查看光驱的内容。
- opt: 这是给主机额外安装软件所设置的目录,默认为空。比如,你要安装一个Oracle数据库,可以放置到该目录下。
- proc: 该目录是一个虚拟目录,是系统内存的映射,可以直接访问它来获取系统信息。该目录的内容在内存里,我们可以直接修改里面的某些文件。比如可以通过下面的命令来屏蔽主机的Ping命令,使其他人无法ping你的机器。在日常工作中,你会经常用到类似的用法:echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
- root: 该目录是系统管理员的家目录
- run: 这个目录其实和var/run是同一个目录,这里面存放的时一些服务的pid。一个服务启动完后,是有一个pid文件的。
- srv: 该目录存放的时一些服务启动之后需要提取的数据。
- sys: 该目录存放的是与硬件驱动程序相关的信息
- tmp: 该目论存放着系统的临时文件。
- usr : 这是一个非常重要的目录,类似于windows下的Program Files目录,用户的很多应用程序和文件都存放在该目录下。
- var: 该目录存放的就是不断扩充且经常修改的目录,包括各种日子文件或者pid文件。
三、命令ls的使用
四、文件类型
相关文件类型,可通过 ls -l 查看:
- d 目录(带颜色的文件,无法使用cat查看。)
- - 表示普通文件包括文本文档(可通过cat 查看)
- c 字符串设备(鼠标、键盘等一般为黄色文件)
- b 块设备(光盘等一般为黄色文件)
- s 表示该文件为套接字文件(socket,一般为粉色),用于进程之间的通讯。
- l 软链接文件
- 浅蓝色:表示链接文件;
- 灰色:表示其他文件;
- 绿色:表示可执行文件;
- 红色:表示压缩文件;
- 蓝色:表示目录;
- 红色闪烁:表示链接的文件有问题了;
- 黄色:表示设备文件,包括block,char,fifo。
- 用"dircolors -p"命令可以看到缺省的颜色设置,包括各种颜色和“粗体”,下划线,闪烁等的定义。
五、命令alias的使用
- alias可以查询文件的别名,也可以用于设定别名。
- 在用户家目录下的 .bashrc和bash_profile保存只对当前用户的alias别名。其余的在 /etc/profile.d 中保存,针对所有用户。
- alias aming=“ls -lha” 设定aming=ls -lha
六、相对、绝对路径
七、命令cd的使用
- 命令cd的定义:移动到指定目录位置 例: cd /etc/sysconfig/network-scripts/ 进入network-scripts目录下
- 命令cd - 回到上一次所在的目录
- 命令cd和cd~(无后缀) 回到用户的家目录
- 命令cd .. 返回上一级目录
八、mkdir rmdir touch 目录和文件的创建及删除
命令mkdir 的使用:
- 命令mkdir是 make directory的缩写,用于创建目录。例:mkdir /tmp/aminglinux/ 在tmp下创建aminglinux目录
- 命令mkdir -p 可以创建一串目录
- 命令mkdir -pv v为可视化选项,可以显示具体的创建过程
命令rmdir的使用:
- 命令rmdir 是 remove directory的缩写,用于删除目录(无法删除文件)
- 命令rmdir -p 可以用来删除一串目录但必须是非空目录(容易混淆误删除所以一般不使用。)
- 命令touch 可以用来创建文件
命令rm 是remove 的意思 可用于删除文件和非空目录
- 命令rm -f (-f =强制删除文件)。
- 命令rm -r (删除非空目录)。
- 符号* 表示全部文件的意思,*.txt 即表示全部TXT文件。
- 命令history 显示命令使用历史。
- 在命令前使用!可以使用该命令最近一次记录的命令格式。
例: rm -rfv /tmp/aminglinux/1/2/3/ 目录3下有文件1.txt。
解析:r为删除非空目录,f强制删除文件,v为可视化删除情况。
十、环境变量PATH
环境变量PATH可以在使用命令时,不需要使用绝对路径:
- 命令PATH=$PATH:/目录/ 临时添加环境变量目录,使该目录下命令可以直接使用不需要绝对路径。
- 命令vi /etc/profile (profile环境变量配置文件)下添加PATH=$PATH:/目录/ 可以使变量文件永久生效。
例:使用 cp(复制)命令将ls命令从/usr/bin/ls复制到/tmp/ls2后,可以用绝对路径/tmp/ls2代替ls命令。使用PATH=$PATH:/tmp/ 后ls2命令可以直接使用(关机后重置)。使用命令vi /etc/profile,在文件最后加入PATH=$PATH:/tmp/ 可以使它永久生效。
十一、命令cp的使用
cp 就是copy复制的意思
十二、命令mv的使用
mv就是move移动的命令
十三、查看文档cat_more_less_head_tail
命令cat用于查看一个文件的内容并将其显示在屏幕上:
- tac 可以倒叙查看文档。
- cat -A 显示所有的字符。
- cat -n 查看文件时,把行号也显示当屏幕上。如图:
- cat 文件1 >> 文件2 (将文件1的内容追加到文件2)。
- 命令more也用于查看一个文件的内容,后面直接跟文件名。当文件内容太多,一屏不能全部显示时,用命令cat肯定是看不了前面的内容,这时可以用more命令。当看完一屏时,按空格键可以继续看下一屏,看完所有内容后就会退出,按ctrl+B可以向上翻屏,按ctrl+F可以向下翻屏(同空格),如果你想提前退出,按q即可。
- 命令wc -l 可以查询一个文档的行数。如图:
命令less和more类似的一个命令,但是less的功能更加吩咐。
- 按空格向下翻页,ctrl+b往上显示也可以使用方向键移动方向。
- 使用Q键可以退出。
- 按j可以向下移动
- 符号/可以由文件从上向下查询相应的字符串,使用N向下查询,shift+N向上查询。
- 符号?可以从文件由下往上查询相应的字符串。
- shift+G定位到行首,gg定位末行。
命令head,显示文件的前10行
命令tail,显示文件的最后10行
- 命令tail查看文件末10行。
- 命令tail -f 可以查看动态文档(查看日志等动态文件时可以使用)
- 命令tail -n 可以查看文件末尾的指定行数。-n选项后有无空格均可以。另外也可以直接省略n,在-后面直接跟数字。
十四、文件或目录权限 chmod
首位-为文件类别,后9为分成3段,前三位是所有者的权限,中间三位是所属组的权限,后三位是其他非本组用户权限。
chmod的使用
- 命令chmod使用时只会更改目标目录的权限,并不会影响目标目录下文件的权限。
- 命令chmod -R 可以批量更改目录及目录下文件的权限。
- 命令chmod u=rwx,g=rwx,o=rwx 更改权限,U所有者,G用户组,O其他用户。
- 命令chmod a-x 表示所有用户取消X(执行)权限,也可以使用+添加权限。(u,g,o也能使用该命令更改权限)。
-
举例:
十五、更改目录或文件的所有者和所属组chown
命令chown的使用(change owner 更改所有者的意思)
十六、umask值
umask值的定义:umask的后三位数值是用来确定创建的目录和文件的默认权限的数值。
- 使用umask可以查看默认的umask值,umask后跟上3为权限值,可以更改默认的umask值。例:umask 003 即表示umask更改为0003
- 目录默认权限为777,文件为666。当umask值为003时,例
- 使用文件或目录的9位权限减去umask值,就是目录和文件创建时的默认权限值(umask值位0即表示三位数权限为---,umask值位3即表示三位数权限为-wx。)
十五、市面上流行的操作系统:
- 普及率非常高的安卓,安卓就是基于linux开发的手机操作系统。
- 安卓手机上connectbot:可以远程连接Linux。
- Unix因为收费的原因最终衍生出了Linux.
- 可以查看linux发行版的历史进程:https://commons.wikimedia.org/wiki/File:Linux_Distribution_Timeline.svg
- liunx的内核网站:www.kernel.org
十六、系统版本相关的命令
- 查看linux内核版本的命令:uname -r
- 查看系统的位数(更详细的显示系统信息):uname -a
- 查看当前CentOS的具体版本:cat /etc/redhat-release
- 此图显示的时。32为操作系统的CentOS5.
我们的操作系统的内核可以从LINUX官网下载内核文件进行替换。
- CentOS的官网:www.centos.org
- CentOS版本对比:wiki.centos.org/Download
- CentOS7.5 1804 使用yum update 可以升级系统到最新版本。
十七、几个扩展的问题
Linux时一种类Unix系统,可以说Linux时Unix系统衍生过来的。
BSD是一个重要的Unix分支,在1977至1995年间由加州大学伯克利分校开发和发布的。FreeBSD和NETBSD到时BSD的一个衍生版。
GNU是Richard Stallman 在1983年发起的一项自由软件运动,目标是为了创建一套安全自由的操作系统,它要求我们可以自由使用,自由更改,自由发布软件,GPL是用来规定如何自由的协议。
十八、配置网络
十九、centos7修改grub密码
entos7和centos6修改grub密码的步骤有所不同。
- 先在系统里生成加密的密码:
- 使用命令grub2-mkpasswd-pbkdf2
- 设置密码:Enter password:
- 再次设置密码:Reenter password:
- 生成一下grub的密码字符串,PBKDF2 hash of your password is :
grub.pbkdf2.sha512.10000.1367F52B54CF08B325A8AB6185DC12E58AAB5EA32FBCF9FDD694E0884F4AF38FED468A8B388140870F6740E8963AF2853EDDA86AF9591D27125252B006AF9A2D.F8DDC38757049DA9B403E0D56B388C1533755888B93EAC6C98DA9EC42E39D4D7C34EE4ABC6FCA9C5236E6CAC0955AC1D8F24265599761672FE9F3939D52D5671
- 然后找到grub配置文件 cd /boot/grub2/
- 最好是备份一下:cp grub.cfg grub.cfg.bak
- 编辑:vim grub.cfg
- 在## BEGIN /etc/grub.d/00_header ###下面写入
password_pbkdf2 root grub.pbkdf2.sha512.10000.1367F52B54CF08B325A8AB6185DC12E58AAB5EA32FBCF9FDD694E0884F4AF38FED468A8B388140870F6740E8963AF2853EDDA86AF9591D27125252B006AF9A2D.F8DDC38757049DA9B403E0D56B388C1533755888B93EAC6C98DA9EC42E39D4D7C34EE4ABC6FCA9C5236E6CAC0955AC1D8F24265599761672FE9F3939D52D5671