馬哥教育21期網絡班—第15周課程+練習

2、刪除/boot/grub/grub.conf文件中所有行的行首的空白字符;

sed 's@^[[:space:]]\+@@' /boot/grub/grub.conf

3、刪除/etc/fstab文件中所有以#開頭,后跟至少一個空白字符的行的行首的#和空白字符;

sed 's@^#[[:space:]]\+@@' /etc/fstab

4、把/etc/fstab文件的奇數行另存為/tmp/fstab.3;

sed -n '1~2p' /etc/fstab >/tmp/fstab.3sed 'n;d' /etc/fstab >/tmp/fstab.3

5、echo一個文件路徑給sed命令,取出其基名;進一步地,取出其路徑名;

echo "/var/log" | sed -r 's@(/.*/)@@g'echo "/etc/sysconfig/" | sed 's@[^/]\+/\?$@@'

6、統計指定文件中所有行中每個單詞出現的次數;

awk '{for(i=1;i<=NF;i++){count[$i]++}}END{for(i in count) {print i,count[i]}}' /etc/fstab

7、統計當前系統上所有tcp連接的各種狀態的個數;

netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn

8、統計指定的web訪問日志中各ip的資源訪問次數:

awk '{ip[$1]++} END{for(i in ip) {print i,ip[i]}}' /var/log/httpd/access_log

9、寫一個腳本:定義一個數組,數組元素為/var/log目錄下所有以.log結尾的文件的名字;顯示每個文件的行數;

vim line.sh 
#!/bin/bash 
line=$(ls /var/log/*.log)
for i in $(seq 0 $[${#line[*]}-1]);do
	wc -l ${line[$i]}
done

10、寫一個腳本,能從所有同學中隨機挑選一個同學回答問題;進一步地:可接受一個參數,做為要挑選的同學的個數;

vim pick.sh 
declare -a student
for in in {1..99};do
	pick=$i-1
student[ $k ]=student$i
done
echo "Now ,We have $i students that you can pick up!"
read -p "How many students do you want:" count
 ! let count++ &>/dev/null   &&  echo "Must be a number!" && exit 13
 [ $count -eq 0 -o  $count -gt 99 ] &&  echo "Please selcet a number between 1 and 99!"
  && exit 12
m=1
while [ $m -lt $count ];do
    rand=${RANDOM:0-2}
if echo  $rand  | grep "^0" &>/dev/null;then
    index=${rand:0-1}
echo "${student[ $index ]}, You answer my questions Please!"
else
echo "${student[ $rand ]}, You answer my questions Please!"
fi
let m++
done

11、授權centos用戶可以運行fdisk命令完成磁盤管理,以及使用mkfs或mke2fs實現文件系統管理;

visudo
centos  10.0.0.2=/sbin/mkfs, /sbin/mke2fs, /sbin/ifconfig
ifconfig eth0 
eth0      Link encap:Ethernet  HWaddr 00:0C:29:47:BE:80  
          inet addr:10.0.0.2  Bcast:10.255.255.255  Mask:255.0.0.0
          inet6 addr: fe80::20c:29ff:fe47:be80/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4340 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3313 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:439145 (428.8 KiB)  TX bytes:480457 (469.1 KiB)
shutdown -h now
shutdown: Need to be root

12、授權gentoo用戶可以運行邏輯卷管理的相關命令;

visudo
gentoo  10.0.0.2=/sbin/*create, /sbin/*reduce,/sbin/*scan, /sbin/*display, /sbin/fsck,/sbin/resize2fs

13、基于pam_time.so模塊,限制用戶通過sshd服務遠程登錄只能在工作時間進行;

grep -i "usepam" /etc/ssh/sshd_config 
#UsePAM noUsePAM yes  確保sshd開啟Pam模塊認證ls /lib64/security/pam_time.so 保證pam_time.so 存在 
ls /etc/pam.d/sshd /etc/security/time.conf 保證Pam模塊配置文件存在
/etc/pam.d/sshd 添加 session    required     pam_time.so    /etc/security/time.conf 添加 sshd;ttyp*;root;!ALSa0000-2400 工作日時寫成 !ALWd0000-2400
Connecting to 192.168.40.128:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
Last login: Sun Jun  5 03:56:43 2016 from 192.168.40.1
Connection closed by foreign host.
Disconnected from remote host(192.168.40.) at 08:32:07.

14、基于pam_listfile.so模塊,定義僅某些用戶,或某些組內的用戶可登錄系統;

grep "pam_listfile" /etc/pam.d/sshd 
auth required pam_listfile.so item=user sense=deny file=/etc/nossh onerr=fail
cat /etc/nossh
derulo

原創文章,作者:N21_ Dominic,如若轉載,請注明出處:http://www.www58058.com/57200

(0)
N21_ DominicN21_ Dominic
上一篇 2016-11-14
下一篇 2016-11-14

相關推薦

  • Linux入門 及Basics基礎

    二進制: 0, 1 5大部件: CPU:計算器、控制器 Memory: 存儲器(內存) 編址存儲單元陣列 輸入設備/輸出設備:I/O 鍵盤: VGA: 輔助存儲器 網卡 編程: 低級語言:匯編(微碼編程) 高級語言:JAVA, C++, C, Scala, Python 轉件: 時序復用: 計算機:硬件+軟件 硬件:開發,制造 軟件:編寫,編譯 OS: Op…

    Linux干貨 2016-08-08
  • 網絡知識點

    1. 實現異地搭建局域網的方法1>. 讓運行商拉專線,這是相當昂貴的。2>.  VPN (Virtual PrivateNetwork)  虛擬專用網絡 2. VPN的隧道協議主要有三種:PPTP、L2TP和IPSec。其中PPTP和L2TP協議工作在OSI模型的第二層,又稱為二層隧道協議;IPSec是第三層隧道協議。 2. …

    Linux干貨 2016-09-01
  • 2016/10/26作業:用戶和組的相關配置文件

    linux系統是通過文件來保存配置的,其中關于用戶和組的配置文件包括以下幾個: /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/login.defs /etc/default/useradd /etc/passwd 存放用戶信息的配置文件,其基本格式如下 root:x:0:0:root:/root:/…

    Linux干貨 2016-10-26
  • shell腳本基礎

    編程基礎 v程序:指令+數據 v程序編程風格: 過程式:以指令為中心,數據服務于指令(適合小型程序) 對象式:以數據為中心,指令服務于數據(適合大型程序) vshell程序:提供了編程能力,解釋執行 程序的執行方式 v計算機:運行二進制指令; v編程語言: 低級:匯編 高級: 編譯:高級語言–>編譯器–>目標代碼 java…

    Linux干貨 2016-08-15
  • N21-北京-兔鍋-馬哥教育網絡班21期+第3周課程練習

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。    who | cut -d' ' -f1 | uniq   2、取出最后登錄到當前系統的用戶的相關信息。    who | ta…

    系統運維 2016-07-07
  • MAN手冊各章節功能介紹及快捷鍵鍵位整理

    Linux系統中man命令是用于查詢命令使用手冊的,使用格式 man + 命令。 當使用man命令之后,系統就會在指定的路徑中查詢命令的使用手冊。其中制定路徑為$PATH變量指定的路徑,或者/etc/man.config文件中MANPATH中指定的路徑  其中/etc/man.config中有如下內容: MANPATH /usr/man …

    Linux干貨 2016-10-17

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-11-16 15:50

    可以把sed 和awk的一些基本參數總結一下,期待你的佳作

欧美性久久久久