linux系统基础

Posted Carson

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux系统基础相关的知识,希望对你有一定的参考价值。

磁盘管理(一)

Linux设备认识

/dev/cdrom
/dev/sr0
/dev/mouse
/dev/sda
/dev/hda

IDE硬盘(支持4块):hd(a-d)

【非IDE硬盘】SCSI硬盘,SATA硬盘,u盘(支持16块):sd(a-p)

device 设备 (运行) hardware 硬件

/dev/hda
/dev/sdc

 

分区:主分区(一块磁盘物理支持4个)
扩展分区(只能有一个,占用一个主分区的位置)
逻辑分区(在扩展分区创建)

第2个非IDE设备第4个逻辑分区:

/dev/sdb8

 

第3个IDE设备第3个逻辑分区

/dev/hdc7

 

第1个SCSI硬盘第2个逻辑分区和拓展分区

/dev/sda6 /dev/sda2-4

 

fdisk -l (查看磁盘分区)
fdisk /dev/sdb
m:    //查看帮助信息 menu
n:    //创建新分区 new
p:    //查看分区信息 print
d:    //删除分区 delete
t:    //更改分区类型 translate
l:    //列出Linux支持的所有分区类型 list
w:    //保存退出 write
q:    //不保存退出 quit

 

n:    //创建新分区 new
e 拓展分区
p 主分区
125柱面=1G=1024M

 

格式化命令:mkfs.ext4 /dev/sdb1
make file system . 文件系统类型 
mkfs.ext4 -L 卷标名 /dev/sdb1

 

mount /dev/sr0 /media (光驱挂载)
挂载 mount 
mount 设备(光驱,磁盘,ISO文件) 挂载点(系统存在的目录)
mkdir /mnt/sdb1
mount /dev/sdb1 /mnt/sdb1
卸载umount
umount 设备(光驱,磁盘,ISO文件)或者 mount 挂载点
umount /dev/sdb1 或者 umount /mnt/sdb1(注意当前路径,不要占用设备)

 

df 或者 mount -l (查看磁盘挂载)
e2label /dev/sdb1(分区)查看卷标
e2label /dev/sdb1 卷标名字 (修改卷标)

umount -a (全部卸载)
mount -a (全部挂载)

vim /etc/fstab (自动挂载的配置文件)
/dev/sdb1 (分区) /sdb1 (挂载点) ext4 (文件系统) defaults 0 0
/dev/sr0 (设备) /media (挂载点) iso9600 (文件系统) defaults 0 0
/dev/sr0 (设备) /media (挂载点) auto (文件系统) defaults 0 0

 

磁盘管理(二)

交换分区swap

硬盘一部分空间实现内存功能=windows虚拟内存=linux的swap分区

swap分区是物理内存的2倍

fdisk /dev/sdb

 

默认linux分区文件系统类型 83t 82 (linux swap文件系统类型)

mkswap /dev/sdb1
swapon /dev/sdb1
vim /etc/fstab (自动挂载swap,注意swap没有挂载点)
/dev/sdb1 swap swap defaults 0 0

 

/dev/sda1 /boot ext4 200M
/dev/sda2 /home ext4 1000M
/dev/sda2 swap swap 物理内存的2倍
/dev/sda2 / ext4 剩余全部空间

 

磁盘限额quota
rpm -q quota
vim /etc/fstab 
/home defaults,usrquota,grpquota 0 0 (user限额,group限额)

mount -o remount /home (重新挂载/home分区)

quotacheck -cvuga (限额检测)c创建 v显示 u用户 g组 a全部
quotacheck -cvug /home (限额检测)c创建 v显示 u用户 g组 a全部
quotaon /home (开启限额)
edquota tom (编辑限额)
quota tom (查看限额)
dd if=/dev/zero of=file

du -h (查看文件大小)

 

磁盘管理(三)


LVM可以将多个物理分区整合在一起,让这些分区看起来就是一个磁盘,还可以新增其它物理分区到LVM管理的磁盘。LVM(逻辑卷管理)

Physical Volume(物理卷)=pv (普通分区转换为pv)

Volume Group(卷组)=vg (vg 为多个pv组成的,一组物理卷)

Logical Volume(逻辑卷)=lv (逻辑卷是从卷组提取的空间,只能小于等于卷组)


pv物理卷 ;vg卷组 ;lv 逻辑卷 + create 创建
pv ;vg ;lv + scan 扫描
pv ;vg ;lv + display 显示
pv ;vg ;lv + remove 删除

fdisk /dev/sdb 分区并把格式转变为8e

fdisk /dev/sdc 分区并把格式转变为8e

 

partprobe 分区激活 (或重启电脑)

pvcreate /dev/sdb1 /dev/sdc1 (创建物理卷)

vgcreate 1302d /dev/sdb1 /dev/sdc1 ;vgcreate (vgname卷组名字)(创建卷组中物理卷成员)

lvcreate -n bw -L 6G 1302d ;lvcreate -n bw (逻辑卷名字)-L 6G(逻辑卷大小) 1302d(卷组名字)
系统生成新的逻辑卷设备/dev/vgname/lvname /dev/1302d/bw

 

卷标:

mkfs.ext4 -L bw /dev/vgname/lvname (格式化磁盘时候加卷标)
e2label /dev/vgname/lvname bw (设置卷标)
pv ;vg ;lv + remove 删除

 

 系统管理

Linux开机流程
1.power(开机)
2.Bios(基本输入输出系统)
3.GRUB(多系统引导器)
4.kernel(选择系统加载内核)
5.init(加载系统首个进程)
6.runlevel(运行级别)
7.login(登录)

系统 引导器 启动配置文件
Windows NT Loader boot.ini
Linux GRUB /etc/grub.conf软链接到/boot/grub/grub.conf

明文转MD5密文加密

[[email protected] root]#grub-md5-crypt >> /etc/grub.conf (>>追加MD5加密内容到GRUB配置文件)
Password:
Retype password:
$1sjfnlxkksflpaoekdl&^%$sds./


/etc/grub.conf编辑内容

default=0 (选择进入系统0代表首个系统)
timeout=5 (默认读秒时间)
#hiddenmenu
splashimage=(hd0,7)/boot/grub/splash.xpm.gz
password --MD5 $1sjfnlxkksflpaoekdl&^%$sds./ (密文加密)(保护GRUB)
title Reh Hat Enterprise Linux (2.6.32-.71.98.el6.i686) 
password 123456 (明文加密)(保护linux系统)
root (hd0,9)
kernel /boot/xen.gz-2.6.18-1.2798.fc6 
initrd /boot/initrd-2.6.18-1.2798.fc6xen.img
title windows xp
password abc(明文加密)(保护windows系统)
rootnoverify (hd0,0)
chainloader +1


linux系统运行级别

runlevel (0-6) init 0-6
/etc/inittab (配置默认运行级别)
0 halt 关机
1 single user mode 单用户模式(root管理员)(文本)
2 multiuser,without NFS 多用户没有nfs服务(文本)
3 full multiuser mode 完全多用户模式 (文本)
4 unused 未使用(系统保留)
5 xll (x-window图形)
6 reboot 重启
id5:initdefault (init默认级别)

init 3
startx (文本直接开启动图形)
runlevel 查看运行级别 (先前的和当前的)

 

进程管理 

进程为应用程序的运行实例,是应用程序的一次动态执行。它是操作系统当前运行的执行程序。

ps (静态查看进程)
ps -aux (进程占cup和内存的比例)
ps -efl (查看父进程ppid)

top (动态查看进程)每个5秒更新一次
q或crtl+c退出

pid 进程号
ppid 父进程号

 

linux系统首个进程(pid等于一的进程为init)

pstree (查看进程树)

kill 杀进程
kill 进程号pid(2468killall 全部杀
killall 程序名
kill -9(强制杀进程号)
killall -9 (强制杀程序)

 

前台进程需前台控制,所以只有等进程结束才能回到输入命令提示符状态。

而后台不需前台控制,启动后。可以回到命令提示符状态继续执行其它进程。

程序 加回车 (前台运行)
程序 加回车 (前台运行)ctrl +z (后台挂起)

程序 & 加回车(后台运行)

jobs (查看后台作业号)
fg 作业号 (后台程序调入前台)
bg 作业号 (后台挂起程序调入后台运行)
kill % 作业号 (杀死后台程序,调入前台显示终止)
ctrl +c 终止程序

 

yum服务于nfs服务

Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE、CentOS中的Shell前端软件包管理器,可以自动处理RPM依赖性关系。

配置本地Yum

1.挂载光驱

mount /dev/sr0 /media/  (根据实际光驱设备挂载)

 

2.配置vim /etc/yum.conf
按dgg 删除#上面内容再按i插入
修改

[local]
name=RHEL6
baseurl=file:///media
gpgcheck=0
enabled=1


按esc,再按:wq保存

yum -y install 需要安装内容
yum -y remove 需要卸载内容

 

NFS
NFS是Sun发明的用来在UNIX系统之间共享文件的一种服务协议。

RPM或YUM安装NFS

nfs-utils; portmap - NFS启动所必须的软件包

rpcinfo -p - 检查NFS服务是否正常运行(portmapper、nfs、mountd)

vim /etc/exports 

 

[输出目录,必须物理存在] [客户机器]([选项])

/var/aaa    *(ro,sync) 【*代表任意,ro只读,sync数据同步】
/var/test    *(rw,sync) 【*代表任意,rw读写,sync数据同步】
/var/ccc    172.16.217.240(ro) 172.16.51.250(rw,sync)
/var/ddd    172.16.51.250 (ro)    【中间慎用空格】

 

service portmap status 确保RPC已启用 (有需要查看)
service nfs start|restart (开启和重启 nfs服务)
chkconfig --level 35 portmap on 
chkconfig nfs on (设置nfs服务开启自动启动)

showmount -a 监视共享
showmount -e 查看共享
showmount -e 172.16.51.240 查看主机172.16.51.240所有共享

client:mount nfsserver:sharedir mount point

客户端:mount命令 nfs服务器ip:共享路径 挂载点

/etc/fstab(开机时自动挂载)
如:172.18.107.196:/1302d /mnt/nfs nfs defaults 0 0

 

DHCP服务

DHCP (Dynamic Host Configuration Protocol)动态主机分配协议,是一种让系统得以连接到网络上,并获取所需要的配置参数手段
RPM安装:

mount /dev/sr0 /media 
rpm -ivh /media/Server/Package/dhcp-*.rpm

 

YUM安装

yum - y install dhcp

Configuring the server in /etc//dhcp/dhcpd.conf

 

示例配置文件

/usr/share/doc/dhcp-version/dhcpd.conf.sample

 

至少要提供一个地址段
该地址段必须和一个网络接口相关

DHCP:动态主机配置协议(Dynamic Host Configuration Protocol)
使用服务端的dhcpd来提供服务
dhcpd可以同时为DHCP及BOOTP客户端提供服务
使用端口:
67(bootps),68(bootpc)

 

dhcpd命令检查服务器配置

service dhcpd start|retart|stop (开启|重启|停止)
chkconfig dhcpd on (设置dhcpd服务开机自动启动)


配置文件

vim /etc/dhcp/dhcpd.conf

host mail {
hardware ethernet 12:34:56:78:ab:cd;
fixed-address 192.168.1.1; 
//绑定硬件地址,排除在地址池外,否则会冲突
}

 

samba服务

Samba服务器能很好的实现windows 和 类UNIX之间的打印机及文件的共享。
Samba主要使用端口: 139,138,137
配置文件 /etc/samba/smb.conf


RPM安装:

mount /dev/sr0 /media 
rpm -ivh /media/Server/Package/samba-*.rpm

 

YUM安装

yum - y install samba


格式与ini文件类似
以#和;作为注释
/etc/samba/smb.conf中有详细注释
分为多个section

[global]
[homes]
[printers]


用户定义的section

security = share
[docs]
path = /usr/share/doc
comment = share documents
public = yes

 

启动smb服务器

共享目录设置有效用户

[redhat]
path = /var/redhat
comment = redhat’s files
valid users = <username> <@groupname>


新建samba用户

# useradd username (创建系统用户)
# smbpasswd -a username(设置smb密码)
service iptables stop (关闭防火墙)
setenforce 0 (关闭slinux

 

windows客户端

net use (查看共享链接)
net use \\172.18.107.193\IPC$ /del (删除共享链接)

 

 计划任务

“计划任务”在每次Linux启动的时候在后台运行。
计划任务是指根据用户的需求执行特定的任务和指令。利用计划任务,可以将任何脚本、程序或文档安排在某个最方便的时间运行。

at 可以让使用者指定在 TIME 这个特定时刻执行某个程序或指令,TIME 的格式是 HH:MM其中的 HH 为小时,MM 为分钟,甚至你也可以指定 am, pm, midnight, noon, teatime(就是下午 4 点钟)等口语词。
at -l : 列出所有的指定 (使用者也可以直接使用 atq 而不用 at -l)

at -d : 删除指定 (使用者也可以直接使用 atrm 而不用 at -d)

1.at 时间
2.需要执行命令 mkdir /bw
3.ctrl+d 保存退出一次性计划任务
4.at -l 查看一次性计划任务
5.at -d 或 atrm 删除一次计划任务

 

service atd restart

 

周期性任务计划是借助周期性服务守护进程来实现,这个服务叫做crond。

分钟 小时 天 月 星期 任务命令

crontab -e
* * * * * 
30 23 30 */4 * shutdown -r now

 

crontab

作用:配置计划任务
参数

-e 编辑用户的参数
-l 列出用户的设置
-r 删除用户的设置
-u <用户>表示针对某一用户

service crond restart

 

 

以上是关于linux系统基础的主要内容,如果未能解决你的问题,请参考以下文章

20155201 李卓雯 《网络对抗技术》实验一 逆向及Bof基础

逆向及Bof基础实践

LINUX PID 1和SYSTEMD PID 0 是内核的一部分,主要用于内进换页,内核初始化的最后一步就是启动 init 进程。这个进程是系统的第一个进程,PID 为 1,又叫超级进程(代码片段

20155307刘浩《网络对抗》逆向及Bof基础

20155311高梓云《网络对抗》逆向及Bof基础

20145301赵嘉鑫《网络对抗》逆向及Bof基础