位置: IT常识 - 正文

Linux中使用mdadm命令来操作RAID的基本教程(linux中使用less命令分屏查看)

编辑:rootadmin
这篇文章主要介绍了Linux中使用mdadm命令来操作RAID的基本教程,包括mdadm命令的常用参数与对RAID的管理和查询等基础操作,需要的朋友可以参考下... 16-03-04

推荐整理分享Linux中使用mdadm命令来操作RAID的基本教程(linux中使用less命令分屏查看),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux中使用less命令分屏查看,linux中使用grep命令显示包含特殊字符的行,linux中使用buddy,linux中使用mkdir命令创建新的目录时,linux中使用buddy,linux中使用mkdir命令创建新的目录时,linux中使用什么命令可以把两个文件合并,linux中使用less命令分屏查看,内容如对您有帮助,希望把文章链接给更多的朋友!

mdadm 用于建设,管理和监控RAID阵列

用法:

mdadm --create device options... 用未使用的设备,创建raid选项,mdadm --assemble device options... 合并先前创建的raid阵列。mdadm --build device options... 创建或合并没有元数据的一个raid。mdadm --manage device options... 对现有阵列进行更改mdadm --misc options... devices 报告或修改各种MD相关设备的。mdadm --grow options device 调整以激活的raid阵列mdadm --incremental device 从一个raid中,添加/删除设备mdadm --monitor options... 监视一个或多个raid阵列的变化mdadm device options... --manage的简写

mdadm --create 主要参数

--auto=yes :决定建立后面接的软体磁盘阵列设备,亦即/ dev/md0的,/ dev/md1上... --raid-devices=N :使用几个磁盘 (partition) 作为磁盘阵列的设备 --spare-devices=N :使用几个磁盘作用磁盘阵列的备用设备 --level=[015] :设置磁盘阵列的等级,常用0,1,5

mdadm --manage 主要参数

--add :会将后面的设备加入到这个MD中! --remove :会将后面的设备由这个MD中移除 --fail :会将后面的设备设定成为出错的状态

一、在linux系统中目前以MD(Multiple Devices)虚拟块设备的方式实现软件RAID,利用多个底层的块设备虚拟出一个新的虚拟设备,并且利用条带化(stripping)技术将数据块均匀分布到多个磁盘上来提高虚拟设备的读写性能,利用不同的数据冗祭算法来保护用户数据不会因为某个块设备的故障而完全丢失,而且还能在设备被替换后将丢失的数据恢复到新的设备上.目前MD支持linear,multipath,raid0(stripping),raid1(mirror),raid4,raid5,raid6,raid10等不同的冗余级别和级成方式,当然也能支持多个RAID陈列的层叠组成raid1 0,raid5 1等类型的陈列,本文主要讲解用户层mdadm如何管理软件RAID及使用中经常遇到的问题及解决办法.现流行的系统中一般已经将MD驱动模块直接编译到内核中或编译为可动态加载的驱动模块,我们可以在机器启动后通过cat /proc/mdstat看内核是否已经加载MD驱动或者cat /proc/devices是否有md块设备,并且可以使用lsmod看MD是否可以模块加载到系统中.

代码如下:[root@testggv ~]# cat /proc/mdstatPersonalities :unused devices:[root@testggv ~]#[root@testggv ~]# cat /proc/devices | grep md1 ramdisk9 md254 mdp[root@testggv ~]#mdadm --version[root@testggv ~]# mdadm --versionmdadm-v2.5.4-13 October 2006[root@testggv ~]#

二、mdadm管理软raid陈列mdadm程序是一个独立的程序,能完成所有的软件raid管理功能,主要有7种使用模式:Create使用空闲的设备创建一个新的阵列,每个设备具有元数据块Assemble将原来属于一个阵列的每个块设备组装为阵列Build创建或组装不需要元数据的阵列,每个设备没有元数据块Manage管理已经存储阵列中的设备,比如增加热备磁盘或者设置某个磁盘失效,然后从阵列中删除这个磁盘Misc报告或者修改阵列中相关设备的信息,比如查询阵列或者设备的状态信息Grow改变阵列中每个设备被使用的容量或阵列中的设备的数目Monitor监控一个或多个阵列,上报指定的事件如果MD驱动被编译到内核中,当内核调用执行MD驱动时,会自动查找分区为FD(linux raid autodetect格式的磁盘。所以一般会使用fdisk工具将HD磁盘或者SD磁盘分区,再设置为FD的磁盘。

代码如下:[root@testggv ~]# fdisk /dev/hdcThe number of cylinders for this disk is set to 25232.There is nothing wrong with that, but this is larger than 1024,and could in certain setups cause problems with:1) software that runs at boot time (e.g., old versions of LILO)2) booting and partitioning software from other OSs(e.g., DOS FDISK, OS/2 FDISK)Command (m for help): nCommand actione extendedp primary partition (1-4)pPartition number (1-4): 1First cylinder (1-25232, default 1):Using default value 1Last cylinder or size or sizeM or sizeK (1-25232, default 25232):Using default value 25232Command (m for help): tSelected partition 1Hex code (type L to list codes): fdChanged system type of partition 1 to fd (Linux raid autodetect)Command (m for help): wThe partition table has been altered!Calling ioctl() to re-read partition table.WARNING: Re-reading the partition table failed with error 16: Device orbusy.The kernel still uses the old table.The new table will be used at the next reboot.Syncing disks.[root@testggv ~]#

如果MD驱动是模块形式加载,需要在系统运行时由用户层脚本控制RAID陈列启动运行,如在FedoraCore系统中在/etc/rc.d/rc.sysinit文件中有启动软RAID阵列的指令,若RAID的配置文件mdadm.conf存在,则调用mdadm检查配置文件里的选项,然后启动RAID阵列。

代码如下:echo "raidautorun /dev/md0" | nash --quietif [ -f /etc/mdadm.conf]; then/sbin/mdadm -A -s

fi -A:指装载一个已存在的陈列 -s: 指查找mdadm.conf文件中的配置信息。手工停止盘陈:

代码如下:#mdadm -S /dev/md0

创建新的陈列mdadm使用--create(或其缩写-C)参数来创建新的陈列并且将一些重要阵列的标识信息作为元数据可以写在每一个底层设备的指定区间--level(或者其缩写-l)表示阵列的RAID级别--chunk(或者其缩写-c)表示每个条带单元的大小,以KB为单位,默认为64KB,条带单元的大小配置对不同负载下的阵列读写性能有很大影响--raid-devices(或者其缩写-n)表示阵列中活跃的设备个数--spare-devices(或者其缩写-x)表示阵列中热备盘的个数,一旦阵列中的某个磁盘失效,MD内核驱动程序自动用将热备磁盘加入到阵列,然后重构丢失磁盘上的数据到热备磁盘上。

创建一个RAID 0设备:

代码如下:mdadm --create /dev/md0 --level=0 --chunk=32 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1

创建一个raid 1设备:

代码如下:mdadm --create /dev/md0 --level=1 --chunk=128 --raid-devices=2 --spare-devices=1 /dev/sdb1 /dev/sdc1 /dev/sdd1Linux中使用mdadm命令来操作RAID的基本教程(linux中使用less命令分屏查看)

创建一个RAID5设备:

代码如下:mdadm --create /dev/md0 --level=5 --raid-devices=5 /dev/sd[c-g]1 --spare-devices=1 /dev/sdb1

创建一个RAID 10设备:

代码如下:mdadm -C /dev/md0 -l10 -n6 /dev/sd[b-g] -x1 /dev/sdh

创建一个RAID1 0设备:

代码如下:mdadm -C /dev/md0 -l1 -n2 /dev/sdb /dev/sdcmdadm -C /dev/md1 -l1 -n2 /dev/sdd /dev/sdemdadm -C /dev/md2 -l1 -n2 /dev/sdf /dev/sdgmdadm -C /dev/md3 -l0 -n3 /dev/md0 /dev/md1 /dev/md2

初始化的时间长短和磁盘阵列自身性能以及读写的应用负载相关,使用cat /proc/mdstat信息查询RAID阵列当前重构的速度和预期的完成时间。

代码如下:cat /proc/mdstat[root@fc5 mdadm-2.6.3]# cat /proc/mdstatPersonalities : [raid10]md0 : active raid10 sdh[6](S) sdg[5] sdf[4] sde[3] sdd[2] sdc[1] sdb[0]3145536 blocks 64K chunks 2 near-copies [6/6] [UUUUUU][===>...........] resync = 15.3% (483072/3145536) finish=0.3min speed=120768K/secunused devices:[root@fc5 mdadm-2.6.3]# cat /proc/mdstatPersonalities : [raid10]md0 : active raid10 sdh[6](S) sdg[5] sdf[4] sde[3] sdd[2] sdc[1] sdb[0]3145536 blocks 64K chunks 2 near-copies [6/6] [UUUUUU]unused devices:

使用陈列:MD设备可以像普通块设备那样直接读写,也可以做文件系统格式化。

代码如下:#mke2fs -j /dev/md0mkdir -p /mnt/md-test#mount /dev/md0 /mnt/md-test

停止正在运行的陈列:当阵列没有文件系统或者其他存储应用以及高级设备使用的话,可以使用--stop(或者其缩写-S)停止阵列;如果命令返回设备或者资源忙类型的错误,说明/dev/md0正在被上层应用使用,暂时不能停止,必须要首先停止上层的应用,这样也能保证阵列上数据的一致性。

代码如下:[root@fc5 mdadm-2.6.3]# ./mdadm --stop /dev/md0mdadm: fail to stop array /dev/md0: Device or resource busy[root@fc5 mdadm-2.6.3]# umount /dev/md0[root@fc5 mdadm-2.6.3]#./mdadm --stop /dev/md0

mdadm: stopped /dev/md02.3 组装曾创建过的阵列模式--assemble或者其缩写(-A)主要是检查底层设备的元数据信息,然后再组装为活跃的阵列。如果我们已经知道阵列由那些设备组成,可以指定使用那些设备来启动阵列。

代码如下:[root@fc5 mdadm-2.6.3]# ./mdadm -A /dev/md0 /dev/sd[b-h]

mdadm: /dev/md0 has been started with 6 drives and 1 spare.如果有配置文件(/etc/mdadm.conf)可使用命令mdadm -As /dev/md0。mdadm先检查mdadm.conf中的DEVICE信息,然后从每个设备上读取元数据信息,并检查是否和ARRAY信息一致,如果信息一致则启动阵列。如果没有配置/etc/mdadm.conf文件,而且又不知道阵列由那些磁盘组成,则可以使用命令--examine(或者其缩写-E)来检测当前的块设备上是否有阵列的元数据信息。[root@fc5 mdadm-2.6.3]# ./mdadm -E /dev/sdi

代码如下:mdadm: No md superblock detected on /dev/sdi.[root@fc5 mdadm-2.6.3]# ./mdadm -E /dev/sdb/dev/sdb:Magic : a92b4efcVersion : 00.90.00UUID : 0cabc5e5:842d4baa:e3f6261b:a17a477aCreation Time : Sun Aug 22 17:49:53 1999Raid Level : raid10Used Dev Size : 1048512 (1024.11 MiB 1073.68 MB)Array Size : 3145536 (3.00 GiB 3.22 GB)Raid Devices : 6Total Devices : 7Preferred Minor : 0Update Time : Sun Aug 22 18:05:56 1999State : cleanActive Devices : 6Working Devices : 7Failed Devices : 0Spare Devices : 1Checksum : 2f056516-correctEvents : 0.4Layout : near=2, far=1Chunk Size : 64KNumber Major Minor RaidDevice Statethis 0 8 16 0 active sync /dev/sdb0 0 8 16 0 active sync /dev/sdb1 1 8 32 1 active sync /dev/sdc2 2 8 48 2 active sync /dev/sdd3 3 8 64 3 active sync /dev/sde4 4 8 80 4 active sync /dev/sdf5 5 8 96 5 active sync /dev/sdg6 6 8 112 6 spare /dev/sdh

从上面命令结果可以找到阵列的唯一标识UUID和阵列包含的设备名字,然后再使用上面的命令来组装阵列,也可以使用UUID标识来组装阵列。没有一致的元数据的信息设备(例如/dev/sda和/dev/sda1等)mdadm程序会自动跳过。

代码如下:[root@fc5 mdadm-2.6.3]# ./mdadm -Av --uuid=0cabc5e5:842d4baa:e3f6261b:a17a477a/dev/md0 /dev/sd*mdadm: looking for devices for /dev/md0mdadm: no recogniseable superblock on /dev/sdamdadm: /dev/sda has wrong uuid.mdadm: no recogniseable superblock on /dev/sda1mdadm: /dev/sda1 has wrong uuid.mdadm: no RAID superblock on /dev/sdimdadm: /dev/sdi has wrong uuid.mdadm: /dev/sdi1 has wrong uuid.mdadm: no RAID superblock on /dev/sdjmdadm: /dev/sdj has wrong uuid.mdadm: /dev/sdj1 has wrong uuid.mdadm: no RAID superblock on /dev/sdkmdadm: /dev/sdk has wrong uuid.mdadm: /dev/sdk1 has wrong uuid.mdadm: /dev/sdb is identified as a member of /dev/md0, slot 0.mdadm: /dev/sdc is identified as a member of /dev/md0, slot 1.mdadm: /dev/sdd is identified as a member of /dev/md0, slot 2.mdadm: /dev/sde is identified as a member of /dev/md0, slot 3.mdadm: /dev/sdf is identified as a member of /dev/md0, slot 4.mdadm: /dev/sdg is identified as a member of /dev/md0, slot 5.mdadm: /dev/sdh is identified as a member of /dev/md0, slot 6.mdadm: added /dev/sdc to /dev/md0 as 1mdadm: added /dev/sdd to /dev/md0 as 2mdadm: added /dev/sde to /dev/md0 as 3mdadm: added /dev/sdf to /dev/md0 as 4mdadm: added /dev/sdg to /dev/md0 as 5mdadm: added /dev/sdh to /dev/md0 as 6mdadm: added /dev/sdb to /dev/md0 as 0mdadm: /dev/md0 has been started with 6 drives and 1 spare.

配置文件:/etc/mdadm.conf作为默认的配置文件,主要作用是方便跟踪软RAID的配置,尤其是可以配置监视和事件上报选项。Assemble命令也可以使用--config(或者其缩写-c)来指定配置文件。我们通常可以如下命令来建#立配置文件

代码如下:#echo DEVICE /dev/sdc1 /dev/sdb1 /dev/sdd1 > /etc/mdadm.conf#mdadm --detail --scan >> /etc/mdadm.conf

使用配置文件启动阵列时,mdadm会查询配置文件中的设备和阵列内容,然后启动运行所有能运行RAID阵列。如果指定阵列的设备名字,则只启动对应的阵列。

代码如下:[root@fc5 mdadm-2.6.3]# ./mdadm -Asmdadm: /dev/md1 has been started with 3 drives.mdadm: /dev/md0 has been started with 6 drives and 1 spare.[root@fc5 mdadm-2.6.3]# cat /proc/mdstatPersonalities : [raid0] [raid10]md0 : active raid10 sdb[0] sdh[6](S) sdg[5] sdf[4] sde[3] sdd[2] sdc[1]3145536 blocks 64K chunks 2 near-copies [6/6] [UUUUUU]md1 : active raid0 sdi1[0] sdk1[2] sdj1[1]7337664 blocks 32k chunksunused devices:[root@fc5 mdadm-2.6.3]# ./mdadm -S /dev/md0 /dev/md1mdadm: stopped /dev/md0mdadm: stopped /dev/md1[root@fc5 mdadm-2.6.3]# ./mdadm -As /dev/md0mdadm: /dev/md0 has been started with 6 drives and 1 spare.[root@fc5 mdadm-2.6.3]# cat /proc/mdstatPersonalities : [raid0] [raid10]md0 : active raid10 sdb[0] sdh[6](S) sdg[5] sdf[4] sde[3] sdd[2] sdc[1]3145536 blocks 64K chunks 2 near-copies [6/6] [UUUUUU]unused devices:

查询阵列的状态我们可以通过cat /proc/mdstat信息查看所有运行的RAID阵列的状态,在第一行中首先是MD的设备名,active和inactive选项表示阵列是否能读写,接着是阵列的RAID级别,后面是属于阵列的块设备,方括号[]里的数字表示设备在阵列中的序号,(S)表示其是热备盘,(F)表示这个磁盘是faulty状态。在第二行中首先是阵列的大小,单位是KB,接着是chunk-size的大小,然后是layout类型,不同RAID级别的layout类型不同,[6/6]和[UUUUUU]表示阵列有6个磁盘并且6个磁盘都是正常运行的,而[5/6]和[_UUUUU] 表示阵列有6个磁盘中5个都是正常运行的,下划线对应的那个位置的磁盘是faulty状态的。

代码如下:[root@fc5 mdadm-2.6.3]# cat /proc/mdstatPersonalities : [raid6] [raid5] [raid4] [raid1]md0 : active raid5 sdh[6](S) sdg[5] sdf[4] sde[3] sdd[2] sdc[1] sdb[0]5242560 blocks level 5, 64k chunk, algorithm 2 [6/6] [UUUUUU]unused devices:[root@fc5 mdadm-2.6.3]# ./mdadm /dev/md0 -f /dev/sdh /dev/sdbmdadm: set /dev/sdh faulty in /dev/md0mdadm: set /dev/sdb faulty in /dev/md0[root@fc5 mdadm-2.6.3]# cat /proc/mdstatPersonalities : [raid6] [raid5] [raid4] [raid1]md0 : active raid5 sdh[6](F) sdg[5] sdf[4] sde[3] sdd[2] sdc[1] sdb[7](F)5242560 blocks level 5, 64k chunk, algorithm 2 [6/5] [_UUUUU]unused devices:

我们也可以通过mdadm命令查看指定阵列的简要信息(使用--query或者其缩写-Q)和详细信息(使用--detail或者其缩写-D) 详细信息包括RAID的版本、创建的时间、RAID级别、阵列容量、可用空间、设备数量、超级块状态、更新时间、UUID信息、各个设备的状态、RAID算法级别类型和布局方式以及块大小等信息。设备状态信息分为active, sync, spare, faulty, rebuilding, removing等等。

代码如下:root@fc5 mdadm-2.6.3]# ./mdadm --query /dev/md0/dev/md0: 2.100GiB raid10 6 devices, 1 spare. Use mdadm --detail for more detail.[root@fc5 mdadm-2.6.3]# ./mdadm --detail /dev/md0/dev/md0:Version : 00.90.03Creation Time : Sun Aug 22 17:49:53 1999Raid Level : raid10Array Size : 3145536 (3.00 GiB 3.22 GB)Used Dev Size : 1048512 (1024.11 MiB 1073.68 MB)Raid Devices : 6Total Devices : 7Preferred Minor : 0Persistence : Superblock is persistentUpdate Time : Sun Aug 22 21:55:02 1999State : cleanActive Devices : 6Working Devices : 7Failed Devices : 0Spare Devices : 1Layout : near=2, far=1Chunk Size : 64KUUID : 0cabc5e5:842d4baa:e3f6261b:a17a477aEvents : 0.122Number Major Minor RaidDevice State0 8 16 0 active sync /dev/sdb1 8 32 1 active sync /dev/sdc2 8 48 2 active sync /dev/sdd3 8 64 3 active sync /dev/sde4 8 80 4 active sync /dev/sdf5 8 96 5 active sync /dev/sdg6 8 112-spare /dev/sdh

管理阵列mdadm可以在Manage模式下,对运行中的阵列进行添加及删除磁盘。常用于标识failed磁盘,增加spare(热备)磁盘,以及从阵列中移走已经失效的磁盘等等。使用--fail(或者其缩写-f)指定磁盘损坏。

代码如下:[root@fc5 mdadm-2.6.3]# ./mdadm /dev/md0 --fail /dev/sdbmdadm: set /dev/sdb faulty in /dev/md0

当磁盘已经损坏时,使用--remove(或者其缩写--f)参数将这个磁盘从磁盘阵列中移走;但如果设备还正在被阵列使用,则不能从阵列中移走。

代码如下:[root@fc5 mdadm-2.6.3]# ./mdadm /dev/md0 --remove /dev/sdbmdadm: hot removed /dev/sdb[root@fc5 mdadm-2.6.3]# ./mdadm /dev/md0 --remove /dev/sdemdadm: hot remove failed for /dev/sde: Device or resource busy

如果阵列带有spare磁盘,那么自动将损坏磁盘上的数据重构到新的spare磁盘上;

代码如下:[root@fc5 mdadm-2.6.3]# ./mdadm -f /dev/md0 /dev/sdb ; cat /proc/mdstatmdadm: set /dev/sdb faulty in /dev/md0Personalities : [raid0] [raid10]md0 : active raid10 sdh[6] sdb[7](F) sdc[0] sdg[5] sdf[4] sde[3] sdd[2]3145536 blocks 64K chunks 2 near-copies [6/5] [U_UUUU][=======>........] recovery = 35.6% (373888/1048512) finish=0.1min speed=93472K/secunused devices:

如果阵列没有热备磁盘,可以使用--add(或者其缩写-a)参数增加热备磁盘

代码如下:[root@fc5 mdadm-2.6.3]# ./mdadm /dev/md0 --add /dev/sdhmdadm: added /dev/sdh

监控阵列可以使用mdadm对RAID阵列进行监控,监控程序定时查询指定的事件是否发生,然后根据配置来妥善处理。例如当阵列中的磁盘设备出现问题的时候,可以发送邮件给管理员;或者当磁盘出现问题的时候由回调程序来进行自动的磁盘替换,所有监控事件都可以记录到系统日志中。目前mdadm支持的事件有RebuildStarted, RebuildNN(NN is 20, 40, 60, or 80), RebuildFinished, Fail,FailSpare,SpareActive,NewArray, DegradedArray, MoveSpare, SparesMissing, TestMessage。如果配置每300秒mdadm监控进程查询MD设备一次,当阵列出现错误,会发送邮件给指定的用户,执行事件处理的程序并且记录上报的事件到系统的日志文件。使用--daemonise参数(或者其缩写-f)使程序持续在后台运行。如果要发送邮件需要sendmail程序运行,当邮件地址被配置为外网地址应先测试是否能发送出去。

代码如下:[root@fc5 mdadm-2.6.3]#./mdadm --monitor --mail=root@localhost --program=/root/md.sh--syslog --delay=300 /dev/md0 --daemonise
本文链接地址:https://www.jiuchutong.com/zhishi/275460.html 转载请保留说明!

上一篇:win10管理日志怎么导出(win10系统日志在哪个文件夹)

下一篇:桌面右键个性化无法打开设置怎么办(桌面右键个性化没有关联的程序)

  • 交管12123预约成功如何取消(交管12123预约成功可以取消吗)

    交管12123预约成功如何取消(交管12123预约成功可以取消吗)

  • 手机qq特别关心提示音怎么关(手机qq特别关心查询)

    手机qq特别关心提示音怎么关(手机qq特别关心查询)

  • 苹果电池85%可以换了嘛(苹果电池85可以换电池吗)

    苹果电池85%可以换了嘛(苹果电池85可以换电池吗)

  • qq情侣空间error什么意思(Qq情侣空间进不去)

    qq情侣空间error什么意思(Qq情侣空间进不去)

  • 数据传输的可靠性指标是(数据传输的可靠性是由哪一层)

    数据传输的可靠性指标是(数据传输的可靠性是由哪一层)

  • 苹果耳机补配一只后怎么连接(苹果耳机补配一只后怎么更新固件)

    苹果耳机补配一只后怎么连接(苹果耳机补配一只后怎么更新固件)

  • 小米手环二次绑定手机(小米手环二次绑定手机需要解绑)

    小米手环二次绑定手机(小米手环二次绑定手机需要解绑)

  • mp3mp4mp5mp6有什么区别(mp3mp4p5有什么区别)

    mp3mp4mp5mp6有什么区别(mp3mp4p5有什么区别)

  • 65w充电器充45w电脑有影响吗(65瓦和45瓦充电器有什么区别)

    65w充电器充45w电脑有影响吗(65瓦和45瓦充电器有什么区别)

  • qq空间亲密度在哪看(qq空间亲密度在意我的人)

    qq空间亲密度在哪看(qq空间亲密度在意我的人)

  • oppoa11x是否有nfc功能 (oppoa11有没有nfc这个功能)

    oppoa11x是否有nfc功能 (oppoa11有没有nfc这个功能)

  • 华为mate30pro发布时间(华为mate30pro发布会)

    华为mate30pro发布时间(华为mate30pro发布会)

  • ios13降级通道关了咋办(iphone关闭降级通道)

    ios13降级通道关了咋办(iphone关闭降级通道)

  • 苹果11发短信怎么切换卡(苹果11发短信怎么显示已读)

    苹果11发短信怎么切换卡(苹果11发短信怎么显示已读)

  • oppor11通话声音小怎么办(oppor11通话声音小解决方法)

    oppor11通话声音小怎么办(oppor11通话声音小解决方法)

  • 苹果x备忘录怎么改名字(苹果x备忘录怎么设置密码)

    苹果x备忘录怎么改名字(苹果x备忘录怎么设置密码)

  • 苹果11使用什么基带(苹果11使用什么卡信号好一点)

    苹果11使用什么基带(苹果11使用什么卡信号好一点)

  • 顺风车几号恢复(顺风车什么时候可以恢复正常)

    顺风车几号恢复(顺风车什么时候可以恢复正常)

  • 2016版ppt剪贴画在哪(ppt2013剪贴画)

    2016版ppt剪贴画在哪(ppt2013剪贴画)

  • 苹果手机时间限额怎么取消(苹果手机时间限额如何解除限制)

    苹果手机时间限额怎么取消(苹果手机时间限额如何解除限制)

  • 相互保多少种疾病(相互保哪些疾病)

    相互保多少种疾病(相互保哪些疾病)

  • 8p能无线充电吗(8p手机能无线充电么)

    8p能无线充电吗(8p手机能无线充电么)

  • 电脑怎么下载爱思助手(电脑怎么下载爱奇艺软件到桌面)

    电脑怎么下载爱思助手(电脑怎么下载爱奇艺软件到桌面)

  • Linux中的wget网络下载命令使用全解(linux wget命令详解)

    Linux中的wget网络下载命令使用全解(linux wget命令详解)

  • 小规模纳税人申请一般纳税人条件
  • 运输途中合理的消耗损耗
  • 小规模出售固定资产税率
  • 餐饮业购买的油类有哪些
  • 财务报表分析五种方法
  • 附加税已扣款还要季度申报吗
  • 个税抵扣租房能抵扣多少
  • 企业销售使用过的固定资产如何开票
  • 调增企业所得税怎么算
  • 水利建设专项收入怎么报税
  • 固定资产折旧属于制造费用吗
  • 行政机关作出下列行为属于行政复议的范围
  • 对外支付佣金代扣代缴
  • 一般纳税人开培训发票税率是多少
  • 奖金用现金发放违法吗
  • 购买的样品怎么做账
  • 已进行账务处理怎么处理
  • mac电脑因问题而重新启动
  • 华为手机找回删除的通讯录号码
  • 鸿蒙3.0手机适配名单荣耀
  • 王者荣耀中雅典娜的战争女神多少钱
  • 生产型企业原材料运费入库单怎么填
  • 个人所得税计提缴纳会计分录
  • kb4592438安装失败
  • PHP:stream_register_wrapper()的用法_Stream函数
  • 委托银行收款属于什么科目
  • php cmd
  • php购物车订单处理
  • 企业要普通发票有什么用
  • 商场代收款发票图片
  • 职工教育经费可以有余额吗?
  • 视觉slam十四讲笔记
  • wrap激活
  • 销售建材行业
  • 个体工商户缴税吗?
  • 计算机网络面试八股文
  • 资质使用费怎么收
  • 代扣代缴手续费返还账务处理
  • mongodb常用语句
  • mongodb配置远程访问
  • php的默认网站目录是
  • 已经抵扣的发票红字信息表怎么开
  • 金融商品转让如何确定销售额
  • sql2000日志清理
  • 一般劳务报酬个人所得税退税吗
  • 金税四期 税友
  • 以前年度损益调整结转到本年利润吗
  • 个体工商户税务注销流程
  • 进项税额转出再转入
  • 公司预支款应注意什么
  • 私营企业员工享受探亲假吗
  • 房租费一次不给完怎么写收条
  • 调整以前年度所得
  • 投资和注册资本
  • 应交税费为负数在资产负债表中的列报
  • 进项税转出补税按多少补税
  • 一般纳税人加工费怎么做账
  • sqlserver批量备份数据库
  • mysql数据库内存占用高
  • linux软件安装源
  • Win10系统开机出现问题pin码不可用
  • dns server配置
  • centos virsh
  • wininfo.exe - wininfo是什么进程
  • win11怎么关闭系统防火墙
  • win8打开蓝牙设置
  • Linux通过netstat命令查看80端口连接数的方法
  • excel表格时间选择
  • 下载python教程
  • 用jquery
  • JavaScript function函数种类详解
  • 深入浅出python
  • 原生js常用的方法
  • 收藏一些不常用的图片
  • 重庆电子税务局怎么绑定办税人员
  • 发票上的税务号
  • 四川税务局发票下载
  • 南京政务服务中心
  • 出口退税已提交数据撤回
  • 江苏电子税务局网站首页公共服务
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设