linux加密分区的创建和使用
最近装了fedora9,由于显示问题很大,又退回了f8.然后在f9安装时对文件的备份分区加了密,结果导致我不能恢复备份文件了,那个郁闷阿,一挂载
加密分区就提示我"mount: unknown filesystem type
'crypt_LUKS'",网上找了半天才找到解决办法,顺带也了解了linux对数据保护的强大
这里就对如何使用linux保护
硬盘里的敏感数据做个记录吧.加密数据用到的是强大的cryptsetup-luks.
linux的主流发行版本应该都默认安装了cryptsetup-luks.
cryptsetup并不能对现有数据加密,首先我们需要用它创建一个加密分区.这里我们假设创建好的空白分区为/dev/sda8.使用如下命令加密该
分区
# cryptsetup --verbose --verify-passphrase -c aes-cbc-plain luksFormat /dev/sda8
(需要注意的是如果这个分区里有你的数据,呵呵,会怎样呢?所以我们说要空白分区.)
Are you sure? (Type uppercase yes): YES (输入大写的YES来确定创建加密分区)
Enter LUKS passphrase: (输入创建密码)
Verify passphrase: (确认密码)
Command successful. (命令成功)
这样一个加密分区就建立好了.接下来我们需要创建一个可以挂载的逻辑分区并给它取个名字(这里是sda8)
# cryptsetup luksOpen /dev/sda8 sda8
Enter LUKS passphrase:
key slot 0 unlocked.
Command successful.
它将会被创建在/dev/mapper/下面.这里就是/dev/mapper/sda8
现在将该分区格式化为ext3文件系统.
# mkfs.ext3 /dev/mapper/sda8
接下来我们创建一个用于挂载的挂载点并挂载.
# mkdir /bak
# mount /dev/mapper/sda8 /bak
好了,现在你可以使用你的加密分区了.
使用完毕后为了保护数据的隐密,我们需要取消挂载并关闭加密分区.
# umount /bak
# cryptsetup luksClose sd8
(GAME OVER)
相关文档:
1. HCI层协议概述:
HCI提供一套统一的方法来访问Bluetooth底层。如图所示:
从图上可以看出,Host Controller Interface(HCI) 就是用来沟通Host和Module。Host通常就是PC, Module则是以各种物理连接形式(USB,serial,pc-card等)连接到PC上的bluetooth Dongle。
在Host这一端:application,SDP,L2cap等协议 ......
mail+uuencode
[root@room i386]# uuencode openvpn-2.0.5-1.i386.rpm openvpn-2.0.5-1.i386.rpm | mail -s youname@domain.com openvpn-2.0.5-1.i386.rpm
如果没有找到 uuencode 命令,则需要安装sharutils
[root@room i386]# yum install sharutils
未做测试,不知道是否可行,暂做保存 ......
Linux基本指令
alias
替指令取别名
◎ alias 列出目前系统所使用的所有指令别名
◎ alias 别名=Linux 指令名称 此时若输入「别名」则功能会跟输入「Linux 指令名称」相同
◎ 若想要每次开机都使用此别名,在 bash 中,一定要在 .bashrc 中指定,如果是 tcsh 中,则要在 .cshrc 中指定
ar
将许多档案备存成一个或多个 ......
众所周知,网络安全是一个非常重要的课题,而服务器是网络安全中最关键的环节。Linux被认为是一个比较安全的Internet服务器,作为一种开放源代码操作系统,一旦Linux系统中发现有安全漏洞,Internet上来自世界各地的志愿者会踊跃修补它。然而,系统管理员往往不能及时地得到信息并进行更正,这就给黑客以可乘之机。相对于这 ......
可以采用sysV的shmget + shmat 实现。
但是我更喜欢shm_open + mmap 更简单。
#---------------------writer.c----------------------------
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
......