前言
本文分享的是在USB移动设备上安装Kali Linux独立系统 非Live版! 非虚拟机版! 非Live版! 非虚拟机版! 非Live版! 非虚拟机版! 这里的USB设备包括U盘、移动硬盘(包括NVMe) 独立系统指的是有完整的引导的可以直接运行的Kali Linux完整系统,简单地说就是不需要任何其它系统、虚拟机也可以直接运行并可保存更改的Kali Linux 网上现有大部分教程都是虚拟机版或Live版 如果想装Live版或者虚拟机版请转到其它教程
参考https://www.kali.org/docs/usb/usb-standalone-encrypted/ 注:本教程很多部分参考上方的网页(kali官网教程),但是其部分细节没表达清楚,问题处理较简单
本教程的所有过程都经过本人测试,并在两个硬件(King Stone 128G的U盘和西部数据的500G的NVMe移动硬盘)上测试可用,但不保证普适
安装过程比较折腾,易操作错误,但结果比较满意,所以写下此教程
什么是Kali Linux独立系统 (Standalone Kali Linux)?
Kali Linux是一个系统(废话),有很多渗透测试工具 (更多关于Kali Linux的详细可以去官网或者任意搜索引擎搜索)
先简单介绍一下几个不同版本的区别:
- 纯硬盘版 (Bare Metal):在电脑的硬盘上安装,修改引导文件,可以是双系统或者替代原系统;
- 虚拟机版 (Virtual Machines):在已有的系统上的虚拟机软件(如:VMware、VirtualBox)上安装;
- ARM版 (ARM):在支持ARM指令集的机器或虚拟机上安装;
- 安卓手机版 (Mobile):又名NetHunter,是一个改过的安卓系统,与Kali Linux不是一个东西;
- 云端版 (Cloud):一个云端镜像,直接可以装在云服务器上;
- 容器版 (Container):Docker或LXC/LXD的容器,容器的概念不做介绍;
- Live版 (Live Boot):一个镜像文件,用于做USB ROM(只读),即不可改,所有对系统的更改都不会保存;
- WSL版 (WSL):主要是Windows的WSL,是一个Windows的子系统,比虚拟机更轻便,但有诸多限制,具体不做介绍;
- 独立版 (Standalone): 可移动的纯硬盘版,即装在可移动存储设备上安装的纯系统
注:Standalone版在官网上没有作为一个单独的版本,分类在Kali-USB,但其实可以认为是特殊安装的纯硬盘版
小结: 这里只讨论独立版和几个常见的版本:纯硬盘版、虚拟机版、Live版、WSL版
版本 | 不更改原系统引导 | 不需要已有系统支持 | 不需要虚拟机支持 | 可保存更改 | 可移动 |
---|
纯硬盘版 | ? | ? | ? | ? | ? | 虚拟机版 | ? | ? | ? | ? | ? | Live版 | ? | ? | ? | ? | ? | WSL版 | ? | ? | ? | ? | ? | 独立版 | ? | ? | ? | ? | ? |
注:上表所述特性可能不严谨,如:可移动指可简单地移动,备份恢复等不考虑,操作不当造成的更改不考虑
可见Kali Linux独立版可以认为是 可移动的纯硬盘版 或 可保存修改的Live版
本教程分享的是安装Kali Linux独立版
本人安装使用经历
(本章可以跳过,但如果安装出错可以再来看看)
本教程的安装环境是刃9000K台式机,两张普通32G U盘,一张500G NVMe SSD移动硬盘 测试环境是刃9000K台式机和Surface Pro 7 64位 i7 两张U盘的作用是做USB ROM,使用完后可以挪做它用 上述环境仅是本教程测试可行的环境,不推荐也不做评价
写本教程时,本人第四次安装Standalone Kali Linux,前三次经历如下:
- 第一次,尝试在VMware中的Kali Linux虚拟机下分区和格式化U盘,在格式化最大的主分区时与U盘断开连接,格式化(创建文件系统)不成功,更换存储设备也遇到同样问题。如果遇到此问题,不代表移动存储设备有问题或不支持。猜测原因是VMware虚拟机下使用mkfs指令不支持对大分区创建文件系统。(如有成功欢迎分享指正)
- 第二次,使用Ubuntu Live下分区和格式化U盘成功,成功安装Kali Linux(无引导),在Ubuntu Live下安装grub引导成功,但电脑不识别U盘。如果遇到此问题,不代表移动存储设备有问题或不支持。本次出错是操作不当引起,在修改启动文件后重装grub,成功识别并启动,后文会提到。但是,由于使用的是128G的U盘,它的4K小文件读写较慢(具体参数自行测试),所以安装时间非常长(可能超过5个小时),系统运行也非常慢,基本无法操作,FireFox启动大概花了超过半个小时,所以强烈不建议在普通U盘上安装,虽然确实可以装。
(当然想玩玩随便) - 第三次,换用NVMe SSD移动硬盘,操作与第二次几乎一致,但幸运的是安装非常顺利。进入系统后运行顺畅,使用一切正常。有第四次安装是因为在安装软件时把桌面删了,然后只有tty(具体问题和解决方案后文介绍),重装桌面后出错,所以重装系统,重装前如何导出数据后文介绍。
教程正文
一、准备
如果希望使用本教程,需要具备以下条件:
- 至少8G的U盘两张(8G不支持预装Kali的所有工具,可之后安装),需要预装所有工具可以用一张8G、一张16G的U盘。这两张U盘在安装完成后都可以恢复正常存储使用;
- 至少64G的移动硬盘(普通U盘实测可以安装并运行,但速度可能不能接受),推荐SSD,最好是NVMe,越快越好(当然数据可靠性也重要);
- 一台电脑,内存至少2G(具体看Ubuntu Live和Kali Bare Metal官网上的最低参数),尽量别太小(低于2G的电脑还是别折腾了吧╮(╯▽╰)╭),内存一定程度影响速度。这里不推荐了,因为真没必要特地买台电脑。值得注意的是本教程用的电脑是UEFI启动,Legacy不清楚是否可行,近几年的电脑应该大部分是UEFI。个人认为现役的电脑基本都可以满足要求;
- 写iso镜像的工具,Windows下应该没有自带的软件,网上各类软件非常多,这里不推荐,搜索一下应该不难找到;Linux下自带dd命令;
- Ubuntu Live镜像一份(也可以是其它发行版),Ubuntu官网上首页直接下载的.iso安装文件就可以直接用,https://ubuntu.com/download/desktop上点Download;
- Kali Linux Bare Matel版镜像一份,没有测试过NetInstaller,推荐Installer或Everything,Everything预装所有的Kali工具,Installer预装常用工具,网址:https://www.kali.org/get-kali/#kali-bare-metal。但其实进系统后
sudo apt install kali-linux-everything 其实就可以安装所有工具,选Installer下载和制作会快一点; - 一定的英语水平,如果英语真的不行
(比如不认识Download之类的) ,真的别折腾Linux了,可能会出大问题。
如果有需求更少的安装方法,欢迎提出指正。
二、制作辅助U盘
下载两个镜像,我用的是Ubuntu 20.04.3 LTS和Kali Linux 2022.1,其它接近的版本或者其它发行版应该也可行。
Windows:用软件直接导入,上网搜索“windows iso写入u盘”有不少教程; Linux:dd if=<iso文件路径\> of=/dev/sdx bs=1024 status=progress ,这里的sdx是你的U盘,不清楚可以先ls /dev ,然后插上U盘再ls /dev ,多出来的那个就是,记住U盘是sda、sdb、sdc还是别的sd?,然后再用dd工具导入镜像,可搜索“dd写iso到U盘”,网上有很多教程(搜索时不用加引号)。
注意在制作时不要挂载U盘,windows下应该没有这个问题,Linux下要umount,但不要弹出(如udisksctl power-off),mount和umount是linux的基本命令,不会建议学一下,可以搜索“Linux umount”。
两个镜像分别导入两张U盘,Ubuntu导入至少8G的U盘,Kali Linux Installer导入至少8G的U盘、Everything可能需要大一些(大于10G应该够了),具体看iso文件大小。
三、分区和格式化(创建文件系统)
1. 进入Ubuntu: 我们已经安装好了两个镜像,首先插入导入Ubuntu的U盘,进入USB ROM系统,UEFI或Legacy怎么进入U盘启动盘的教程网上实在太多了,可以搜索“<电脑型号>进入u盘启动”,电脑型号根据自己的系统填上。选择Try Ubuntu,不要装。 2. 打开终端:一定确保移动硬盘里没有需要的数据!需要格式化! <Ctrl>+<Alt>+t 组合键或者在程序列表里打开终端,gdisk /dev/sdx ,这里的sdx 是你的移动硬盘,方法跟上一节一样,先ls /dev ,然后插上U盘再ls /dev ,多出来的那个就是(后文所有sdx都是这个方法确定,命令中需代替sdx);然后o 创建新GPT表;n 加一个分区第一次出现的提示Partition number是分区号,默认就好,第二次是开始扇区First sector,默认就好,第三次结束扇区Last sector要输入分区大小,第四次是类型。我们要的做的分区如下:
/dev/sdx1, 4.0 GiB, 类型 8301, Linux 保留, 挂载在/boot
/dev/sdx2, 2.0 MiB, 类型 ef02, BIOS 启动分区, 会写入grub2
/dev/sdx3, 128.0 MiB, 类型 ef00, EFI 分区
/dev/sdx4, 8.0 GiB, 类型 8200, Linux swap 交换内存分区
/dev/sdx5, <剩余大小>, 类型 8300, Linux 文件系统(主分区)
在第三个提示时输入的格式是+4G、+2M、+128M、+8G,最后一个没有特殊需求直接默认把剩余空间全给主分区 第四个提示分区类型输入类型对应代码
添加5个分区的方式一样,参数不同 第4个分区swap只要8G就差不多了,网上有文章介绍swap大小怎么设置,但是,我们不知道我们的系统会插在什么硬件上,所以内存大小不一定,更不用提休眠! 所以8G就差不多了,不用太大
然后w 写入 3. 加密分区:
sudo cryptsetup luksFormat --type=luks1 /dev/sdx1
sudo cryptsetup luksFormat /dev/sdx4
sudo cryptsetup luksFormat /dev/sdx5
注意第一个分区 (Linux reserved) 要用luks1否则可能grub2不支持 这里的密码可以设置成一样的,但要复杂一点,但一定要记住,不同密码不会更安全。(这里的加密直接加密分区,所以忘记了就只能数据全没了) 4. 打开加密分区映射(创建mapper)
sudo cryptsetup open /dev/sdx1 LUKS_BOOT
sudo cryptsetup open /dev/sdx4 LUKS_SWAP
sudo cryptsetup open /dev/sdx5 LUKS_ROOT
5. 创建文件系统
sudo mkfs.ext4 -L boot /dev/mapper/LUKS_BOOT
sudo mkfs.vfat -F 16 -n EFI-SP /dev/sda3
sudo mkswap -L swap /dev/mapper/LUKS_SWAP
sudo mkfs.btrfs -L root /dev/mapper/LUKS_ROOT
6. 关闭加密分区映射
sudo cryptsetup close LUKS_BOOT
sudo cryptsetup close LUKS_SWAP
sudo cryptsetup close LUKS_ROOT
四、装Kali Linux
1. 进入导入Kali Linux镜像的U盘,方法同上一节的1 2. 进入Advanced Options -> Graphical Expert Install,选其它的本教程不适用 3. 设置语言地区 (Choose language):语言推荐使用英文,否则使用时可能会有不测,地区建议选中国,当然可以选别的(在使用中出现时间不对的问题在后面章有讲解)。设置中国时区方法是先other -> Asia -> China。Configure locales中建议首选en_US.UTF-8,在Additional locales中加入zh_CN.UTF-8,GBK加不加根据自己情况(不加基本没有问题),System locale建议选en_US.UTF-8。(如果语言问题导致安装错误,请自行搜索) 4.\ Configure the keyboard:中间两个盲人辅助和语音合成是针对无障碍设计,可以自行搜索设置,这里直接跳过。键盘建议American English,可以根据需求改动(部分键盘键位不同),个人感觉美国和中国键盘分布好像没有区别 5. Detect and mount intallation medium:直接continue,全自动 6. Load debconf preconfiguration file:直接continue 7. Load installer components from installation medium:要选5个:crypto-dm-modules 、fdisk-udeb 、mbr-udeb 、parted-udeb 、rescue-mode 。如果没有特殊需求,不用选多。然后continue 8. Detect network hardware:直接continue,可能要你装驱动,这里不要装(这里如果装了可能会找不到网络,但根据实现情况来确定,不行换一个选择) 9. Configure the network:continue;设置等3秒一般够了,可以加长;一般电脑会有两个以上选择无线或有线,无线是wlan0、有线是eth0(名字也许会不同),推荐使用有线,不容易出错,无线好像不支持5G,可能是不支持802.11ac,本人没有深究,但是这里不支持并不影响实际使用时的情况。一定要保证联网! Auto-configure选yes;3秒;Hostname是机器的名称(不是用户名),可以随便写,但不建议在任何的命名中包含空格、中文(中文命名可能会出严重错误);Domain域名没有就写localhost(可以填其它的,只要记得住) 10. Set up users and passwords:shadow passwords可以安全一点;用户名随意,但也不要有空格和中文,但最好不要用“user”这种;account名也随意;root密码最好复杂(否则可能被黑),但一定要记住(否则进不了系统) 11. Configure the clock:随意用不用在线时间 (NTP) ,然后是时区,只要是中国的地区都一样,想用UTC也无所谓 (只是每次看时间要做加减法)
这时候不要继续!
<Ctrl> + <Alt> + <F3> <Enter> 进文本终端 12. ls /dev 看到有一个有sdx1 sdx2 sdx3 sdx4 sdx5(x为字母)的就是我们要装的移动硬盘(如果有多个5个分区的,fdisk -l /dev/sdx 看一下哪个设备和刚刚一样),记住sdx,然后
cryptsetup open /dev/sdx1 LUKS_BOOT
cryptsetup open /dev/sdx4 LUKS_SWAP
cryptsetup open /dev/sdx5 LUKS_ROOT
*这里的密码是加密分区的密码(如果设了不一样的要对应) 密码错误会有提示“No key available with this passphrase.”,重执行当前指令再输遍密码 可以ls /dev/mapper 看一下是不是都成功打开了,正常会有LUKS_BOOT 、LUKS_SWAP 、LUKS_ROOT 这三个,还有一个control(不重要)。(如果没有前面三个且输密码时没有错误,那就不知道为什么了)
<Ctrl> + <Alt> + <F5> 回图形界面 13. Detect disks:continue 14. Partition disks: Manual;打到LUKS_BOOT下的#1 4.3GB ext4这一行,双击,双击Use as,双击Ext4那一行,Format the partition双击改yes,双击Mount point,双击/boot,双击Mount options,勾选noatime,continue,双击Done(其它三个默认就好);双击LUKS_ROOT下的那一行,Use as -> btrfs,Format: yes,Mount point -> /(根目录),Mount options->noatime,Done;LUKS_SWAP下那一个一般不用改,正常点进去就是Use as: swap area就对了,不对再改。然后Finish partitioning and write changes to disk,正常是:
Encrypted volume (LUKS_BOOT) as ext4
Encrypted volume (LUKS_ROOT) as btrfs
Encrypted volume (LUKS_SWAP) as swap
如果不对一定要回去改正,不多不少只能有这三条,注意是否对应(否则可能格式化电脑的硬盘) 确认无误后,在Write the changes to disks?下选yes
<Ctrl> + <Alt> + <F3> <Enter> 进文本终端 df 指令查看移动硬盘情况/dev/mapper/LUKS_ROOT在/target,/dev/mapper/LUKS_BOOT在/target/boot,UEFI启动模式会有/target/boot/efi,但绑定的硬件不对,一定要改:
mkdir /mnt/point
mount -o subvol=/ /dev/mapper/LUKS_ROOT /mnt/point
cd /mnt/point
btrfs subvolume create @
btrfs subvolume create @home
btrfs subvolume create @root
btrfs subvolume create @snapshots
btrfs subvolume list .
找到path @的那一行,用它的ID(一般是257,重装可能是256等),替换下面的257
btrfs subvolume set-default 257 .
然后:
cd /
umount /mnt/point
umount /target/boot/efi # 只有UEFI模式有
umount /target/boot
umount /target
mount -o subvol=@ /dev/mapper/LUKS_ROOT /target
mkdir /target/boot
mkdir /target/etc
mkdir /target/media
mkdir /target/snapshots
mount /dev/mapper/LUKS_BOOT /target/boot
mount -o subvol=@rootfs /dev/mapper/LUKS_ROOT /mnt/point
cp /mnt/point/etc/fstab /target/etc/fstab
正常上述命令会有几个提示文件夹已存在,那就跳过那条命令 umount /mnt/point 命令很关键,否则会改原系统的引导 然后blkid -s PARTUUID -o value /dev/sdx3 出来一串,拍下来 然后nano /target/etc/fstab ,改成:
PARTUUID=<刚刚拍的> /boot/efi vfat umask=0077 0 1
/dev/mapper/LUKS_ROOT / btrfs defaults,noatime,ssd,subvol=@ 0 0
/dev/mapper/LUKS_BOOT /boot ext4 defaults,noatime 0 1
/dev/mapper/LUKS_ROOT /home btrfs defaults,noatime,ssd,subvol=@home 0 2
/dev/mapper/LUKS_ROOT /root btrfs defaults,noatime,ssd,subvol=@root 0 3
/dev/mapper/LUKS_ROOT /snapshots btrfs defaults,noatime,ssd,subvol=@snapshots 0 4
/dev/mapper/LUKS_SWAP none swap sw 0 0
只有第三行是LUKS_BOOT! <刚刚拍的>替换成刚刚拍的一串(不留<>),要删掉原来的UUID那一行(其实就是把UUID=????-????改成PARTUUID=????????-????-????-????????),这是为了移动硬盘在新设备上时可以识别,因为PARTUUID是硬盘独有的 nano保存是<Ctrl> + o,关闭是<Ctrl> + x,保存并关闭 然后
umount /mnt/point
mkdir /target/boot/efi
mount /dev/sdx3 /target/boot/efi
mount -o subvol=@home /dev/mapper/LUKS_ROOT /target/home
mount -o subvol=@root /dev/mapper/LUKS_ROOT /target/root
最后df 看一下是不是/target/boot/efi上是/dev/sdx3,如果是其它的一定不要继续,要重新umount /target/boot/efi ,mount /dev/sdx3 /target/boot/efi ,否则影响原系统引导!
<Ctrl> + <Alt> + <F5> 回图形界面
15. Install the base system:选linux-image-5.14.0-kali4-amd64;选generic initrd 16. Configure the package manager:continue 17. Select and install software:根据喜好选择。桌面我用过Xfce、KDE,Xfce比较轻量级(小)但可能不好看(可以换主题),KDE可能高分辨率屏会支持更好,个人喜欢KDE,当然也可以试试GNOME(如果想试试的可以一个个试,Kali默认是Xfce)(每次只能选一个)。包根据需求,top10和default基本都要装,large和everything(只有Everything的镜像才有)可以考虑,也可以以后装。(建议不用急着装,因为装的更多每次更新就会更多)
不要装boot loader! 18. 选Continue without boot loader否则会不成功,甚至改掉原系统引导!
<Ctrl> + <Alt> + <F3> <Enter> 进文本终端
19. 配置grub2 输入
for n in dev proc sys run etc/resolv.conf; do mount --bind /$n /target/$n; done
chroot /target
mount -a
如果出错,检查命令是否正确,如果命令正确,那么就是上文的命令中有输入错误(在本人的四次安装中出现过一次错误,重做上文中的部分命令解决,不同错误不同解决方法)。易错的地方如/dev误拼成/deb;LUKS_ROOT和LUKS_BOOT搞错;每一步mount和umount有没有报错等。 但如果实在不行,从分区和格式化(创建文件系统)再来一遍,确保每个指令都正确,如果还是同样的问题,您可以私信我,我如果看到会尝试帮助您
然后安装
apt-get install grub-common grub-efi-amd64 os-prober
apt-get install cryptsetup-initramfs
然后
echo "KEYFILE_PATTERN=/etc/luks/*.keyfile" >>/etc/cryptsetup-initramfs/conf-hook
echo "UMASK=0077" >>/etc/initramfs-tools/initramfs.conf
mkdir /etc/luks
dd if=/dev/urandom of=/etc/luks/boot_os.keyfile bs=4096 count=1
chmod u=rx,go-rwx /etc/luks
chmod u=r,go-rwx /etc/luks/boot_os.keyfile
cryptsetup luksAddKey /dev/sdx1 /etc/luks/boot_os.keyfile
cryptsetup luksAddKey /dev/sdx4 /etc/luks/boot_os.keyfile
cryptsetup luksAddKey /dev/sdx5 /etc/luks/boot_os.keyfile
echo "LUKS_BOOT UUID=$(blkid -s UUID -o value /dev/sdx1) /etc/luks/boot_os.keyfile luks,discard" >>/etc/crypttab
echo "LUKS_SWAP UUID=$(blkid -s UUID -o value /dev/sx4) /etc/luks/boot_os.keyfile luks,discard" >>/etc/crypttab
echo "LUKS_ROOT UUID=$(blkid -s UUID -o value /dev/sdx5) /etc/luks/boot_os.keyfile luks,discard" >>/etc/crypttab
/usr/sbin/update-initramfs -u -k all
由于没法复制,一定要核对命令! /etc/cryptsetup-initramfs/conf-hook和/etc/initramfs-tools/initramfs.conf原本都有内容,所以注意是>>不是>,后者是覆盖从头写!所以不放心可以nano打开写在最后 dd指令如果没有bs和count永远不会停下(写到硬盘满) 上述命令大致意思是在/etc/luks (/dev/sdx5) 中放入一个4096位的随机数密钥,用于解密所有分区,由于/dev/sdx5是由luks加密的,所以系统是安全的,密钥也不会被轻易破解
<Ctrl> + <Alt> + <F5> 回图形界面 20. Finish the installation:如果和Windows一起用就选No,用本地时间,如果和其它Linux一起用,默认Yes就好
如果至此没有问题出现,那么系统装好了,关机,接下来要装引导。
五、装引导
教程中安装grub2引导: 1. 插上导入Ubuntu的U盘,进入Ubuntu,选Try,不要装 2. <Ctrl> + <Alt> + t 进入终端 现在可以复制了 好耶! 3. 打开加密分区并挂载
sudo -i
cryptsetup open /dev/sdb1 LUKS_BOOT
cryptsetup open /dev/sdb5 LUKS_ROOT
cd /
mkdir /target
mount /dev/mapper/LUKS_ROOT /target
mount /dev/mapper/LUKS_BOOT /target/boot
mount /dev/sdb3 /target/boot/efi
for n in dev dev/pts proc sys sys/firmware/efi/efivars run etc/resolv.conf; do mount --bind /$n /target/$n; done
chroot /target
mount -a
4. nano /etc/default/grub 编辑grub 加上GRUB_ENABLE_CRYPTODISK=y 保存并退出 5. 更新grub
grub-install --removable /dev/sdb
update-grub
第一条命令会提示没有错误,第二条有一个错误是正常情况,因为Ubuntu镜像没有grub
如果上述过程一切正常,关机
然后拔掉U盘,留着我们的移动硬盘,像进入USB ROM一样,这次要进入USB-HDD 输入加密分区的密码,如果错了会进入grub rescue,看后文 出来密码栏后输入用户的密码 进去之后如果能打开FireFox,且可以上网(如果没有配置网到system settings里设置,和Windows或其它Linux差不多,自己研究一下吧),说明Standalone Kali Linux已安装成功! 可喜可贺!
至此,教程正文结束,如果有问题,下文列出了本人遇到过的问题。
BIOS或UEFI不识别系统
这里分为两种情况:
第一种
操作失误导致,且基本上是装引导过程出的问题,可以上网搜索,或者重做一遍装引导,确保每步正确,如果再不行,重装可能是最快的方法,如果还是同样的问题,则可能是第二种问题。
第二种
UEFI或Lagency不认为U盘是硬盘,这只发生在用U盘装系统(不推荐的方式),还移动硬盘无论是系统支持还是速度都更好。当然,如果强行要用U盘,据说可以通过虚拟软盘引导进U盘的grub,再引导,没有测试过,具体自行搜索。 如果还了移动盘依旧不行,建议认真阅读本教程。 如果本教程有问题,或有其它未提及的问题,可以私信我,我如果看到会尝试帮助。
还原U盘
在Kali Linux下,插上导入iso的盘(两张处理方式一样),gdisk /dev/sdx (sdx是插入的那张盘,不清楚可以先ls /dev,然后插上U盘再ls /dev,多出来的那个就是),o 建立新GPT表,n 新建分区,一路回车,全默认,然后w 写入,然后根据需要创建文件系统(格式化),如FAT32格式:mkfs.vfat -F 32 /dev/sdx1 ,格式化完成。这张U盘就可以恢复使用了。如果要格式化为别的格式,上网搜索mkfs.<需要的格式>
系统时间不对
如果同时用Windows和Linux基本都会有这个问题。 Linux系统时间设置的是国际标准时间,显示时间加上偏差(如中国是+8);但windows直接把系统时间设置成当地时间。 所以来回切换会出现时间早8小时晚8小时的问题。 解决方案可以网上搜索“Linux Windows 时间”,有很多解决方案可选。
Grub Rescue
一般分区密码输错会进入Grub Rescue,网上很多做法是ls ,然后对出现的每个类似(hd1,gpt1)样子的分区ls ,然后实测有可能不行,每个都提示类似unknown filesystem字样,所以怎么办呢?直接强制关机(长按开关机键),重启。实测次次有效且方便。当然也可以用
set root=(hdx,gpty)/boot/grub
set prefix=(hdx,gpty)/boot/grub
insmod normal
normal
(x,y代表数字,即ls不为unknown filesystem的那个分区) 一个个试真的比重启快吗…… 但是如果确定密码是对的,还是进不去,那么可能grub出问题了,请看下一章
apt install出现错误
错误做法: 好不容易装上了Kali Linux,也成功运行了,于是sudo apt update ,sudo apt upgrade 报错,提示一个libc???-common装了2.??版,但需要1.??版(?可能代表一个字母,本人忘记具体是什么了),然后怎么重输入都没有用。(本人的第三次安装经历)于是无奈之下习惯性地sudo purge libc????-common ,突然,图形界面没了,只有tty……
以上为错误做法!
一般Installer版iso或者是安装时没有选everything的用户不会碰到这种问题 这个问题经测试只会发生在用Everything版iso安装、或者sudo apt install kali-linux-everything 的电脑上,在装了everything后sudo apt update ,sudo apt upgrade 就会出错。(如果您没有这问题就跳过)
正确做法: 参考了网上的正确做法,正确做法是sudo apt install aptitude , sudo aptitude update ,sudo aptitude upgrade ,然后成功了!
使用过程中出错后备份并重装
使用Linux可能因为各种问题导致需要重装,那么数据如何备份? 我们还是需要另外两张U盘,只不过一张装Ubuntu镜像,另一张空着。 进入Ubunty后,Try Ubuntu,<Ctrl> + <Alt> + t 进入终端
sudo cryptsetup open /dev/sda1 LUKS_BOOT
sudo cryptsetup open /dev/sda5 LUKS_ROOT
mkdir /target
mount /dev/mapper/LUKS_ROOT /target
mount /dev/mapper/LUKS_BOOT /target/boot
解密并挂载,然后可以通过任意方式从/target里导出个人信息,一般认为个人信息会放在/home/<用户名>下,而装的应用不建议直接导出,因为系统重装应用可能不能使用,具体办法上网搜索“Linux备份”,只要解密并挂载了,后继步骤和其它系统备份没有什么区别。
注意事项
- 本教程仅做学习交流之用,任何后果由使用本教程者自己承担
- 本教程不推荐购买或使用任何品牌的硬件或软件
- 本教程只是分享Kali Linux独立系统 (Standalond Kali Linux) 的安装过程,具体安装过程根据实际情况而定,不保证能安装成功
- 请自行备份电脑和其它涉及的存储设备上的数据
- 操作不当或其它原因可能导致电脑上的原引导及硬盘内数据受影响
- 不保证支持所有版本的Kali Linux和硬件
- 本教程可能存在错误
- 本教程中没有包括的其它问题可以先上网搜索,也可以提问(可能很久才回复)
|