本人近期闲来无聊,恰逢增设U盘,又念黑网之事萦绕心头,故装kali-linux-2017.1-amd64,以解手痒之苦……无图无图……呜呼哀哉……

  1. 部署Kali Live USB
    (1) 选择一个容量大于或等于8G,IO性能尚可的U盘,删除所有分区。
    注意:删除分区过程中,U盘原有数据会全部丢失。
    (2) 使用Win32 Disk Imager将Kali Live镜像写入到U盘中。
    Win32 Disk Imager支持按镜像分区,即该软件会按镜像文件的大小自动创建相应的分区,并将余下部分留空。如果使用USB Image Tool,自动建立的分区将会充满整个U盘,这不便于Persistence功能的部署。
    (3) 重新启动电脑,在Secure Boot功能关闭的情况下从U盘启动,选择Kali Live Persistence(如不需要进行系统永久化部署,可以选择Kali Live),确认。
    (4) 若系统正常启动,则部署成功。

  2. 部署Persistence功能
    (1) 运行终端(Terminal),输入gparted以启动分区管理软件,在软件界面中选择U盘对应的存储设备(一般为/dev/sdb),对U盘中自由空间(未被分区的空间)进行分区并格式化,文件系统为ext4,卷标(Label)为persistence。记下该分区的点(一般为/dev/sdb3)。
    (2) 关闭分区管理软件(gparted),在终端中依次输入如下命令:
    mkdir /mnt/usb
    mount /dev/sdb3 /mnt/usb
    echo “/ union” >> /mnt/usb/persistence.conf
    umount /mnt/usb
    说明:其中/dev/sdb3为前述自由空间格式化后的挂载点,应根据实际情况确定。
    (3) 重启系统。
    注意:本次(即第一次)系统重启后数据会丢失,即永久化部署不会生效。再次启动系统后永久化部署才会生效。因此,先进行软件安装和升级,再处理永久化部署的操作顺序不具有可行性。
    (4) 第一次重启并再次进入系统后,在可在桌面创建一文件夹以供测试,若系统再次重启后文件夹不丢失,则部署有效。

  3. 进行系统及软件包更新
    依次执行以下命令:
    apt update
    apt full-upgrade –y
    apt-get update
    apt-get upgrade

  4. 安装fcitx中文输入法
    (1) 首先安装fcitx输入法支持框架,在终端执行以下命令:
    apt-get install fcitx
    fcitx需要在安装后进行重启才能运行。
    (2) 若要安装谷歌拼音输入法,在终端输入apt-get install fcitx-googlepinyin即可。
    (3) 若要安装搜狗拼音输入法:
    到搜狗输入法官网下载对应系统平台(本机为Linux x64)的软件安装包(deb),之后在安装包所在目录打开终端,输入dpkg -i XXX.deb(XXX.deb为安装包名称)。若提示缺乏依赖,则需要继续输入apt-get install –f。

  5. 安装TeamViewer远程控制软件
    (1) 首先,到TeamViewer官网下载对应系统平台(Debian)的软件安装包(deb)。
    (2) 由于TeamViewer只有i386的软件包,因此若需在adm64的平台(本机平台为amd64)上安装,需要在dpkg功能中添加架构支持。在终端中输入:
    dpkg --add-architecture i386
    然后执行apt-get update以完成架构支持组件的安装。
    (3) 安装TeamViewer
    在安装包所在目录打开终端,输入dpkg -i XXX.deb(XXX.deb为安装包名称)。若提示缺乏依赖,则需要继续输入apt-get install –f。安装完成后,可在应用程序列表中找到TeamViewer,启动运行即可。

  6. 安装办公软件(以Open Office为例)
    (1) 到软件官网下载对应系统平台的安装包及语言包(可选),下载完成后将其解压,得到两个文件夹。
    (2) 进入解压后的文件夹中存放大量安装包(deb文件)的位置,在该位置打开终端,输入:dpkg -i *.deb
    (3) 若提示缺乏依赖,则需在终端中输入apt-get install –f以安装依赖并完成配置。

  7. 执行安装包和无关依赖清理
    在终端中依次输入:
    apt autoremove
    apt clean
    apt-get autoremove
    apt-get clean

  8. 备份系统
    在本人的测试中,未能成功地使用Symantec Ghost对U盘进行全盘备份和恢复,恢复后的U盘会丢失Linux系统的启动信息,不排除本人操作存在问题的可能性。
    但由于Linux不同于Windows的机制,使得对系统的备份可以通过复制文件实现。据观察,对系统的修改储存于persistence分区(详见第二步“部署Persistence功能”)。因此只要将这一分区备份即可保留对系统的修改。在恢复时,只要在已经部署Kali Live的U盘上恢复该分区,即可直接实现永久化和恢复系统的作用。由于本人通过Symantec Ghost进行分区备份和恢复的企图再次失败,因此个人建议通过Linux系统的tar命令实现备份与恢复。
    示例(以下操作均在Kali Live环境下进行):
    (1) 首先对待操作分区进行挂载:
    mkdir /mnt/usb
    mount /dev/sdb3 /mnt/usb
    (2) 进行备份,并排除与系统无关的目录:
    tar -cvpzf [压缩文件目标路径] /mnt/usb
    (3) 备份完成后,卸载分区
    umount /mnt/usb
    (4) 进行恢复时,需要首先部署Kali Live并建立persistence分区,将其挂载至前述挂载路径(/mnt/usb),然后执行解压命令:
    tar -xvpzf [压缩文件路径]
    (5) 重启后即可实现恢复。
    (6) 如需实现更高级的压缩指令,请参考下述内容。

    tar命令格式:
    tar [参数] 压缩文档的名称 备份来源路径

    参数:
    -c :建立一个压缩文件 (create);
    -x :解开一个压缩文件;
    -t :查看tarfile里面的文件;
    注意:在参数中,c/x/t仅能存在一个,不可同时存在,因为不可能同时压缩与解压缩。
    -z :采用 gzip 压缩;
    -j :采用 bzip2 压缩;
    -v :压缩的过程中显示正在处理的文件,不建议在后台处理时采用;
    -f :目标压缩文件名,此参数必须位于最后,即此参数后不能接其他参数,必须直接接目标压缩文件名;
    -p :使用文件的原有属性,即文件属性不会依据使用者的权限而改变;
    -P :(大写)在压缩时使用绝对路径;
    -N :(大写)比后面接的日期(yyyy/mm/dd)更新的文件才会被打包;
    -C :(大写)切换工作路径,即切换解压路径;
    --exclude [FILE]:压缩时排除指定文件。