SHA256
Add -k session to bcachefs unlock command.
This commit is contained in:
@@ -1,3 +1,21 @@
|
|||||||
# nyanit
|
# nyanit
|
||||||
|
|
||||||
Init program for initrd
|
Kira-Linux init program for initrd
|
||||||
|
|
||||||
|
|
||||||
|
1. It looks for partitoin with GPT labelve **bee-root** what will shown in dev tree as **/dev/disk/by-partlabel/bee-root**
|
||||||
|
And this partition should be formated to bcachefs.
|
||||||
|
|
||||||
|
2. Nyanit checks if bcachefs is encrypted, and asks for unlock password if it is.
|
||||||
|
|
||||||
|
3. Then it mounts it to **/mnt/bee-root**.
|
||||||
|
|
||||||
|
4. And looks for snapshots with name pattern **/mnt/bee-root/bzz_snaps/bzz-yyyy-mm-ddTHH-MM-SS**
|
||||||
|
|
||||||
|
5. If no snapshots are found it calls **switch_root** for **/mnt/bee-root**
|
||||||
|
|
||||||
|
6. Othervise vait for F2 for few seconds.
|
||||||
|
And if F2 pressed provides list of snapshoots to boot from.
|
||||||
|
|
||||||
|
7. After some snapshoot or just **/mnt/bee-root** is selected, Nyanit doing **switch_root** to it.
|
||||||
|
|
||||||
|
|||||||
+3
-2
@@ -145,9 +145,10 @@ pub fn bcachefs_unlock(pass: String, dev: &str) -> Result<bool, ExecCommandError
|
|||||||
use std::io::Read;
|
use std::io::Read;
|
||||||
use std::io::Write;
|
use std::io::Write;
|
||||||
use std::process::Stdio;
|
use std::process::Stdio;
|
||||||
|
// "-k", "session" is important as it stores key in sessyin keyring what allows
|
||||||
|
// system to mount filesystem after switch_root
|
||||||
let mut child = Command::new("bcachefs")
|
let mut child = Command::new("bcachefs")
|
||||||
.arg("unlock")
|
.args(&vec!["unlock", "-k", "session", dev])
|
||||||
.arg(dev)
|
|
||||||
.stdin(Stdio::piped())
|
.stdin(Stdio::piped())
|
||||||
.stdout(Stdio::piped())
|
.stdout(Stdio::piped())
|
||||||
.stderr(Stdio::piped())
|
.stderr(Stdio::piped())
|
||||||
|
|||||||
Reference in New Issue
Block a user