修改日期时间
在命令行输入:
Date:显示当前时间 Fri Aug 3 14:15:16 CST 2007
date –s:按字符串方式修改时间
可以只修改日期,不修改时间,输入: date -s 2007-08-03
只修改时间,输入:date -s 14:15:00
同时修改日期时间,注意要加双引号,日期与时间之间有一空格,输入:
#date -s "2007-08-03 14:15:00"

1.1.1 Linux系统简介-UNIX发展历史和发行版本

父子关系,unix 60年代----windows 80年代----linux 90年代

unix发行版本——IBM,HP,SUN(solaris):可以在PC上使用,SUN已被orace收购

类Unix操作系统:苹果系统由Unix演变而来

unix——C语言(重写)——TCP/IP(发展) :网络操作系统

1.1.2 Linux系统简介-Linux发展历史和发行版本

91年芬兰大学生开发:企鹅LOGO(芬兰吉祥物) OR 南北极不属于任何国家,意为开源

内核:www.kernel.org/ 原班人马发布

其它的为开发版 (发行版)

分支:redhat和debian(区别:安装方式)

linux中的个人版:全功能版,测试用

1.2 Linux系统简介-开源软件简介

典型:php(大像),APACHE(自由羽毛),MYSQL

开源软件(源代码开放) 自由软件(freeware ,免费软件,不一定开源)

收费软件(Unix)

开源软件安全性好:足够多的眼睛就会让问题浮现

1.3 Linux系统简介-Linux应用领域

www.netcraft.com 操作系统统计:腾讯,淘宝,安卓

企业服务器和嵌入式应用

2.2 Linux系统安装-系统分区

windows:分区---格式化---分配盘符

linux      : 分区---格式化---硬盘设备文件名(Sda---Sdd):第几块硬盘  ---挂载点:空目录(/ 根分区,/swap 虚拟内存 ,/boot 启动分区)

分区设备文件名(Sda1---sda8)

sda1--sda4(主分区)---sda5(第1个逻辑分区)

sda1:/boot——sda2:/swap(内存2倍,一般为2G)—— sda3:/home (文件分区)——sda4(扩展)——sda5:/(根分区)

我的建议学习:sda1:/swap  sda2:/date  剩下的/

三种分区方案(红,蓝,绿)

sda      8:0    0  100G  0 disk

├─sda1   8:1    0  1G  0 part /boot                ;1G

├─sda2   8:2    0  8G  0 part [SWAP]        ;内存2倍

└─sda3   8:3    0 50G  0 part /                   ;其它

└─sda4   8:4    0 52G  0 part /home ;home

└─sda5 8:5    0 xxG  0 part /date ;其它挂载盘(可选)

2.4 Linux系统安装-远程登录管理工具

vmware 网络设置中:桥接(局域网其他的机器也能访问虚拟机,其它方式只能与本机通讯)  如果有2块网卡,要选择用哪块网卡来桥

其它方式是本机网卡没有入网的情况下使用

远程工具:SecureCRT中文字体乱码解决:1.选项中--仿真--终端--Linux

2.外观--当前颜色方案:traditional --字体--任意中文字体--字符集gb2312--字符编码utf8

文件传输工具:WinSCP

3.1 给初学者的建议-注意事项

1.严格区分大小写

2.所有内容都是文件

3.不靠扩展名区分文件

4.所有存储设备都必须手动挂载

5.win和linux程序不能互相使用

3.2 给初学者的建议-服务器管理和维护建议

目录结构

/bin 保存命令的目录

/boot 启动文件

/dev 设备文件

/etc 配置文件

/home 宿主目录,家目录

/lib  函数库

/lost+found 磁盘碎片

/mnt or /media+/misc 挂载点 加载光盘,U盘

/usr/local 外来软件安装点 类似win的program

/proc+/sys 内存运行临时目录 重起清空

/srv 服务目录

/usr 系统资源目录,类似windows目录

/var 日志目录

4.1.1 Linux常用命令-文件处理命令-命令格式与目录处理命令ls

命令格式:

命令  选项  参数

ls       -l       /ec

ls 显示目录和文件(list)

ls -a ( -all )显示所有文件  (.开头的是隐藏文件)

ls -l   (-long)长文件详细内容

ls -d 查看文件或目录本身的信息 定位查看 一般使用-ld

ls -i i节点,身份号

(通用参数-h 文件大小以K,M显示 可以配合-l选项)

du -sh 目录

查看目录大小

drwxr-xr-x

d 文件类型  d -(directory)目录    - -文件    l -(link)软链接

文件权限 r-red读  w-write写 x-execute可执行

3部分          rwx                  r-x                 r-x

3类用户     所有者u       所属组g          其它人o

user             group             others

4.1.2 Linux常用命令-文件处理命令-目录处理命令

mkdir (MD)创建目录 -p (递归创建)

cd 改变当前目录

pwd 查看当前目录

rmdir 删除空目录

touch 创建文件

cp 复制文件    -r 复制目录       -p 保持文件的属性        复制cp命令可以复制过程改名

mv 移动文件目录和改名 和cp的区别:作用目录时不需要用-r  可以移动过去改名也可以在当前位置改名

rm (remove)删除文件 -r 删除目录      加f 确认删除

清屏:clear=Ctrl+L

cat 查看短文件 -n 加行号  类似DOS下的TYPE

tac 查看后面几行

more 长文件查看  q退出 空格:翻页 回车:翻行

less 比more 多了向上翻 , page up:向上翻页 , 上箭头:向上翻行 ,/ 可查找    n:查找状态时下一个

head -n 查看文件的前几行

tail -n 查看文件的后几行  -f 动态显示后几页(监控日志)

4.1.4 Linux常用命令-文件处理命令-链接命令

ln(link)生成链接

-s 软链接:1.类似WIN快捷方式;2.有指向符;3.文件大小很小,所有用户都可以操作该文件

不加参数为硬链接:1.类似 cp -p (不同点:可以同步更新源文件内容;源文件删除,硬链接依然可以查看显示)

2.可以通过 ls -i 来看源文件和目标文件是不是存在硬链接关系(一个i节点对应该2个文件)

3.硬链接只能对文件生成,且不能跨目录

4.2.1 Linux常用命令-权限管理命令-权限管理命令chmod

chmod (改变文件权限)(root 和所有者才能使用)

1. {u,g,o,a}{+-=}{rwx}文件或者目录

2.数字表示权限: r--4  w--2 x--1

3.-R 递归修改,相当Win中的下级目录继承上级目录的权限

文件                            目录

r             读取查看(cat相关)     查看目录(ls)

w           修改(vim)                   创建删除(mkdir,touch,rm)

x            执行                                进入目录  (cd)

目录权限RX通常同时出现

chown(ch won)改变文件目录所有者(root才能使用)

格式:chown 用户 文件名

chgrp 改变文件目录所属组

umask 改变查看目录默认创建权限

umask 结果 :0022   777-022=755 (rwx-r-x-r-x)

umask -S 直观查看默认创建权限

改变 umask 023     777-023=754 (这才是最后的创建权限)

umask 022 系统默认

4.3.1 Linux常用命令-文件搜索命令-文件搜索命令find

find(搜索) 范围 匹配条件

-name 按文件名   *(通配符)   ?(通配符:单个字符)

-iname 不区分大小写

-size  (+-=)大于小于等于N   等于不输入=

-user (group)按所有者和所属组

- amin 访问时间access (cd)

- cmin 改变文件属性 change

- mmin 修改文件内容modify

-type f 文件  d目录 l软链接

- inum I节点

连接参数:

-a (and)同时满足

-o  (or)只满足一个条件

对查找出的内容再做一个操作: -exec 命令 {}  \;        ( 换成-ok: 确认操作)

locate   文件名  (全盘搜索)  相对应的升级locate的索引文件库/user/bin/updatedb

-i 不区分大小写

which 查找命令===whereis(多了帮助信息位置)

grep 要找的文件内容  文件   (在文件中查找内容)

-i 不区分大小写

-v ^#  查找所有内容,排除以#号开头的行

--color =auto 自动显示颜色

4.4 Linux常用命令-帮助命令

man (manual手册)查看命令和配置文件帮助

man [1,5]   passwd 单词即是命令又是配置文件 (1.查看命令 5.查看配置文件)

man=info

help 内置命令

4.5 Linux常用命令-户管理命令

useradd 用户名(添加用户)

passwd 用户名(为用户设置密码)

who 查看当前登陆用户

tty 本地终端

pts 远程终端

w=who (w 更详细)

4.6 Linux常用命令-压缩解压命令

gzip 压缩 gunzip 解压缩            (缺点:只能压缩文件,不保留原文件)

tar 参数 生成的文件 要压缩的目录(对目录打包并压缩)    tar.gz

参数

-z 压缩

-f 指定文件

-v显示压缩信息

-c打包 -x 解包

打包示例:tar -czvf

解包示例:tar -xzvf

zip -r(压缩目录)生成的文件 要压缩的目录

unzip 解压缩

bzip2(gzip的升级) -k (保留原文件或者压缩包)

tar -cjvf  xxx.tar.bz2 要压缩的目录   (-j调用bzip2)

bunzip2 解压缩

tar -xjvf xxx.tar.bz2  解压缩tar.bz2

4.7 Linux常用命令-网络命令

write 用户名 (通信私聊)

ctrl+d 发送

wall 信息 (给所有在线用户发信息)

ping -c 3   (ping 3 次)

mail 用户名-----------         发邮件

Subject: messge for job

编辑标题后回车
Apple this job.

开始编辑内容,结束后按Ctrl+D退出内容编辑

mail---------查看邮件:序号查看,D+序号  删除指定邮件

last 登陆详细日志

lastlog   所有用户简单日志

lastlog -u 用户ID (指定用户)

traceroute 路由路径

netstat (查看网络信息)

-rn 查看路由信息

-an 查看所有信息

-tuln 只查看tcp/udp 信息  l:监听 t:TCP信息 u:UDP信息 n:显示IP地址和端口号

-p  显示进程

setup 网络配置

service network resart 网络服务重启(设置生效)

设备挂载

mount 显示挂载清单

ls -l /dev/cdrom 查看当前光驱文件名

mkdir /mnt/cdrom 先创建挂载点

mount 设备文件名 挂载点 (mount /dev/cdrom    /mnt/cdrom)

umount 卸载 挂载点(必须退出当前设置挂载点)

4.8 Linux常用命令-关机重启命令

shotdown (关机重启命令)

-h [时间,now]关机

-r  [时间,now]重启

-c 取消命令

reboot 重启

init [0-6] 切换运行模式

cat /etc/inittab 查看缺省启动模式

查看当前运行级别:runlevel

logout 退出用户

5.1 文本编辑器Vim-Vim常用操作

vim 文件名

默认命令模式---》: 转到编辑模式---》---i转到插入模式---》esc 返回命令模式---》wq 保存退出(q!不保存退出)

命令模式下输入  : set nu      (加行号)

: set nonu  (去除行号)

:n    (移动到指定行)

gg :首行

G  :尾行

0   :行首

$   :行尾

删除命令:

x : 删除单个字符

nx:连续删除N个字符

dd:删除光标所在行

ndd:删除N行

D:删除光标所在字符至行尾

:n1,n2d 删除指定行

复制剪切命令:

yy:复制

nyy:多行复制

p:粘贴到行下

P:粘贴到行上

剪切:dd+p

编辑状态改变:

r 替换一个字符

R 替换模式

u 撤销

搜索替换命令:

/要搜索的字符串

n :下一个

/set ic   不区分大小写  /set noic  取消不区分大小写

:%s/源/目的/g   不提示全文替换(可以不加/g)

:n,ns/源/目的/c  提示替换某行到某行

保存退出:

:w  (保存)

:w /文件名 (另存为)

:r 文件名 (导入文件内容)

:! 命令 (临时切换出vim使用命令)

上面2个命令一起使用        :r  !date    (导入当前时间)

快捷键定义:

:map (ctrl+v+ctrl+快捷字母)  要定义的操作

连续注释:

:n1,n2s/^/#/g  (注释)

:n1,n2s/^#//g   (去注释)

\    转义符 比如 \/   代表的是字符/

:ab mymail 225857@qq.com  (定义快捷AB)

vim自定义配置文件路径: /root/.vimrc     /home/zouzou/.vimrc

6.1 软件包管理-简介

软件包分类:

1.源码包  (C语言脚本)

分支:脚本安装包(类似windows的安装界面)

源码包优点:

(1)开源,可修改源代码;

(2)可自由选择安装功能;

(3)编译安装,执行效率更高;

(4)卸载方便

源码包缺点:安装步骤多,安装时间长,安装出错解决复杂;

2.二进制包(0101机器语言包)

类似windows 是 exe包,linux redhat系统 的是RPM包(系统默认包)

RPM包优点:安装简单,安装速度快

RPM包缺点:看不到源码,安装选项少,依赖性(A包--B包--C包)

6.2.1 软件包管理-rpm命令管理-包命名与依赖性

1.包全名和包名

包全名:没有安装的软件包,注意路径(放在系统能识别的文件夹里,比如package),一般是软件安装升级

包名:操作已经安装好的软件包时,使用包名,这些包放在/var/lib/rpm 下 ,一般是软件的卸载,一般不带后缀rpm

2.rpm安装

rpm -ivh 包全名

-i 安装 -v 显示详细信息 -h 显示进度

3.rpm升级

rpm -Uvh 包全名

-U 升级(upgrade)

4.rpm卸载

rpm -e 包名

-e 卸载(erase)

--nodeps  强制删除

6.2.3 软件包管理-rpm命令管理-查询

rpm -q 包名

-q  (query查询)

-a  (all查询所有已安装过的包)  扩展 rpm -qa  | grep 包名   查询指定已安装包

-i   (information已安装包的详细信息)

-c    配置文件位置

rpm -qip 包全名

-p (package查询未安装包的信息)

rpm -ql 包名(查询包安装位置)

-l  (list列表)

-p  未安装包装备安装的位置

查询系统文件名是属于哪个安装包:

rpm -qf 系统文件名

-f (文件file)

查询包依赖性

rpm -qR 包名     (已安装包)

-R (依赖性requires)

6.2.4 软件包管理-rpm命令管理-校验和文件提取

1.RPM包校验

rpm -V 包名

-V (依赖verify)

校验不通过含意

2.RPM包中文件提取

rpm2cpio  将rpm包转换为cpio格式

rpm   -qf  /bin/ls     查询属于哪个包

mv /bin/ls /test/      制造假像

rpm2cpio /mnt/cd/coreutils-8.4-19.el6.i686.rpm | cpio -idv ./bin/ls     进行修复

如不行还可以 cp /root/bin/ls /bin/

6.3.1 软件包管理-RPM包管理-yum在线管理-IP地址配置和网络yum源

网络配置文件中默认网卡是不启动的:

vim /etc/sysconfig/network-scripts/ifcfg-etho0    中  ONBOOT=yes

yum源配置文件:

6.3.2 RPM包管理-yum在线管理-yum命令

查询:

yum list 查询可用安装包

yum search 包的名称

安装:

yum -y install 包名

-y 自动回答YES

升级:

yum -y update 包名

卸载:

yum -y remove 包名

软件组查询:

yum grouplist  |  more

|more 显示的太多可以用more暂停便于观察

软件组安装:

yum groupinstall “查询到的软件组”

软件组卸载:

yum groupremove

6.3.3 RPM包管理-yum在线管理-光盘yum源

yum 文件路径  /etc/yum.repos.d/

步骤:

挂载光盘

1.让网络yum源失效,配置文件改成.bak

2.改光盘yum配置文件

baseurl

enable=1

6.4.1 软件包管理-源码包管理-源码包与RPM包的区别

源码包安装位置人为指定

源码包建议安装位置:/usr/local/软件名     软件启动必须用绝对路径

httpd 服务默认位置 /etc/rc.d/init.d/httpd

绝对位置启动服务 /etc/rc.d/init.d/httpd start(服务启动方式 service httpd start)

httpd 默认网站根目录 /var/www/html

6.4.2 软件包管理-源码包管理-源码包安装过程

准备工作:

源码下载上传解压

确认gcc 安装是否成功 rpm -q gcc

源代码位置:/usr/local/src

软件安装位置:/usr/local

1.进入到源码解压位置 (查看安装说明vim INSTALL)

2.配置文件 ./configure --prefix=/usr/local/apache2

3.make  (如果报错,清除make clear)

4.make install

5.启动服务 /usr/local/apache2/bin/apachectl start

6.5 软件包管理-脚本安装包

类似windows安装方式(主要是源码包,驱动程序安装)

webmin(apache图形管理工具 ):

http://sourceforge.net/projects/webadmin/files/webmin/

安装命令 ./setup.sh

7.2 用户和用户组管理-用户管理相关文件

用户信息配置文件/etc/passwd

1.用户名称

2.密码标志

3.UID用户ID(改UID变超级用户)   1-499 伪用户     500-65535 普通用户

4.初始组(初始组+附加组)

5.用户说明(备注)

6.家目录

7.用户的shell:命令解释器  (/bin/bash默认  /sbin/nologin禁用用户)

7.1.2 用户和用户组管理-用户配置文件-影子文件

影子文件/etc/shadow

1.用户名称

2.密码位 (* 和!禁用密码)

3.最后一次修改密码时间 :1970是起始时间,后面+天

4.限定2次密码修改间隔

5.密码有效时间

6.密码到期警告时间

7.密码到期宽限时间

8.帐号失效时间 :比67权优先

9.保留

把时间戳换成日期

date -d "1970-01-01 16066 days"

把日期换成时间戳

公式

7.1.3 用户和用户组管理-用户配置文件-组信息文件

/etc/group

1.组名

2.组密码位

3.GID

4.组中附加用户

/etc/gshadow

1.组名

2.组密码

3.组管理员用户

4.组中附加用户

7.2 用户和用户组管理-用户管理相关文件

家目录

普通用户:/home/user       提示符$   改用户uid 为0 但家目录不会变

超级用户:/root                    提示符#

用户邮箱

/var/spool/mail/用户名

用户模板目录

/etc/skel

7.3.1 用户和用户组管理-用户管理命令-useradd

useradd

参数

-u UID

-d 指定家目录位置

-c 指定用户说明,如有空格请加双引号

-g 指定初始组

-G 指定附加组,多组用,分隔

-s  指定用户登陆shell 默认:/bin/bash

useradd 默认值

7.3.3 用户和用户组管理-用户管理命令-usermod和chage

usermod(和useradd参数同)

-L   锁定用户

-U  解锁用户

chage 用户    (修改用户密码状态)

chage -l 用户 :查看用户密码信息

-d 0   密码最后一次修改时间(被加0后说明用户没有修改过密码,实现的功能是用户一登陆就让其修改密码)

7.3.4 用户和用户组管理-用户管理命令-userdel和su

userdel -r 用户  删除用户并删除用户的家目录

id 用户   查看用户ID信息

su - 用户名(切换用户)

su  -  root -c "useradd user1" (临时切换到root 执行只有超级用户才能执行的命令)

7.4 用户和用户组管理-用户组管理命令

groupadd 用户组

groupmod -n 新组 老组  (修改组名)

gpasswd -a ( -d ) zouzou root   从root组加入(删除)zouzou用户

8.1.1 权限管理-ACL权限-简介与开启

df -h 查看分区信息      df -hal  可以查看更多

dumpe2fs -h /dev/sda1  查看分区是否支持ACL

手动挂载支持ACL,vim /etc/fstab     (defaults,acl) ,然后重启系统 或者手动重新挂载根分区,mount -o remount /

8.1.2 权限管理-ACL权限-查看与设定

设定ACL权限:

setfacl -m u:st:rx /project     设置st用户对project有rx的权限

查看ACL权限:

getfacl  文件或目录

8.1.3 权限管理-ACL权限-最大有效权限与删除

最大有效权限:通过修改mask值后期控制group组(所属组+附加组)和mask值相与得到另外的权限

setfacl -m m:rx 文件或目录

删除acl 权限:

setfacl -b 文件或目录  (删除全部ACL权限)

setfacl -x u[g]:用户或组   文件或目录   (有选择的删除权限)

8.1.4 权限管理-ACL权限-默认与递归ACL权限

递归: -R  对目录有效  (对现有文件执行递归权限,对新建文件或目录无效)

默认递归继承:      d:     -R    (对之前文件或目录无效 ,如果想对以前新建的文件要设置权限还需执行上面的权限)

8.2.1 权限管理-文件特殊权限-SetUID

功能理解:

1.可执行程序才能设置SUID权限(只对文件)

2.命令执行者(普通用户)对该程序有X权限

3.普通用户在执行拥有SUID的程序的时候,暂时(执行完变成普通用户)变成所有者用户的权限

4.(不确定)所有者U也应该对该文件有X权限

x(超级执行)

例: passwd(rwsr-xr-x)  --------》可以对/etc/shadow修改

cat(rwxr-xr-x)  --------》不能对/etc/shadow查看

设置SETUID权限                          取消SETUID权限

chmod 4755 文件名                    chmod 755 文件名

chmod u+s  文件名                     chmod u-s  文件名

4755---setuid

2755---setgid

1755---sticky bit

8.2.2 权限管理-文件特殊权限-SetGID

SETGID权限对文件的处理和SetUid权限相似,----》变成当前文件所属组的权限

(普通用户获得所属组r权限)

例:locate(rwx--s--x)-----》/var/lib/mlocate/mlocate.mdb (rw-r-----)

chomod g+s (或者chmod 2755)

可以针对目录(用的少)

8.2.3 权限管理-文件特殊权限-Sticky BIT

翻议:黏着位(简称sbit)

作用:只能针对目录,对目录设置t权限后,虽然普通用户有777权限,但只有所有者才能删除该目录下的文件。

chmod o+t (或者chmod 1777)

8.3 权限管理-chattr权限

文件隐藏属性

chattr +i  文件   (+I属性  连ROOT用户都不能修改,删除,改名;锁住文件)

目录    (+I属性,/test/abc.txt 只能查看修改abc.txt  不能删除原有文件,不能新建文件)

主要作用:保护文件,防止误操作

chattr +a  文件     (比I属性多了个追加)

目录    (比I属性多了追加文件和修改文件)

取消属性-i 和-a

lsattr  -a -d   查看所有文件隐藏属性,以-d方式

8.4 权限管理-sudo权限

sudo作用:root用户分配命令给普通用户(切记不要授权vim使用权限)

vi sudo 命令 (修改的是/etc/sudoers文件)

st                                    ALL=/usr/sbin/useradd

%(组)

要授权的用户            被管理计算机的IP(目的IP)=命令绝对路径

sudo -l   普通用户查看当前用户可以执行哪些sudo命令

sudo 命令绝对路径(执行方法)

9.1 文件系统管理-回顾分区和文件系统

9.2.1 文件系统管理-文件系统常用命令-df、du、fsck、dumpe2fs

df -h   文件系统查看   (统计文件+系统资源)

du -sh  统计目录大小  -s:只统计主目录,不统计子目录(只统计文件占用)

fsck  设备文件名  :修复文件系统(类似chkdsk)   (有可能修复系统,尽量不要修系统上当)

-a  或 -y 都是自动修复

dumpe2fs   设备文件名  ( 显示磁盘状态 )

9.2.2 文件系统管理-文件系统常用命令-挂载命令



mount   查看设备的挂载点

mount -a  自动挂载  (按照挂载文件/etc/fstab  自动载一下)

手动挂载:mount   [-t 文件系统]  [-L  卷标名]  [-o特殊选项]  设备文件名  挂载点

-t  :  ext3   ext4   iso9660 (光盘)

9.2.3 文件系统管理-文件系统常用命令-挂载光盘与U盘



U盘挂载:

fdisk -l 查看U盘分的设备文件名

monut -t vfat(fat32文件,如果是fat16这里用fat) 设备文件名  挂载点

卸载 umount 设备文件名或者挂载点

9.2.4 文件系统管理-文件系统常用命令-支持NTFS文件系统

工具下载地址:http://www.tuxera.com/community/ntfs-3g-download/

ntfs-3g_ntfsprogs-2014.2.15.tgz

1、安装编译器,否则不能成功编译。
yum install gcc
根据提示按Y安装完成

2、安装过程: ./configure--》make--》make install

挂载NTFS的U盘:必须在虚拟机中挂

mount -t ntfs-3g /dev/sdb1  /mnt/usb

9.3.1 文件系统管理-fdisk分区-分区过程

fdisk sdb  (硬盘)完整路径 /dev/sda

m帮助 l查看分区类型  n新建  p显示分区列表  d删除分区   w保存  q退出

分完区一般要启机器,可以不启,用重新读取分区信息partprobe

格式化命令:   mkfs -t ext4 分区名---》挂载

fdisk:看分区             mount和df看挂载

9.3.2 文件系统管理-fdisk分区-自动挂载与fstab文件修复

查看分区UUID:dumpe2fs 分区名

1.挂载文件/etc/fstab

配置文件格式 :/dev/sdb1  /disk1    ext4   defaults   1 2

检测是否挂载成功: mount -a   (用/etc/fstab下的配置挂载测试)

2.修复/etc/fstab

配置文件写错了。重启时

密码root进到系统后,根下的配置文件为不可写,解决:mount -o remount,rw /  (作用:重新挂根目录为可写)

9.4 文件系统管理-分配swap分区

缓存cached:加速读

缓冲buffers: 加速写

查看swap分区  free -m  按m显示

分swap分区思路:fdisk ---》n建逻辑分区 ---》t改ID为82---》w保存退出---》如果退出分区在使用可以用partprobe重新载入分区---》格式化mkswap /dev/sdb6---》加入swapon(off) /dev/sdb6 这个是手动, 要开机自动加载swap请改启动配置

10.1 Shell基础-概述

1.概念

硬件---》内核---》shell命令解释器---》应该程序  (此流程可逆)

shell是解释执行的编程语言,现编现执行,还可以直接调用linux命令

2.分类

A.早期的sh  主流bash兼容早期的sh

B.C家庭的csh和tcsh

3.系统中默认可用sh

查看/etc/shells

shell切换   默认bash ---sh---csh   (exit退出当前shell)

10.2 Shell基础-脚本执行方式

1.输出命令

echo

-e  支持右斜杠字符转换(转义)

例:echo "ab\bc"  输出ac

2.hello word

#!/bin/bash

#注释 上面的是shell编程的开始符

echo "hello word"

shell执行方法一(主要):1.先赋执行权限,chmod 755

2. shell的绝对路径和相对路径(./)来执行

方法二:bash 脚本  (不需要赋权限)

dos2unix  Dos转成linux (格式转换) 这条命令需yum安装

cat -A  显示所有字符,包括换行符

10.3.1 Shell基础-Bash基本功能-历史命令与补全

1.历史命令   history

-c 清空所有

-w 保存历史命令   /用户家目录/.bash_history

历史命令保存条数:/etc/profile 下 HISTSIZE=10000

10.3.2 Shell基础-Bash基本功能-别名与快捷键

别名:      alias  别名=‘原命令’

让别名永久生效:vim /root/.bashrc

删除别名: unalias  别名

命令执行顺序:命令绝对(相对)路径---》别名---》bash内部命令---》环境变量定义的路径









10.3.3 Shell基础-Bash基本功能-输入输出重定向



1.标准输入输出

键盘       0   标准输入

显示器   1   标准输出

显示器   2    标准错误输出

2.输出重定向

标准输出重定向:>覆盖    >>追加

标准错误输出重定向:2>覆盖    2>>追加

正确错误输出都保存:命令  &>>   文件

输出结果丢垃圾箱:命令 &>>/dev/null

正确错误分别保存:命令 >> 文件1 2>>文件2

wc < /etc/fstab  统计文件的行数,字数



10.3.4 Shell基础-Bash基本功能-多命令顺序执行与管道符



1.多命令执行

;             各命令互相独立, date ; dd if=/dev/zero of=/root/testfile bs=1k count=100000 ; date (生成100M文件需要多少时间)

&&         逻辑与  ls && echo yes   第一条命令正确执行了,才执行第二条命令

||            逻辑或  lssss &&  echo no  第一条命令不正确执行,才执行第二条命令

ls  && echo yes || echo no   判断命令是否正确执行

2.管道符

ls /etc/ -a  |  more

命令1的正确输出作为命令2的操作对象

netstat -an | grep "ESTABLISHED"  查看哪些用户是连接状态

10.3.5 Shell基础-Bash基本功能-通配符和其他特殊符号

[^0-9] 非数字的任意一个字符

特殊符号

10.4.1 Shell基础-Bash变量-用户自定义变量

变量不能以数字开头

变量值默认是字符串

环境变量建议大写(区分小写命令)

变量分类:    用户自定义变量------》环境变量------》预定义议量-------》位置参数变量

2端都可以定义              (只能改值,可追加变量)                                 ( 只能改值)

变量叠加: aa="$aa"123  或  aa=${aa}123

查看变量set

删除变量 unset  变量名 (前面没有$)

10.4.2 Shell基础-Bash变量-环境变量

自定义变量(局部变量)只在当前shell中生效,而环境变量在所有变量中生效。

父变量    子变量

bash         bash

原变量是bash, 再按bash变子变量,exit又变成bash                可以通过pstree查看父子关系

定义环境变量 : export 变量名=变量值

查询环境变量:env

调用、删除环境变量方法和自定义变量同

系统查找路径: echo $PATH

在$PATH叠加/test 方法:  PATH="$PATH":/test

PS1 提示符

10.4.3 Shell基础-Bash变量-位置参数变量

$n  起到传递数据到$n的作用    命令本身后面跟2个位置达到传递的作用

11 22 33 44 55

$# -----5

$*  -----原数   当一个整体

$@-----原数   把每个参数区分对待



10.4.4 Shell基础-Bash变量-预定义变量





$?  返回上个命令执行正确或错误的结果  0 为正确  其它为不正确

接收键盘输入到变量

read  参数  变量

-p 提示信息

-t  等待几秒

-n 输入字符个数

-s 隐藏输入

10.5.1 Shell基础-Bash变量-数值运算与运算符

声明变量declare  -+ 选项   变量

-   设定属性

+    删除属性

-p    查看变量

-x    设定为环境变量  (功能类似export)

-i     设定为整数型变量(integer)

数值运算方式1.   declare  -i cc=$aa+$bb              运行命令

数值运算方式2.    dd=$(expr $aa  +  $bb)             调用工具

数值运算方式3.    ff=$((运算)) 或ff=$[运算]           括符

10.5.2 Shell基础-Bash变量-变量测试与内容替换

第一个

unset y

x=${y-new}

echo $x           -----》new

通过测试x的真,判断y: 不存在,空,值

10.6.1 Shell基础-环境变量配置文件-简介

让配置文件直接生效命令:source  配置文件     或     .   配置文件













linux学习(备份)相关推荐

  1. Linux学习笔记(七):文件压缩、打包与备份

    Linux学习笔记(七):文件压缩.打包与备份 常见的压缩指令 gzip, zcat/zmore/zless/zgrep bzip2, bzcat/bzmore/bzless/bzgrep xz, x ...

  2. Linux学习之三-Linux系统的一些重要配置文件

    Linux学习之三-Linux系统的一些重要配置文件 1.网卡配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0 说明: DEVICE=eth0        ...

  3. sqlserver在linux数据备份,SQLServer数据库之sqlserver for linux自动备份数据库脚本

    本文主要向大家介绍了SQLServer数据库之sqlserver for linux自动备份数据库脚本,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助. 不多说直接上脚本 # ...

  4. (零)我为什么要写Linux学习笔记?

    我对Linux有强烈的好奇心,兴趣:写学习笔记会让我有成就感:我记忆力实在不好.好吧,其实真正原因是:如果我能把自己学到的知识简明扼要的讲出来,写出来,那便证明我真的学懂了我想学的知识.没时间怎么办? ...

  5. Linux学习之命令【1】

    Linux学习之命令[1] 一·命令总览        1.基本简单命令          1.0 pwd 1.1 echo          1.2 date          1.3 cal 1. ...

  6. 20155303狄惟佳预备作业三Linux学习笔记

    20155303狄惟佳预备作业三Linux学习笔记 初次接触Ubuntu系统以及Linux内核,了解了其产生的历史,从感性来讲,深深吸引我的是其中蕴含的珍贵的开源精神,以及Stallman等人对&qu ...

  7. linux目录表及功能n鸟哥,鸟哥linux学习之-资料与目录管理

    鸟哥linux学习之--文件与目录管理 目录与路径 相对路径:由当前目录算起 绝对路径:由根目录算起,linux的根目录为"/" 几个目录符号: . 表示当前目录 .. 表示上一层 ...

  8. Linux学习之CentOS(二十九)--Linux网卡高级命令、IP别名及多网卡绑定

    本篇随笔将详细讲解Linux系统的网卡高级命令.IP别名以及Linux下多网卡绑定的知识 一.网卡高级命令 在之前的一篇随笔里Linux学习之CentOS(九)--Linux系统的网络环境配置,详细讲 ...

  9. 虚拟机上的Linux学习

    title: 虚拟机上的Linux学习 date: 2018-08-08 15:48:28 updated: tags: [Linux,学习笔记] description: keywords: com ...

  10. 生信宝典Linux学习系列文章整理

    欢迎关注天下博客:http://blog.genesino.com/2017/10/sxbd-linux-summary/ 生信宝典推出的Linux从入门到常用命令.软件安装方法.数据处理方法都在这了 ...

最新文章

  1. [AngularJS学习笔记] 基础学习01
  2. 机器学习系列|从白富美相亲看特征预处理与选择
  3. 中国人民公安大学网络对抗技术作业一
  4. 转 让NET C# 程序独立运行(脱离 .NET Framework运行,绿色运行) 未验证
  5. 深度学习 Caffe 初始化流程理解(数据流建立)
  6. 【英语学习】【WOTD】scavenger 释义/词源/示例
  7. 数组在内存中存储方式
  8. css里calculate,css3 calc会计算的属性
  9. python requests session post_requests.session()发送请求 和使用requests直接发送请求的区别...
  10. Bailian2931 期末考试第二题——比较数字个数【文本】
  11. file_operation(文件操作)file(文件)inode(节点)
  12. html怎么存储历史记录,设置网页在历史记录中保存10天
  13. asp.net core abp 视频教程1
  14. [BJWC2008]王之财宝
  15. java 二维码原理以及用java实现的二维码的生成、解码
  16. 常见网络摄像机的端口及RTSP地址
  17. 雷电模拟器重置开机密码
  18. 循环进行Bitmap转BitmapSource导致内存溢出时可使用使用DeleteObject来释放资源
  19. 实验四 进程同步与通信(一)进程同步与互斥1
  20. 零起点英语_零起点英语口语

热门文章

  1. Bentley 软件公司宣布 Seequent 收购 Aarhus GeoSoftware
  2. 2022年全球与中国科里奥利质量流量计行业发展趋势及投资战略分析报告
  3. javaStruct - 通讯协议的解封包第三方库--(二)官方文档三
  4. 一天学会写诗词【转载】
  5. 朋友让帮忙写个飞单机器人管理系统...
  6. 声母 简码 万能键 特殊符号
  7. 微信小程序项目实例大全
  8. 【新手教程】如何用C语言写游戏修改器!
  9. 玩转华为ENSP模拟器系列 | 配置VTY用户界面举例
  10. mybaitisplus 中 自定义排序 order by filed 的写法