1. 程式人生 > >第三關練習-權限

第三關練習-權限

設置時間 環境 -type yun family 轉義 shu 做什麽 數字

1.1 取出網卡配置文件的ip

[root@oldboyedu50-lnb ~]# awk '/IPADDR/' /etc/sysconfig/network-scripts/ifcfg-eth0

IPADDR=10.0.0.200

[root@oldboyedu50-lnb ~]# awk -F= '/IPADDR/{print $2}' /etc/sysconfig/network-scripts/ifcfg-eth0

10.0.0.200

1.2 取出網卡中的DNS

[root@oldboy50-01 ~]# awk -F"[=]" '/DNS[0-9]+/{print $2}' /etc/sysconfig/network-scripts/ifcfg-eth0

223.6.6.6

223.5.5.5

1.3 顯示年--_周幾

date +%F_%w

[root@oldboy50-01 ~]# date +%F_%w

2018-08-06_1

[root@oldboyedu50-lnb ~]# date -d '-1year'

Sun Jul 23 16:44:04 CST 2017

[root@oldboyedu50-lnb ~]# date -d '-1day'

Sun Jul 22 16:44:12 CST 2018

1.4 設置時間

[root@oldboyedu50-lnb ~]# date -s "20180521 12:12:12"

Mon May 21 12:12:12 CST 2018

[root@oldboyedu50-lnb ~]# date

Mon May 21 12:13:23 CST 2018

1.5 自動校對時間

[root@oldboyedu50-lnb ~]# ntpdate ntp1.aliyun.com

6 Aug 09:01:17 ntpdate[1849]: step time server 120.25.115.20 offset 6641251.972418 sec

1.6 打包壓縮 /etc/目錄 壓縮到/tmp,每天創建的壓縮包名字要不同

[root@oldboyedu50-lnb ~]# #tar zcf /tmp/etc.tar.gz /etc/

[root@oldboyedu50-lnb ~]# #tar zcf /tmp/etc-2018-06-06.tar.gz /etc/

[root@oldboyedu50-lnb ~]# date +%F

2018-08-06

[root@oldboyedu50-lnb ~]# tar zcf /tmp/etc-$(date +%F).tar.gz /etc/

tar: Removing leading `/' from member names

[root@oldboyedu50-lnb ~]# ll /tmp/etc-2018-08-06.tar.gz

-rw-r--r-- 1 root root 9734087 Aug 6 09:19 /tmp/etc-2018-08-06.tar.gz

[root@oldboyedu50-lnb ~]# tar tf /tmp/etc-2018-08-06.tar.gz

1.7 查找當前目錄下所有文件,並把文件中的www.etiantian.org字符串替換成www.oldboyedu.com

方法1

find /oldboy -type f |xargs sed 's#www.etiantian.org#www.oldboyedu.com#g'

方法2

sed 's#www.etiantian.org#www.oldboyedu.com#g' `find /oldboy -type f `

sed 's#www.etiantian.org#www.oldboyedu.com#g' $(find /oldboy -type f )

方法3

find /oldboy -type f -exec sed 's#www.etiantian.org#www.oldboyedu.com#g' {} \;

1.8 請問在一個命令上加什麽參數可以實現下面命令的內容在同一行輸出。

echo "oldboy";echo "oldboy"

[root@oldboyedu50-lnb ~]# echo 'oldboy'

oldboy

[root@oldboyedu50-lnb ~]# echo -n 'oldboy'

oldboy[root@oldboyedu50-lnb ~]#

[root@oldboyedu50-lnb ~]# echo 'oldboy\nold\n\nlidao'

oldboy\nold\n\nlidao

[root@oldboyedu50-lnb ~]# echo oldboy\nold\n\nlidao"

[root@oldboyedu50-lnb ~]# echo "oldboy\nold\n\nlidao"

oldboy\nold\n\nlidao

[root@oldboyedu50-lnb ~]# echo -e "oldboy\nold\n\nlidao"

oldboy

old

lidao

[root@oldboyedu50-lnb ~]# echo -e "oldboy\nold\n\nlidao"

oldboy

old

lidao

-n不顯示每行結尾的回車

-e 讓echo命令支持 轉義字符 \n \t

1.9 當從root用戶切到普通用戶oldboy時,執行ifconfig會提示。command not found

模擬環境

export PATH=

PATH 路徑 環境變量 存放的是 命令路徑

如何修改PATH

1.臨時

[root@oldboyedu50-lnb ~]# export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:~/bin

[root@oldboyedu50-lnb ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

2.永久

[root@oldboyedu50-lnb ~]# tail -1 /etc/profile

#export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:~/bin

[root@oldboyedu50-lnb ~]# source /etc/profile

3.檢查

發出當前系統使用的 PATH

1.10 請描述下列路徑的內容是做什麽的?

/var/log/messages 系統默認日誌

/var/log/secure 用戶登錄日誌

/etc/fstab 開機自動掛載

/etc/hosts 解析主機名(域名)

/etc/rc.local 開機自啟動

/etc/profile 別名 環境變量

/var/spool/cron/root 定時任務的配置文件

1.11 修改主機名

1)臨時

2)永久

/etc/sysconfig/network

3) 解析

[root@oldboyedu50-lnb ~]# cat /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

10.0.0.200 oldboyedu50-lnb

[root@oldboyedu50-lnb ~]# ping `hostname`

PING oldboyedu50-lnb (10.0.0.200) 56(84) bytes of data.

64 bytes from oldboyedu50-lnb (10.0.0.200): icmp_seq=1 ttl=64 time=0.021 ms

64 bytes from oldboyedu50-lnb (10.0.0.200): icmp_seq=2 ttl=64 time=0.021 ms

1.12 如何快速查到ifconfig的全路徑,請給出命令。

[root@oldboyedu50-lnb ~]# find / -type f -name "ifconfig"

/sbin/ifconfig

[root@oldboyedu50-lnb ~]# which ifconfig

/sbin/ifconfig

[root@oldboyedu50-lnb ~]# which rm

alias rm='echo rm bny'

/bin/echo

[root@oldboyedu50-lnb ~]# \which rm

/bin/rm

[root@oldboyedu50-lnb ~]# whereis grep awk

grep: /bin/grep /usr/share/man/man1p/grep.1p.gz /usr/share/man/man1/grep.1.gz

awk: /bin/awk /usr/bin/awk /usr/libexec/awk /usr/share/awk /usr/share/man/man1p/awk.1p.gz /usr/share/man/man1/awk.1.gz

1.13 【用戶管理】請給出查看當前哪些用戶在線的linux命令。

[root@oldboyedu50-lnb ~]# w

10:41:59 up 2:07, 2 users, load average: 0.04, 0.02, 0.00

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

root pts/0 10.0.0.1 23Jul18 0.00s 0.28s 0.00s w

root pts/1 10.0.0.1 09:56 29:20 0.00s 0.00s -bash

[root@oldboyedu50-lnb ~]# w |awk 'NR==1{print $(NF-6)}'

1.14 請給出正確的關機和重起服務器的命令。

1.重啟

reboot

shutdown -r 10

shutdown -r 0/now 立即重啟

shutdown -c 取消當前的重啟或關機

init 6

2.關機

halt

shutdown -h 10

shutdown -h 0/now 立即關機

poweroff

init 0

1.15 請寫出下面linux命令行快捷鍵的功能?

Ctrl + a 把光標移動到行首

Ctrl + e 把光標移動到行尾

Ctrl + c 取消 cancel

Ctrl + d 退出當前用戶

Ctrl + l 清屏

Ctrl + u 把光標所在位置到行首的內容刪除(剪切)

Ctrl + k 把光標所在位置到行尾的內容刪除(剪切)

ctrl + y 粘貼

ctrl+s 鎖屏

ctrl+q/c 解鎖

ctrl + r 找出最近一次使用過的 包含xxxx的命令 替你執行

1.16 Linux權限

1.文件或目錄rwx含義

2.permission denied 權限拒絕

3.通過控制權限保護網站安全

4.特殊與隱藏權限

1.17 linux如何知道我對某個文件或目錄有什麽權限?

[root@oldboyedu50-lnb ~]# su - oldboy

[oldboy@oldboyedu50-lnb ~]$ ll /etc/hosts

-rw-r--r-- 1 root root 186 Aug 6 10:24 /etc/hosts

1.看看是你誰?

whoami oldboy

2.你與這個文件什麽關系 : 主人 家人 陌生人

[oldboy@oldboyedu50-lnb ~]$ id oldboy

uid=500(oldboy) gid=500(oldboy) groups=500(oldboy)

#oldboy用戶 文件是 陌生人關系

3.確認權限 陌生人權限 看最後三位

r 4

w 2

x 1

- 0

[root@oldboyedu50-lnb ~]# echo {r,-}{w,-}{x,-}

rwx rw- r-x r-- -wx -w- --x ---

權限轉換

rw-r--r--

420400400

6 4 4

755 rwxr-xr-x

640 rw-r-----

744 rwxr--r--

600 rw-------

1.18 修改權限 change mode chmod

1.直接通過數字形式修改權限

[root@oldboyedu50-lnb /oldboy]# chmod 666 test.txt

[root@oldboyedu50-lnb /oldboy]# ll test.txt

-rw-rw-rw- 1 root root 23 Jul 20 01:13 test.txt

[root@oldboyedu50-lnb /oldboy]# chmod 777 test.txt

[root@oldboyedu50-lnb /oldboy]# ll test.txt

-rwxrwxrwx 1 root root 23 Jul 20 01:13 test.txt

2.通過字母 形式修改

rw- rw- rw-

主人 家人 陌生人

所有者 所屬用戶組 其他人

user group other

u g o

[root@oldboyedu50-lnb /oldboy]# chmod u=r test.txt

[root@oldboyedu50-lnb /oldboy]# ll test.txt

-r--rwxrwx 1 root root 23 Jul 20 01:13 test.txt

1.19 給文件快速增加執行權限

[root@oldboyedu50-lnb /oldboy]# chmod ugo+x test.txt

[root@oldboyedu50-lnb /oldboy]# ll test.txt

-rwxr-xr-x 1 root root 23 Jul 20 01:13 test.txt

[root@oldboyedu50-lnb /oldboy]# chmod a-x test.txt

[root@oldboyedu50-lnb /oldboy]# ll test.txt

-rw-r--r-- 1 root root 23 Jul 20 01:13 test.txt

[root@oldboyedu50-lnb /oldboy]# chmod +x test.txt

[root@oldboyedu50-lnb /oldboy]# ll test.txt

-rwxr-xr-x 1 root root 23 Jul 20 01:13 test.txt

chmod ugo+x

chmod a+x

chmod +x

1.20 chown change owner 修改文件的所有者

[root@oldboyedu50-lnb /oldboy]# chown oldboy.oldboy test.txt

[root@oldboyedu50-lnb /oldboy]# ll test.txt

-rwxr-xr-x 1 oldboy oldboy 23 Jul 20 01:13 test.txt

[root@oldboyedu50-lnb /oldboy]#

[root@oldboyedu50-lnb /oldboy]#

[root@oldboyedu50-lnb /oldboy]# chown root test.txt

[root@oldboyedu50-lnb /oldboy]# ll test.txt

-rwxr-xr-x 1 root oldboy 23 Jul 20 01:13 test.txt

[root@oldboyedu50-lnb /oldboy]# chown .root test.txt

[root@oldboyedu50-lnb /oldboy]# ll test.txt

-rwxr-xr-x 1 root root 23 Jul 20 01:13 test.txt


第三關練習-權限