最新記事

Debian 12システムでカーネルパニックを解決するには?
debian
filesystems
boot
kernel-panic
vfs

Debian 12システムでカーネルパニックを解決するには?

背景:停電後にコンピュータが起動しなくなりました。 LIVE DVDを起動し、すべてのファイルシステムをマウントできます。 fsck私のブートパーティション(ext2)とシステム/ルートパーティション(btrfs)の両方がきれいです。 smartctl -t shortどちらもとてもきれいです。 古いBIOS(EUFIなし)を使用するコンピュータがあります。 grub2Live DVDで再インストールしましたが、chroot何も変わりませんでした。以下は、オペレーティングシステムの選択後にシステムによって提供されるグラブスタート画面とエラーメッセージです。 Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) CPU: 1 PID: 1 Comm: swapper/0 Not tainted 6.1.0-18-amd64 #1 Debian 6.1.76-1 Hardware name: Dell Inc. Studio XPS 8100/0G3HR7, BIOS A05 07/08/2010 Call Trace: dump_stack_lvl+0x44/0x5c panic+0x118/0x2ed mount_block_root+0x1d3/0x1e6 prepare_namespace+0x136/0x165 kernel_init_freeable+0x25c/0x286 ? ret_init+0xd0/0xd0 kernel_init+0x16/0x130 ret_from_fork+0x22/0x30 Kernel Offset: 0x15c00000 from 0xffffffff81000000 (relocatinrange: 0xffffffff80000000-0xffffffffbfffffff) ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) ]--- このエラーメッセージをどのように解釈するのかわかりません。ルートファイルシステムはbtrfs。ファイルがinitrd破損し、ルートFSをマウントするために必要なbtrfsモジュールをロードできないことを理解する必要がありますか?どうですか? 追加情報(以前のカーネルから起動した後): lsblk -e 7 -f NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS sda ├─sda1 ├─sda2 ├─sda3 77.8G 97% /home └─sda4 sdb ├─sdb1 ├─sdb2 ├─sdb3 115G 45% / └─sdb4 634.2M 29% /boot sdc sdd sde sdf sdg └─sdg1 sr0 _ grep -oP 'root=UUID=[\w-]+' /boot/grub/grub.cfg | sort -u root=UUID=172d2f2b-c176-472b-b20a-0a382e24ae72 正しいパーティションは次のとおりです/。/dev/sdb3 cat /etc/fstab UUID=abee2947-6832-4332-915e-abc122a347cf /boot ext2 defaults,noatime 0 2 UUID=172d2f2b-c176-472b-b20a-0a382e24ae72 / btrfs subvol=@,defaults,noatime,space_cache,autodefrag,discard,compress=lzo 0 1 UUID=7994d68f-8067-4742-b104-45ace8e53c0e /home btrfs subvol=/__racine/home,defaults,noatime,nodiratime,space_cache,autodefrag,compress=lzo 0 2 tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0 UUID=d3529b3b-4338-4371-8f9b-f725142c5eb2 none swap defaults 0 0 /dev/sr0 /media/cdrom0 udf,iso9660 user,auto 0 0 _ ls -l /dev/disk/by-uuid/ total 0 lrwxrwxrwx 1 root root 10 Apr 28 17:32 121C-191D -> ../../sdg1 lrwxrwxrwx 1 root root 10 Apr 28 17:32 172d2f2b-c176-472b-b20a-0a382e24ae72 -> ../../sdb3 lrwxrwxrwx 1 root root 9 Apr 28 17:32 2020-09-26-10-57-36-00 -> ../../sr0 lrwxrwxrwx 1 root root 10 Apr 28 17:32 26a14333-8209-4ae1-bc51-f691d7533e68 -> ../../sda1 lrwxrwxrwx 1 root root 10 Apr 28 17:32 7994d68f-8067-4742-b104-45ace8e53c0e -> ../../sda3 lrwxrwxrwx 1 root root 10 Apr 28 17:32 abee2947-6832-4332-915e-abc122a347cf -> ../../sdb4 lrwxrwxrwx 1 root root 10 Apr 28 17:32 d3529b3b-4338-4371-8f9b-f725142c5eb2 -> ../../sda2 lrwxrwxrwx 1 root root 10 Apr 28 17:32 f530e8e6-9888-4938-8336-f3e4e40565cf -> ../../sdb2 _ ps aux | grep udev root 548 0.0 0.0 23876 6028 ? Ss 17:17 0:00 /lib/systemd/systemd-udevd _ grep error /var/log/syslog 2024-04-28T12:32:15.736464+02:00 PC-Alain kernel: [ 53.465073] nouveau 0000:01:00.0: Direct firmware load for nouveau/nve7_fuc084 failed with error -2 2024-04-28T12:32:15.736468+02:00 PC-Alain kernel: [ 53.465097] nouveau 0000:01:00.0: Direct firmware load for nouveau/nve7_fuc084d failed with error -2 2024-04-28T12:32:41.304635+02:00 PC-Alain kernel: [ 79.156892] nouveau 0000:01:00.0: Direct firmware load for nouveau/nve7_fuc084 failed with error -2 2024-04-28T12:32:41.304641+02:00 PC-Alain kernel: [ 79.156938] nouveau 0000:01:00.0: Direct firmware load for nouveau/nve7_fuc084d failed with error -2 2024-04-28T12:36:54.316202+02:00 PC-Alain wireplumber[6397]: RTKit error: org.freedesktop.DBus.Error.AccessDenied 2024-04-28T12:36:54.322518+02:00 PC-Alain pipewire-pulse[6398]: mod.rt: RTKit error: org.freedesktop.DBus.Error.AccessDenied 2024-04-28T12:36:54.329509+02:00 PC-Alain pipewire[6394]: mod.rt: RTKit error: org.freedesktop.DBus.Error.AccessDenied 2024-04-28T12:36:54.351221+02:00 PC-Alain wireplumber[6397]: RTKit error: org.freedesktop.DBus.Error.AccessDenied 2024-04-28T12:36:54.358502+02:00 PC-Alain pipewire-pulse[6398]: mod.rt: RTKit error: org.freedesktop.DBus.Error.AccessDenied 2024-04-28T12:36:54.365165+02:00 PC-Alain pipewire[6394]: mod.rt: RTKit error: org.freedesktop.DBus.Error.AccessDenied 2024-04-28T15:51:21.496580+02:00 PC-Alain kernel: [11999.307831] nouveau 0000:01:00.0: Direct firmware load for nouveau/nve7_fuc084 failed with error -2 2024-04-28T15:51:21.496584+02:00 PC-Alain kernel: [11999.307850] nouveau 0000:01:00.0: Direct firmware load for nouveau/nve7_fuc084d failed with error -2 2024-04-28T16:51:28.020418+02:00 PC-Alain kernel: [15605.817830] traps: tracker-extract[92460] trap int3 ip:7f280dd9f7d7 sp:7ffcf0086ab0 error:0 in libglib-2.0.so.0.7400.6[7f280dd61000+8d000] 2024-04-28T16:51:28.268449+02:00 PC-Alain kernel: [15606.063394] traps: tracker-extract[92474] trap int3 ip:7f1f488897d7 sp:7ffd77407190 error:0 in libglib-2.0.so.0.7400.6[7f1f4884b000+8d000] 2024-04-28T16:51:47.444575+02:00 PC-Alain dockerd[2536]: time="2024-04-28T16:51:47.444485465+02:00" level=info msg="stopping event stream following graceful shutdown" error="" module=libcontainerd namespace=moby _ 以下は、メインメニュー項目の/boot/grub/grub.cfgから抜粋したものです。 load_video insmod gzio if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi insmod part_gpt insmod ext2 set root='hd1,gpt4' search --no-floppy --fs-uuid --set=root abee2947-6832-4332-915e-abc122a347cf echo 'Loading Linux 6.1.0-18-amd64 ...' linux /vmlinuz-6.1.0-18-amd64 root=/dev/sdb3 ro rootflags=subvol=@ quiet splash } load_video insmod gzio if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi insmod part_gpt insmod ext2 set root='hd1,gpt4' search --no-floppy --fs-uuid --set=root abee2947-6832-4332-915e-abc122a347cf echo 'Loading Linux 6.1.0-18-amd64 ...' linux /vmlinuz-6.1.0-18-amd64 root=/dev/sdb3 ro rootflags=subvol=@ quiet splash }

Admin

ext2ディレクトリエントリリストからエントリを削除する
files
filesystems
directory
ext2
defragmentation

ext2ディレクトリエントリリストからエントリを削除する

~からこの問題、引用このウェブサイト、私が知っている限り、ディレクトリ内の項目が削除されると、前の項目のサイズが適切に次の項目またはブロックの末尾にプッシュされます。 私の質問は、これが内部断片化を引き起こさないということです。何もしないと無駄なスペースがたくさんあると思います。たとえば、非常に大きなディレクトリがあり、各データブロックに1つのエントリしか残らないようにそのディレクトリからエントリを削除すると、そのエントリは最終的にブロック全体を埋めます。その後、xエントリのx個のブロックがあります。ただし、これらの項目はすべて少ない数のブロックにインストールできます。 この問題はいつか解決されますか?アイテムのリストが最適化されましたか?それとも、新しいアイテムを挿入するのに十分な長い穴を探しますか?また、ブロックの最後のエントリが削除された場合はどうなりますか?ブロックが解放され、残りのブロックがディレクトリinodeのNULLポインタを埋めるためにどのように再構成されていますか?

Admin

RAIDで使用されるディスクパーティションのサイズ変更
linux
filesystems
partition
raid
lsblk

RAIDで使用されるディスクパーティションのサイズ変更

私のアプリケーション用のパーティションを作成するには、sdb4現在のドライブの合計7TBを占めるパーティションを縮小する必要があります。問題は、パーティションがあり、マウントされていることです。サイズ変更がパーティションとシステムに意図しない結果をもたらす可能性があることが心配です。この状況で安全に生成する方法についてのガイドラインを提供できる人はいますか?sdbsdb5RAID md1sdb4sdb4/md1/vg0-root"/"sdb4RAID md1sdb5 出力lsblk: 出力df -h: 出力parted /dev/sdb:

Admin

btrfsの残高は再帰的ですか?
linux
arch-linux
fedora
filesystems
btrfs

btrfsの残高は再帰的ですか?

私は走るbtrfs balance毎日のシステムサービスとタイマーのおかげで、ファイルシステムを時間が経つにつれて健康に保つよう努めています(これは良いアイデアですか?)。私が使用するコマンドは次のとおりです。 btrfs balance start -dusage=50 -dlimit=2 -musage=50 -mlimit=4 / 複数の場所に多数のサブボリュームがマウントされています。 @rootが/にマウントされました。 @homeが/homeにマウントされました。 @varが/ varにマウントされました。 /var/log にマウントされた @var-log @snapshots は /.snapshots にマウントされます。 @swap は /.swap にマウントされます。 もっとあります。 /私のbtrfsバランスコマンドが次のコマンドを渡してすべてのサブボリュームを繰り返すのか、私が持っているすべてのサブボリュームに対してコマンドを実行する必要があるのでしょうか。 スナップショットコマンドはサブボリュームに再帰されませんが、ジョブのバランスはどうですか?

Admin

大文字と小文字を区別しないファイルシステムでLinuxカーネルを構築できますか?
filesystems
linux-kernel
compiling
case-sensitivity

大文字と小文字を区別しないファイルシステムでLinuxカーネルを構築できますか?

Linuxカーネルのソースコードには、大文字と小文字を区別しないファイルシステムに配置するときに競合が発生するいくつかの重複するファイル名があります。 6.4.7 基準のリストは次のとおりです。 存在するinclude/uapi/linux/netfilter/: xt_CONNMARK.hそしてxt_connmark.h xt_DSCP.hそしてxt_dscp.h xt_MARK.hそしてxt_mark.h xt_RATEEST.hそしてxt_rateest.h xt_TCPMSS.hそしてxt_tcpmss.h 存在するinclude/uapi/linux/netfilter_ipv4/: ipt_ECN.hそしてipt_ecn.h ipt_TTL.hそしてipt_ttl.h 存在するinclude/uapi/linux/netfilter_ipv6/: ip6t_HL.hそしてip6t_hl.h 存在するnet/netfilter/: xt_DSCP.cそしてxt_dscp.c xt_HL.cそしてxt_hl.c xt_RATEEST.cそしてxt_rateest.c xt_TCPMSS.cそしてxt_tcpmss.c 存在するtools/memory-model/litmus-tests/: Z6.0+pooncelock+poonceLock+pombonce.litmusそしてZ6.0+pooncelock+pooncelock+pombonce.litmus 大文字と小文字を区別しないファイルシステムにソースツリーを埋めた後、各ペアの1つのファイルが別のファイルを上書きします。明らかに、netfilterが有効な状態でLinuxカーネルを構築することは不可能です。ファイルの2つのバージョンが異なる名前で保存され、これらの名前の変更を確認するためにソースコードが変更されても、APIは破損します。誰がそれをしたいですか? netfilterサポートなしでLinuxカーネルを構築できますか?その過程でまたどんな困難が起こりますか?

Admin

グループ内のブロックとフラグメントの違いは何ですか?
linux
filesystems
superblock

グループ内のブロックとフラグメントの違いは何ですか?

mke2fs コマンドの出力は次のようになります。 root@localhost:~# mke2fs /dev/xvdf mke2fs 1.42.9 (4-Feb-2023) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 6553600 inodes, 26214400 blocks 1310720 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=4294967296 800 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks:     32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,     4096000, 7962624, 11239424, 20480000, 23887872   Allocating group tables: done                             Writing inode tables: done                             Writing superblocks and filesystem accounting information: done 私が理解していないのはこれです。 グループあたり32768ブロック、グループあたり32768セグメント 私が理解したところによれば、ハードドライブ(通常512B)のセクタは最初にグループに分けられます。セクタグループをブロックと呼びます。各ブロックグループには32768個のブロックがあります。 ここで私が理解していないのは断片化です。 これらは何ですか?どういう意味ですか?そして私のFSでフラグメントを変更できますか?

Admin

Centos 8 LVMとパーティショニング
centos
filesystems
lvm

Centos 8 LVMとパーティショニング

誰でもこれを解読するのに役立ちますか?両方のパーティションのボリュームは同じですか?

Admin

bachefsはどのRAIDレベルと関連コンテンツをサポートし、どのように構成するのですか?
filesystems
raid
software-raid
bcachefs

bachefsはどのRAIDレベルと関連コンテンツをサポートし、どのように構成するのですか?

2023-10-31、BcachefsがLinux 6.7カーネルにマージされました。 https://www.phoronix.com/news/Bcachefs-Merged-Linux-6.7 https://web.archive.org/web/20231103095158/https://www.phoronix.com/news/Bcachefs-Merged-Linux-6.7 ソフトウェアRAIDを使用してファイルシステムbachefsがサポートするさまざまなRAIDレベルを設定して使用する方法は? この質問は、bachefsがサポートするソフトウェアRAIDモードについてです。クラシックRAIDレベルと同様の要件を持つモードを作業用語としてRAIDと呼びますが、bcachefsでは異なる名前を持つこともできます。 bachefsはどのような他のDUPまたは同様のRAIDモードをサポートしますか?その構文は次のとおりです。 --replicas=n # perhaps, n can be replaced by 2 and other counts

Admin

USBドライブ「NTFS」は一部のWindowsプラットフォームでは動作しますが、他のプラットフォームでは動作しないため、非常に迷惑です。
filesystems
windows
usb-drive

USBドライブ「NTFS」は一部のWindowsプラットフォームでは動作しますが、他のプラットフォームでは動作しないため、非常に迷惑です。

私は2つのUSBスティック、最新の「青い」3.0の1つと古い2.0の1つを持っています。それらは時々他の目的に使用され、時にはそれらの1つをLinuxライブUSBに置き換えることも、別の時にはUSBスティックに置き換えることもできます。一部のファイルを他の人に渡す必要がある場合や、印刷所に行く必要がある場合のより一般的な形式で使用されます。 Windows PCを使用している人にUSBスティックを誤って渡すことは決してあり得ません。 印刷所では時々こんなことをしますが、私は月に一度くらいします。通常は修正できますが、今日は数時間を費やしました:( だからUSBドライブをキオスクに持って行きました。キオスクには一種のタブレットがありましたが、Windows形式のUSBドライブのみを許可するとUSBドライブを拒否しました。 その後、ストレス攻撃を受けて数キロ離れた場所に移動し、他の店では問題なくデスクトップWindows PC(おそらく)で私のファイルを開いて印刷しました。 以下は、ファイルシステムに関する情報を出力するコマンドです。 $ sudo file -Ls /dev/sdb /dev/sdb: DOS/MBR boot sector, code offset 0x52+2, OEM-ID "NTFS ", sectors/cluster 8, Media descriptor 0xf8, sectors/track 32, heads 64, dos < 4.0 BootSector (0x80), FAT (1Y bit by descriptor); NTFS, sectors/track 32, sectors 30218841, $MFT start cluster 4, $MFTMirror start cluster 1888677, bytes/RecordSegment 2^(-1*246), clusters/index block 1, serial number ------------ (シリアル番号は消したが、あえて必要ないと思います) あるWindowsシステムでは動作しますが、他のWindowsシステムでは動作しない理由を説明する内容はここにありますか? したがって、これを拒否するのはおそらく一種の「組み込み」システムです。どのWindowsのバリエーションかはわかりません。 おそらく、MicrosoftはすべてのWindowsアップデートに一種の「USB拒否」ビットを導入して、Linuxユーザーに最大の迷惑を引き起こす可能性があります。その後、Linuxが追いつく必要があります。誰が知っている:( 私はDebian Busterを実行しています。この問題のヒントやLinuxでUSBをフォーマットするより安全な方法(より多くの用途で利用可能)がある場合は、これが再度発生しないようにすることをお勧めします。

Admin

ループバックデバイス
linux
filesystems

ループバックデバイス

splitファイルを完全に同じ記憶領域を使用するチャンクに分割します(使用されているディスク容量の2倍)。 lnファイルをコピーせずに他の(ターゲット)ファイルのシンボリックリンクを作成できるため、ターゲットファイルスペースを2倍にしません。 記憶領域が不足しているため、大容量ファイルの特定のオフセットを指す参照/シンボル方式(つまり、仮想ファイルの分割)でファイルを分割することは可能ですか? たとえば、2MB ファイルがある場合は、2 つの部分に分割します。ここでは、各部分は1MBの大きなファイルを参照します(シンボリックリンク操作と同じ)。各部分は次のことを行います。 他のフラグメントと重複しません(フラグメントは大容量ファイルの同じデータを参照しません)。 参照する大容量ファイルの一部と同じストレージサイズを使用しません。 piece_1.file -> 2mb.file 1st MB piece_2.file -> 2mb.file 2nd MB そして、各ブロックのストレージサイズは1MBよりはるかに小さいです。

Admin

Java経由で既存のファイルにテキストを挿入する 質問する
java
file
file-io
filesystems

Java経由で既存のファイルにテキストを挿入する 質問する

テキスト ファイルを編集する簡単なプログラム (Java で作成) を作成したいと考えています。特に、テキスト ファイル内のランダムな位置に任意のテキストを挿入するプログラムを作成したいと考えています。この機能は、現在作成中の大規模なプログラムの一部です。 java.util.RandomAccessFile に関する説明を読むと、ファイルの途中で書き込み操作を実行すると、既存のコンテンツが上書きされるようです。これは、(可能であれば)避けたい副作用です。 これを実現する簡単な方法はありますか? 前もって感謝します。

Admin