N'ime ngwa e2fsck ewepụtara dịka akụkụ nke ngwugwu
A na-akpata adịghị ike ahụ site na njehie na mutate_name () ọrụ na rehash.c faịlụ, nke a na-eji emeghachite tebụl hash jikọtara ya na ndekọ ndekọ, na-ahụ na faịlụ niile dị na ndekọ ahụ kwekọrọ na ndekọ. Nrụrụ aka nke nhazi hash_entry jikọtara ya na akwụkwọ ndekọ aha nwere ike ime ka onye mwakpo na-ede data na mpaghara na-abụghị ebe nchekwa ekenyela. Ọ bụrụ na achọpụtara ọtụtụ faịlụ nwere otu aha na tebụl hash ka ejikọtara ya na ndekọ aha, ọrụ e2fsck na-edegharị faịlụ oyiri site na ịgbakwunye ~ 0, ~ 1, wdg na aha ahụ. Iji chekwaa aha ọhụrụ nwa oge n'oge a na-agbanwe aha ahụ, a na-ekenye ihe nchekwa nke 256 bytes n'ogo n'elu ngwugwu ahụ.
A na-ekpebi nha data a ga-edegharị site na okwu "entry->name_len & 0xff", mana uru ntinye ->name_len na-ebufe site na nhazi dị na diski kama gbakọọ site na aha aha ahụ kpọmkwem. Ọ bụrụ na nha ahụ bụ efu, mgbe ahụ, nchịkọta nchịkọta na-ewe uru -1 na ọnọdụ a na-emepụta maka integer jubigara ókè site na ala ala nke ihe nchekwa (integer underflow) ma degharịa data ndị ọzọ na nchịkọta na uru "~ 0". Maka sistemụ 64-bit, a na-enyocha nrigbu nke adịghị ike dị ka ihe na-agaghị ekwe omume ma ọ nweghị ihe mgbochi ọ bụla na nha njupụta (ulimit -s unlimited). Maka sistemụ 32-bit, a na-ahụta nrigbu ga-ekwe omume, mana nsonaazụ ya dabere na otu onye na-achịkọta ihe siri chịkọta ya.
Iji mee mwakpo, onye na-awakpo kwesịrị imebi data ahụ n'ụzọ ụfọdụ na nkebi ya na ext2, ext3 ma ọ bụ ext4 faịlụ. Ebe ọ bụ na ọrụ a chọrọ ikike ndị superuser, adịghị ike ahụ na-ebute ihe iyi egwu mgbe akụrụngwa e2fsck na-enyocha draịva mpụga ma ọ bụ onyonyo FS natara na mpụga.
isi: opennet.ru