RHEL7文件管理


Linux系統目錄結構

主要目錄說明

目錄 說明
/ 通常稱為根分區
所有的文件和目錄的起始點
只有root用戶對此目錄擁有寫權限
/home 普通用戶的宿主目錄
/root 超級用戶的宿主目錄
/dev 存放設備相關文件
在Linux中一切皆為文件
終端設備/磁盤/光驅都被看作是文件
例如:/dev/sda
/usr 存放應用程序
usr表示的是unix software source
/usr/src 源代碼存放目錄
/etc 存放配置文件
包含所有應用程序的配置文件
也包含啟動/關閉某個特定程序的腳本
例如:
/etc/passwd
/etc/init.d/network
/boot 存放Linux系統啟動時需要加載的文件
Kerner/grub等文件都存放在此
/lib 存放系統的庫文件
以.a為后綴的是靜態庫文件
以.so為后綴的是動態庫文件
靜態庫在編譯時加載到二進制文件中
動態庫在運行時加載到進程的內存空間中
簡而言之 庫文件是為了讓程序能夠正常編譯運行
其作用類似windows中的.dll文件
幾乎所有的應用程序都需要用到這些共享庫文件
/var 是一個可增長的目錄
包含經常變動的文件
例如:
/var/log 系統日志文件
/var/lib 包文件
/tmp 存放臨時文件
不能將重要數據存放在此處
因為有系統級別的計划任務定期清理該目錄下的文件
/proc 該目錄是一個虛擬的目錄
它是系統內存的映射
可以通過直接訪問這個目錄來獲取系統信息
查看內存信息命令: cat /proc/meminfo
查看CPU信息命令: cat /proc/cpuinfo
/bin 命令
此目錄包含二進制可執行文件
存放普通用戶可執行的程序
/sbin 系統命令
此目錄中的命令主要供系統管理員使用
以便進行系統維護
存放超級用戶可執行的程序

小結:

  • 大多數情況下,本地管理員將額外的軟件安裝在/usr/local目錄下,並符號鏈接在/usr/local/bin下的主執行程序
  • 系統的所有設置在/etc目錄下
  • 不要修改根目錄/或/usr目錄下的任何內容 目錄最好和Linux發布時保持一致
  • 大多數工具和應用程序安裝在目錄/bin /usr/bin /sbin
  • 所有的文件在單一的目錄樹下 沒有windows下所謂的驅動符:C盤 D盤 ...

路徑

在平時使用計算機時要找到需要的文件就必須知道文件的位置,而表示文件的位置的方式就是路徑

絕對路徑

在Linux中 絕對路徑是從/開始的,比如/usr,/etc/passwd
如果一個路徑是從/開始的就一定是絕對路徑

[root@administrator ~]# pwd
/root
[root@administrator ~]# cd /etc/sysconfig/network-scripts/
[root@administrator network-scripts]# pwd
/etc/sysconfig/network-scripts

相對路徑

相對路徑是以.或者..開始的
.表示用戶當前操作所處的位置 即當前目錄
..表示上級目錄

[root@administrator ~]# cd /etc/sysconfig/network-scripts/
[root@administrator network-scripts]# pwd
/etc/sysconfig/network-scripts
[root@administrator network-scripts]# cd .
[root@administrator network-scripts]# pwd
/etc/sysconfig/network-scripts
[root@administrator network-scripts]# cd ..
[root@administrator sysconfig]# pwd
/etc/sysconfig
[root@administrator sysconfig]# cd ./
[root@administrator sysconfig]# pwd
/etc/sysconfig
[root@administrator sysconfig]# cd ./..
[root@administrator etc]# pwd
/etc
[root@administrator etc]# cd ..
[root@administrator /]# pwd
/

文件操作

介紹文件和文件夾的相關操作

創建文件

命令:touch
作用:創建空文件
語法:touch 文件名

[root@administrator ~]# touch example.txt
[root@administrator ~]# ls
anaconda-ks.cfg  Documents  example.txt           Music     Public     Videos
Desktop          Downloads  initial-setup-ks.cfg  Pictures  Templates

創建目錄

命令:mkdir
作用:創建目錄
語法:mkdir 目錄名

[root@administrator ~]# mkdir example
[root@administrator ~]# ls
anaconda-ks.cfg  Documents  example               Music     Public     Videos
Desktop          Downloads  initial-setup-ks.cfg  Pictures  Templates

-p 創建多級目錄

[root@administrator ~]# mkdir -p example/test
[root@administrator ~]# ls
anaconda-ks.cfg  Documents  example               Music     Public     Videos
Desktop          Downloads  initial-setup-ks.cfg  Pictures  Templates
[root@administrator ~]# ll example/
total 0
drwxr-xr-x 2 root root 6 Aug  8 11:09 test
[root@administrator ~]# cd example/
[root@administrator example]# ls
test

查看文件

非分頁查看

命令:cat
作用:查看文件內容
語法:cat 文件名

分頁查看

  • more
    命令:more
    作用:分頁查看文件內容
    語法:more 文件名
    操作:按下回車刷新一行,按下空格刷新一屏,按q退出

  • less
    命令:less
    作用:分頁查看文件內容
    語法:less 文件名
    操作:按q退出 使用光標鍵可以向上翻頁

  • head
    命令:head
    作用:從第一行開始查看文件 默認顯示前10條
    語法:head [參數] 文件名
    參數:
    -n 顯示n行

  • tail
    命令:tail
    作用:從最后一行開始查看文件內容 默認顯示10條
    語法:tail [參數] 文件名
    參數:
    -n 顯示n行
    -f 動態顯示數據(常用來查看日志 比如查看tomcat日志)

  • 組合使用
    場景:只查看文件的第2行內容
    先查看文件initial-setup-ks.cfg前兩行內容

    [root@administrator ~]# head -2 initial-setup-ks.cfg
    #version=DEVEL
    # X Window System configuration information
    

    使用管道將上述操作的結果作為tail命令的輸入

    [root@administrator ~]# head -2 initial-setup-ks.cfg | tail -1
    # X Window System configuration information
    

文件復制

命令:cp
作用:復制文件
語法:cp [參數] 源文件 目標文件
參數:-r 連同子目錄和文件一起復制

[root@administrator ~]# cp initial-setup-ks.cfg  test.cfg
[root@administrator ~]# ls
anaconda-ks.cfg  Documents  initial-setup-ks.cfg  Pictures  Templates  Videos
Desktop          Downloads  Music                 Public    test.cfg
[root@administrator ~]# mkdir -p example/test/
[root@administrator ~]# touch example/test/test.txt
[root@administrator ~]# cp -r example/ cptest
[root@administrator ~]# ls
anaconda-ks.cfg  Documents  initial-setup-ks.cfg  Public     Videos
cptest           Downloads  Music                 Templates
Desktop          example    Pictures              test.cfg
[root@administrator ~]# ls cptest/
test

重命名

命令:mv
作用:重命名目標文件或文件夾
語法:mv 源文件或文件夾 目標文件或文件夾

[root@administrator ~]# ls
anaconda-ks.cfg  Documents  initial-setup-ks.cfg  Public     Videos
cptest           Downloads  Music                 Templates
Desktop          example    Pictures              test.cfg
[root@administrator ~]# mv test.cfg  example.cfg
[root@administrator ~]# ls
anaconda-ks.cfg  Documents  example.cfg           Pictures   Videos
cptest           Downloads  initial-setup-ks.cfg  Public
Desktop          example    Music                 Templates

刪除文件或目錄

命令:rm
作用:刪除文件或目錄
語法:rm [參數] 文件或目錄
參數:-r 遞歸刪除(可以刪除目錄和目錄里面的東西) -f 強行刪除

[root@administrator ~]# ls
anaconda-ks.cfg  Documents  example.cfg           Pictures   Videos
cptest           Downloads  initial-setup-ks.cfg  Public
Desktop          example    Music                 Templates
[root@administrator ~]# rm example.cfg
rm: remove regular file ‘example.cfg’? y
[root@administrator ~]# ls
anaconda-ks.cfg  Desktop    Downloads  initial-setup-ks.cfg  Pictures  Templates
cptest           Documents  example    Music  
[root@administrator ~]# rm -f example.cfg
[root@administrator ~]# ls
anaconda-ks.cfg  Desktop    Downloads  initial-setup-ks.cfg  Pictures  Templates
cptest           Documents  example    Music                 Public    Videos
[root@administrator ~]# rm -rf example/
[root@administrator ~]# ls
anaconda-ks.cfg  Desktop    Downloads             Music     Public     Videos
cptest           Documents  initial-setup-ks.cfg  Pictures  Templates

xfs文件系統的備份和恢復

REDHAT7使用XFS文件系統,XFS提供了xfsdump和xfsrestore工具協助備份XFS文件系統中的數據 。
xfsdump按inode順序備份一個XFS文件系統 ,與傳統的UNIX文件系統不同,XFS不需要在dump前被卸載對使用中的XFS文件系統做dump就可以保證鏡像的一致性。
這與XFS對快照的實現不同,XFS的dump和restore的過程是可以被中斷然后繼續的,無須凍結文件系統。
xfsdump甚至提供了高性能的多線程備份操作——它把一次dump拆分成多個數據流,每個數據流可以被發往不同的目的地。
xfsdump的備份級別有以下兩種,默認為即完全備份:
0 完全備份
1 增量備份

使用虛擬機創建實驗環境

為了確保系統不被誤操作導致無法正常使用創建一個安全的實驗環境

為虛擬機添加一塊虛擬硬盤

添加一塊硬盤/dev/sdb

[root@administrator ~]# ls /dev/sd*
/dev/sda  /dev/sda1  /dev/sda2  /dev/sdb

使用添加的硬盤創建一個1G的新分區
輸入命令fdisk /dev/sdb 設置大小時輸入+1G 根據提示最后輸入w即可 默認值可以不用輸入
由於輸出的內容過長fdisk /dev/sdb命令的輸出就不貼上來了
創建完成后查看

[root@administrator ~]# ls /dev/sdb*
/dev/sdb  /dev/sdb1

上面的操作將添加的硬盤分成了兩部分,一部分為剛才創建的1G新分區一部分為剩下的19G

格式化分區並進行掛載

格式化分區為xfs分區

[root@administrator ~]# mkfs.xfs /dev/sdb1
meta-data=/dev/sdb1              isize=256    agcount=4, agsize=65536 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=0        finobt=0
data     =                       bsize=4096   blocks=262144, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

創建掛載點目錄sdb1

[root@administrator ~]# mkdir /sdb1
[root@administrator ~]# ls /
bin   dev  home  lib64  mnt  proc  run   sdb1  sys  usr
boot  etc  lib   media  opt  root  sbin  srv   tmp  var

掛載分區到上面創建的掛載點目錄sdb1

[root@administrator ~]# mount /dev/sdb1 /sdb1/

查看剛才掛載的分區

[root@administrator ~]# mount | tail -1
/dev/sdb1 on /sdb1 type xfs (rw,relatime,attr2,inode64,noquota)

備份

先准備測試文件

[root@administrator ~]# cp /etc/passwd /sdb1/
[root@administrator ~]# mkdir /sdb1/dumptest
[root@administrator ~]# ls /sdb1
dumptest  passwd

命令:xfsdump
作用:對分區或者文件進行備份
語法:xfsdump -f 備份文件路徑 備份源

[root@administrator ~]# xfsdump -f ~/sdb1.dump /sdb1
xfsdump: using file dump (drive_simple) strategy
xfsdump: version 3.1.4 (dump format 3.0) - type ^C for status and control

 ============================= dump label dialog ==============================

please enter label for this dump session (timeout in 300 sec)
 -> sdb1
session label entered: "sdb1"

 --------------------------------- end dialog ---------------------------------

xfsdump: level 0 dump of administrator:/sdb1
xfsdump: dump date: Mon Aug  8 13:08:52 2016
xfsdump: session id: 97f9f6d0-3816-4791-9568-facc0cdf49d1
xfsdump: session label: "sdb1"
xfsdump: ino map phase 1: constructing initial dump list
xfsdump: ino map phase 2: skipping (no pruning necessary)
xfsdump: ino map phase 3: skipping (only one dump stream)
xfsdump: ino map construction complete
xfsdump: estimated dump size: 25536 bytes
xfsdump: /var/lib/xfsdump/inventory created

 ============================= media label dialog =============================

please enter label for media in drive 0 (timeout in 300 sec)
 -> sdb1
media label entered: "sdb1"

 --------------------------------- end dialog ---------------------------------

xfsdump: creating dump session media file 0 (media 0, file 0)
xfsdump: dumping ino map
xfsdump: dumping directories
xfsdump: dumping non-directory files
xfsdump: ending media file
xfsdump: media file size 24240 bytes
xfsdump: dump size (non-dir files) : 2592 bytes
xfsdump: dump complete: 9 seconds elapsed
xfsdump: Dump Summary:
xfsdump:   stream 0 /root/sdb1.dump OK (success)
xfsdump: Dump Status: SUCCESS

查看備份文件

[root@administrator ~]# cat sdb1.dump
xFSdump0�XW�������8G��h��
                           �I�administratorsdb1Rpsd��.�B٨
��v�}1/sdb1/dev/sdb1xfsBkm��J�����{�?�������d����A�"W��N)b��W��@5W�#W��@5W�#�:�� passwd�%' dumptest����X��\�A�W��@5W�#W��@5W�#W��@5W�#����휧?����W��ͅW��ͅW��ͅ
����root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin
systemd-bus-proxy:x:999:997:systemd Bus Proxy:/:/sbin/nologin
systemd-network:x:998:996:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:997:995:User for polkitd:/:/sbin/nologin
unbound:x:996:993:Unbound DNS resolver:/etc/unbound:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
colord:x:995:992:User for colord:/var/lib/colord:/sbin/nologin
usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
geoclue:x:994:991:User for geoclue:/var/lib/geoclue:/sbin/nologin
saslauth:x:993:76:Saslauthd user:/run/saslauthd:/sbin/nologin
libstoragemgmt:x:992:990:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
setroubleshoot:x:991:988::/var/lib/setroubleshoot:/sbin/nologin
rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin
chrony:x:990:987::/var/lib/chrony:/sbin/nologin
radvd:x:75:75:radvd user:/:/sbin/nologin
qemu:x:107:107:qemu user:/:/sbin/nologin
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
pulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:989:984::/run/gnome-initial-setup/:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
courier:x:1000:1000:courier:/home/courier:/bin/bash
��������

可以看出備份文件進行了加密導致亂碼

使用參數-L和-M進行無交互式的備份

[root@administrator ~]# xfsdump -f ~/sdb1.dump0 /sdb1 -L sdb1 -M sdb1
xfsdump: using file dump (drive_simple) strategy
xfsdump: version 3.1.4 (dump format 3.0) - type ^C for status and control
xfsdump: WARNING: most recent level 0 dump was interrupted, but not resuming that dump since resume (-R) option not specified
xfsdump: level 0 dump of administrator:/sdb1
xfsdump: dump date: Mon Aug  8 13:14:23 2016
xfsdump: session id: 2ff3a409-406f-4d93-a054-8af7f70ea278
xfsdump: session label: "sdb1"
xfsdump: ino map phase 1: constructing initial dump list
xfsdump: ino map phase 2: skipping (no pruning necessary)
xfsdump: ino map phase 3: skipping (only one dump stream)
xfsdump: ino map construction complete
xfsdump: estimated dump size: 25536 bytes
xfsdump: creating dump session media file 0 (media 0, file 0)
xfsdump: dumping ino map
xfsdump: dumping directories
xfsdump: dumping non-directory files
xfsdump: ending media file
xfsdump: media file size 24240 bytes
xfsdump: dump size (non-dir files) : 2592 bytes
xfsdump: dump complete: 0 seconds elapsed
xfsdump: Dump Summary:
xfsdump:   stream 0 /root/sdb1.dump0 OK (success)
xfsdump: Dump Status: SUCCESS
[root@administrator ~]# ls
anaconda-ks.cfg  Documents             Music     sdb1.dump   Videos
cptest           Downloads             Pictures  sdb1.dump0
Desktop          initial-setup-ks.cfg  Public    Templates

備份目標分區中的單個文件或者目錄

[root@administrator ~]# xfsdump -f  ~/pwd.dump -s passwd /sdb1 -L pwd -M pwd
xfsdump: using file dump (drive_simple) strategy
xfsdump: version 3.1.4 (dump format 3.0) - type ^C for status and control
xfsdump: level 0 dump of administrator:/sdb1
xfsdump: dump date: Mon Aug  8 13:19:03 2016
xfsdump: session id: 0b6f8c2b-d9df-4713-a0b7-d991d6277f61
xfsdump: session label: "pwd"
xfsdump: ino map phase 1: constructing initial dump list
xfsdump: ino map phase 2: skipping (no pruning necessary)
xfsdump: ino map phase 3: skipping (only one dump stream)
xfsdump: ino map construction complete
xfsdump: estimated dump size: 25216 bytes
xfsdump: creating dump session media file 0 (media 0, file 0)
xfsdump: dumping ino map
xfsdump: dumping directories
xfsdump: dumping non-directory files
xfsdump: ending media file
xfsdump: media file size 23960 bytes
xfsdump: dump size (non-dir files) : 2592 bytes
xfsdump: dump complete: 5 seconds elapsed
xfsdump: Dump Summary:
xfsdump:   stream 0 /root/pwd.dump OK (success)
xfsdump: Dump Status: SUCCESS
[root@administrator ~]# ls
anaconda-ks.cfg  Desktop    Downloads             Music     Public    Templates
cptest           Documents  initial-setup-ks.cfg  Pictures  pwd.dump  Videos

恢復

命令:xfsrestore
作用:對分區或者文件進行恢復
命令:xfsrestore -f 備份源 需要恢復的目標分區或文件路徑
刪除/sdb1分區下的所有文件

[root@administrator ~]# rm -rf /sdb1/*
[root@administrator ~]# ls /sdb1/

使用之前的備份進行恢復

[root@administrator ~]# xfsrestore -f sdb1.dump /sdb1/
xfsrestore: using file dump (drive_simple) strategy
xfsrestore: version 3.1.4 (dump format 3.0) - type ^C for status and control
xfsrestore: searching media for dump
xfsrestore: examining media file 0
xfsrestore: dump description:
xfsrestore: hostname: administrator
xfsrestore: mount point: /sdb1
xfsrestore: volume: /dev/sdb1
xfsrestore: session time: Mon Aug  8 13:25:18 2016
xfsrestore: level: 0
xfsrestore: session label: "sdb1"
xfsrestore: media label: "sdb1"
xfsrestore: file system id: 426b6d86-0782-4a1e-92e2-c3f310ba7b87
xfsrestore: session id: 228b15a9-7c1f-46ed-9fae-c64fc8e465a5
xfsrestore: media id: d670fd47-fbcb-4845-8d7e-7993cf2103ae
xfsrestore: using online session inventory
xfsrestore: searching media for directory dump
xfsrestore: reading directories
xfsrestore: 2 directories and 2 entries processed
xfsrestore: directory post-processing
xfsrestore: restoring non-directory files
xfsrestore: restore complete: 0 seconds elapsed
xfsrestore: Restore Summary:
xfsrestore:   stream 0 /root/sdb1.dump OK (success)
xfsrestore: Restore Status: SUCCESS
[root@administrator ~]# ls /sdb1/
dumptest  passwd
[root@administrator ~]# cat /sdb1/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin
systemd-bus-proxy:x:999:997:systemd Bus Proxy:/:/sbin/nologin
systemd-network:x:998:996:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:997:995:User for polkitd:/:/sbin/nologin
unbound:x:996:993:Unbound DNS resolver:/etc/unbound:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
colord:x:995:992:User for colord:/var/lib/colord:/sbin/nologin
usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
geoclue:x:994:991:User for geoclue:/var/lib/geoclue:/sbin/nologin
saslauth:x:993:76:Saslauthd user:/run/saslauthd:/sbin/nologin
libstoragemgmt:x:992:990:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
setroubleshoot:x:991:988::/var/lib/setroubleshoot:/sbin/nologin
rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin
chrony:x:990:987::/var/lib/chrony:/sbin/nologin
radvd:x:75:75:radvd user:/:/sbin/nologin
qemu:x:107:107:qemu user:/:/sbin/nologin
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
pulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:989:984::/run/gnome-initial-setup/:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
courier:x:1000:1000:courier:/home/courier:/bin/bash

可以看出文件已經恢,查看文件顯示正常

恢復單個文件:先刪除/sdb1分區中的passwd文件,再使用備份進行恢復

[root@administrator ~]# ls /sdb1/
dumptest  passwd
[root@administrator ~]# rm -rf /sdb1/passwd
[root@administrator ~]# ls /sdb1/
dumptest
[root@administrator ~]# xfsrestore -f sdb1.dump  -s passwd /sdb1/
xfsrestore: using file dump (drive_simple) strategy
xfsrestore: version 3.1.4 (dump format 3.0) - type ^C for status and control
xfsrestore: searching media for dump
xfsrestore: examining media file 0
xfsrestore: dump description:
xfsrestore: hostname: administrator
xfsrestore: mount point: /sdb1
xfsrestore: volume: /dev/sdb1
xfsrestore: session time: Mon Aug  8 13:25:18 2016
xfsrestore: level: 0
xfsrestore: session label: "sdb1"
xfsrestore: media label: "sdb1"
xfsrestore: file system id: 426b6d86-0782-4a1e-92e2-c3f310ba7b87
xfsrestore: session id: 228b15a9-7c1f-46ed-9fae-c64fc8e465a5
xfsrestore: media id: d670fd47-fbcb-4845-8d7e-7993cf2103ae
xfsrestore: using online session inventory
xfsrestore: searching media for directory dump
xfsrestore: reading directories
xfsrestore: 2 directories and 2 entries processed
xfsrestore: directory post-processing
xfsrestore: restoring non-directory files
xfsrestore: restore complete: 0 seconds elapsed
xfsrestore: Restore Summary:
xfsrestore:   stream 0 /root/sdb1.dump OK (success)
xfsrestore: Restore Status: SUCCESS
[root@administrator ~]# ls /sdb1/
dumptest  passwd

附錄

less和more的區別

more:不支持后退,但幾乎不需要加參數,空格鍵是向下翻頁,Enter鍵是向下翻一行,在不需要后退的情況下比較方便
less:支持前后翻滾,既可以向上翻頁(pageup按鍵),也可以向下翻頁(pagedown按鍵) ,空格鍵是向下翻頁,Enter鍵是向下翻一行


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM