Linux新手入门需知(二)

五. 用户管理
添加用户:useradd 用户名(useradd aaa)
设置/修改密码:passwd 用户名(passwd aaa)
添加用户组:groupadd 用户组名(groupadd root123)
 
将用户添加到某用户组:
useradd –g 用户组 用户(useradd –g root123 aaa)
 
修改用户属性(需root权限)
usermod –g 用户组 用户
usermod –d 目录 用户名   //改变用户登陆的初始目录
usermod -s shell类型 用户名
usermod -c 注释 用户名
usermod -u 用户编号 用户名
 
删除用户:userdel aaa (删除用户,但/home下用户主目录文件信息仍存在)
userdel –r aaa (彻底删除用户及用户所有文件信息)
 
查看系统中所有用户:
cat /etc/passwd
 
查看系统所有用户组:
cat /etc/group
 
默认情况下新建一个用户,就会生成一个以该用户名命名的用户组。
 
六. 进程/网络状态管理
进程:
在Linux中,每个执行的程序成为一个进程,每个进程都分配一个ID号(PID)。
每一个进程都会对应一个父进程,父进程可以复制多个子进程,如www服务器。
每个进程都可能一两种方式存在,前台与后台。
一般系统服务都是以后台进程的方式存在,而且常驻系统中,直到关机才结束。
 
进程与线程:
进程:正在执行的程序。
线程:1. 轻量级的进程;
进程有独立的地址空间,线程没有;
线程不能独立存在,它是由进程创建的;
线程耗费的cpu和内存小于进程。
查看进程:1. ps –aux (当前运行进程,静态)
top (动态监控进程)

Linux新手入门需知(二)

终止进程:
kill 进程号( PID )
eg:kill 16251     //终止进程号为16251的进程
kill -9 16251   //某些进程不能被杀,使用 -9 参数强制终止进程
 
显示网络状态命令:netstat
此命令用来显示整个系统目前的网络情况。如连接、数据包、路由表内容。
netstat –an 显示所有端口和连接信息(包括远程链接到本机的ip)
netstat –anp 与上面想比,多显示进程号(PID),推荐使用此命令
 
显示数据包经过历程命令:traceroute
此命令用来检测数据包在网络上传输的过程,可显示本机到目标主机所经历路由的完整路径。
traceroute + 参数 + 目标IP或网址   //参数可忽略,相当于win下的tracert。
eg:traceroute www.baidu.com
 
route –n 显示本机网关、路由情况。
 
linux上进程有5种状态:

  1. 运行(正在运行或在运行队列中等待)
  2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)
  3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)
  4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)
  5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)

 
ps工具标识进程的5种状态码:
D 不可中断 uninterruptible sleep (usually IO)
R 运行 runnable (on run queue)
S 中断 sleeping
T 停止 traced or stopped
Z 僵死 a defunct (”zombie”) process
 
七. 文件管理
文件所有者:
文件是哪个用户创建的,它的所有者就是该用户。
ls –ahl   查看文件所有者
// a代表显示所有,包括隐藏文件;h代表输出文件大小;l代表用长列表显示,显示更详细内容。
 
修改文件所有者:chown 用户名 文件名
修改文件夹所有者:chown –r 用户名 文件夹目录   //Linux中-r 为递归的意思。
 
文件所在组:
文件是哪个用户创建的,它的所在组就是该用户所在组。
ls –ahl   查看文件所在组(如上)
 
修改文件所在组:chgrp 组名 文件名
 
文件和目录权限:
rwx = 421   //读写执行
chmod 777 aaa   //赋予文件aaa最高权限
 
文件赋权执行上面格式即可,下面做详细诠释。
 
chmod u=rwx,g=rx,o=rx aaa
//相当于chmod 755 aaa;u代表user;g代表group;o代表other
chmod u-x,g+w aaa   //给aaa去除用户执行权限,增加用户组写的权限
 
八. 常用命令
Linux运行级别   init [0123456]
运行级别 0:关机           //shutdown –h now也可立即关机
1:单用户
2:多用户状态没有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启       //reboot
常用运行级别是3和5,修改系统启动默认的运行级别:
/etc/inittab文件中的id:5:initdefault中的数字。
 
查看用户当前运行级别命令:runlevel 或 who -r
 
若不慎将默认运行级别设置为6,系统将不断重启。
解决:在启动界面按e,进入第二个界面选中第二行按e,然后输入1(以单用户启动,且进入不需要密码,也可用于忘记密码时进入然后

重设密码),进入init 1级别用命令改回文件的默认运行级别。
 
Linux常用命令
 
有问题用man命令(manual指南,相当于dos下的help)
eg :#man grep(后直接接命令)
 
ls:查看文件目录,等于dir
ls –l 用长列表显示,显示更详细内容;
ls –a 显示隐藏文件;
ls –h 显示文件大小。
 
重定向命令:
ls –l > a.txt 将显示的内容写入a.txt(覆盖原内容)
ls –al > aa.txt 将现实的内容追加到文件aa.txt的末尾(不覆盖原内容)
 
lsb_release -a   //查看版本信息
uname -a   //可显示电脑以及操作系统的相关信息。
cat /proc/version   //说明正在运行的内核版本。
cat /etc/issue   // 显示的是发行版本信息
touch:创建空文件
mkdir:创建文件夹
vi:编辑文件,当文件不存在时可创建文件
cat:查看文件内容
cp:复制命令
cp –r aaa bbb (递归复制,将aaa文件及子文件复制到bbb)
mv:移动文件或重命名
rm:删除文件
rm –rf * 删除文件夹所有内容(包括目录及子文件)
r 递归   f 强制
ln:建立符号链接,相当于建立快捷方式link。
ln –s 源文件路径 目标文件路径
eg:ln –s /root/abc3.java toabc3
//建立后显示如下(文件属性前会多个l,代表ln命令建立的)

Linux新手入门需知(二)

more:分页显示文件内容,按空格查看下一页,不可查看上一页内容
less:分页显示文件内容,空格查看下一页内容,上下键也可查看上/下一页内容
grep:显示文本中查找的内容(grep只显示查找的内容,cat显示文本所以内容)
grep –n 显示内容所在行数
|:管道命令,把上一个命令的结果交给 | 后面的命令处理。(一条命令可有多个管道命令)
 
find:文件查找
find 文件路径 –name 文件名
eg:find / -name aaa.txt 全目录查找aaa.txt (路径越详细查找越快)
★ 搜索一段时间内被存取/变更的文件或目录:
find /hoem –amin -10    //查找十分钟内存取的文件或目录
find /hoem –atime -10   //查找十小时内存取的文件或目录
find /hoem –cmin -10    //查找十分钟内更改过的文件或目录
find /hoem –ctime +10   //查找十小时前更改过的文件或目录
find /hoem –size +10k    //查找/home目录下大于10k的文件
a:access 存取   c:change 更改
该查找多用于安全方面,查看黑客在一段时间内动过的系统文件。
 
pwd:查看当前路径
whereis:查找目标文件的路径
whereis ssh   //查看ssh的路径
 
压缩与解压缩
zip(压缩)和unzip(解压缩)
zip(压缩):
zip a.zip aaa //zip后直接接压缩后的文件名,将aaa压缩成a.zip
zip –m a.zip aaa //压缩后删除原文件,将aaa压缩成a.zip并删除aaa
zip –r a.zip aaa //将子目录一起压缩,文件夹aaa及其子目录一起压缩为a.zip(常用)
zip -9 a.zip aaa //-9为压缩率(-1 — -9,-9压缩率最高)
 
压缩当前文件夹,两种方法:
(1)zip –r 111.zip .  //.代表当前文件夹
(2)zip –r 111.zip 文件夹路径/*(eg:zip –r 111.zip /home/*)
unzip(解压缩):
unzip a.zip //解压缩文件a.zip
unzip a.zip –x bbb //不解压某文件,a.zip中除了bbb其他都解压
unzip –z a.zip //查看压缩包内容,也可用“-l”、“-v”查看
将压缩文件解压扫某处:unzip *.zip –d /目录 (如果该目录下没某文件会自动创建)
 
gzip(压缩)和gunzip(解压):
gzip a.gz aaa //压缩
gzip –d a.gz //解压缩
3.gunzip a.gz     //解压缩
 
tar.gz解压:tar -zxvf aaa.tar.gz
 
corntab:用于设置周期性被执行的指令,可用于任务调度。

Linux新手入门需知(二)

终止任务调度:
conrtab –r :终止任务调度
conrtab –l :列出当前有哪些任务调度
 
 
九. Shell
shell,壳,是指“提供使用者使用界面”的软件,将命令解析成机器语言。从作用上说,类似于cmd,接受用户命令然后调用相应应用

;从功能上说又类似于bat批处理,可将程序编写成shell执行。
 
shell的分类:
shell名称     开发者     命令名称
Bourne     S.R. Bourne    /bin/sh
C          Bill Joy        /bin/csh
Kom        David        /bin/ksh
 
Shell的修改:chsh –s 输入新的shell   //eg:chsh –s /bin/csh
 
不同shell的命令稍有差别
 
用户登陆后自动执行的shell脚本文件:
.bashrc 位于用户主目录下,它之前执行系统的脚本/etc/bashrc,主要是配置基础数据
.bash_profile位于用户主目录下,它之前执行系统脚本/etc/profile,主要是配置环境变量
 
alias(别名),可简化常用命令的输入,shell程序用经常使用
命令:alias 自定义命名=’想要替换的命令’
eg:alias cp=’cp -i’
alias ll=’ls –l –color=tty’
 
十. 软件的安装
RPM管理
rpm,RPM Package Manager(RPM软件包管理器)的缩写,一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中

。它生成具有.rpm扩展名的文件,与dpkg类似。这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包

括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,可以算是公认的行业标准了。
 
如何查询linux中安装了哪些rpm软件:
rpm –q   //查看有没有安装mysql

Linux新手入门需知(二)

rpm –qa  //查看所有rpm软件

Linux新手入门需知(二)

rpm常用命令:

Linux新手入门需知(二)

安装rpm包:
rpm –ivh *.rpm   // i=install安装;v=verbose提示;h=hash进度条
 
卸载rpm包:
rpm –e *.rpm
//如果其他软件包依赖于当前要卸载的包,会产生错误告警
rpm –e –nodeps *.rpm
//该命令用于强制卸载当前rpm包,但依赖于此包的软件可能无法运行
 
升级rpm包:
rpm –U *.rpm
 
文件共享:
1.Samba服务器安装:Linux下开发人员好像喜欢装这个。
安装传送门
2.FTP服务器安装:大多数Linux机器都是用的这个。
安装传送门
3.SCP命令:
scp [OPTIONS] file_source file_target
eg:scp ntp-4.2.8p7-0.10591.1.PTF.959243.x86_64.rpm boco4a@200.200.0.114:/home/boco4a
OPTIONS:
-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接、认证、 或是配置错误
-C 使能压缩选项
-P 选择端口 . 注意 -p 已经被 rcp 使用
4.方便快捷的文件传输软件:sshClient
另外putty、xshell、secureCRT也可用于管理主机,但文件传输基于FTP或rz、sz命令。
 
Mysql数据库的安装
Mysql数据库由于免费、跨平台、轻、支持多并发,一直是中小型企业数据库的首选。
 
安装:
把安装文件拷贝到 /home 下
解压mysql文件.tar.gz 命令:tar –zxvf
groupadd mysql //创建用户组
useradd –g mysql mysql     //创建mysql用户,并放入到mysql组
进入/home下的mysql文件夹
sripts/mysql_install_db –user=mysql   //初始化数据库
chown root .                      //修改文件所有者(.代表当前文件目录)
chown –R mysql data
//修改data文件夹所有者(R参数代表递归,表示当前文件夹下所有文件/文件夹)
chgrp –R mysql .                   //改变用户组
启动mysql
bin/mysqld_safe –user=mysql &      // & 代表以后台方式启动
查看端口3306是否起来:netstat –anp | more
进入mysql:
cd bin
./mysql –uroot –p123
//登录mysql(此种方式只能在/home/mysql/bin下启动mysql)
如果想在任何目录都可以启动mysql,修改环境变量里面的路径PATH:
env   //可以看到PATH路径
在root用户目录下 ls –al | more 找到 .bash_profile
(此文件存放用户变量,系统变量在/etc目录下)
vi .bash_profile在PATH路径后面加上mysql路径

Linux新手入门需知(二)

注销/重启电脑,然后任意路径都能使用mysql –uroot –p123    进入mysql
(注:只能在此用户任意目录,其他用户照样修改。如要所有用户都可以,那就需要改系统变量,在/etc/profile下也存在该文件)
 
数据库备份与恢复

Linux新手入门需知(二)

备份操作在mysql下的bin目录下,非在数据库中。
恢复的时候要先在数据库中新建个空数据库。
 
可以利用任务调度crontab,写个shell脚本将数据库自动备份。

Linux新手入门需知(二):等您坐沙发呢!

发表评论

表情
还能输入210个字