Linux文件管理

创建 touch vim/vi echo重定向

touch 管理:atime mtime ctime

touch 文件名  //如果文件不存在就创建文件

touch -a -t [CC]YY]MMDDhhmm[.ss]

20190827100322

-C

删除 1、mv /tmp

2、find| xargs rm

3、rm

rm删除文件

alias rm -i

-i提示

-f

-r

默认情况下rm-f /是不让删的(在centos 5以及以下版本)

centos7和6要删是需要加一个参数的; --preserve-root 可以删根

rmdir删除目录

移动

文件的传输都有两种行为:一种是“推"一种是“拉"的方式; ,

mv移动文件,改名

-t

mv a b c d /e //将多个文件同时移动到一个目录中

mv a b //修改名字a文件名称改为b

覆盖的问题 -i

cp

cp a b

-t

-a 可以复制目录以及目录里面文件的属性! !

install 删除和复制文件

-d 直接删除文件

-t

-g指定所属组

-o指定所属主

-m指定复制文件的权限

scp - Linux机器之间进行文件传输的命令;

linux1--linux2

linux1: scp文件root@ip(linux2):/目录

linux2 : scp root@ip(linux1:/文件 本地的那个目录

4、查找

locate

需要生成一个查找库的--不常用

updatedb 我在这个查找库中查找对应文件

find

可以根据文件的任何一个属性,来查找文件

1、inode2、文件类型3、文件权限4、硬连接数5、所属主6.所属组7、文件大小8、修改时间9.文件名(globbing) -regex

-type f d s p c b l

-perm 007

-maxdepth  查找最多几级目录

-mindepth  查找最少几级目录

find ./ -maxdepth 1 -perm + 1

find ./ -maxdepth 2 -perm 755

-links

find ./ -maxdepth 1 -links 2

-user -nouser

-group -nogroup

-size [默认单位是多少? ]

-mtime -ctime -atime + -数字

-name通配符

-regex指定使用正则表达式

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

-ok

-exec

|xargs

5、压缩和递归

压缩- 1.只能对文件进行压缩; 2、能让源文件变小

gzip    ---------  -z

bzip2   ----------- -j

xz    -------------  J

归档-- 1、归档可以对目录进行操作2、不会让目录变小

tar

-c -x

-v

-f filename 指定创建压缩文件的名字

【解压的时候,最好不要指定的压缩文件】

6、编辑

全屏编辑器:

nano

vi vim

【区分 sed 流编辑器 行编辑器】

vim

1、默认为命令模式--------| il a A o O进入编辑模式

| ESC 进入末行模式

2、命令模式下的常用技巧

2.1. 上下左右hjkI

2.2 dd ndd 删除

p np  复制

u(上一个操作) U(退回到进入文件的初始状态)

yy nyy

gg 光标跳至文件内容行首

G 光标跳至文件内容行尾

c=dd+i

r替换光标所在字符为指定字符

v进入可选模式,选出指定内容,然后进行相应的操作

3、末行模式

【末行模式很多操作和sed相同】

,$S/^#/ /g

:$将光标移动到文件末尾:1 .

:W

:W filename 将当前文件保存到新的文件中去

:q

:wq! //!代表强制

【在命令模式下ZZ也可以保存并退出文件】

查找

/向下操作   n下一个    N上一个

?向上查找   n上面一个  N下面一个

多个文件同时编辑的情况

:next

vim a b

5dd

:next!

p

:perv

:first

:last

:q //退出当前文件

:q! :qa //退出所有的文件

比较查看文件

1、垂直分屏

vim -O a b

切换光标ctrl+w松开w

再进行切屏ctrl+w 松开V

2、水平分屏

vim -o a b . .

切换光标:ctrl+w松开w .

再进行切屏: ctrl+w 松开S

:qa!全部退出

:wq! 全部保存并退出

linux用户与用户、权限管理

用户管理:

1、useradd 创建用户

-c 指定用户描述

-d 指定家目录 默认家目录/home下同名的目录

-g 指定主组

-G 指定附加组

【一个用户主组只能有一个,而附加组可以有两个】

-s 指定shell程序

特殊:/sbin/nologin --> 不允许登录系统的用户

-u 指定UID

-M 不创建家目录

2、userdel

-r 带着家目录块删除

3、usermod -修改

-c-d -m-g-G-s-u -o (容许UID相同,和-u-起使用)

4、passwd

-1 lock

-u unlock

-d 删除密码

echo "密码" | passwd --stdin "用户名”

组管理

1、groupadd

-g 添加组

-o 删除组

2、groupdel 删除组

3、groupmod

-g

-O

-n 修改组名

-p 指定组密码【如果一个文件输入这个用户的附加组,而你要访问这个文件,别人就可以为这个组设置密码】

常用文件

/etc/passwd

uname:x:uid:gid:描述家目录:shell程序

超级用户 - root

系统用户 1-499 1-999 普通用户 500-65535 1000-65535

/etc/shadow

uname:uid:密码:各种时间..

/etc/group

组:组密码:组ID:附加组

/etc/gshadow

/etc/skel

这个目录下的文件均会被复制到每一个普通用户的家目录中,一般用来做警告;

用户权限

r w x

读 写 执行

4   2   1

r 100

w 010

x 001

chmod [a|o|g|u][+|-]文件

chown :user10文件

chown user10:文件

chown user10:user10文件

acl的授权管理:

通过权限管理,给指定用户添加指定权限;

setfacl --添加权限

setfacl -m u:用户名:所添加的权限文件//文件- 定要是该用户的文件

setfacl-x u:用户名文件//取消文件权限

getfac

查看acd添加的权限

特殊权限位

临时借权限:临时借权限;例如:有A B两个用户分别输入AA组和BB组; A创建了一个用户a.txt, B默认情况下去访问a.txt使用other; 但是,我如果想要越权,借用A的权限去访问a.txt,就需

要将SUID位置位为1;同时也可以,去借SGID的权限去访问这个文件;

粘黏位作用:授权给一个目录,在该目录下所有用户只能删除自己的文件,别人不能删除自己的文件; --给目录文件授予的;

SUID

chmod u+s 文件名 //授予SUID的特殊权限

如果属主权限有x 显示为s

如果属主权限没有x 显示为S

SGID

chmod u+s 文件名 //授予SGID的特殊权限

如果属主权限有x 显示为s

如果属主权限没有x 显示为S

Sticky

chmod o+t文件//授予粘粘位的特殊权限

如果属主权限有t显示为s

如果属主权限没有T显示为S

 sudu授权

/etc/sudoers //在这个文件里面去添加权限即可;

SU-

sU

sudo

Linux磁盘管理

磁盘的工作原理 -- 物理
  磁道 磁头 扇区 柱面
  
  磁盘的分类:机械盘(接口IO) 固态盘
   IO -- 串行sata scsi(iscsi)  并行ata
            FC二层协议  (施乐公司 POAR - 以太网 解释了面向对象的编程语言  图形界面)
 文件系统 -- 逻辑
  磁盘必须要有文件系统(数据存储) -- 数据库(数据管理平台)
  windows  fat32 ntfs exfat
  linux  单文件系统 -- ext2 3 4 xfs
  原理见图
   iNode -- 索引空间(文件属性)
   block -- 存储空间
   数据存储过程、数据复制过程、数据删除的过程
  fdisk -- 磁盘分区 parted
  mkfs -t
  mount -o remount,rw
              -a                        /etc/fstab
  umount 过载点或者挂载文件
 动态管理--LVM 逻辑卷管理
  linux内核模块 -- dm 
   我们将一个或者多个磁盘融合起来,进行从新划分;
   首先,我们需要定义PV(物理卷)
   然后,再定义VG(卷组)
   最后,我们再从VG中获取空间--LV(逻辑卷)
  最大优点:
   可以自由删除或者添加空间,不再需要重新进行分区;
   pvcreate  vgcreate 命名  lv -l | -L 指定大小  -n 指定名字
   lvextend -- 添加磁盘空间
   lvreduce -- 删除磁盘空间
  最后一个操作:
   做镜像 lv 命令可以为lv逻辑分区做磁盘镜像;
   这个功能和数据库一块使用,实现数据被;
   lvcreate -n Morrie_LV -s -p r -L 1000M /dev/mapper/VGname-LVname
                 /dev/VGname/LVname
    
 磁盘冗余--RAID 磁盘管理
  (软RAID)linux内核模块 -- md
  廉价的冗余磁盘阵列
  独立的冗余磁盘阵列
   1、冗余
   2、提高读写性能
   raid0 -- 条带技术  磁盘1  磁盘2
   raid1 -- 镜像技术
   raid4 -- 校验盘 3快盘  (raid降级)
   raid5 -- 将校验值分别存储于多快盘上
   raid6 -- 二次校验
   raid10(好一点) raid01
   raid50
  硬raid -- 需要raid卡来实现
  软raid -- 在工作中不会做软raid,如果做:用磁盘去做raid即可(不要使用分区);
   mdadm -C /dev/md0 -l 1 -n 2 /dev/sdb1 /dev/sdb2 -x /dev/sdb3
   mdadm -S /dev/md0
   mdadm -D /dev/md0
   mdadm -A /dev/md0
   磁盘的命名: 
    md / sd / hd / vd
    a b c  sda sdb
    1 2 3 4 5 6 7 8 9 10 sda1 sda2

Linux基础:Day02的更多相关文章

  1. day02 Linux基础

    day02 Linux基础 1.什么是服务器 服务器,也称伺服器,是提供计算服务的设备.由于服务器需要响应服务请求,并进行处理,因 此一般来说服务器应具备承担服务并且保障服务的能力. windows: ...

  2. Linux基础练习题(二)

    Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...

  3. 大数据每日干货第四天(linux基础之一目录结构与常用命令)

           为了和qq空间同步,也写的第四天,前面几天明天会发布,本来打算把每天学的东西记录下来,通过朋友给的建议要发的话稍微系统化下,从大数据需要的linux基础,到离线数据分析包括hadoop. ...

  4. Linux课程实践一:Linux基础实践(SSH)

    一.SSH服务 1. 安装SSH (1)查看是否已经安装过ssh服务 rpm -qa |grep ssh (2)进行安装 sudo apt-get install openssh-server Ubu ...

  5. 还是不想改报告,伊阿忆啊哟-Linux基础继续

    hi 虽然今天是最最美好的周六(前不着工作日后不着工作日),但老子还要来改报告,但额就是不想改,你拿我有啥办法啊... 争取完结Linux基础 一.Linux常用命令(三) 4.帮助命令 4.1 帮助 ...

  6. 原来今天是感恩节-Linux基础继续&MySQL和PHP

    hi 原来今天是感恩节.虽然一直没有过这个节日的习惯,但仅仅是听到感恩的消息,都能想到一幅幅画面.愿大家安好! 下午开题会议还是有所收获,悄悄的,就变向那个不喜欢自己的人了. 一.Linux基础(二) ...

  7. 买错的电影票,含着泪也得看-LAMP搭建&Linux基础

    hi 没说过,上周五室友过生请客,在龙湖里吃嗨了喝爽了,回去的路上侃侃而谈.说好的这周一起去看年内最后的大片,火星救援的,谁知道老子眼神不好,买错了电影的时间...把周六的约定提前到了今儿个下午,ma ...

  8. Linux基础3(文件权限)

    文件权限 1.普通权限 (登陆用户对文件或目录的读写执行的权限) 普通权限对管理员用户无效 文件和目录 都有4中类型的用户u 所有者 : 文件.目录的创建者g 所属组 : 文件.目录属于的用户组o 其 ...

  9. Linux课程实践一:Linux基础实践(基础操作)

    一.软件源维护 1. 基本操作 (1)查看源列表 sudo vim /etc/apt/sources.list deb:二进制软件安装包 deb-src:源码包 (2)备份软件源列表 sudo cp ...

  10. 实践一:Linux基础实践

    一.Linux基础实践 1.1 1. 掌握软件源的维护方法,配置系统使用软件源镜像.掌握通过软件源来查找,安装,卸载,更新软件的方法. 这部分内容在许多学长学姐的报告里都有很详细的讲解,我在此就不赘述 ...

随机推荐

  1. 移值 RTL8188EUS linux4.1.36 驱动

    网卡为COMFAST CF-WU720N RTL8188EUSVID 0x0bdaPIV 0x8179 驱动下载网址是http://www.comfast.cn/download/qdcx/item- ...

  2. R自带数据集

    向量 euro    #欧元汇率,长度为11,每个元素都有命名landmasses    #48个陆地的面积,每个都有命名precip   #长度为70的命名向量rivers   #北美141条河流长 ...

  3. mysqli_query($conn, "set names utf8"); //**设置字符集*** 不设置插入数据库就是乱码

    mysqli_query($conn, "set names utf8"); //**设置字符集*** 不设置插入数据库就是乱码

  4. ajax上传文件,通过FromData把数据传给后端

    前端代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...

  5. 第三届上海市大学生网络安全大赛 流量分析 WriteUp

    题目链接: https://pan.baidu.com/s/1Utfq8W-NS4AfI0xG-HqSbA 提取码: 9wqs 解题思路: 打开流量包后,按照协议进行分类,发现了存在以下几种协议类型: ...

  6. 小白学 Python 数据分析(20):pyecharts 概述

    人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):P ...

  7. SQL的分类使用(增删改查)

    1.SQL的分类使用(*代表重点的程度)    DDL ** (Data Definition Language)数据库定义语言        用来定义数据库对象: 库 表 列 等    DCL (D ...

  8. 基于 websocket 的多端桥接平台

    我们现在的业务是基于新闻客户端实现的,都要经过新闻客户端的环境,进行前后端数据上的交互.但是我们在调试过程中,非常的不方便. 通常使用的工具有:modheader, postman, fiddler ...

  9. hdu1045 炮台的配置 dfs

    只要炮台在同一行或者同一列,就可以互相摧毁,遇到墙则无法对墙后的炮台造成伤害,可以通过dfs搜索n*n的方格,全部搜完算一轮,计算炮台数,并保存其最大值. 其中对于t编号的炮台,位置可以计算出是(t/ ...

  10. Qt 事件和信号的关系

    Qt的事件是windows的底层消息封装而成的.这个消息和MFC里的消息是同一概念,都是指键盘.鼠标等的按压.松开等消息.例如按下键盘后,windows系统会发出一个 WM_KEYDOWN的消息,Qt ...