stdoutとstderrをリダイレクトすると、まだstdoutとして印刷されます。

stdoutとstderrをリダイレクトすると、まだstdoutとして印刷されます。

grub用の設定ファイルを作成すると、VGAコンソールで何らかのエラーが発生します(少なくともバグだと思います)。

grub-mkconfig -o /boot/grub/grub.cfg

次のように、stderrとstdoutを〜/ grub_errorというファイルにリダイレクトしようとしました。

grub-mkconfig -o /boot/grub/grub.cfg 2>&1 ~/grub_error

しかし、私が考えるとエラーだと思われる内容はまだ画面に印刷されています(〜/ grub_errorが標準出力にリダイレクトされているため、構文エラーが発生するとは思いません)。

grub-mkconfigまた、Xセッションの端末で実行しているときにVGAコンソールに表示される「エラー」が表示されないことを確認しました。エラーが「...ファイルシステムの破損を引き起こす可能性がある」など、非常に深刻なようですので、リダイレクトする必要がある他の項目はありますか? GPTを含むBIOSシステムを使用しているため、BIOS_bootパーティションがありますが、/dev/sda1(私のBIOS_bootパーティション)にext4ファイルシステムがないというエラーメッセージが表示されます。そしてしないでください)。

[ 2709.836576] EXT4-fs (sda1): VFS: Can't find ext4 filesystem
[ 2709.839402] EXT4-fs (sda1): VFS: Can't find ext4 filesystem
[ 2709.841988] EXT4-fs (sda1): VFS: Can't find ext4 filesystem
[ 2709.846191] XFS (sda1): Invalid superblock magic number
[ 2709.850344] FAT-fs (sda1): invalid media value (0xe2)
[ 2709.850806] FAT-fs (sda1): Can't find a valid FAT filesystem
[ 2709.853194] FAT-fs (sda1): invalid media value (0xe2)
[ 2709.853781] FAT-fs (sda1): Can't find a valid FAT filesystem
[ 2709.855905] ntfs: (device sda1): is_boot_sector_ntfs(): Invalid boot sector checksum.
[ 2709.855913] ntfs: (device sda1): read_ntfs_boot_sector(): Primary boot sector is invalid.
[ 2709.856367] ntfs: (device sda1): read_ntfs_boot_sector(): Mount option errors=recover not used. Aborting without trying to recover.
[ 2709.856902] ntfs: (device sda1): ntfs_fill_super(): Not an NTFS volume.
[ 2709.859565] VFS: Can't find a Minix filesystem V1 | V2 | V3 on device sda1.
[ 2709.861950] hfsplus: unable to find HFS+ superblock
[ 2709.863881] ufs: You didn't specify the type of your ufs filesystem

               mount -t ufs -o ufstype=sun|sunx86|44bsd|ufs2|5xbsd|old|hp|nextstep|nextstep-cd|openstep ...

               >>>WARNING<<< Wrong ufstype may corrupt your filesystem, default is ufstype=old
[ 2709.867491] ufs: ufs_fill_super(): bad magic number
[ 2709.872393] hfs: can't find a HFS filesystem on dev sda1

ベストアンサー1

stderrをstdoutにリダイレクトしますが、stdout自体もリダイレクトする必要があります。あなたは見逃しているだけで、>リダイレクトの順序が非常に重要です。

grub-mkconfig -o /boot/grub/grub.cfg >~/grub_error 2>&1

https://www.gnu.org/software/bash/manual/html_node/Redirections.html

コンソールとターミナル出力の違い(およびコンソールにリダイレクトがないように見える場合)は、通常カーネルメッセージを表します。別の端末を開き、を入力してくださいdmesg -w。その後、プログラムまたはスクリプトを再実行します。コンソールからリダイレクトされないか、端末に存在しないdmesgコマンドによって出力されたメッセージを表示する必要があります。

おすすめ記事