Linux学习笔记(持续更新…)

/ 0评 / 0

文件系统架构

  1. Linux文件或者目录起始于根目录 " / " 成为树状结构,最顶层由 / 开始
  2. 文件和目录名是区分大小写的
  3. 路径通过 " / " 分开
  4.  " .. " 表示上层目录
  5.  " . " 表示当前目录
  6. 隐藏目录或者隐藏文件名以 " . " 开始

重要目录说明

  1. home目录(root用户的home目录是/root,普通用户的目录是/home/userx)
  2. bin目录(常用的可执行文件,/bin   /usr/bin   /sbin 等)
  3. 外部设备mountpoint(/media   /mnt  ,当检测到设备接入会自动产生挂载点)
  4. /etc  系统的配置文件
  5. /tmp 临时文件
  6. /boot 系统内核和开机必要的文件
  7. /dev 系统所有的设备文件
  8. /usr 应用程序存放目录(/usr/bin 存放应用程序, /usr/share 存放共享数据 , /usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件 , /usr/local:存放软件升级包 , /usr/share/doc: 系统说明文件存放目录 , /usr/share/man: 程序说明文件存放目录 )
  9. /lost+found 系统异常产生错误时,会将一些遗失的片段放置于此目录下,通常这个目录会自动出现在装置目录下。 (每个分区都会自动创建)
  10. /var  放置系统执行过程中经常变化的文件,如随时更改的日志文件 /var/log,/var/log/message: 所有的登录文件存放目录,/var/spool/mail: 邮件存放的目录, /var/run: 程序或服务启动
  11. /srv   服务启动之后需要访问的数据目录,如www服务需要访问的网页数据存放在/srv/www内
  12. /proc    此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有/proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/*等
  13. /lib     /usr/lib       /usr/local/lib       系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助,比较重要的目录为/lib/modules

目录和文件的命名规则

  1. 不超过 255 个字符
  2. 区分大小写 (shiyan,ShiYan 这两个是不同的文件)
  3. 除了 / 外,所有字符都合法
  4. 文件名首字符应避免使用 + -  . 等
  5. 避免使用空格,制表符和 @ # $ % [] () 等
  6. 最好使用有意义的名称来命名

ls 指令的操作

命令标准格式:命令 [-参数] [选项]

Linux 中,字母参数用-表示(如:-a),单词参数用--表示(如:--help)

文件和目录操作,cd

复制文件和目录,cp

移动和重命名文件和目录,mv

删除文件和目录,rm

新建文件和目录,touch 新建文件,mkdir 新建目录

确定文件的格式

显示文件内容 ,cat

分页显示文件内容 ,less

用户概述,用户群组概述

  1. 每个用户都有一个唯一的User ID
  2. User 的信息储存在 /etc/passwd 中
  3.  shiyan:x:5000:5000::/home/shiyan:/usr/bin/zsh  用户名为 shiyan ,有密码,用户 ID 为 5000 ,用户组ID为 5000 ,没有备注,位于家目录下的 shiyan 目录 ,调用 /usr/bin/zsh
  4. 每个 User 都有一个 home 目录
  5. User 未经授权将禁止读写执行其他 User 的文件
  6. root 用户为超级管理员,最高权限(慎用)
  7. /etc/shadow 文件储存用户账号密码
  8. 每个 User 都属于一个 Group ,都有唯一的标识 gid
  9. Group 信息储存于 /etc/group 中
  10. 系统会为每一个 User 关联一个和 User 同名的 Group
  11. 在同一个 Group 中的成员可以共享其他成员的文件

Linux 权限种类

  1. 只读权限,用 r 表示(read)
  2.  r 权限可以读取文件或者列出目录的内容(ls)
  3. 可写权限,用 w 表示(write)
  4. w 权限可以写,删除文件或者目录
  5. 可执行权限,用 x 表示(execute)
  6. x 权限可以执行可执行文件,可以进入目录并使用 cd 切换进入目录
  7. 没有任何权限,用 - 表示

Linux 文件和目录权限解读

1,

d rwx rwx rwx

d:目录

-:文件

u 用户权限 G 群组权限 o 其他所有人权限

2, d rwx-w----

3, - rwxrwxr-x

设置 Linux 文件和目录的权限

1,字符表示法

chmod [-R] mode file

who (设置谁) operator(操作符) permission(权限)
u(owner,当前用户)      +      r
g(group,用户组群)      -      w
o(others,其他用户)      =      x
a(ugo,以上全部)    

2,数字表示法

数字表示法是用一组三位数分别对应 u g o ,第一位表示当前组别,第二位表示用户组,第三位表示其他用户的权限

permission    r    w    x    -
Digit    4    2    1    0
     rwx      r-x      r--
4+2+1=7 4+0+1=5 4+0+0=4

用户的主要群组和次要群组

  1. 主要群组,每个文件必须有一个组的所有者,因此必须有一个与每个组户相关的默认组,这个默认组就是新建文件的组的所有者,被称为用户的主要群组。用户的主要群组在 passwd 文件中的第四个字段中定义
  2. shiyan:x:5000:5000::/home/shiyan:/usr/bin/zsh   从这里可以看出,shiyan 所属的群组ID为 5000
  3. 在主要群组之外,用户还可以加入其他群组,这些其他加入的群组可以被称为次要群组,在 group 文件中的第四个字段中定义
  4. shiyan:x:5000:root  从这里我们可以看出,shiyan 的次要群组是 root 这个群组
  5. groups 这个指令可以查看当前用户所在的群组和所属的次要群组,第一位为主要群组,第二位至后面的都是次要群组

用户的管理

useradd [ -u UID ] [ -g 初始群组 ] [ -G 次要群组 ] [ -mM ] [ -c 说明 ] [ -d 家目录 ] [ -s shell ]

passwd [ 用户名 ]  修改用户密码

usermod [-c ] [ -d ] [ -e ] [ -g ] [ -G ] [ -l ] [ -u ] [ -L ] [ -U ] username    修改用户信息

userdel [ -r ] username    删除用户

用户信息检查

  1. finger username    查阅用户相关的信息
  2. finger -s username     仅仅列出用户的账号,全名,登录时间等
  3. id    可以查阅某人或者自己相关的 UID,GID 信息
  4. whoami     查看当前用户的名称
  5. who&w     当前登录用户和最后一次操作的指令
  6. users    查询当前在线用户
  7. groups     查看用户所属主次群组

用户群组的管理

groupadd [ -g gid ] [ -r ] 组名

groupmod [ -g gid ] [ -n group_name ] 群组名

groupdel [ groupname ]     删除群组

文件压缩和解压(这里以实验楼的教程为笔记, zip , rar , tar )

zip [ -r ] [ -q ] 压缩后的文件名  被压缩的文件

unzip [ -l ] 压缩文件

安装 rar 和 unrar

sudo apt-get update
sudo apt-get install rar unrar

注意:rar 的命令参数没有 -,如果加上会报错

rar [ a ][ l ] [ e ] 压缩文件名  被压缩文件

unrar [ e ] [ x ] 压缩文件

tar (太复杂了,不杂记了,就光弄几个常用的吧)

vi 编辑器 / vim 编辑器

vi 适合用来修改配置文件等简单的操作,vim 适合用来编写代码等文本

  1. vi a1.txt     打开 a1.txt 这个文件
  2. 通过输入 a(在内容第一行插入) i(在光标所处的地方插入) o(在下一行插入) 进入插入模式
  3. Esc 清空操作,输入 : 然后在后面输入命令
  4. h  (左)   j  (下)   k  (上)   l  (右)
  5. w 下一个字符,b 上一个字符
  6. cc 删除整行,然后进行插入
  7. dd 删除整行
  8. dl 删除光标选择的字母或者其他
  9. u 撤销最近一次的修改 undo
  10. ctrl - r 取消最后一次的撤销 redo
  11. U 撤销所有修改
  12. /text 向后搜索
  13. ?text 向前搜索
  14. n ,搜索下一个同样的内容
  15. N ,搜索上一个同样的内容
  16. yy 复制一行
  17. yl 复制单个
  18. yw 复制单个句子
  19.  p 粘贴
  20. 对于行,小写 p 粘贴在行上,大写 P 张贴在行下
  21. 对于字符,小写 p 张贴在字符右侧,大写 P 张贴在字符左侧
  22. dt[任意字符]     删除从光标到任意字符之间的所有字符
  23. r[任意字符]     将光标下的字符替换为任意字符
  24. dw 删除光标下这段字符
  25. [任意数字]dd     删除下方任意数字的行数数据
  26. [任意数字]yy     复制任意下方数字的行数
  27. R ,进入替换状态,esc退出,保存,退出,进入扩展模式
  28. :w ,保存
  29. :q , 退出
  30. :wq,保存并退出
  31. :w!,强制保存
  32. :q!,强制退出
  33. :wq!,强制保存退出

vi高级操作命令

1.文件内定位

2.屏幕定位相关

3.查找并且批量替换

4.读取和保存

5.设置

评论已关闭。