Только что я обнаружил, что Grub2-модуль "part_dfly" можно найти в [ваш_boot_partition]/boot/grub/i386-pc. Список модулей ядра, которые вы используете на своем ПК, можно найти в [ваш_dragonfly_partition]/boot/loader.conf. Просто измените мой "kfreebsd_module_elf /kernel/.ko" на ваш из loader.conf.
Grub2 загрузит dfly-partition-sheme, затем ядро и RAM-диск-образ из раздела UFS2 (/boot), а DF-BSD загрузит Hammer-FS (root). Таким образом, раздел "/boot"- должен быть доступен для чтения/записи как для Grub2, так и для DF-BSD; единственными кандидатами на эту роль являются UFS и UFS2.
Обратите внимание, что Grub2 чувствителен к регистру, поэтому вы должны писать "kfreebsd_module", используя "маленькие" буквы, но "set kFreeBSD", должен быть написан как заглавными, так и "маленькими" буквами. Так что вы можете попробовать что-то вроде этого:
menuentry "Dragonfly BSD x64 @ (hdX,Y)" {
insmod part_msdos
insmod part_dfly
insmod ufs2
set root=(hdX,msdosY)
kfreebsd /kernel/kernel
kfreebsd_loadenv /boot/device.hints
kfreebsd_module /kernel/initrd.img type=md_image
kfreebsd_module_elf /kernel/acpi.ko
kfreebsd_module_elf /kernel/ahci.ko
kfreebsd_module_elf /kernel/ehci.ko
kfreebsd_module_elf /kernel/dm.ko
kfreebsd_module_elf /kernel/md.ko
kfreebsd_module_elf /kernel/dm_target_crypt.ko
kfreebsd_module_elf /kernel/wlan.ko
kfreebsd_module_elf /kernel/wlan_ccmp.ko
kfreebsd_module_elf /kernel/wlan_tkip.ko
kfreebsd_module_elf /kernel/ath_hal.ko
kfreebsd_module_elf /kernel/ath_rote.ko
kfreebsd_module_elf /kernel/if_ath.ko
kfreebsd_module_elf /kernel/sound.ko
kfreebsd_module_elf /kernel/snd_hda.ko
set kFreeBSD.vfs.root.mountfrom=ufs:md0s0
set kFreeBSD.vfs.root.realroot=crypt:hammer:\
/dev/serno/<your_partition_serno>:dragon
}
Если вы используете нешифрованный hammer-partition вместо:
set kFreeBSD.vfs.root.mountfrom=ufs:md0s0
set kFreeBSD.vfs.root.realroot=crypt:hammer:\
/dev/serno/<your_partiton_serno>:dragon
просто используйте:
set kFreeBSD.vfs.root.mountfrom=\
hammer:/dev/serno/<your_partition_serno>:dragon
Удачи!
find . ! -name . -prune -type f -exec cat {} + |
grep mystring |
LC_ALL=C sort -u
Или:
find . ! -name . -prune -type f -exec cat {} + | awk '
/mystring/ && !seen[$0]++'
С помощью GNU grep
:
LC_ALL=C grep -hr --exclude-dir='?*' mystring | LC_ALL=C sort -u
Или с zsh
и GNU grep
:
grep -h mystring ./*(D.) | LC_ALL=C sort -u
Также рекурсивный поиск в файлах в подкаталогах:
find . -type f -exec cat {} + |
grep mystring |
LC_ALL=C sort -u
Или:
find . -type f -exec cat {} + | awk '
/mystring/ && !seen[$0]++'
С GNU grep
:
grep -hr mystring | LC_ALL=C sort -u
Обратите внимание, что все эти решения также выглядят внутри скрытых файлов (и файлов внутри скрытых каталогов), но не в нестандартных файлах и не будет следовать символическим ссылкам (если вы не используете старую версию GNU grep
с -r
) .