dpkg-reconfigure

dpkg-reconfigure

Debian Linux中重新配制一个已经安装的软件包

补充说明

dpkg-reconfigure命令 是Debian Linux中重新配置已经安装过的软件包,可以将一个或者多个已安装的软件包传递给此指令,它将询问软件初次安装后的配置问题。

当用户需要再次对软件包配置的时候,可以使用dpkg-reconfigure命令来对指定的软件包进行配置。

语法

dpkg-reconfigure(选项)(参数)

选项

-a:重新配置所有的软件包;
-u或--unseen-only:仅显示未提过的问题;
--default-priority:使用默认优先级,而非“低”级;
--force:强制执行操作,需谨慎使用此选项;
--no-reload:不要轻易的重装模板(使用时请慎重考虑);
-f或--frontend:指定 debconf 前端界面;
-p或--priority:指定要显示的问题的最优先级;
--terse:开启简要模式。

参数

软件包名:需要重新配置的已安装的软件包。

实例

用于配置语言:

sudo dpkg-reconfigure locales
2024-08-08    
dpkg-split

dpkg-split

Debian Linux中将大软件包分割成小包

补充说明

dpkg-split命令 用来将Debian Linux中的大软件包分割成小软件包,它还能够将已分割的文件进行合并。

语法

dpkg-split(选项)(参数)

选项

-S:设置分割后的每个小文件最大尺寸(以字节为单位);
-s:分割软件包;
-j<分块文件><分块文件>:把各个分块合并到一起;
-I<分块文件>:显示分块文件的相关信息;
-l:列出不匹配的部分;
-dscard<文件名>:忽略不匹配的部分。

参数

软件包:指定需要分割的“.deb”软件包。

实例

把foo.deb分割出N个大小为460KB的文件:

dpkg-split -s foo.deb

合并分割文件:

dpkg-split -j "foo*"
2024-08-08    
dpkg-statoverride

dpkg-statoverride

Debian Linux中覆盖文件的所有权和模式

补充说明

dpkg-statoverride命令 用于Debian Linux中覆盖文件的所有权和模式,让dpkg于包安装时使得文件所有权与模式失效。

语法

dpkg-statoverride(选项)

选项

-add:为文件添加一个改写;
--remove:为文件删除一个改写;
--list:显示所有改写列表;
--update:如果文件存在,则立刻执行改写操作。

实例

修改文件夹的权限属性:

sudo dpkg-statoverride --update --add nagios nagios 751 /var/lib/nagios3

强制修改文件夹的权限属性:

sudo dpkg-statoverride --force --update --add root sasl 755 /var/spool/postfix/var/run/saslauthd

将文件从数据库中删除:

sudo dpkg-statoverride --remove /usr/bin/wall
2024-08-08    
dpkg-trigger

dpkg-trigger

Debian Linux下的软件包触发器

补充说明

dpkg-trigger命令 是Debian Linux下的软件包触发器。

语法

dpkg-trigger(选项)(参数)

选项

--check-supported:检查运行的dpkg是否支持触发器,返回值为0,则支持触发器。
--help:显示帮助信息;
--admindir=<目录>:设置dpkg数据库所在的目录;
--no-act:仅用于测试,不执行任何操作;
--by-package=<软件包>:覆盖触发器等待者。

参数

触发器名:指定触发器名称。

2024-08-08    
dris

dris

显示和清空目录堆栈中的内容

补充说明

dris命令 用于显示和清空目录堆栈中的内容。

语法

dris(选项)

选项

+n:显示从左边算起第n笔的目录;
-n:显示从右边算起第n笔的目录;
-l:显示目录完整的记录。
2024-08-08    
dstat

dstat

通用的系统资源统计工具

补充说明

dstat命令 是一个用来替换vmstat、iostat、netstat、nfsstat和ifstat这些命令的工具,是一个全能系统信息统计工具。与sysstat相比,dstat拥有一个彩色的界面,在手动观察性能状况时,数据比较显眼容易观察;而且dstat支持即时刷新,譬如输入dstat 3即每三秒收集一次,但最新的数据都会每秒刷新显示。和sysstat相同的是,dstat也可以收集指定的性能资源,譬如dstat -c即显示CPU的使用情况。

下载安装

方法一

yum install -y dstat

方法二

官网下载地址:http://dag.wieers.com/rpm/packages/dstat

wget http://dag.wieers.com/rpm/packages/dstat/dstat-0.6.7-1.rh7.rf.noarch.rpm
rpm -ivh dstat-0.6.7-1.rh7.rf.noarch.rpm

使用说明

安装完后就可以使用了,dstat非常强大,可以实时的监控cpu、磁盘、网络、IO、内存等使用情况。

直接使用dstat,默认使用的是-cdngy参数,分别显示cpu、disk、net、page、system信息,默认是1s显示一条信息。可以在最后指定显示一条信息的时间间隔,如dstat 5是没5s显示一条,dstat 5 10表示没5s显示一条,一共显示10条。

[root@iZ23uulau1tZ ~]# dstat
----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--
usr sys idl wai hiq siq| read  writ| recv  send|  in   out | int   csw
  0   0  99   0   0   0|7706B  164k|   0     0 |   0     0 | 189   225
  0   0 100   0   0   0|   0     0 |4436B  826B|   0     0 | 195   248
  1   0  99   0   0   0|   0     0 |4744B  346B|   0     0 | 203   242
  0   0 100   0   0   0|   0     0 |5080B  346B|   0     0 | 206   242
  0   1  99   0   0   0|   0     0 |5458B  444B|   0     0 | 214   244
  1   0  99   0   0   0|   0     0 |5080B  346B|   0     0 | 208   242

下面对显示出来的部分信息作一些说明:

2024-08-08    
du

du

显示每个文件和目录的磁盘使用空间

补充说明

du命令 也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。

语法

du [选项][文件]

选项

-a, --all                              显示目录中个别文件的大小。
-B, --block-size=大小                  使用指定字节数的块
-b, --bytes                            显示目录或文件大小时,以byte为单位。
-c, --total                            除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
-D, --dereference-args                 显示指定符号链接的源文件大小。
-H, --si                               与-h参数相同,但是K,M,G是以1000为换算单位。
-h, --human-readable                   以K,M,G为单位,提高信息的可读性。
-k, --kilobytes                        以KB(1024bytes)为单位输出。
-l, --count-links                      重复计算硬件链接的文件。
-m, --megabytes                        以MB为单位输出。
-L<符号链接>, --dereference<符号链接>  显示选项中所指定符号链接的源文件大小。
-P, --no-dereference                   不跟随任何符号链接(默认)
-0, --null                             将每个空行视作0 字节而非换行符
-S, --separate-dirs                    显示个别目录的大小时,并不含其子目录的大小。
-s, --summarize                        仅显示总计,只列出最后加总的值。
-x, --one-file-xystem                  以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-X<文件>, --exclude-from=<文件>        在<文件>指定目录或文件。
--apparent-size                        显示表面用量,而并非是磁盘用量;虽然表面用量通常会小一些,但有时它会因为稀疏文件间的"洞"、内部碎片、非直接引用的块等原因而变大。
--files0-from=F                        计算文件F中以NUL结尾的文件名对应占用的磁盘空间如果F的值是"-",则从标准输入读入文件名
--exclude=<目录或文件>                 略过指定的目录或文件。
--max-depth=N                          显示目录总计(与--all 一起使用计算文件)当N为指定数值时计算深度为N,等于0时等同--summarize
--si                                   类似-h,但在计算时使用1000 为基底而非1024
--time                                 显示目录或该目录子目录下所有文件的最后修改时间
--time=WORD                            显示WORD时间,而非修改时间:atime,access,use,ctime 或status
--time-style=样式                      按照指定样式显示时间(样式解释规则同"date"命令):full-iso,long-iso,iso,+FORMAT
--help                                 显示此帮助信息并退出
--version                              显示版本信息并退出

实例

文件从大到小排序

2024-08-08    
dump

dump

用于备份ext2或者ext3文件系统

补充说明

dump命令 用于备份ext2或者ext3文件系统。可将目录或整个文件系统备份至指定的设备,或备份成一个大文件。

语法

dump(选项)(参数)

选项

-0123456789:备份的层级;
-b<区块大小>:指定区块的大小,单位为KB;
-B<区块数目>:指定备份卷册的区块数目;
-c:修改备份磁带预设的密度与容量;
-d<密度>:设置磁带的密度。单位为BPI;
-f<设备名称>:指定备份设备;
-h<层级>:当备份层级等于或大于指定的层级时,将不备份用户标示为“nodump”的文件;
-n:当备份工作需要管理员介入时,向所有“operator”群组中的使用者发出通知;
-s<磁带长度>:备份磁带的长度,单位为英尺;
-T<日期>:指定备份的时间与日期;
-u:备份完毕后,在/etc/dumpdates中记录备份的文件系统、层级、日期与时间等;
-w:与-W类似,但仅显示需要备份的文件;
-W:显示需要备份的文件及其最后一次备份的层级、时间与日期。

参数

备份源:指定要备份的文件、目录或者文件系统。

实例

/home目录所有内容备份到/tmp/homeback.bak文件中,备份层级为0并在/etc/dumpdates中记录相关信息:

‍dump -0u -f /tmp/homeback.bak /home

/home目录所有内容备份到/tmp/homeback.bak文件中,备份层级为1(只备份上次使用层次0备份后发生过改变的数据)并在/etc/dumpdates中记录相关信息:

dump -1u -f /tmp/homeback.bak /home

通过dump命令的备份层级,可实现完整+增量备份、完整+差异备份,在配合crontab可以实现无人值守备份。

2024-08-08    
e2fsck

e2fsck

用于检查第二扩展文件系统的完整性

补充说明

e2fsck命令 用于检查第二扩展文件系统的完整性,通过适当的选项可以尝试修复出现的错误。

e2fsck执行后的传回值及代表意义如下:

  • 0 没有任何错误发生。
  • 1 文件系统发生错误,并且已经修正。
  • 2 文件系统发生错误,并且已经修正。
  • 4 文件系统发生错误,但没有修正。
  • 8 运作时发生错误。
  • 16 使用的语法发生错误。
  • 128 共享的函数库发生错误。

语法

e2fsck(选项)(参数)

选项

-a:不询问使用者意见,便自动修复文件系统;
-b<superblock>:指定superblock,而不使用预设的superblock;
-B<区块大小>:指定区块的大小,单位为字节;
-c:一并执行badblocks,以标示损坏的区块;
-C:将检查过程的信息完整记录在file descriptor中,使得整个检查过程都能完整监控;
-d:显示排错信息;
-f:即使文件系统没有错误迹象,仍强制地检查正确性;
-F:执行前先清除设备的缓冲区;
-l<文件>:将文件中指定的区块加到损坏区块列表;
-L<文件>:先清除损坏区块列表,再将文件中指定的区块加到损坏区块列表。因此损坏区块列表的区块跟文件中指定的区块是一样的;
-n:以只读模式开启文件系统,并采取非互动方式执行,所有的问题对话均设置以"no"回答;
-p:不询问使用者意见,便自动修复文件系统;
-r:此参数只为了兼容性而存在,并无实际作用;
-s:如果文件系统的字节顺序不适当,就交换字节顺序,否则不做任何动作;
-S:不管文件系统的字节顺序,一律交换字节顺序;
-t:显示时间信息;
-v:执行时显示详细的信息;
-V:显示版本信息;
-y:采取非互动方式执行,所有的问题均设置以"yes"回答。

参数

文件系统或者分区:指定文件系统或者分区所对应的设备文件名。

实例

检查/dev/sda1是否有问题,如发现问题便自动修复:

e2fsck -a -y /dev/sda1

执行e2fsck或fsck前请先umount partition,否则有机会令档案系统毁损。如果需要对根目录/进行检查及修复,便需要进入singal user mode执行。

2024-08-08    
e2label

e2label

设置第二扩展文件系统的卷标

补充说明

e2label命令 用来设置第二扩展文件系统的卷标。

语法

e2label(参数)

参数

  • 文件系统:指定文件系统所对应的设备文件名;
  • 新卷标:为文件系统指定新卷标。

实例

许多用了多年Linux的人可能也没有用过e2label命令。但是这个命令相当有效。在介绍它之前,我们先看看/etc/fstab文件:

label=//ext3 defaults 1 1
/dev/hda7 /usr ext3 defaults 1 1

第二行的意思很容易懂,就是把/dev/hda7 mount到/usr上。第一行没有指明分区,意思是把label(卷标)为/ 的分区mount到/上。这样写的好处在于即使如果把硬盘从主板上的ide0(hda) 换到ide2(hdc)上,系统仍然可以自动挂载正确的分区。通常Linux安装的时候已经自动指定了卷标。如果是手动增加的新分区,可以用下边的命令为 其指定卷标:

e2label /dev/hdax /new
mkdir /new

然后在/etc/fstab里加入:

label=/new  /new  ext3  defaults  1 1

下次重新起动机器的时候,就会把卷标为/new的分区挂接到/new上。

2024-08-08