linux 基础

安装系统时,按Ctrl+Alt+F1-12,windows安装系统时,按Shift+F10。

其他权限

ACL权限,拿来用户或组直接给权限。分区支持ACL权限,dumpe2fs -h /dev/sda3,df -h,default mount options内有acl即可支持,
vi /etc/fstab 查看系统开机挂载文件,再mount -o remount /,重新挂载根目录。
查看acl
getfacl 文件名
setfacl 选项 文件名
setfacl -m u:st:rx /project/
setfacl -m g::rx //

SetUID 对于可执行程序才能使用,执行程序时获得属主身份。passwrd
SetGID 所属组拥有S,可以对二进制文件和文件夹 locate

Stick BIT 其他人拥有S,只能是目录

文件系统属性chattr权限
lsattr -a查看i属性,对于root也限制。

sudo权限

visudo 实际修改的是/etc/sudoers 修改为root ALL=(ALL) ALL,第一个选项为用户名,第二选项为被管理主机的地址不是来源的IP,第三括号选项为可使用的身份,第四选项为授权命令(绝

对路径)。
%wheel ALL=(ALL) ALL %wheel设置组的用户赋予root用户的命令权限。
whereis shutdown 查看shutdown的绝对用户。su - sc 切换为普通用户sc。sudo -l 查看可用的sudo命令。sudo /sbin/shutdown -r now 普通用户执行sudo赋予的命令必须加sudo。
但visudo绝对不能把/usr/bin/vim 放到普通用户,可用管理所有的文件,所以向vim这样的编辑命令,绝对不能随便给普通用户。

文件系统管理,磁盘管理
主分区1 /dev/sda1 扩展分区/dev/sda2 逻辑分区/dev/sda5 逻辑分区/dev/sda6
boot、home、swap是主分区 根分区都是扩展分区

名称:df 显示挂载 df -hl -h使用习惯单位 -a显示/proc、/sysfs特殊文件系统 -T显示文件系统类型 -m以MB显示
名称:du -sh /root/ 显示root文件夹的总大小
du比df更耗费资源,df还会统计临时文件,所以df的大一些也更准确一些。长期不重启,等情况临时文件很多,造成df占用的比du大的多的临时文件。
名称:fsck 文件系统修复命令,系统重启后自动修复
名称:dumpe2fs /dev/sda1 查看硬盘数据块
名称:mount [-l] 显示已挂载可以省略l参数,-a 依据配置文件/etc/fstab的内容自动挂载,系统硬盘自动挂载。mount -o remount,noexec /home 重新挂载不挂载home盘符。

挂载光盘
mkdir /mnt/cdrom/
mount -t iso9660 /dev/cdrom /mnt/cdrom 或mount /dev/sr0 /mnt/cdrom 互为快捷方式
umount /mnt/cdrom
挂载U盘
fdisk -l
mount -t vfat /dev/sdb1 /mnt/usb/
NTFS文件系统(linux支持不足)
因为内核没有包NTFS驱动,或者没有包驱动才需要手动安装第三方软件来安装驱动。
下载NTFS-3G插件、下载WinSCP传输到服务器
安装插件:tar -zxvf .tgz;./configure;make;make install;
mount -t ntfs-3g /dev/sdb1 /mnt/usb/
fdisk介绍:n新建分区,d删除分区,l显示分区类型,p显示系统有哪些分区。ctrl+backspace才能删除错误输入。+2G参数需要添加2G硬盘,如果是所有的空间分区直接回车。
partprobe 重读分区表,可以免去重启机器,进行分区。fdisk后必须用partprobe。
格式化:mkfs -t ext4 /dev/sdb1
挂载:mkdir /disk/
mount dev/sdb1 /disk/

fstab自动挂载和修复:
查看硬盘UUID dumpe2fs /dev/sda1 -h
vi /etc/fstab
/dev/sdb1    /disk    ex4    default        1 2

 

 

 

选择gnome桌面安装软件选择(1-6)


VM虚拟机
1.标准创建虚拟机
1.1以后再安装系统
1.2选择linux指导安装系统,并更改路径
1.3使用20G硬盘并选择multiple files方便移动虚拟机
2.调整虚拟机
2.1选择之前创建的虚拟机,选择VM下的Settings
2.2设置内存为628MB,核数选择8以上,硬盘可以添加,DVD选择iso镜像,网络设置
虚拟机技巧
Snapshot快照,跳过启动,并且可以备份系统,占用硬盘
VM下的Manage下的Clone,虚拟镜像,linked clone不是备份,但是full clone是备份


磁盘分区
主分区:最多4个。扩展分区:最多1个。主分区加扩展分区最多4个。扩展分区不能写入数据,只能包含逻辑


分区。逻辑分区:可以正常使用。
硬件设备文件:
IDE:/dev/hd[a-b]
USB:/dev/sd[a-p]
DVD:/dev/cdrom dev/sr0
mouse:/dev/mouse


挂载:
必须分区:
/根分区;swap分区(交换分区,内存2倍,不超过2GB)
推荐分区:
/boot(启动分区,200MB)系统启动有关


文件系统结构
/boot
/etc/shadow /passwd /group
/home/


密码:
8位以上,大小写,数字,符号


Device Type
Standard Partition 标准分区
LVM 逻辑卷管理分区方案
LVM Thin Provisioning LVM的升级版本
Btrfs 高的性能和稳定性


File System
ext4 Linux系统上主流的文件系统
ext3
ext2
swap Linux上面的交换分区
BIOS Boot 系统引导设备,常小的分区
xfs 高性能文件系统
vfat FAT文件系统


/boot SP xfs 1G
/     LVM xfs 17G
swap  LVM swap 2G

根分区:先分Boot分区(1),剩余分区看情况(2),再分swap分区(3),再分根分区(4),自动分区(5)。

主分区1 /dev/sda1 扩展分区/dev/sda2 逻辑分区/dev/sda5 逻辑分区/dev/sda6
boot、home(数据服务器专用)、swap是主分区 根分区都是扩展分区。

格式化是为了写入文件系统,不是删除文件为主。
引导程序写入/dev/sda5 硬盘第五个
安装日志:/root/install.log软件包 .syslog安装事件 anaconda-ks.cfg kickstart配置文件
虚拟机网络:

桥接(vmnet0):使用真实网卡链接,局域网,配置简单,需要占用网段IP。NAT或HOST,通过VMware的网卡通信,但不能与局域网的其他机器不能通信。

HOST-only(vmnet1),仅能和本机通信,不需要占用网络IP。

NAT(vmnet8),不仅和本机通信,还能和网络通信,NAT缩写,不需要占用网络IP,和HOST-only比多了NAT服务。

HOST-only:查看vmnet1的ip,后设置ifconfig的ens33为同一网段
SecureCRT:Hostname和Username,如果禁止root需要再使用普通用户登录

命令:df 查看分区,磁盘

HOST-only:查看vmnet1的ip,后设置ifconfig的ens33为同一网段
SecureCRT:Hostname和Username,如果禁止root需要再使用普通用户登录。
配置:Session Options Emulation 选择Terminal为Linux,appearance的Current为Traditional,选择Fonts的Font为中文,Character为UTF-8

Winscp文件拷贝工具,使用SFTP协议和22端口

建议不远程使用root用户登录,有系统会限制root远程。

sbin/ 只有root才能用
dev/ 设置文件保存位置,硬件文件
etc/ 配置文件保存位置,软件文件
home/ 普通用户目录
mnt/ 挂载目录
opt/ 第三方软件保存位置
usr/ linux资源文件,如同Windows
proc/ 系统文件,只读,CPU,内存,net,devices
sys/ 系统文件,内核信息
srv/ 服务数据目录
var/ 保存缓存、日志等软件运行所产生文件

fdisk df vi、cat、more、grep、cut、awk、sed

/sbin System binaries

/dev device files

/etc et cetera

/home home directories

/mnt mount directory

/opt optional add on applications

/usr user programs

/proc process information

/srv service data

/var variable files

 

查看主机名hostname 更改 vi /etc/sysconfig/network HOSTNAME and vi /etc/hosts localhost.localdomain

 

127.0.0.1 localhost.localdomain localhost

192.168.1.2 ftp.localdomain ftp

192.168.1.3 mail.localdomain mail

192.168.1.4 smb.localdomin smb

 

调整磁盘或分区大小:

通过默认安装,会造成root盘小,home盘大的窘境。所以需要安装后调整一下。

df -hl 查看磁盘确实root磁盘小,home磁盘大。查看具体路径,和磁盘大小

umount /home 卸载home

fuser -km -i /home //如果有文件占用使用这个命令 一个-i 参数,这样每杀死一个程序前,都会询问 fuser -m -v -i -k /home

df -hl再次查看 查看具体路径 查看file目录

但是:

由于CentOS6和CentOS7在默认根文件系统的文件系统格式存在差异,需要判断是否为xfs,如果是xfs则应该使用xfs_growfs而不是一味的使用resize2fs。

df -hT 查看一下是否为xfs

vgdisplay命令查看系统上的空闲空间

 Free  PE / Size       25549 / 99.80 GiB       //这一项表示目前该系统上还存在99.80G的空闲空间(25549)

将上面查到的空闲空间中的90G增减到/home分区上

lvextend -L +90G /dev/mapper/centos-home      

//或者使用-l参数(跟PE数量),即lvextend -l +25500 /dev/mapper/centos-home

xfs_growfs /dev/mapper/centos-home

虽然xfs文件系统只支持增加,不支持减少。但并不是说在xfs系统文件下不能减小,只是减小后,需要重新格式化才能挂载上。这样原来的数据就丢失了!

系统安装好后,发现home分区过大,想从home分区中拿出100G给/分区

umount /home/

 lvreduce -L -100G /dev/mapper/centos-home

如下,很显然xfs文件系统不能执行分区减小的调整!

xfs_growfs /dev/mapper/centos-home

mount /dev/mapper/centos-home /home/

这样,只能通过重新格式化这个分区,格式化后才能再次挂载到home下

 mkfs.xfs /dev/mapper/centos-home -f

mount /dev/mapper/centos-home /home/

再次查看分区,发现home分区已经减小了100G,只不过这个分区里之前的数据都没有了。

 df -hT   

上面在重新格式的时候,也可以将这个格式化为ext4格式。

[root@localhost ~]# mkfs.ext4 /dev/mapper/centos-home

[root@localhost ~]# cat /etc/fstab  //将home分区的开机挂载设置里的xfs改为ext4

 

 

 

resize2fs -p /home的file目录 20G //再次把home盘分区为20G

提示请先运行"e2fsck -f /home的file目录"

重新mount /home

df -hl 查看

vgscan #扫描卷组

vgdisplay 查看卷的信息

创建卷组vgcreate 卷组名 分区 分区

vgcreate vg_data5 /dev/sdb5 #创建指定名称的卷组

vgscan

vgdisplay 查看卷的信息

将压缩出来的磁盘空间添加到xxx下,把未分配的容量分到root内

lvextend -L +812G /root的目录 //添加812G

resize2fs -p /root的目录 #进行激活。

 

 

 

命令:
名词:ls 路径:/bin/ 语法:ls -ald /root/
a所有文件包括隐藏文件,.文件 可以做隐藏文件。l长格式显示。目录下文件大小KB,权限显示,文件引用基数,所有者只能有一个,所属组(其他人),修改时间。h正常人类显示。d显示当前目录信息,需要和l共同使用-ld。-i显示文件的id。
文件类型:l软连接,-文件,d目录
rw- r-- r--
u   g   o
r读 w写 x执行

 

名称:mkdir 路径:/bin/ 语法:mkdir /tmp/xiao /tmp/da
mkdir-p p递归创建目录。可以在后面加空格,继续创建目录。


名称:cd 路径:shell内 语法:cd /tmp/xiao

名称:pwd 路径:/bin/ 语法:直接使用,显示绝对路径

名称:rmdir 路径:/bin/ 语法:rmdir 目录

名称:cp 路径:/bin/ 语法:cp 将文件 复制到目录;-r 将目录 到目录;-p 保持目录修改属性;可以在后面加空格,继续复制到目标目录;更改复制后的名字,改目标目录的名字。cp -rp /root/log /root/log1 /home

名称:mv 路径:/bin/ 语法:mv 文件或目录 剪切到目标目录;可以在后面加空格,继续复制到目标目录;更改剪切后的名字,改目标目录的名字;同目录剪切就是重命名。
clear ctrl+l 清屏
名称:rm 路径:/bin/ 语法:rm 文件或目录;-r删除目录;-rf强制执行,不用选择y。rm -rf /root/folder

名称:touch 路径:/bin/ 语法:touch 创建文件;可以在后面加空格,继续创建;touch "program file"

名称:cat 路径:/bin/ 语法:cat 文件;-n显示行号。tac命令,可以倒查看。

名称:more或less 路径:/bin/ 语法:more 文件;Spac或f,翻页;Enter 换行;q或Q 退出。less,使用PageUp向上翻页;/加搜索关键词,用n和p查看下一个和上一个。

名称:ln 路径:/bin/ 语法:ln 原文件 目标文件硬连接;-s 创建软连接。软连接就是快捷方式。硬连接复制并同步更新。通过i节点标识,但不能跨分区。

名称:chmod 路径:/bin/ 语法:chmod [] [文件或目录] ;-R 递归修改。ugoa +-= rwx 文件或目录。
chmod u+x,g=x log.list。权限的数字表示:r---4 w---2 x---1 rwx---7 有可能1,2,3,4,5,,6,7。

chmod -R 777 *


file r:cat/more/head/tail;w:vim;x:script/command;
directory r:ls;w:touch/mkdir/rmdir/rm;x:
目录权限和文件权限不一样,目录有继承关系到文件


名称:chown change own 路径:/bin/ 语法:chown 用户 文件或目录。只有root可以改变。


名称:chgrp change group 路径:/bin/ 语法:chgrp 组 文件或目录。


名称:umask 路径:/bin/ 语法:umask -S 显示文件的缺省权限,缺省创建的文件不能有可执行权限,所以文件默认创建为少x的权限,这样新建的文件对于系统更安全,不会是病毒。


文件搜索会卡,占用系统资源。windows版本 everything
名称:find 路径:/bin/ 语法:find [范围] [匹配条件] find /etc -name *init*;find / -size 


+204800数据块 需要除以1024除以2,才能找到大于100MB的文件;find /home -user shechao 所有者为


shechao -group 根据所属组查找;-iname是不区分大小写;
-amin 访问时间;-cmin 文件属性; -mmin 文件内容;find /etc -cmin -5 查找5分钟之内修改;
find /etc -size +163840 -a -size -204800 在/etc下查找大于80MB小于100MB的文件,-a两个条件同时满


足,-o两个条件满足任意一个;
find . -name inittabe -exec ls -l {} \; 在当前目录查找inittable文件并显示其详细信息,-exec/-ok 


命令{} \;对搜索结果执行操作或者询问是否执行;
-type 根据文件类型查找,f文件,d目录,l软链接文件
-inum 根据i节点查找

find . -inum 31443 -exec rm {} \;

快速查找:locate 路径:/usr/bin/ 语法:locate 文件名;updatedb可以更新locate的数据库,但不包括


tmp目录下面的文件;-i不区分大小写


名称:which 搜索命令所在的目录及别名 路径:/usr/bin/ 语法:which ls 搜索ls的目录
whereis 命令 查看配置文件的路径
1是命令帮助,5是配置文件帮助
man 5 passwd
whatis 命令 查看命令简短信息
apropos 配置文件 查看配置文件简短信息

man 5 passwd

whatis passwd

apropos passwd



名称:grep 搜索文件内容的行 路径:/bin/ 语法:grep -iv [指定字串][文件] -i不区分大小写,-v排除

指定字串 grep mysql /root/install.log
grep -v ~# /root/script

帮助命令:
名称:man 路径:/usr/bin/ 语法:man 命令或配置文件 /-l来查找对应单词,可以查看more/less


--help 常见选项的帮助


名称:help 查看Shell内置命令的帮助 语法:help umask






名称:groupadd [创建普通组]

名称:groupdel [删除普通组]


名称:useradd [创建普通用户]

名称:userdel [删除普通用户]


名称:passwd [普通用户]

 

更改中文设置:
回话选项-外观-当前颜色traditional,字体为中文gb2132,字符编码utf-8。
仿真-Linux-ansi颜色。
添加用户
useradd user
usr/sbin
添加密码
passwd user
usr/bin。
查看登录,终端,登录时间,登录ip的命令:who
usr/bin。
 

登录用户详细命令:w

usr/bin

查看连续运行时间,当前用户数,负载指数,up连续运行时间(或者命令uptime),记录1,5,15分钟负载情况。

idle 空闲时间
pcpu 占CPU时间
what 刚运行命令。

 

解压缩:
zip压缩跨平台
压缩gz文件:gzip 文件名
bin/gzip
name.gz
压缩后不保留源文件
解压缩:
gunzip 压缩文件名


tar压缩文件夹
tar [-zcf][压缩后文件名][目录]
-c 打包
-v 显示详细信息
-f 指定文件名
-z 打包同时压缩
压缩后.tar.gz
tar -zcf japan.tar.gz japan 把japan文件夹打包压缩成japan.tar.gz到当前目录


解压:tar -zxvf japan.tar.gz


zip 选择[-r] [压缩后文件名][文件或目录]
/usr/bin
-r 可以压缩目录
压缩后能保留源文件


unzip [压缩文件]


bzip2
/usr/bin
bzip2 选择[-k][文件]
-k 产生压缩文件后保留源文件
压缩后.bz2
大文件建议bz2
tar -cjf japan.tar.bz2 japan


解压缩bunzip2 -k
或者tar -xjf japan.tar.bz2
 

总结:

压缩tar -zcfv gg.tar.gz /root

解压tar -zxfv gg.tar.gz 

压缩zip -r gg.zip /root 可以压缩目录

解压unzip gg.zip

压缩bzip2 -k gg.tar.bz2 /root 解压后保留文件

压缩tar -jcfv gg.tar.bz2 /roo

解压bunzip2 -k gg.tar.bz2

解压tar -jxfv gg.tar.bz2


网络命令:
名称:write 路径:/usr/bin/ 语法:write [用户名] 给在线用户发送信息,以ctrl+d保存退出
名称:wall 路径:/usr/bin/ 语法:wall [message] 发广播信息
ping -c 指定发送次数
名称:ifconfig 路径:/sbin/ 只有root可以用 语法:ifconfig。查看VMware的网络,来配置。ifconfig是临时配置网络,interface config。
名称:mail 路径:/bin/ 语法:mail [用户名] 给其他用户发邮件,mail命令后Ctrl+D发送。直接mail后回车可以查看mail接收邮件,按邮件前面的数字可以查看邮件,按h可以再次列出邮件列表,d 1删除1邮件,q退出。

名称:last 路径:/usr/bin/ 语法:last 列出目前与过去登入系统的用户信息,包括重启时间。lastlog显示所有用户的登录,lastlog -u <用户uid号> 查询单个用户的登录信息,需要先使用id <用户名>。

名称:traceroute 路径:/bin/ 语法:traceroute 显示数据包到服务器间的节点路径 traceroute www.baidu.com
名称:netstat 路径:/bin/ 语法:netstat [选项] 显示网络相关信息 -t查询tcp协议,-u查询udp协议,-l监听,-r路由,-n显示ip地址和端口 netstat -tlun 查看本地监听端口 netstat -an 查看本机所有的网络连接 netstat -rn 查看本机路由表 netstat -an 发出端口是随机的,接收端口是准确的。
名称:setup 永久修改ip等设置 设置后需要service network restart,setup是redhat专有的工具。
名称:mount 路径:/bin/ 语法:mount [-t] 设备名 挂载点 
名称:umount 设备名或者挂载点


关机重启
shutdown [选项] 时间 -c取消前一个关机命令;-h关机;-r重启
shutdown -h
reboot 重启
init 6 重启
half 关机命令
init 0 关机 1单用户(安全模式) 2不完全多用户,不含NFS服务(network files 不含网络共享) 3完全多用户(开机) 4未分配 5图形界面(开机)6重启
cat /etc/inittab init的进程文件
runlevel 查看系统运行级别

 

logout 退出登录

 

Vim(gvim)

vi 文件名 或者vim 文件名 就可以进入vim查看文件。

进入后首先是命令模式,可以直接删除,或者恢复。进入插入删除模式,输入a\i\o或A\I\O进入插入删除模式,退出用ESC。输入:可以进入编辑模式,输入:wq退出,输入:set nu加入行号,编辑模式输入后自动进入命令模式。

 

命令模式:a为在光标后插入(A在光标行尾插入),i为在光标前插入(I在光标行首插入),o在光标下插入新行(O在光标上插入新行),gg是到第一行,G是到最后一行,$移动到行首,0移动到行尾,x删除字符,dd删除一行,ndd删除多行,D删除光标后面到行尾,u是撤销,ctrl+r 是恢复你刚才撤销,3yy复制三行,p粘贴到光标下,P粘贴到光标上,剪切3dd然后再到位置p或者P,r从光标处替换一个字符,R从光标处开始替换字符esc结束,/string搜索字符n是下一个,。

 

编辑模式::set nu或者:set nonu设置行号。:99可以到第99行,:99,1000d 删除99到1000行,:set ic(ignore-case)设置搜索字符串时忽略大小写,替换命令【:n1(起始行),n2(终止行)s/old(要替换的字符串)/new(替换的新字符串)/g(替换询问)或者c(替换不询问)】。:w保存。:w /root/。:q!不保存,。

 

插入模式:esc键回到命令模式。

 

高级Vim

:r /etc/issue 导入文件内容。:!which ls 查看ls命令的路径,写shell的时候用。:r !date把date命令的执行结果导入到光标处。:ab mymail @lenovo.com 把mymail替换成@lenovo.com。;map ctrl+v+p(定义ctrl+p) I#<ESC>(这个指令可以定义Ctrl+p,执行I,执行#字符,执行<ESC>退出)。

连续增加字符::n1,n2s/^/#/g 在第n1到第n2行的行首增加#号并询问。

连续删除首字#符::n1,n2s/^#//g 在第n1到第n2行的行首删除#号并询问。

连续删除首字//符::n1,n2s/^/\/\//g 在第n1到第n2行的行首删除//号并询问(增加转义字符,同样适用本意命令,只需要命令前面加\ls,就可以)。

 

但是快捷键或者替换快捷键在重启后就会消失,需要在宿主目录下,创建.vimrc文件,vi /root/.vimrc直接写set nu回车,map ctrl+v+p(定义ctrl+p) I#<ESC>回车。.是隐藏文件,需要ls -a查看。


Test 4.5
更改中文设置:
回话选项-外观-当前颜色traditional,字体为中文gb2132,字符编码utf-8。
仿真-Linux-ansi颜色。
添加用户
useradd user
usr/sbin
添加密码
passwd user
usr/bin。
查看登录,终端,登录时间who
 

linux内核都是源码包C语言,脚本安装,开源。时间长,需要编译,但稳定。

现在大部分rpm包都是二进制包编译后。依赖强,但已经编译。

ubuntu和 debian,主要区别RPM( Red Hat Package Manager)和DEB( Debra Murdock)

 

包全名的命名规则

包名-版本-次数-适合Linux平台-适合86或64硬件.rpm

安装后才能用包名来用,之前大部分用的是包全名。

如果环形依赖,就需要一次都安装上所有依赖的包。

安装好后,可以搜索/var/lib/rpm/ 中的数据库,来查看包名。

rpm -ivh 包全名

i安装 v(verbose)详细信息 h显示进度(hash)

mount 查看mount情况。

模块安装需要查找网站。

升级安装:rpm -U(upgrade)vh 包全名

安装和升级需要包全名,其他的都是包名即可。

卸载包:rpm -e 包名

 

查询包:rpm -q(query) 包名 查询安装

查询包:rpm -qa 查询所有包

查询包:rpm -qi 包名 查询基本信息

查询包:rpm -qip 包全名 查询未安装包的信息(package)

| grep http

查询安装路径:rpm -ql 包名 查询绝对路径(list)

查询属于包名:rpm -qf 系统文件名 查询属于哪个包(file)

查询包名依赖:rpm -qR 包名 查询依赖性(requires)

查询包名依赖:-qRp查询未安装包依赖性,但需要绝对路径

校验是否修改系统文件:rpm -V 已安装包名 校验是否被更改

修复单个已装包文件提取来替代:rpm2cpio 包全名 | \cpio -idv . 绝对路径

包里提取文件后复制到系统文件夹内:cp /root/ls /bin/

 

yum在redhat中是付费选项。

redhat setup设置网络

修改文件:vi /etc/sysc/net/ifcfg

修改:onboot=“yes”

重启服务:service network restart

ping www

修改yum文件的地址:vi /etc/yum.re/ 其中base文件是网络连接需要修改的文件,media是光盘连接需要修改的文件。baseurl是yum源网站,mirrorlist是镜像站点可以注释。

yum命令:

yum list 查互联网的list

yum search 包名(查询yum上的包)

yum -y install 包名(安装包)

yum -y update 包名 更新小心崩溃

yum -y remove 包名 卸载小心崩溃

不卸载

yum组安装快速:

yum grouplist

yum groupinstall 软件组名

yum groupremove 软件组名

不卸载

 

光盘yum

mount /dev/sr0 /mnt/cdrom

mount /dev/cdrom /mnt/cdrom

 

mount 再次查看一下是否挂载成功

 

把所有的非media文件改成.bak文件。

cd /etc/yum.repos.d/

mv .repo .repo.bak 保存一个.repo.bak,为了以后网络yum方便使用,并且备份

 

把所有的.repo 全部备份好。但是不改media.repo,因为后面要使用修改这个文件。

vim media.repo

修改:baseurl=file:///mnt/cdrom

修改:enable=1

不用修改:gpgcheck=1

不用修改:gpgkey=file:///etc/pki/rpm-gpg/...centos...

注释file:///下面两个地址

# file:///media/cdrom

# file:///media/cdrom

注释有严格格式

 

yum repolis

yum clean all #Centos7系统中,直接把、var/cache/yum/下面的文件删除,然后执行yum repolist就可以了!!!

 

源码包和rpm包安装位置不同,所以rpm包使用service来管理
/etc/httpd start 绝对路径加命令
service httpd start redhat的专用service命令去搜索默认路径,所以源码包必须用绝对路径来启动服务。
 
源码包:对外提供服务,用源码包。如果是内用,推荐rpm。
安装源码包,先安装gcc编译器,下载源码包
注意事项:源码包保存位置:/usr/local/src/
软件安装位置:usr/local/
拷贝到根目录,解压,进入解压目录,
du -ah 是看文件或目录所占用的磁盘空间的大小
查看readme或者install
./configure 软件配置与检查
make 编译
make clear 清空之前的所有临时文件
make install 编译安装
关闭rpm包服务:service httpd stop
源码包卸载就是直接删除目录即可。
 
脚本安装包:
webmin设置搭建服务器ip等各种配置
脚本安装的时候设置错误可以用ctrl+退格键
 

Linux 用户信息文件/etc/passwd
影子文件/etc/shadow
组信息文件/etc/group和组密码文件/etc/gshadow
查看帮助man 5 passwd
用户名,密码标志(shadow),UID,GID,用户说明,家目录,Shell。

提出用户:

w 或者 who

查看使用命令pkill -kill -t 用户tty

pkill -kill -t pts/0

 

 

linux 安全模式

按e,找到linux16 开头的一行!按向右的方向键,定位到ro 然后修改ro为rw,并添加如下红框内的命令行!rw init=/sysroot/bin/sh

使用下面的提示使用“Ctrl-x”进入系统后
然后输入 chroot /sysroot/   进入我们正常的系统里面的文件

输入完成后exit退出init 6重启

 

Linux 用户信息文件/etc/passwd

影子文件/etc/shadow

组信息文件/etc/group和组密码文件/etc/gshadow

查看帮助man 5 passwd

用户名,密码标志(shadow),UID,GID,用户说明,家目录,Shell。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ava实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),可运行高分资源 Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现
C语言是一种广泛使用的编程语言,它具有高效、灵活、可移植性强等特点,被广泛应用于操作系统、嵌入式系统、数据库、编译器等领域的开发。C语言的基本语法包括变量、数据类型、运算符、控制结构(如if语句、循环语句等)、函数、指针等。下面详细介绍C语言的基本概念和语法。 1. 变量和数据类型 在C语言中,变量用于存储数据,数据类型用于定义变量的类型和范围。C语言支持多种数据类型,包括基本数据类型(如int、float、char等)和复合数据类型(如结构体、联合等)。 2. 运算符 C语言中常用的运算符包括算术运算符(如+、、、/等)、关系运算符(如==、!=、、=、<、<=等)、逻辑运算符(如&&、||、!等)。此外,还有位运算符(如&、|、^等)和指针运算符(如、等)。 3. 控制结构 C语言中常用的控制结构包括if语句、循环语句(如for、while等)和switch语句。通过这些控制结构,可以实现程序的分支、循环和多路选择等功能。 4. 函数 函数是C语言中用于封装代码的单元,可以实现代码的复用和模块化。C语言中定义函数使用关键字“void”或返回值类型(如int、float等),并通过“{”和“}”括起来的代码块来实现函数的功能。 5. 指针 指针是C语言中用于存储变量地址的变量。通过指针,可以实现对内存的间接访问和修改。C语言中定义指针使用星号()符号,指向数组、字符串和结构体等数据结构时,还需要注意数组名和字符串常量的特殊性质。 6. 数组和字符串 数组是C语言中用于存储同类型数据的结构,可以通过索引访问和修改数组中的元素。字符串是C语言中用于存储文本数据的特殊类型,通常以字符串常量的形式出现,用双引号("...")括起来,末尾自动添加'\0'字符。 7. 结构体和联合 结构体和联合是C语言中用于存储不同类型数据的复合数据类型。结构体由多个成员组成,每个成员可以是不同的数据类型;联合由多个变量组成,它们共用同一块内存空间。通过结构体和联合,可以实现数据的封装和抽象。 8. 文件操作 C语言中通过文件操作函数(如fopen、fclose、fread、fwrite等)实现对文件的读写操作。文件操作函数通常返回文件指针,用于表示打开的文件。通过文件指针,可以进行文件的定位、读写等操作。 总之,C语言是一种功能强大、灵活高效的编程语言,广泛应用于各种领域。掌握C语言的基本语法和数据结构,可以为编程学习和实践打下坚实的基础

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值