--
ctrl+alt+backspace 注销
用户
|
|
bash 终端相当于是bash的接口和工具
|
|
内核kernel 1,系统接口调用
| 2,内存管理
| 3,文件系统管理
| 4,进程管理
| 5,硬件驱动
|
物理硬件
linux 基本命令
命令的分类:
内部命令--bash自带的内部命令 50个左右
man type
bash, :, ., [, alias, bg, bind, break, builtin, cd, command, compgen,
complete, continue, declare, dirs, disown, echo, enable, eval, exec,
exit, export, fc, fg, getopts, hash, help, history, jobs, kill, let,
local, logout, popd, printf, pushd, pwd, read, readonly, return, set,
shift, shopt, source, suspend, test, times, trap, type, typeset, ulimit,
umask, unalias, unset, wait - bash built-in commands, see bash(1)
外部命令--外部程序带的执行文件
[root@station221 ~]# type cd
cd is a shell builtin
[root@station221 ~]# type mount
mount is /bin/mount
linux的命令帮助
man info -h --help help+命令
--man 注重于应用
ls /usr/share/man/ man的帮助文档所在的位置
man1 普通用户可执行的命令和二进制文件
man2 系统核心调用的函数工具
man3 常用的一些函数与函数库
man4 设备文件的说明
man5 设置文件与一些其它格式的文件
man6 游戏相关
man7 协议有关,网络协议等
man8 管理员可操作的命令
man9 系统内核相关的文件
--info 注重于介绍
/usr/share/info
命令 -h 简便的列出命令的参数使用列表
命令 --help 同-h 这两个只针对外部命令
help 命令 对内部命令的简单介绍
-------------------------------------------------------------------------------
文件命令:
ls 列出目录的内容 同dos里的dir
ls -a 列出隐藏文件(就是以.开头的文件,包括.和..)
ls -l 详细列表
ls -l -a
ls -la
ls -ld /etc
-rw------- 1 root root 1112 Mar 27 03:14 anaconda-ks.cfg
文件属性 权限 硬连接数 属主 属组 大小 最后修改时间 文件名
文件的分类:
- 普通文件
d 目录
l 链接文件
p 管道文件
b block文件,块设备
c 字符
s 套接字文件socket
ls 列出的文件颜色:
白色 普通文件
蓝色 目录
暗红 压缩文件
紫色 套接字文件
目录浅绿色背景 目录有t位
草绿色 链接文件
文件浅绿色 可执行文件
touch 建立一个空的普通文件
touch {1,2,3}aa{4,5,6}bb{7,8,9} --创建了27个文件
touch "{1,2,3}aa{4,5,6}bb{7,8,9}" --创建了一个文件
----------------------------
目录命令:
pwd cd mkdir rmdir
pwd 查看当前所在目录的路径
[root@station221 mail]# pwd -P
/var/spool/mail
[root@station221 mail]# pwd
/var/mail
cd 切换当前所在目录
注意相对路径和绝对路径的区别
cd /root/test/
cd /root/ cd test/
每个目录下都有一个.和一个..
. 代表当前所在目录
.. 代表上一级目录
cd ../../etc/httpd/conf
mkdir 创建空目录
ls -l列出的文件的第三列的数字,当mkdir一个空目录时就包括了.和.. 这个数就为2
如果在此空目录里再多mkdir一个目录,此数值就加1;如果是touch多一个文件,此数值不加
rmdir 删除一个空目录
--------------------------------
阅读命令:
cat more less head tail
cat 查看文件内容
-n 加行号
nl !$ nl 命令直接加行号
-- !$ 代表上一个命令后面接的参数
more 一页一页的看
用空格键向下翻页 q键退出
less 一页一页的看 支持page up和page down 上下翻页
head 默认查看文件的前十行
head -n 3 /etc/rc.sysinit 查看前N行
tail 查看文件的后十行
tail -n 3 /etc/rc.sysinit 查看后N行
-------------------------------------
操作命令
cp mv rm
cp 复制文件 (格式为 : cp 源 目标)
-r 复制目录
-a 复制时保留原文件的属主和属组
mv 移动或者重命名 ,文件或目录都适用
rm 删除文件或目录
-r 删除目录 (无论是否为空,但要求用户确认)
-f 不要求用户确认
-rf 一起使用,但此非常危险
bash的通配符功能
rm 1aa* -rf 删除以1aa开头的,包括1aa
rm *7 -rf 删除以7结尾的,包括7
bash的转义字符功能
rm /{1/,2/,3/}aa/{4/,5/,6/}bb/{7/,8/,9/}
注意文件里的空格也要用/ 来转义 ,多用bash的TAB键,自动补全功能
---------------------------------------------------------------------------------------
管道 --一条命令完成不了的任务或者要多条复杂的命令来实现的任务,可以用管道来实现
cat /etc/rc.sysinit |more
cat /etc/rc.sysinit |grep fi |wc -l
重定向
cat /etc/rc.sysinit |grep fi |wc -l|cat >> /root/test/1 --追加
echo aa > /root/test/1 --覆盖
0 标准输入 ----- 终端 --------标准输出 1
|
|
错误输出
2
echo 'hello' > /dev/pts/2 重定向到pts/2
echo 'hello' 1> /dev/pts/2 只把标准输出重定向到pts/2
cat /sagasgaws 2> /dev/pts/3 把错误输出重定向到pts/3
cat /sagasgaws 2> /dev/null /dev/null指的是bit桶,或者叫垃圾箱,或者叫黑洞
--------------------------------------------------------------
bash 的功能总结:
1, histroy 保存历史的功能
2, tab自动补全功能
3, shell script的强大编程功能
4, 变量功能
5, 通配符功能
-------------------------------------------------------------------------------------
vi vim (增强版vi,现在基本各种linux版本都带有vim)
vi 有三种模式:
1,一般普通模式:
2,编辑模式: i I o O a A r R
3,命令行模式: : / ?
移动相关:
--ctrl+b 向上翻页 = page up
--ctrl+f 向下翻页 = page down
ctrl+d 向下移动半页
ctrl+u 向上移动半页
--G 移动到页末 =shift +g
--gg 移动到页头
--0 移动到行头
--$ 移动到行末
n(代表数字)+回车 向下移动N行
删除,复制,粘贴
x 向后删除一个字符 = delete
X 往前删除一个字符 = backspace
--dd 直接删除光标所在行 ndd (n代表数字,删除n行)
--yy 复制光标所在行 nyy (n代表数字,复制n行)
--p 粘贴
--u 回退上一次操作 按一次u只能回退一次
ctrl+r 重做上一次操作
进入编辑模式:
--i 当前insert
I 行头insert
a 向后一个字符insert
A 行末insert
o 下一行insert
O 上一行insert
r 替换光标所在的字符
R 从光标处向后一直替换
--ESC 从编辑模式回退到一般模式
查找与替换:
-- /word 查找单词 n 向下查找 N 向上查找
-- :1,$s/old/new/g 从第一行到最后一行都用new替换old
-- :%s/old/new/g 从第一行到最后一行都用new替换old
-- :n1,n2s/old/new/g 从n1行到n2行用new替换old
-- :1,$s/old/new/gc 从第一行到最后一行都用new替换old,多加了一个c就可以要求用户确认哪些换哪些不换
--:set number 或者 : set nu 把每一行都加上行号
--:set nonumber 或者 : set nonu 去掉每一行前的行号
:n(代表数字)+回车 直接把光标定位到n行
--:w 保存 (write)
--:q 退出 (quit)
--:wq 保存并退出 = shift+zz
-- +! 表示强制保存或者退出
:split 横分布局
:vsplit 竖分布局
--------------------------------------------------------------------------------
用户管理
操作系统的分类:
单用户单任务操作系统: DOS
单用户多任务操作系统: windows 95 windows 98 windows 2000
多用户多任务操作系统: windows 2003 server windows 2008 server
linux unix
基于多用户的基础上,引出的用户的分类:
管理员 root uid=0
系统帐号 uid 1-499 65534
普通用户帐号 uid 500-65535(2.6.xxx的内核支持的uid数量为 2^32-1个)
id 命令 查看当前使用用户的用户信息和组信息
[root@station221 ~]# id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)
用户管理相关的文件
/etc/passwd
/etc/shadow
/etc/group
/etc/gshadow
--vim /etc/passwd
root:x:0:0:root:/root:/bin/bash
第一列: 用户名
第二列:密码 老版本这里放的就是密码,为了安全性考虑,密码放到了/etc/shadow的第二列
x代表/etc/shadow的第二列生效,去掉x就表示此用户登录的时候没有密码
第三列:uid 用户识别ID值,系统是通过这个值来确认是哪个用户
第四列:gid 组识别ID值
第五列:描述项 comment
第六列:家目录
第七个:bash 当前用户使用的bash
cat /etc/shells
/bin/sh 淘汰
/bin/bash 现在大多数支持的
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/ksh
--vim /etc/shadow
root:$1$.1RfCu/n$ModWntxLJRC6SpgAXSDO81:14694:0:99999:7:::
与/etc/passwd相对应 (但这里有九列)
第一列: 用户名
第二列:密码 (这里以*号开头或!开头默认是不能登陆的)
第三列:上一次修改密码的时间 linux以1970年1月1日到现在的天数来算的
第四列:修改密码后几天内不允许再修改 如果这里为5,那改过密码后5天内不能再修改 0代表不限制
第五列:多少天内必须要求你改 99999代表不限制
第六列:过期前几天给你一个告警信息
第七列:密码过期后还给的一个宽限天数
第8列: 这里可以写一个过期天数 这里也是以1970年1月1日到现在的天数来计算的,多用于收费系统
第九列: 保留,留着以后功能扩展
用户相关的命令
useradd
usermod
userdel
passwd
useradd 增加一个普通用户
-c comment
-u uid
-g gid
-e 过期时间
.......... 找man
usermod 修改一个用户信息
参数基本与useradd相同
userdel 删除一个用户
-r 参数 连同家目录与邮件目录全删除
passwd 修改密码
--------------------------------------------
用户信息相关的命令:
finger
chfn
[root@station221 ~]# finger user1 --查看一个用户的相关信息
Login: user1 Name: (null)
Directory: /home/user1 Shell: /bin/bash
Never logged in.
No mail.
No Plan.
[root@station221 ~]# chfn user1 --修改一个用户的相关信息
Changing finger information for user1.
Name []: li
Office []: uplooking
Office Phone []: 123456
Home Phone []: 88888
Finger information changed.
[root@station221 ~]# finger user1
Login: user1 Name: li
Directory: /home/user1 Shell: /bin/bash
Office: uplooking, 123456 Home Phone: x8-8888
Never logged in.
No mail.
No Plan.
---------------------------------------------------------------
组管理
vim /etc/group
bin:x:1:root,bin,daemon
第一列:组名
第二列:与/etc/passwd第二列一样
第三列:gid
第四列:哪些用户属于这个组
vim /etc/gshadow
bin:::root,bin,daemon
组管理的相关命令:
groupadd
groupdel
groupmod
gpasswd
groupadd 增加一个组
groupdel 删除一个组
groupmod 修改组信息
gpasswd 修改组登陆密码
--$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
--关于有效组和初始组的讨论
[root@station221 ~]# id user3
uid=502(user3) gid=502(user3) groups=502(user3),501(user2)
[root@station221 ~]# id user2
uid=501(user2) gid=501(user2) groups=501(user2)
gid=那个组就是你的初始组
[user3@station221 ~]$ groups --user3用户用此命令查看 靠前的是有效组
user3 user2
--那么此用户现在创建目录或者文件的属组为 有效组user3
[user3@station221 ~]$ touch 1
[user3@station221 ~]$ ll
total 0
-rw-rw-r-- 1 user3 user3 0 Mar 28 15:19 1
[root@station221 ~]# gpasswd user2 --用root用户给user2加一个组登陆密码
Changing the password for group user2
New Password:
Re-enter new password:
[user3@station221 ~]$ newgrp user2 --user3用户用此命令切换有效组
Password:
[user3@station221 ~]$ groups --切换有效组之后,再用user3用户查看发现有效组改变
user2 user3
[user3@station221 ~]$ touch 3
-rw-r--r-- 1 user3 user2 0 Mar 28 15:21 3 用户创建的文件,属组为新的有效组user2
--$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
切换用户
su 非完全切换 继承上一个用户的环境变量
[user3@station221 root]$ echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
su - 完全切换 不继承上一个用户的环境变量
[user3@station221 ~]$ echo $PATH
/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/user3/bin
-----------------------------------------------------------------------------
sudo
root一个人忙不过来,把一些权限给普通用户帮忙管理,但就是不想给他root密码的情况
vim /etc/sudoers
76 root ALL=(ALL) ALL
77 user3 ALL=(ALL) ALL --这一行是加的 ,意思是把所有的权限给了sudo情况下的user3
保存退出
[root@station221 ~]# su - user3 --完全切换到user3用户
[user3@station221 ~]$ mkdir /root/user3 --在root用户的家目录下建立目录是被权限拒绝的
mkdir: cannot create directory `/root/user3': Permission denied
[user3@station221 ~]$ sudo mkdir /root/user3 --用sudo 可以建立,但密码是user3自己的密码
Password:
----------------------------------------------------------------------------
虚拟机vmware安装与介绍
[root@station221 ~]# showmount -e 10.1.1.221
Export list for 10.1.1.221:
/share/iso *
/share/soft *
/share/install *
mount 10.1.1.221:/share/soft /mnt 拷到自己的机器上去
rpm -ivh VMware-workstation-6.0.2-59824.i386.rpm
[root@station221 VMware-workstation]# vmware-config.pl
[root@station221 VMware-workstation]# /usr/bin/vmware-config.pl
--用上面两种方法都可以配置虚拟机 用默认配置一路回车下来
vmware & 用此命令启动虚拟机
输入序列号 注册
WC5FW-V0CFX-4804A-4WTNL
虚拟机的功能:
suspend 挂起当前状态
snapshot 快照功能
http://10.1.1.35/ule_basic/ule02.txt
最新推荐文章于 2014-02-09 11:56:26 发布