1、创建一个10G的文件系统,类型为ext4,要求开机可自动挂载至单独数据/data目录;
# fdisk /dev/sda 欢迎使用 fdisk (util-linux 2.23.2)。 更改将停留在内存中,直到您决定将更改写入磁盘。 使用写入命令前请三思。 命令(输入 m 获取帮助):p 磁盘 /dev/sda:128.8 GB, 128849018880 字节,251658240 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x0000d19d 设备 Boot Start End Blocks Id System /dev/sda1 * 2048 1026047 512000 83 Linux 命令(输入 m 获取帮助):n Partition type: p primary (1 primary, 0extended, 3 free) e extended Select (default p): p 分区号 (2-4,默认 2): 起始 扇区 (1026048-251658239,默认为 1026048): 将使用默认值 1026048 Last 扇区, +扇区 or +size{K,M,G} (1026048-251658239,默认为 251658239):+10G 分区 2 已设置为 Linux 类型,大小设为 10 GiB 命令(输入 m 获取帮助):p 磁盘 /dev/sda:128.8 GB, 128849018880 字节,251658240 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x0000d19d 设备 Boot Start End Blocks Id System /dev/sda1 * 2048 1026047 512000 83 Linux /dev/sda2 1026048 21997567 10485760 83 Linux 命令(输入 m 获取帮助):w The partition table has been altered! Calling ioctl() to re-read partitiontable. WARNING: Re-reading the partition tablefailed with error 16: 设备或资源忙. The kernel still uses the old table. Thenew table will be used at the next reboot or after you runpartprobe(8) or kpartx(8) 正在同步磁盘。 格式化类型为ext4 #mke2fs -t ext4 /dev/sda2 创建/data目录 #mkdir /data 开机自动挂载,更改/etc/fstab配置文件: vim /etc/fstab /dev/sda2 /data ext4
2、显示`netstat -tan`命令结果中以‘LISTEN’后跟0个、1个或者多个空白字符结尾的行;
netstat -tan | grep"LISTEN[[:space:]]*$" [:space:]表示空白字符 *表示前一个字符出现0次或多次 $什么为结尾
3、添加用户nginx、zabbix、tomcat、nologin以及hadoop用户(nologin用户的shell为/sbin/nologin);而后找出/etc/passwd文件中用户名与其shell名相同的行;
#useradd #useraddnginx #useraddzabbix #useradd tomcat #useradd -s /sbin/nogoginnologin //-s表示指定默认shell目录地址 #useraddhadoop #grep "\(^[[:alnum:]]\+\>\).*\1$"/etc/passwd 首先过滤出用户名,基于用户名没有特殊字符[:alnum:],并且用户名是在/etc/passed文件下的行首字段,所有用行首锚定^,单词至少出现一次\+ 词尾锚定\>这样就能过滤出所有用户名,shell名相同过滤,首先把前面的分组,中间跟任意内容.*,结尾内容跟前面的内容一致:\?$,匹配一次:\1$
4、找出/etc/rc.d/init.d/functions文件中某单词(单词中间可以存在下划线)后面跟着一组小括号的行;
#grep -E -o “^[_[:alpha:]]+\(\)”/etc/rc.d/init.d/functions -o 显示字符串本身 \转意
5、使用echo输出一个路径,而后egrep找出其路径基名;进一步的使用egrep取出其目录名(注意是目录名,而非目录路径);
mkdir –p /data/plt echo /data/plt | grep -E -o"[^/]+$"首先要指明除了斜线结尾至少出现一次:-E [^/]+$, -o表示只显示匹配到的字符串本身
6、查找/usr目录下不属于root、bin或hadoop的所有文件;
#find /usr -not -user root -a -not -userbin -a -not -user -hadoop #find /usr -not \( -user root -o -user bin-o -user hadoop \) -a:与 -o:或 -not:非 \(\):将一个或多个字符捆绑在一起,当作一个正题进行处理
7、某天系统被入侵了,黑客在你系统下留下木马文件:
现需要查找当前系统上没有属主或属组,且最近一周内曾被访问过的所有文件;
另外,需要查找/etc目录下大于20k且类型为普通文件的所有文件;
#find / -nouser –a –noguoup –a -atime -10 –ls或 find / \( -nouser -o -nogroup \) -a \(-atime -10 \) -ls #find /etc -size +20k -type f –ls
8、创建目录/test/data,让某组内普通用户对其有写权限,且创建的所有文件的属组为目录所属的组;此外,每个用户仅能删除自己的文件。
#mkdir -p /test/data //-p表示循环创建 #chmod o+w /test/data //给普通用户增加写权限 #chmod g+s /test/data #chmod o+t /test/data
Linux运维实战练习案例20151220~20151231
原文地址:http://8655119.blog.51cto.com/8645119/1730010