1、xargs

作用是将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题

语法格式:

# xargs [-ni]

常用参数:

参数

参数说明

-n

分组输出,n个分为一组

-i

与大括号{}关联,使每一个输出的参数都会被执行一次

实践说明:

[root@ky01 ~]# find . -type f -name "123.txt"|xargs mv {} /tmp

mv: target `./123.txt' is not a directory

[root@ky01 ~]# find . -type f -name "123.txt"|xargs -i mv {} /tmp

[root@ky01 ~]# ls /tmp/

123.txt  etc01.tar.gz  etc.tar.gz  oldboy.txt  test.txt

2、wc

统计数字

语法格式:

# wc [-lwc]  文件

常用参数:

参数

参数说明

-l

计算行数

-w

计算字数

-c

计算字符数

实践说明:

[root@ky01 ~]# wc -l b.txt

4 b.txt

[root@ky01 ~]# wc -w b.txt

10 b.txt

[root@ky01 ~]# wc -c b.txt

52 b.txt

3、basename

只显示目录下文件的名称,shell脚本中会用到

语法结构:

# basename [文件]

实践说明:

只显示目录/root/01/02/03/04/05/123.txt的文件名

[root@ky01 ~]# basename 01/02/03/04/05/123.txt

123.txt

4、chattr

改变文件属性

语法结构:

# chattr [-R] [+-=] [属性] 文件

参数

参数说明

-R

递归处理

属性

参数说明

a

只需添加

i

不许更改文件属性

实践说明:

[root@ky01 ~]# ls -l 12.txt

-rw-rw-rw- 1 root root 1210 April 24 19:49 12.txt

[root@ky01 ~]# chattr +i 12.txt

[root@ky01 ~]# chmod 777 12.txt

chmod: changing permissions of `12.txt': Operation not permitted

[root@ky01 ~]# chattr -i 12.txt

[root@ky01 ~]# chmod 777 12.txt

[root@ky01 ~]# ls -l 12.txt

-rwxrwxrwx 1 root root 1210 April 24 19:49 12.txt

5、chgrp

修改文件或目录的用户组

语法结构:

# chgrp 用户组 文件

常用参数:

参数

参数说明

-R

递归处理

实践说明:

修改文件123.txt的用户和用户组

[root@ky01 ~]# ls -l 123.txt

-rwxrwxrw- 1 ky1 root 31 April 23 12:14 123.txt

[root@ky01 ~]# chgrp ky1 123.txt

[root@ky01 ~]# ls -l 123.txt

-rwxrwxrw- 1 ky1 ky1 31 April 23 12:14 123.txt

6、chkconfig

查看或更改开机自启动的运行级别的情况,chkconfig管理的服务是/etc/init.d/下的服务文件

原理:chkconfig和当前服务进程的运行情况没有关系,只是在开机时影响服务的启动

实现:

  • a.编写服务文件(如名字为oldboy)脚本时需要包含chkconfig管理的代码# chkconfig: 345 25 75(345代表的是启动级别,25代表服务开启顺序的号码,75代表服务关闭顺序的号码,号码默认是1-99号),再添加权限chmod +x oldboy
  • b.把脚本放到/etc/init.d/文件夹下面,并且希望开机时被chkconfig管理,需要添加chkconfig --add oldboy
  • c.添加进去的默认在哪个级别上启动要看开发脚本中chkconfig的配置,服务启动顺序和关闭顺序也是看脚本中chkconfig的配置
  • d.chkconfig --level 3  oldboy on/off的实质

开启实质:rm -f /etc/rc.d/rc3.d/K75oldboy(删除关闭顺序的文件)

ln -s /etc/init.d/oldboy /etc/rc.d/rc3.d/S25oldboy(建立开启顺序文件连接)

关闭实质:rm -f /etc/rc.d/rc3.d/S25oldboy(删除开启顺序的文件)

ln -s /etc/init.d/oldboy /etc/rc.d/rc3.d/S75oldboy(建立关闭顺序文件连接)

语法结构:

# chkconfig [--list、--level] [服务] [on/off]

常用参数:

参数

参数说明

--list

查看所有服务在所有级别的开启关闭状态(没有也显示)

--level

接级别,设置相应级别的某个服务的开启或关闭

实践说明:

[root@ky01 ~]# chkconfig --list netfs

netfs           0:off   1:off   2:off   3:off   4:off   5:off   6:off

[root@ky01 ~]# chkconfig --level 3 netfs on

[root@ky01 ~]# chkconfig --list netfs

netfs           0:off   1:off   2:off   3:on    4:off   5:off   6:off

[root@ky01 ~]# chkconfig --level 23 netfs on

[root@ky01 ~]# chkconfig --list netfs

netfs           0:off   1:off   2:on    3:on    4:off   5:off   6:off

查看或更改开机自启动的运行级别的情况,chkconfig管理的服务是/etc/init.d/下的服务文件

原理:chkconfig和当前服务进程的运行情况没有关系,只是在开机时影响服务的启动

实现:1、编写服务文件(如名字为oldboy)脚本时需要包含chkconfig管理的代码# chkconfig: 345 25 75(345代表的是启动级别,25代表服务开启顺序的号码,75代表服务关闭顺序的号码,号码默认是1-99号),再添加权限chmod +x oldboy

2、把脚本放到/etc/init.d/文件夹下面,并且希望开机时被chkconfig管理,需要添加chkconfig --add oldboy

3、添加进去的默认在哪个级别上启动要看开发脚本中chkconfig的配置,服务启动顺序和关闭顺序也是看脚本中chkconfig的配置

4、chkconfig --level 3  oldboy on/off的实质

开启实质:rm -f /etc/rc.d/rc3.d/K75oldboy(删除关闭顺序的文件)

ln -s /etc/init.d/oldboy /etc/rc.d/rc3.d/S25oldboy(建立开启顺序文件连接)

关闭实质:rm -f /etc/rc.d/rc3.d/S25oldboy(删除开启顺序的文件)

ln -s /etc/init.d/oldboy /etc/rc.d/rc3.d/S75oldboy(建立关闭顺序文件连接)

7、dd

磁盘管理命令

语法结构:

 dd if=input_file of=output_file
dd if=input_file of=output_file bs=#[b|k|m|g] count=n

实例说明:

1.将本地的/dev/hdb整盘备份到/dev/hdd

dd if=/dev/hdb f=/dev/hdd              hdb –> 内存 -> hdd

2.将/dev/hdb全盘数据备份到指定路径的image文件

dd if=/dev/hdb f=/root/image            hdb –> 内存 -> image文件

3.将备份文件恢复到指定盘

dd if=/root/image f=/dev/hdb             image文件 –> 内存 -> hdb

4.备份/dev/hdb全盘数据,并利用gzip工具进行压缩,保存到指定路径

dd if=/dev/hdb | gzip> /root/image.gz

5.将压缩的备份文件恢复到指定盘

gzip -dc /root/image.gz | dd f=/dev/hdb

6.备份磁盘开始的512个字节大小的MBR 主引导记录信息到指定文件

dd if=/dev/hda f=/root/image count=1 bs=512   默认从硬盘0柱面0磁道1扇区读取512个字节

count=1指仅拷贝一个块;bs=512指块大小为512个字节。

恢复:dd if=/root/image f=/dev/hda

7.备份软盘

dd if=/dev/fd0 f=disk.img count=1  bs=1440k (即块大小为1.44M)

8.拷贝内存内容到硬盘

dd if=/dev/mem f=/root/mem.bin  bs=1024 (指定块大小为1k)

9.拷贝光盘内容到指定文件夹,并保存为cd.iso镜像文件

dd if=/dev/cdrom(hdc)   of=/root/cd.iso

10.增加swap交换分区文件大小

第一步:创建一个大小为256M的文件:

dd if=/dev/zero  of=/swapfile  bs=1024 count=262144

第二步:把这个文件变成swap交换分区文件:

mkswap /swapfile

第三步:启用这个swap交换分区文件:

swapon /swapfile

第四步:编辑/etc/fstab文件,使在每次开机时自动加载swap交换分区文件:

/swapfile    swap    swap    default   0 0

11.销毁磁盘数据

dd if=/dev/urandom f=/dev/hda1

注意:利用随机的数据填充硬盘,在某些必要的场合可以用来销毁数据。

12.测试硬盘的读写速度

dd if=/dev/zero bs=1024 count=1000000 f=/root/1Gb.file    写速度

dd if=/root/1Gb.file bs=64k | dd f=/dev/null      读速度

通过以上两个命令输出的命令执行时间,可以计算出硬盘的读、写速度。

13.确定硬盘的最佳块blocks大小:初始化硬盘

dd if=/dev/zero bs=1024 count=1000000 f=/root/1Gb.file    初始化硬盘

dd if=/dev/zero bs=2048 count=500000 f=/root/1Gb.file     初始化硬盘

dd if=/dev/zero bs=4096 count=250000 f=/root/1Gb.file     初始化硬盘

dd if=/dev/zero bs=8192 count=125000 f=/root/1Gb.file     初始化硬盘

通过比较以上命令输出中所显示的命令执行时间,即可确定系统最佳的块大小。

14.修复硬盘:                 自初始化硬盘

dd if=/dev/sda f=/dev/sda  SCSI硬盘 或dd if=/dev/hda f=/dev/hda   IDE

当硬盘较长时间(一年以上)放置不使用后,磁盘上会产生magnetic flux point 电磁点现象,当磁头读到这些区域时会遇到困难,并可能导致I/O错误。当这种情况影响到硬盘的第一个扇区即MBR(主引导程序446、硬盘分区表64、硬盘有效标识2字节)时,可能导致硬盘报废。上边的命令有可能使这些数据起死回生。并且这个过程是安全、高效的。

8、 mdadm 软raid 创建

硬raid:

主板直接实现raid控制。或者插在pci插槽上。硬盘在链接到主机之前就链接到一起了。 bios就能控制。

软raid:

在操作系统内核中实现,把一个驱动程序,将多个磁盘当一个用。由内核的一个模块的软件代码来实现的。软件代码由cpu实现。 cpu大量时间来处理存储了。占用了大量的cpu的使用周期,性能提升不明显。

md,mkdadm ,mdadm配置文件/etc/mdadm.conf
md:可以组合任何块设备做成raid,不限于磁盘。即多个分区都可以做成raid。但是同一个磁盘的不同分区做成raid没有任何意义
mdadm:监控raid,扩展raid空间,加一块盘进来。跟vim一样是模式化的工具

内核的模块是工作在内核空间的。而用户的命令是工作在用户空间,二者的空间是无法通信的,如果调用则需要通过系统调用。比如我们的软raid的内核模块md,要读取硬盘信息我们在用户空间是无法直接控制的,而是必须有专门的客户端命令mdadm调用专门的系统调用接口才能让内核模块md加载读取。

mdadm:
-A :装配模式
-C:创建模式
-F:监控模式
管理模式:
-f :标记Wie损坏
-r:模拟为拿掉坏的
-a:添加好的。
-D:显示阵列的详细信息
--detail

-S :停止raid
mdadm -S /dev/md2
--scan 扫描
mdadm --scan
mdadm --scam /dev/md2
-A :启动
mdadm -A /dev/md2 /dev/sda{1,2,3}

创建大小为12G的RAID0:
2*6G
3*4G
4*3G
6*2G

-C: 创建模式
options:
-n $num:用于创建raid设备的设备个数
-x $num:热备磁盘的个数
-l 级别:options are: linear, raid0, 0,
stripe, raid1, 1, mirror, raid4, 4, raid5, 5, raid6, 6, raid10, 10, multi-
path, mp, faulty, container. Obviously some of these are synonymous.
-a yes: 自动为创建的raid设备创建设备文件
-c Chunck_size:指定分块大小,默认为512,单位KB

操作: #创建命令 但是首先需要下面一堆命令分区。
# mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sdb{1,2}
# cat /proc/mdstat
#mdadm -D /dev/md0 #查看detail详情
=======================2==============================
练习 创建一个大小为12G的RAID1:
2*12G
# mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sdb{1,2}
#cat /proc/mdstat
#watch -n1 'cat /proc/mdstat'

watch 命令:
-n $num:多久执行一次指定的命令 单位为秒钟
1, .5

模拟损坏
mdadm /dev/md1 -f /dev/sdc3
mdadm -D /dev/md1
模拟移除:
mdadm /dev/md1 -r /dev/sdc3
添加:
mdadm /dev/md1 -a /dev/sdc3 会同步镜像盘。

raid 1 具有热备磁盘 如何设置
#设置带有热备的命令 -x参数
mdadm -C /dev/md2 -a yes -l 1 -n 2 -x 1 /dev/sda{1,2,3}

Linux常用命令(四)的更多相关文章

  1. linux常用命令(四)

    1.压缩解压命令 gzip命令 默认为.gz格式文件 1.只能压缩文件不可压缩目录 2.不保留源文件 压缩   giz 解压   gunip tar命令 -c产生打包文件 -v显示相信打包压缩过程 - ...

  2. Linux 常用命令四 rmdir rm

    一.rmdir命令 用于删除空目录: wang@wang:~/workpalce/python$ tree . ├── .txt ├── .txt ├── .txt ├── A │   └── B │ ...

  3. linux 常用命令(四)——(centos7-centos6.8)Vim安装

    centos是默认安装了vi编辑器的,vim编辑器是没安装或者未完全安装的,个人习惯用vim,所以记录一下vim编辑器的安装: 1.查看vim相关软件信息: yum search vim 2.在线安装 ...

  4. Linux系列教程(四)——Linux常用命令之文件和目录处理命令

    这个系列教程的前面我们讲解了如何安装Linux系统,以及学习Linux系统的一些方法.那么从这篇博客开始,我们就正式进入Linux命令的学习.学习命令,首先要跟大家纠正的一点就是,我们不需要记住每一条 ...

  5. Linux常用命令大全(四)

    Linux常用命令大全(四) shell的特点 ☆组合新命令 ☆提供了文件名扩展字符 ☆直接使用shell的内置命令 ☆灵活地使用数据流 ☆结构化的程序模块 ☆在后台执行命令 ☆可配置的环境 ☆高级的 ...

  6. [工作需求]linux常用命令以及vim常用命令

    一.             Linux 常用命令 mkdir dirname新建文件夹 cd ~ 进入自己的家目录 cd dirname 进入名字为dirname的目录: l 显示当前文件夹下的文件 ...

  7. Linux常用命令整理 - imsoft.cnblogs

    su 用户名 在不退出登陆的情况下,切换到另外一个人的身份如果用户名缺省,则切换到root状态会提示输入密码,密码不回显的. 在用su命令切换root用户时,使用“-”选项,这样可以将root的环境变 ...

  8. Linux常用命令速查备忘

    Linux常用命令速查备忘   PS:备忘而已,详细的命令参数说明自己man 一. 启动,关机,登入,登出相关命令 [login] 登录 [logout] 登出 [exit] 登出 [shutdown ...

  9. [置顶] linux常用命令手册

    前言:整理了一份linux常用命令手册,与大家分享.这是一些比较常用的命令. 我已经整理成一份PDF带书签的手册,可以到CSDN免费下载. 下载地址:http://download.csdn.net/ ...

  10. 转载Alpine Linux常用命令

    Alpine Linux常用命令 目录 一:Alpine Linux开启SSH远程登陆 1.简介: 2.配置 3.配置命令 4.重启服务 二:Alpine Linux源管理 1.简介 2.国内源简介: ...

随机推荐

  1. C#,.Net自动生成大写字母编码

    public static string GetChineseSpell(string strText)        {            int len = strText.Length;   ...

  2. 温故而知新 OOP

    设计原则1: 找出应用中可能需要发生改变的地方,把它们独立出来,不要和那些不需要变化的代码混在一起换句话说,如果每次新的需求一来,都会使某方面的代码发生变化,此时你就可以确定,这部分代码属于不稳定代码 ...

  3. windows bat 批处理 !vm 合并快播文件

    今天简单的写了一个bat批处理文件 用来处理快播的p2p的文件,一般回事这样的目录 你可以下载如下代码 @echo off for /r %%a in (.) do ( echo %%a cd %%a ...

  4. Ueditor 1.4.3.1 使用 ThinkPHP 3.2.3 的上传类进行图片上传

    在 ThinkPHP 3.2.3 中集成百度编辑器最新版 Ueditor 1.4.3.1,同时将编辑器自带的上传类替换成 ThinkPHP 3.2.3 中的上传类. ① 下载编辑器(下载地址:http ...

  5. [转载] Windows + IIS + PHP 配置

    资源下载: 下载windwos版本的PHP:http://windows.php.net/download/ (我下载的是PHP5.4.9_VC9 x86 Non Thread Safe,下载地址:h ...

  6. mysql root 维护

    修改root密码: mysql -uroot -paaamysql> use mysql;mysql> UPDATE user SET password=password("aa ...

  7. 【翻译】How To Tango With Django 1.5.4 第三章

    django基础 3.1测试你的配置 测试你的python版本和你的django版本是否兼容 3.2新建django工程 在dos里面进到你事先新建的code文件夹,然后在执行下列命令新建工程 c:\ ...

  8. Spark中容易遇到的问题

    1. 序列化错误 所有需要传给RDD的变量都要实现java.io.Serializable接口.

  9. Git commit 常见用法

        Git commit git commit 主要是将用户通过git add命令添加到暂存区里的改动给提交到本地的版本库,关于版本库的构成可以查看我先前的笔记. 每次提交我们都会在本地版本库生成 ...

  10. Solr6.2.0 + zookeeper 集群配置

    zookeeper1 : 192.168.1.103zookeeper2 : 192.168.1.104zookeeper3 : 192.168.1.105solr1 : 192.168.1.106s ...