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)
相关文档:
Service Discovery Protocol(SDP)提供一种能力,让应用程序有方法发现哪种服务可用以及这种服务的特性。
服务发现协议(SDP或Bluetooth SDP)在蓝牙协议栈中对蓝牙环境中的应用程序有特殊的含意,发现哪个服务是可用的和确定这些可用服务的特征。SDP定义了bluetooth client发现可用bluetooth server服务和它们的特征的方法。 ......
Linux基本指令
alias
替指令取别名
◎ alias 列出目前系统所使用的所有指令别名
◎ alias 别名=Linux 指令名称 此时若输入「别名」则功能会跟输入「Linux 指令名称」相同
◎ 若想要每次开机都使用此别名,在 bash 中,一定要在 .bashrc 中指定,如果是 tcsh 中,则要在 .cshrc 中指定
ar
将许多档案备存成一个或多个 ......
本章介绍 POSIX 线程的基本线程编程例程。本章介绍缺省线程(即,具有缺省属性值的线程),这是多线程编程中最常用的线程。本章还介绍如何创建和使用具有非缺省属性的线程。
本章介绍的 POSIX 例程具有与最初的 Solaris 多线程库相似的编程接口。
线程库
下面简要论述了特定任务及其相关手册页。
创建缺省线程
如果未 ......
我们来配置一个filter表的防火墙
1、查看本机关于IPTABLES的设置情况
[root@tp ~]# iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source desti ......
可以采用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>
......