linux學(xué)習(xí)筆記-12存儲(chǔ)結(jié)構(gòu)與文件劃化

從"/"開始

  • 目錄名稱嚴(yán)格區(qū)分大小寫

  • 主要常見目錄的定義

    /boot    開機(jī)所需文件——內(nèi)核,開機(jī)菜單及所需配置文件等
    /dev    任何設(shè)備與接口都以文件形式存放在此目錄
    /etc    配置文件
    /home    用戶主目錄
    /bin    單用戶維護(hù)模式下還能夠被操作的命令
    /lib    開機(jī)時(shí)用到的函數(shù)庫及/bin與/sbin下面命令要調(diào)用的函數(shù)
    /sbin    開機(jī)過程中需要的
    /media    一般掛載或刪除的設(shè)備
    /opt    放置第三方的軟件
    /root    系統(tǒng)管理員的主文件夾
    /srv    一些網(wǎng)絡(luò)服務(wù)的數(shù)據(jù)目錄
    /tmp    任何人均可使用的“共享”臨時(shí)目錄
    /proc    虛擬文件系統(tǒng),例如系統(tǒng)內(nèi)核,進(jìn)程落萎,外部設(shè)備及網(wǎng)絡(luò)狀態(tài)等
    /usr/local    用戶自行安裝的軟件
    /usr/sbin    非系統(tǒng)開機(jī)時(shí)需要的軟件/命令/腳本
    /usr/share    幫助與說明文件术羔,也可放置共享文件。
    /var    主要存放經(jīng)常變化的文件,如日志。
    /lost+found    當(dāng)文件系統(tǒng)發(fā)生錯(cuò)誤時(shí),將一些丟失的文件片段存放在這里
    

物理設(shè)備命名

  • 硬盤由大量的扇區(qū)組成式散,其中第一個(gè)扇區(qū)保存著主引導(dǎo)記錄與分區(qū)表信息,單個(gè)扇區(qū)為512b,其中主引導(dǎo)要占446b,每記錄一個(gè)分區(qū)要 16b,所有最多只能有4個(gè)主分區(qū)打颤,但是可以是3個(gè)主分區(qū)加一個(gè)擴(kuò)展分區(qū)暴拄,而這個(gè)擴(kuò)展分區(qū)又可以分為無數(shù)個(gè)邏輯分區(qū),就可以用邏輯分區(qū)來 完成多分區(qū)的需求了编饺。

  • Linux系統(tǒng)中一切都是文件乖篷,那么硬件也不外乎。既然是文件就必須有名稱啦透且,系統(tǒng)內(nèi)核的設(shè)備管理器(Udev)會(huì)自動(dòng)將硬件名稱規(guī)范起來撕蔼,讓我們可以通過設(shè)備名稱猜出設(shè)備大致的屬性以及分區(qū)信息等,Udev會(huì)一直以守護(hù)進(jìn)程的形式運(yùn)行并偵聽來自內(nèi)核發(fā)出的uevent來管理/dev目錄下的設(shè)備文件

  • 常見的設(shè)備命名方法

    IDE設(shè)備    /dev/hd[a-d]
    SCSI/SATA/U盤    /dev/sd[a-p]
    軟驅(qū)    /dev/fd[0-1]
    打印機(jī)    /dev/lp[0-15]
    光驅(qū)    /dev/cdrom
    鼠標(biāo)    /dev/mouse
    磁帶機(jī)    /dev/st0或/dev/ht0(IDE設(shè)備)
    
  • 而一臺(tái)主機(jī)上可以有多塊硬盤秽誊,系統(tǒng)便會(huì)用a-p來代表16塊不同的硬盤(默認(rèn)從a開始分配)且分區(qū)編號(hào)也很有講究.主分區(qū)編號(hào)從1開始至4結(jié)束鲸沮,按順序(也可指定分配數(shù)字)。邏輯分區(qū)從編號(hào)5開始按順序(也可指定分配數(shù)字)

  • 示例:/dev/sda5

    • 首先/dev目錄下的都是硬件锅论。
    • 其次sd開頭的是存儲(chǔ)設(shè)備讼溺。
    • 然后a代表第一個(gè)被識(shí)別到的設(shè)備。
    • 最后5代表它是邏輯分區(qū)最易。
    • 簡(jiǎn)單來講:"這是第一塊硬盤設(shè)備中編號(hào)為5的邏輯分區(qū)"

文件系統(tǒng)與數(shù)據(jù)資料

  • 常見的文件系統(tǒng)怒坯,Ext3, Ext4, XFS

  • 因?yàn)橛脖P要保存的數(shù)據(jù)實(shí)在太多了,所以一定要有個(gè)叫super block的"硬盤地圖"并在上面記錄著整個(gè)文件系統(tǒng)的信息藻懒,但絕不可能把數(shù)據(jù)直接寫到這個(gè)大地圖中剔猿,因?yàn)檫@樣的話會(huì)導(dǎo)致它"很大",查詢與寫入速度會(huì)變得非常慢嬉荆,于是每個(gè)文件的權(quán)限與屬性都會(huì)記錄在inode table中(每個(gè)文件都會(huì)占用一個(gè)獨(dú)立的inode表格归敬,默認(rèn)為128bytes),記錄著:

    • 該文件的訪問權(quán)限(read,write,execute)
    • 該文件的所屬主與組(owner,group)
    • 該文件的大小(size)
    • 該文件的創(chuàng)建或狀態(tài)修改時(shí)間(ctime)
    • 該文件的最后一次訪問時(shí)間(atime)
    • 該文件的修改時(shí)間(mtime)
    • 文件的特殊權(quán)限(SUID,SGID,SBIT)
    • 該文件的真實(shí)數(shù)據(jù)地址(point)
  • 而實(shí)際的數(shù)據(jù)則保存在block塊中(大小可以是1K、2K或4K)弄慰,下面的說明中,我們以4K為例蝶锋。

    • 情況一:文件體積很新剿(1K),那么依然會(huì)占用一個(gè)block扳缕,潛在的浪費(fèi)3K慌闭。
    • 情況二:文件體積很大(5K),那么會(huì)占用兩個(gè)(5K-4K剩下的1K也要占用一個(gè)block)躯舔。 一個(gè)inode大小僅為128bytes(Ext3)驴剔,但記錄一個(gè)block則消耗4bytes,當(dāng)寫inode被占滿后會(huì)取出一個(gè)block用于號(hào)碼記錄而不再是保存實(shí)際的文件系統(tǒng)

掛載

  • 掛載操作指的是當(dāng)用戶需要使用硬盤設(shè)備或分區(qū)數(shù)據(jù)時(shí)粥庄,需要先將其與一個(gè)已存在的目錄文件做關(guān)聯(lián)丧失,而這個(gè)動(dòng)作就叫"掛載"

  • mount命令用于掛載文件系統(tǒng),格式為:"mount 文件系統(tǒng) 掛載目錄"

    • -a 掛載所有在/etc/fstab中定義的文件系統(tǒng)
    • -t 指定文件系統(tǒng)的類型
  • mount命令只需要填寫設(shè)備與掛載目錄參數(shù)即可惜互,一般來講系統(tǒng)會(huì)自動(dòng)去判斷要掛載文件的類型

  • 如果需要將設(shè)備"/dev/sdb2"掛載到"/backup"目錄布讹,文件格式為ext4

    mount /dev/sdb2 /backup
    #不用指定格式
    
  • 使用mount命令執(zhí)行掛載操作后立即就可以使用該文件系統(tǒng)了,但重啟后則失效训堆。如果想讓重啟后依然生效描验,我們就必須將掛載信息按照指定的格式寫入到/etc/fstab文件中。 "/etc/fstab"包含著文件系統(tǒng)與掛載信息等內(nèi)容坑鱼,因?yàn)檫^于重要膘流,所以只有root用戶才可以編輯它

  • 填寫格式如下:"設(shè)備文件 掛載目錄 格式類型 權(quán)限選項(xiàng) 自檢 優(yōu)先級(jí)"

    • 設(shè)備文件:一般為設(shè)備的路徑+名稱,也可以寫UUID值等鲁沥。
    • 掛載目錄:指定要掛載到的目錄呼股,需掛載前創(chuàng)建好。
    • 格式類型:即指定文件系統(tǒng)的格式画恰,比如有ext3/ext4/xfs/iso9660/swap等卖怜。
    • 權(quán)限選項(xiàng):默認(rèn)為defaults(rw,suid,dev,exec,auto,nouser,async),可指定acl或quota等阐枣。
    • 自檢:若為1則開機(jī)后進(jìn)行磁盤自檢马靠,0為不自檢。
    • 優(yōu)先級(jí):若"自檢"為1蔼两,則可對(duì)多塊硬盤進(jìn)行優(yōu)先級(jí)設(shè)置甩鳄。
  • 定義設(shè)備"/dev/sdb2"開機(jī)自動(dòng)掛載到"/backup"目錄,文件格式為ext4额划,默認(rèn)權(quán)限且無需開機(jī)自檢

    /dev/sdb2  /backup ext4 defaults 0 0
    
  • umount命令用于撤銷已經(jīng)掛載的設(shè)備文件妙啃,格式為:"umount [掛載點(diǎn)/設(shè)備文件]

    unmount /dev/sdb2
    

添加硬盤設(shè)備

  • 當(dāng)全新安裝了一塊新的硬盤設(shè)備后,為了更充分、安全的利用硬盤空間首先要進(jìn)行磁盤的分區(qū)揖赴,然后格式化馆匿,最后掛載使用

創(chuàng)建分區(qū)

  #查看所有硬盤,包括沒有掛載
  fdisk -l

  # 輸入p查看當(dāng)前分區(qū)詳情
  p
  Disk /dev/sdb: 5 GiB, 5368709120 bytes, 10485760 sectors
  Units: sectors of 1 * 512 = 512 bytes
  Sector size (logical/physical): 512 bytes / 512 bytes
  I/O size (minimum/optimal): 512 bytes / 512 bytes
  Disklabel type: dos
  Disk identifier: 0x0c114c38

  #輸入n新建新的分區(qū)
  n
  Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)

  #選擇分區(qū)類型
  Select (default p):p

  #設(shè)置分區(qū)號(hào)燥滑,一般情況下是3主分區(qū)渐北,一個(gè)邏輯分區(qū)
  分區(qū)號(hào) (1-4, default 1): 1

  #磁盤的起始扇區(qū),直接回車即可:
  First sector (2048-10485759, default 2048):2048

  #鍵入+2G铭拧,代表該分區(qū)的大小為2G
  Last sector, +sectors or +size{K,M,G,T,P} (2048-10485759, default 10485759): +2G

  #敲擊字符w赃蛛,將上述分區(qū)信息保存
  w
  The partition table has been altered.
  Calling ioctl() to re-read partition table.
  Syncing disks.

  #讓內(nèi)核同步分區(qū)信息(此步驟僅在沒有找到分區(qū)設(shè)備的情況下才需要執(zhí)行,非必要?jiǎng)幼鞑笃小#?  partprobe

格式化為xfs文件系統(tǒng)

  • 在Linux系統(tǒng)中用于格式化的命令是mkfs呕臂,它支持的文件類型有:cramfs,ext2,ext3,ext4,fat,msdos,xfs,btrfs,minix,vfat

  • 使用方法非常的簡(jiǎn)單:"mkfs.文件類型名稱",例如要格式分區(qū)為ext4肪跋,則命令為"mkfs.ext4 硬盤分區(qū)名稱"

    #將上面的分區(qū)格式化為ext4文件系統(tǒng)
    mkfs.ext4 /dev/sdb1
    

將硬盤掛載在目錄中

  • 將硬盤設(shè)備掛載到/newFS目錄

    mkdir /newFS
    mount /dev/sdb1 /newFS/
    

設(shè)置系統(tǒng)啟動(dòng)后自動(dòng)掛載該硬盤設(shè)備

  • 編緝fstab文件

    vim /etc/fstab
    /dev/sdb1 /newFS ext4 defaults 0 0
    # 我們現(xiàn)在就可以通過訪問/newFS目錄來使用硬盤資源
    

查看硬盤的使用情況

  • df命令用于查看掛載點(diǎn)信息與磁盤使用量歧蒋,格式為:"df [選項(xiàng)] [文件]"

  • 參數(shù)

    • -a 顯示出所有的文件系統(tǒng)(包括虛擬的)
    • --total 展出出總體使用量
    • -h 更易讀的容量格式如1K,234M,2G...
    • -i 展示出Inode的信息(默認(rèn)是磁盤使用信息)
    • -T 顯示出文件系統(tǒng)的類型
  • 查看掛載信息與硬盤使用量:"df -h"

    df -h
    文件系統(tǒng)        容量  已用  可用 已用% 掛載點(diǎn)
    udev            973M     0  973M    0% /dev
    tmpfs           199M  6.3M  193M    4% /run
    /dev/sda1        18G  4.8G   12G   29% /
    tmpfs           992M  212K  992M    1% /dev/shm
    tmpfs           5.0M  4.0K  5.0M    1% /run/lock
    tmpfs           992M     0  992M    0% /sys/fs/cgroup
    tmpfs           199M   52K  199M    1% /run/user/1000
    /dev/sr0        1.4G  1.4G     0  100% /media/rancune/Ubuntu 16.04 LTS amd64
    /dev/sdb1       2.0G  3.0M  1.8G    1% /newFS
    
  • du命令用于查看磁盤的使用量,格式為:" du [選項(xiàng)] [文件]"

  • 參數(shù)

    • -a 評(píng)估每個(gè)文件而非目錄整體占用量州既。
    • -c 評(píng)估每個(gè)文件并計(jì)算出總占用量總和疏尿。
    • -h 更易讀的容量格式如1K,234M,2G...
    • -s 僅顯示占用量總和。
  • 查看newFS中文件所占空間

    du -sh /newFS/
    20K    /newFS/
    

swap分區(qū)

  • SWAP即交換分區(qū)是一種類似于Windows系統(tǒng)虛擬內(nèi)存的功能易桃,將一部分硬盤空間虛擬成內(nèi)存來使用褥琐,從而解決內(nèi)存容量不足的情況,因?yàn)镾WAP畢竟是用硬盤資源虛擬的晤郑,所以速度上比真實(shí)物理內(nèi)存要慢很多敌呈,一般只有當(dāng)真實(shí)物理內(nèi)存耗盡時(shí)才會(huì)調(diào)用SWAP

  • 創(chuàng)建swap分區(qū)

    # 新建分區(qū)同上
    # ...
    
    # 修改分區(qū)類型,輸入t
    t
    Selected partition 1
    
    # 查看可用的分區(qū)類型
    Hex code (type L to list all codes): L
    
    #輸入swap分區(qū)類型
    Hex code (type L to list all codes): 82
    
    #查看分區(qū)信息
    p
    
    #保存
    w
    
    #格式化為swap分區(qū)
    mkswap /dev/sdb1
    
    #啟動(dòng)swap分區(qū)
    swapon /dev/sdb1
    
    # 設(shè)置為開機(jī)后自動(dòng)掛載該SWAP分區(qū)設(shè)備
    vim /etc/fstab
    /dev/sdb1 swap swap defaults 0 0
    
    #查看當(dāng)前的內(nèi)存容量
    free -m
    

磁盤冗余陣列(RAID)

  • Redundant Array of Independent Disks造寝,即獨(dú)立的硬盤組磕洪,作用是防止硬盤物理損壞以及增加存儲(chǔ)設(shè)備的吞吐量。RAID常見的組合有0诫龙、1析显、5和10

  • RAID0:需要至少兩塊(含)硬盤,可以有效的提高硬盤的性能和吞吐量签赃,但沒有數(shù)據(jù)的冗余和錯(cuò)誤修復(fù)能力谷异,將多塊硬盤通過硬件或軟件的方式串聯(lián)在一起,成為一個(gè)大的卷集锦聊,將數(shù)據(jù)依次寫入到各個(gè)硬盤中歹嘹,這樣性能會(huì)極大提升,但若任意一塊硬盤故障則整個(gè)系統(tǒng)的數(shù)據(jù)都會(huì)受到破壞孔庭。

  • RAID1:需要至少兩塊(含)硬盤尺上,可以有效的提高數(shù)據(jù)資料的安全性和可修復(fù)性材蛛,但成本卻提高了,實(shí)現(xiàn)原來是在數(shù)據(jù)寫入硬盤時(shí)也會(huì)在另外一塊閑置的硬盤上生成鏡像文件怎抛,在不影響性能的情況下最大限度保證數(shù)據(jù)資料的可靠性卑吭,只要在一對(duì)鏡像盤中還有一塊硬盤可以使用,那么數(shù)據(jù)也不會(huì)丟失马绝,具有很好的硬盤冗余能力豆赏,雖然對(duì)數(shù)據(jù)來講絕對(duì)的安全,但成本卻明顯增加迹淌,磁盤利用率僅為50%

邏輯卷管理

磁盤容量配額

  • quota的磁盤配額可以限制用戶的硬盤可用空間或最大創(chuàng)建文件數(shù)量,并且還有軟/硬限制的區(qū)別:

    • 軟限制:當(dāng)達(dá)到軟限制時(shí)會(huì)提示用戶己单,但允許用戶在規(guī)定期限內(nèi)繼續(xù)使用唉窃。
    • 硬限制:當(dāng)達(dá)到硬限制時(shí)會(huì)提示用戶,且強(qiáng)制終止用戶的操作

虛擬文件系統(tǒng)

  • 隨著計(jì)算機(jī)系統(tǒng)的發(fā)展產(chǎn)生出了眾多的文件系統(tǒng)纹笼,為了使用戶在讀取或?qū)懭胛募r(shí)不用關(guān)心底層的硬盤結(jié)構(gòu)纹份,于是在Linux內(nèi)核中的軟件層為用戶程序提供了一個(gè)文件系統(tǒng)接口(VFS,Virtual File System),這樣就轉(zhuǎn)而統(tǒng)一對(duì)這個(gè)虛擬文件系統(tǒng)進(jìn)行操作啦廷痘。即實(shí)際文件系統(tǒng)在VFS下隱藏了自己的特性和細(xì)節(jié)蔓涧,使得我們?cè)谌粘J褂脮r(shí)覺得"文件系統(tǒng)都是一樣的"。

軟硬方式鏈接

  • 硬鏈接(hard link)可以被理解為一個(gè)"指向原始文件inode的指針"笋额,系統(tǒng)不為它分配獨(dú)立的inode與文件元暴,所以實(shí)際上來講硬鏈接文件與原始文件其實(shí)是同一個(gè)文件,只是名字不同兄猩。于是每添加一個(gè)硬鏈接茉盏,該文件的inode連接數(shù)就會(huì)增加1,直到該文件的inode連接數(shù)歸0才是徹底刪除枢冤。概括來說因?yàn)橛叉溄訉?shí)際就是指向原文件inode的指針鸠姨,即便原始文件被刪除依然可以通過鏈接文件訪問,但是不能跨文件系統(tǒng)也不能鏈接目錄文件

  • 軟鏈接也稱為符號(hào)鏈接(symbolic link)即"僅僅包含它索要鏈接文件的路徑名"因此能做目錄鏈接也可以跨越文件系統(tǒng)淹真,但原始文件被刪除后鏈接文件也將失效讶迁,如同Winodw?中的"快捷方式"

  • ln命令用于創(chuàng)建鏈接文件,格式為:"ln [選項(xiàng)] 目標(biāo)"核蘸,默認(rèn)創(chuàng)建的是硬鏈接

  • 命令參數(shù)

    • -s 創(chuàng)建"符號(hào)鏈接"(默認(rèn)是硬鏈接)
    • -f 強(qiáng)制創(chuàng)建文件或目錄的鏈接
    • -i 覆蓋前先詢問
    • -v 顯示創(chuàng)建鏈接的過程
  • 示例

    #創(chuàng)建一個(gè)/usr/hb/的軟鏈接
    ln -s /usr/hb/ /home/hb_link
    
    #刪除軟鏈接使用rm命令巍糯,注意,其末尾不能加“/”
    rm -rf /home/hb_link
    
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末客扎,一起剝皮案震驚了整個(gè)濱河市鳞贷,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌虐唠,老刑警劉巖搀愧,帶你破解...
    沈念sama閱讀 222,183評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡咱筛,警方通過查閱死者的電腦和手機(jī)搓幌,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來迅箩,“玉大人溉愁,你說我怎么就攤上這事∷乔鳎” “怎么了拐揭?”我有些...
    開封第一講書人閱讀 168,766評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵,是天一觀的道長奕塑。 經(jīng)常有香客問我堂污,道長,這世上最難降的妖魔是什么龄砰? 我笑而不...
    開封第一講書人閱讀 59,854評(píng)論 1 299
  • 正文 為了忘掉前任盟猖,我火速辦了婚禮,結(jié)果婚禮上换棚,老公的妹妹穿的比我還像新娘式镐。我一直安慰自己,他們只是感情好固蚤,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,871評(píng)論 6 398
  • 文/花漫 我一把揭開白布娘汞。 她就那樣靜靜地躺著,像睡著了一般夕玩。 火紅的嫁衣襯著肌膚如雪价说。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,457評(píng)論 1 311
  • 那天风秤,我揣著相機(jī)與錄音鳖目,去河邊找鬼。 笑死缤弦,一個(gè)胖子當(dāng)著我的面吹牛领迈,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播碍沐,決...
    沈念sama閱讀 40,999評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼狸捅,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了累提?” 一聲冷哼從身側(cè)響起尘喝,我...
    開封第一講書人閱讀 39,914評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎斋陪,沒想到半個(gè)月后朽褪,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體置吓,經(jīng)...
    沈念sama閱讀 46,465評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,543評(píng)論 3 342
  • 正文 我和宋清朗相戀三年缔赠,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了衍锚。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,675評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡嗤堰,死狀恐怖戴质,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情踢匣,我是刑警寧澤告匠,帶...
    沈念sama閱讀 36,354評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站离唬,受9級(jí)特大地震影響后专,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜男娄,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,029評(píng)論 3 335
  • 文/蒙蒙 一行贪、第九天 我趴在偏房一處隱蔽的房頂上張望漾稀。 院中可真熱鬧模闲,春花似錦、人聲如沸崭捍。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽殷蛇。三九已至实夹,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間粒梦,已是汗流浹背亮航。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評(píng)論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留匀们,地道東北人缴淋。 一個(gè)月前我還...
    沈念sama閱讀 49,091評(píng)論 3 378
  • 正文 我出身青樓,卻偏偏與公主長得像泄朴,于是被迫代替她去往敵國和親重抖。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,685評(píng)論 2 360

推薦閱讀更多精彩內(nèi)容