I faced the same issue and solve it based on How to view, change, recreate Linux initrd.img file.
First of all, since version 2.6 and above (see here) initrd image is simply initramfs (just the name has been kept). Then, kernel image is a simple gzip file containing a cpio archive (at least for debian).
File format
Verify that the image in /boot (which looks like initrd.img.other_info, for example : initrd.img-4.9.0-8-686-pae) is a gzip file
file initrd.img-4.9.0-8-686-pae
>> initrd.img-4.9.0-8-686-pae: gzip compressed data, was "newinitrd", last modified: Sat Apr 27 10:03:57 2019, from Unix
Even if the extension is gzip the file cannot be uncompressed directly because of the lack of .gz at the end of it (which here implies that we need to convert the file into a recognizable format for uncompression process)
Uncompression
GZIP part
The next step is to get the correct shape for the file with :
mv initrd.img-4.9.0-8-686-pae initrd.img-4.9.0-8-686-pae.gz
Notice that just renaming the file initrd.img-4.9.0-8-686-pae into initrd.img-4.9.0-8-686-pae.gz has no effect.
Then uncompressed the file with the appropriate command (here for a gzip file) :
gunzip initrd.img-4.9.0-8-686-pae.gz
CPIO part
You will obtain an cpio archive (here the file will keep the same name initrd.img-4.9.0-8-686-pae)
file initrd.img-4.9.0-8-686-pae
>> initrd.img-4.9.0-8-686-pae: ASCII cpio archive (SVR4 with no CRC)
Then to get all files into the archive use into a new folder :
cpio -id < ../initrd.img-4.9.0-8-686-pae
That's all for the uncompression part
Compression
After editing the image you will need to compress it again.
First create a cpio archive of all these file (still in the directory used to open the cpio archive)
find . | cpio --create --format='newc' > ../newInitrd
Then, compress the archive (in the parent directory) with :
gzip newInitrd
And finally :
mv newInitrd.gz newInitrd.img
(Then you just have the rename newInitrd.img into initrd.img-4.9.0-8-686-pae and put the file in /boot)