您的位置:首页 > 运维架构 > Linux

Ubuntu 服务器管理员手记(一):常用 Linux 命令

2011-01-27 15:20 316 查看
本文针对Ubuntu,绝大部分Linux命令是通用的。
命令行首符号“#”表示使用root权限,“$”表示一般用户权限;与通常Linux终端表示方法相同。
Linux命令参数或需依实际情况输入的变量,用首字母大写的单词拼写,能顾名思义的不再另行解释,如FileName。

文件管理

查看文件属性(list long)

$ ls -l$ ll每个文件一行,依次列出文件权限、所有者、所在组、文件大小、创建时间和文件名。文件权限是10位标识符,依次包含:是否目录(1)位、所有者权限(3位)、同组用户权限(3位)、其他用户权限(3位)第1位如果是“d”表示目录,如果是“-”表示常规文件。3位权限标识符依次是r、w、x,分别表示允许读、写、执行;如果某位是“-”表示禁止相应操作。

更改文件所有者(change owner)

# chown [-R] UserName:GroupName FileName即change owner,选项-R可用于更改目录的所有者,表示递归(recursive)更改子目录及包含文件的所有者。

更改文件权限(change mode)

$ chmod [-R] Who[+/-]Permition FileName选项-R可用于更改目录权限,表示递归(recursive)更改子目录及包含文件的权限。Who用如下字母组合表达:u=文件所有者(user),g=同组用户(group),o=其他用户(others)。Permition则由字母r、w、x组成。$ chmod DigitalExpression FileNameDigitalExpression是用三个并排数字依次表达所有者、同组用户和其他用户的权限,每个数字按r=4、w=2、x=1将相应权限换算求和,如7=rwx、5=r-x,755=rwxr-xr-x。

文件查找

$ find [-L] Path FilterType FilterValue...使用选项-L则查找时包含符号链接指向位置。FilterType包括:-name 按文件名查找FilterValue是FilterType对应的值,如要查找的文件名等。

文件解压缩

在保存解压后文件的目录下,执行:$ tar -zxvf PackedFile则将目标压缩文件解压缩至当前目录。

执行文件

定位到可执行文件即可运行,比如直接给出文件完整路径:$ /usr/bin/java注意例外情况,当可执行文件在当前目录时,需使用“./”前缀显式指明文件位置为当前目录:basicthinker@ubuntu:/usr/bin$ ./java因为如果不添加“./”,会默认使用 PATH 环境变量指明的文件位置:basicthinker@ubuntu:~$ java

系统管理

查看端口帧听

# lsof -i :25该命令是“list open file”的缩写,因为 Linux 把网络端口等均视为文件,所以有此用途并不奇怪。最后端口的完整写法可以是 tcp@localhost:25,注意和一般表示文件路径区分,tcp不是用户而是指协议 。

更改环境变量

通过编辑 /etc/environment 文件等方法固然可行,但是如下方式最为推荐:# cd /etc/profile.d/# vim FileName.sh如果是新建文件,FileName可以任意设定,以添加环境变量 J***A_HOME 为例,可以新建文件 java.sh 并写入如下内容:export J***A_HOME=/usr/lib/jvm/java-6-sun-1.6.0.22当不再需要该环境变量时,可以直接删除 java.sh 文件。这样管理,更加方便安全,背后的原由在于 /etc/profile 文件中有读取 profile.d 目录并执行其中 *.sh 文件的脚本。

远程登录

$ ssh UserName@HostAddress

远程拷贝

$ scp Source Destination其中 Source 或 Destination 可为远程地址,格式形如:UserName@HostAddress:Path

查看安装包

$ dpkg -l *PackageName*查看包的安装状态,包名中可使用通配符。列出结果的前三各字母表示安装状态:第一列标识期望值,包括:
u 状态未知,这意味着软件包未安装,并且用户也未发出安装请求。
i 用户请求安装软件包。
r 用户请求卸载软件包。
p 用户请求清除软件包。
h 用户请求保持软件包版本锁定。
第二列标识软件包的当前状态,包括:
n 软件包未安装。
i 软件包安装并完成配置。
c 软件包以前安装过,现在删除了,但是它的配置文件还留在系统中。
u 软件包被解包,但还未配置。
f 试图配置软件包,但是失败了。
h 软件包安装,但是但是没有成功。
第三列标识错误状态,包括:
空表示没有问题
h 软件包被强制保持,因为有其它软件包依赖需求,无法升级。
r 软件包被破坏,可能需要重新安装才能正常使用(包括删除)。
x 软包件被破坏,并且被强制保持。

用户管理

创建用户

# adduser UserName自动添加同名用户组(group)

将用户加入特定组

# usermod -G GroupName1,GroupName2 UserName
其中用户和组均已存在。

将用户从组中删除

# gpasswd -d UserName GroupName实际是修改文件 /etc/group,通过 gpasswd 命令操作更安全,比 usermod 命令更简单直接。

查看用户属于哪些组

$ groups UserName

授予用户root权限

在用户使用sudo命令前,需确保该用户属于 sudoers 组,否则无法使用 sudo 授权。打开sudoers文件:# vim /etc/sudoers在“root”行后面添加如下行:%GroupName ALL=(ALL) ALL则名为 GroupName 的组中所有用户均可使用 sudo 命令执行 root 权限。
另一种办法就是将现有用户加入到已经准许授予 root 权限的组中。假设 /etc/sudoers 文件中已经包含如下行:%admin ALL=(ALL) ALL说明 admin 组准许授予 root 权限。于是,可将当前用户加入到 admin 组中:# adduser UserName admin
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: