菜鸟学习linux笔记与练习-----第一天。一些初级命令以及基本用户管理
来源: Linux论坛 日期: 2010.03.23 22:10
本帖最后由 yeluyide 于 2010-03-23 22:12 编辑
RHEL5.3安装光盘主要文件内容:
Cluster
ClusterStorage
images
isolinux
Server
VT
showmount -e 10.1.1.20
显示指定的主机可供挂载的目录
将U盘作为引导盘
dd if=diskboot.img of=/dev/sdb
CTRL + SHIFT + T
增加终端标签
常用的shell
cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/ksh
/bin/zs
man 1 普通命令
5 文件信息
8 管理员专用命令
使用man查看出来的格式中的参数选项中两个符号是指--------[]可有可无,{}必须有
info m菜单
l上一层
home回到主页面
q退出
help 内部命令
cd 切换目录
~用户家目录
-回到刚才的目录
..上一级目录
.当前目录
空 直接回到用户家目录
pwd 当前目录
mkdir 创建文件夹
-p 如果所要创建的目录文件的父目录没有被创建,则一并创建
ls 查看文件
-h 带度量单位显示
-t 按照最新修改时间排列
-d 查看目录本身的属性
c----字符设备文件
d----目录文件
l----字符连接(软连接) 类似于快捷方式
s----socket套接字
b----块设备文件
----普通文件
p————管道文件
touch 创建文件
创建多个文件:例 touch a{1,2,3}
rm 删除文件
rmdir 删除空目录
-rf 没有交互式的删除目录
grep 管道
<> 重定向
ls -l /dev | grep ^d > ./output.txt 标准正确输出
ls -l /notexist 2 > ./file3.txt 标准错误输出
ls -l /etc/passwd /notexist &> file4.txt 不管正确错误输出都重定向到file4.txt文件
ls -l /etc/passwd /notexist &> /dev/null 屏蔽所有输出结果
>> 追加
cp 复制
-a 尽可能的保留所复制的文件属性
-r 拷贝文件夹
vim
三种模式:
命令模式:
i 在光标前进入
I 在行首进入
a 在光标后进入
A 在行末进入
o 在光标所在行的下一行行首进入
O 在光标所在行的上一行行首进入
cw 修改一个单词
dw 删除一个单词
dd 删除一行
u 撤销上一次操作
CTRL + r 重新上一次操作
GG 光标快速回到文件底部
gg 光标快速回到文件首部
4dd 删除光标所在行开始的4行
p 在光标下一行进行粘贴
yy 复制一行
d$ 删除光标后面的字符都行末
末行模式:
q 退出
q!强制退出
w 保存
wq 保存并退出
wq!强制保存并退出
set nu 显示行数
set nonu 不显示行数
set autoindent 自动对齐
set noautoindent 取消自动对齐
1,5s/mail/gmail/g 全局替换(1-5行)
第三:用户管理
单用户多任务操作系统,只有一个帐号,肯定是管理员帐号
多用户多任务操作系统,拥有多个帐号,linux里只有一个管理员,权限最大的
liunx 帐号的分类:
管理员: uid=0
系统帐号(伪帐号):uid=1-499
普通帐号:uid=500以上
1涉及的一些文件
/etc/passwd
/etc/shadow
2相关命令
/etc/passwd文件的说明
root:x:0:0:root:/root:/bin/bash
用户名:密码:用户ID:组ID:用户描述:家目录:默认shell
/etc/shadow文件说明
root:$1$q0ZCD6PQ$CzjBq5ISoOIweJWMqMnD50:14683:0:99999:7:::
用户名:明文加密密码:最后一次修改密码的日期距离1970年1月1日点天数:密码修改的间隔:密码过期时间:密码过期前7天警告:密码过期后你能使用多少天:帐号过期时间:保留字段
useradd tom
1,在/etc/passwd中添加tom用户
2,在/etc/shadow中添加一行信息
3,在/etc/group中添加一行信息
4,在/etc/gshadow中添加一行信息
5,建立用户的家目录,并且把相应的环境变量文件复制到该目录,而且把相应的权限配置好
.bash_logout
.bash_profile
.bashrc
这些文件都是从/etc/skel/* 复制过来的
6,创建邮件文件,并且注意权限
/var/mail/tom
useradd
-d 自定义家目录
-s 自定义默认shell
-g 自定义所属优先组
-f 指定密码的过期时间
-e 指定帐号过期时间
usermod
usermod -G hellen,mj tom
删除用户 userdel -r
gid Gid
一个帐号比寻属于一个优先组(gid) ,同时可以属于多个别的组
组的相关命令
groupadd
groupdel
groupmod -g -n
gpasswd
gpasswd -A hellen tom 让hellen成为tom组的管理员
组的管理员可以把其他帐号添加到该组
gpasswd -a moto tom <---组管理员或者root运行此命令可以moto添加到tom分组
neogrp tom <---临时加入到tom组
第四 用户权限
t root 2241 03-16 15:53 /etc/passwd
rw- r-- r--
拥有者权限 拥有组权限 其他人权限
tom --> 属于root组
bean --> 不属于root组
r读权限
对于文件:就是具有浏览文件内容的权限
对于目录:就是具有对这个目录进行列表的权限
w写权限
对于文件:就是可以修改文件的内容,但不意味着可以删除文件
对于目录:就是可以在目录下创建文件,删除文件
判断是否可以删除一个文件,依据是否对文件所在目录具有写的权限
x执行权限
对于文件:具有执行这个文件的权限,一般是指命令,脚本等可执行文件
对于目录:具有进入该目录
修改权限
chmod
chmod u=rwx run.sh
chmod g=rx,o=r run.sh
chmod g-x,u-w run.sh
rw- r-- r-x
拥有者权限u 拥有组权限g 其他人权限o
110 (6) 100 (4) 101 (5)
chmod 645 run.sh
二进制 十进制
0 0
1 1
10 2
11 3
100 4
101 5
110 6
111 7
r-x , rw, --x 561
755 rwx,r-x,r-x
644 rw-,r--,r--
chown 修改文件的主人 -R 递归
chown root:bean exports
/etc/bashrc <---对所有帐号生效
.bashrc <---只对用户本身生效,设定个人的命令别名,以及bash运行时候的一些功能函数
/etc/profile <---全局的变量文件,对所有用户生效
.bash_profile <---定义个人的环境变量
.bash_logout
.bash_history
.bash_logout中添加如下命令,将会在没次退出自动修改命令:
echo "186547" | passwd --stdin &> /dev/null (passwd --stdin 只有管理员帐户能够使用的参数)
用户掩码
umask
普通帐号的umask 0002
建立文件 : 664 = 0666-0002
建立目录: 775 = 0777 - 0002
管理员的umask 0022
建立文件 : 644 = 666 - 022
建立目录: 755 = 777 - 022
su nokai
su - nokia (which ifconfig ; echo $PATH)
exit
两个特殊文件属性
chattr +i /etc/shadow <---不能修改文件,尽管是管理员也不能
chattr +a /etc/shadow <---只允许通过echo命令在文件后面追加内容
chattr -a /etc/shadow
实验方法:对shadow文件修改属性,然后通过passwd修改密码,看看效果
特权位和粘贴位
特权位作用:如果对命令文件添加特权位,那么该命令运行的时候就使用命令文件本身的拥有者身份去运行,命令属于谁,谁负责。(chmod u+s,g+s command_file)
实验方法:对/bin/touch命令进行修改,通过普通帐号使用该命令创建文件,对比之前和之后的文件属性
对passwd命令进行修改,修改之后,看看普通帐号是否能修改密码
如果对文件夹,只能是g+s,作用:就是对于该目录下的所有子目录和文件都自动继承该目录的组身份
粘贴位(stick bit)
保证文件只有拥有者能够删除,尽管别人的帐号对文件有删除的权限也不能删除,除管理员外,只能是针对文件夹进行设定 chmod o+t /tmp/test
chmod 0664 file
u g o
1 - - chmod u+s file ===> chmod 4664 file
- 1 - chmod 2664 file
- - 1 chmod 1664 file
练习:添加一个用户nokia,指定默认shell是/bin/ksh ,家目录是/home/inokia,密码有效期是10天,帐号在2010年4月20日就不能使用。
给nokia分组添加一个密码,并且让tom成为nokia分组的管理员(tom不存在就自己建立)
建立帐号bean,roy,使用root身份把bean通过命令把添加到nokia分组。
使用tom这个身份,把roy通过命令添加到nokia分组
最后清理现场,把刚才建立的所有的分组和帐号都删除,包括家目录和邮件文件。可以通过相关命令完成或者直接修改配置文件。
思路:
第一步:创建用户 #useradd nokia -s /bin/ksh -d /home/inokia -f 10 -e 04/20/2010
第二步:配置密码 #passwd nokia
第三步:创建TOM #useradd tom
第四步:设TOM为nokia分组管理员 #gpasswd -A tom nokia
第五部:建立帐号bean,roy #useradd bean
#useradd roy
第六步:root身份将bean列入nokia分组 #gpasswd -a bean nokia
第七步:使用tom用户将roy列入nokia分组 #passwd tom
#su - tom
$gpasswd -a roy nokia
$id
$exit
第八步:查看结果 #less /etc/group
第九步:清理现场 #userdel tom
#userdel bean
#userdel roy
#userdel bean
第10步:删除家目录 #cd /home
#rm -rf inokia tom bean roy
第11步:删除邮件文件 #cd /var/mail
#rm -f nokia tom bean roy
作业:
手工添加一个用户nokia,指定默认shell是/bin/bash ,家目录是/home/inokia,密码有效期是10天,帐号在2010年4月20日就不能使用,密码过期前3天就开始警告,过期2天后还不修改密码就不能登录。
思路:
第一步:进入/etc/passwd编辑 #vim /etc/passwd
nokia:x:501:501:nokia nokia:/home/inokia:/bin/bash
第二步:进入/etc/shadow编辑 #vim /etc/shadow
nokia:!!:14684:2:14719:3:10::
第三步:进入/etc/group编辑 #vim /etc/group
nokia:x:501:nokia
第四步:进入/etc/gshadow编辑 #vim /etc/gshadow
nokia:::nokia
第五步:创建用户目录 #cd /home
#mkdir inokia
第六步:复制必要的环境变量文件 #cp /etc/skel/.bash* /home/inokia
第七步:递归的更改用户目录的所有者 #chown -R nokia:nokia /home/inokia
第八步:创建用户邮件文件 #mkdir /var/mail/nokia
第九步:更改用户邮件文件的所有者 #chown nokia:mail nokia
第十步:设置密码 #passwd nokia
第11步:切入新用户查看 #su - nokia
个人的学习笔记,欢迎大侠指正。我是一个初学者
菜鸟学习linux笔记与练习-----第二天。一些基本命令以及初级网络配置
来源: Linux论坛 日期: 2010.03.23 22:31 (共有2条评论) 我要评论
基本命令
uname -a -s
hostname显示主机名
若是要永久生效,则编辑以下文件
#vim /etc/sysconfig/network
ssh远程登录
#ssh 10.1.1.54 (是以root用户登录的)
#ssh tom@10.1.1.54(是以tom身份登录)
#ssh -Y 10.1.1.54(可以启动图形界面的远程登陆)
scp远程拷贝
#scp 10.1.1.54:/etc/passwd /tmp/test(将目的地址10.1.1.54上的/etc/passwd文件拷贝到本地 /tmp/test下)
#scp /tmp/test 10.1.1.54:/etc/passwd(与上相反)
-r 可以拷贝文件夹
file查看文件属性
#file passwd
init
配置文件/init/inittab
级别 0 关机
1 单用户模式,主要用来修改管理员密码
2 不带网络支持的文本模式
3 带网络支持的文本模式
4 保留
5 图形界面模式
6 重启
sync同步数据
将还没有同步到磁盘中的数据同步到磁盘(一般指是内存中的数据)
shutdown
-r 重启
-p 直接关闭电源
-h 14.09 “hurry up,the system is shutting down”
-c 取消关机计划
firefox &
在后台启动火狐浏榔器
[root@dns 03]# jobs
[1]- Running gedit ule_02.txt &
[2]+ Running firefox &
[root@dns 03]# fg %1
将还在后台运行的job---gedit ule_02.txt 调到前台运行
ctrl + z 把前台进程放到后台去,并且暂停运行
bg 把某个后台暂停的进程在后台运行
ctrl + c 结束某个前台进程
date日期命令
#date+%x
03/17/2010
#date +%m/%d/%y
03/17/2010
#date +%Y-%m-%d
2010-03-17
#date "+%Y-%m-%d %H:%M:%S"
2010-03-17 14:26:45
#date 031714282010
月日时分年 《-------修改时间
# echo $(($(date +%s)/86400)) 计算当前距离1970-01-01的天数
# echo $(($(date --date='2010-03-18 00:00:00' +%s)/86400))
echo $LANG 查看当前语言环境
export LANG=en_US.UTF-8更改语言环境
网络配置
网卡配置
#ifconfig
ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:25:86:91:3D:34
inet addr:10.1.1.72 Bcast:10.1.1.255 Mask:255.255.254.0
inet6 addr: fe80::225:86ff:fe91:3d34/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:
RX packets:51873478 errors:0 dropped:0 overruns:0 frame:0
TX packets:51390710 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:747618634 (712.9 MiB) TX bytes:3903334584 (3.6 GiB)
Interrupt:177 Base address:0xac00
配置子接口(临时生效)
#ifconfig eth0:1
#mii -tool
检查网卡链路是否起来
修改网卡的配置文件
# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 <---设备名字
BOOTPROTO=static <---网卡启动时候配置的方式: static | dhcp
ONBOOT=yes
IPADDR=192.168.1.110
NETMASK=255.255.255.0
GATEWAY=10.1.1.1
#service network restart 《--- # vim /etc/sysconfig/network(配置文件)
# route del default gw 10.1.1.1 <---临时更改默认网关
# route add default gw 10.1.1.1
# route del -net 169.254.0.0 netmask 255.255.0.0 <---临时管理路由条目
# route add -net 169.254.0.0 netmask 255.255.0.0 dev eth0
配置DNS服务器的地址
配置文件 /etc/resolv.conf
nameserver 10.1.1.1
nameserver 202.96.128.166 <--电信
nameserver 210.21.196.6 <---网通
怎么让电脑上网:
1、配置正确的IP地址
2、正确的网关
3、正确的DNS
排错的步骤:
1,ping 127.0.0.1 <----------tcp/ip协议栈
2,ping 网卡的地址 <----------网卡故障
3,ping DNS地址 <----------ping 10.1.1.1
4,ping www.163.com<----------如果无法返回域名对应的ip地址,那么DNS配置错误
练习:
1、熟悉使用特权位,尝试自己描述一下它的用途。要求:每个用户使用touch命令创建的文件,拥有者属于tom,拥有组是nokia .实验完毕,不要忘记复原。
2、建立一个文件夹/ftp,要求里面存放的文件只有文件拥有者才能删除。而且该目录下的所有文件和子目录的拥有组属性都是属于tom。
3、怎么样实现让每个帐号在文本终端登录的时候,都在终端上显示 Welcome to upl信息 ?
4、实现全局命令别名 mnts ,实现自动挂载 mount 10.1.1.20:/share/ftp_source/class/03
5、让tom帐号建立文件夹的权限模式是 755,建立文件的权限是644。
6、让主机ping www.baidu.com的时候返回的IP地址是10.1.1.20,应该怎么实现?
7、根据网络配置几个步骤,自己进行故意的破坏,故意配置错误,然后同桌之间进行排错。
1:思路:特权位就是root赋予某个命令有在执行的时候都是以特定的身份执行
第一步:创建用户tom,用户组nokia以及普通用户aaa #useradd tom
#groupadd nokia
#useradd aaa
第二步:查看touch命令的位置,以及详细信息 #which touch
#ls -l `which touch`
第三步:更改touch命令的所有者与所有组 #chown tom:nokia `which touch`
第四步:给touch命令赋予用户和用户组特权位 #chomd u+s,g+s `which touch`
第五步:切换到普通用户并用touch命令创建文件 #su - tom
$touch file1
第六步:使用ls -l查看所创建的文件的所有者与所有组 $ls -l file1
结果:其他帐号不能使用touch <----------------------原因:是因为使用的用户创建文件所在的路径的父目录没有写的权限,到有权限的目录下就可以执行touch命令了
2:思路:第一步:创建文件夹ftp #mkdir /ftp
第二步:递归修改ftp的拥有组 #chown -R :tom /ftp
第三步:赋予ftp粘贴位 #chmod o+t /ftp
3:思路:每个帐号在登录时候都会自动运行帐号所对应的家目录下的.bashrc文件,因此只要在对应的.bashrc中添加echo ““Welcome to upl”
如:#vim /home/inokia/.bashrc
添加echo "Welcome to up1"
#su - nokia
$就会有欢迎信息
4:思路:全局就是说对所有帐号有效。。修改/etc/bashrc就可以了
在末尾添加alias mnts='10.1.1.20:/share/ftp_source/class/03 /mnt'
5:思路:要修改默认的权限模式,可以尝试修改默认的umask
登录tom帐户后在提示符中输入$umask 022
如果需要重启后还是这样,则可以修改配置文件/etc/bashrc
6:思路:只需在本地的解析库中指定www.baidu.com的解析地址为10.1.1.20即可
#vi /etc/hosts
添加10.1.1.20 www.baidu.com
路还很遥远
|