File system security
$ ls -l (l for long listing!)
This command will let you get lots of detail about the contents of your directory, similar to the example below.
For example, here is a directory's details:
drwxr-xr-x 8 imac staff 272 7 12 10:48 test
最左边的这一串10个字符的解释:
- This column is a 10 symbol string consistingof the symbols d,r,w,x,-,and,occasionally, s or S. 这串字符由d、r、w、x、- 以及s、S构成的十个字符组成。
- If it starts with d, then this indicates a directory.Otherwise, - will be the starting symbol of the string.如果这串字符以d开头,则说明这是一个目录,否则其他是以 - 开头。
- The 9 remaining symbols indicate the permission, or access rights, and are taken as three groups of 3.
剩下的9个字符,分别表示了允许进入权限等信息,3个为一组分成3组数。
1.The left group of 3 givs the file permission for the user that owns the file( or directory);最左边的3个字符表示给文件的主人用户对文件进行读写执行的权限。这里的ownner是imac。
2.The middle group gives the permissions for the group of people to whom the file(or directory) belongs; 中间的3个字符表示对拥有该文件的用户授予的文件读写执行的权限。这里是staff。
3.The mostright group gives the permissions for all others. 最右边的三个表示对其他用户的权限支持。
Access rights on files.
r (or -), indicates read permission (or otherwise), that is, the presence or absence of permission to read and copy the file
w (or -), indicates write permission (or otherwise), that is, the permission (or otherwise) to change a file
x (or -), indicates execution permission (or otherwise), that is, the permission to execute a file, where appropriate
Changing access rights
Using chmod to change the access rights of the file testfile.
The options of chmod are as follows:
Sybol符号 | Meaning意思 |
---|---|
u | user 用户 |
g | group 组 |
o | other 其他 |
a | all 所有人 |
r | read 读 |
w | write(and delete)写/删 |
x | execute(and access directory)执行和进入目录 |
u | user 用户 |
$ chmod go-rwx testfile
This will remove read write and execute permissions on the file testfile for the group and others.取消(收回)组内和其他人的读写、执行testfile文件的权限。
$ chmod a+rw testfile
This will give read and write permissions on the file testfile to all.给予所有人读写testfile的权限。
Processes and Jobs
A process is an executing program identified by a unique PID (process identifer).
$ ps
This command will help you to see information about your processes, like their associated PID and status.查看进程的状态信息,PID、运行状态等。
A process may be in the foreground, in the background, or be suspended. In general the shell does not return the UNIX prompt until the current process has finished executing.进程的状态有三种:前台、后台、被挂起。
把长进程放在后台,可以让UNIX prompt立刻返回结果,同时其他任务还在继续执行。
Running background processes
To background a process, type an & at the end of command line.
For example, the command sleep waits a given number of seconds before continuing.
$ sleep 10
This will wait 10 seconds before returning the command prompt %. Until the command prompt is returned, you can do nothing except wait.让进程睡眠十秒钟,这段时间你什么操作都不能做。
$ sleep 10 &
The & runs the job in the background and returns the prompt straight away, allowing you to do run other programs while waiting for that one to finish. &符号在后台执行sleep命令,在窗口会立刻提示,你可以做其他操作。
Backgrounding a current foreground process
At the prompt, type
$ sleep 1000
Then you can suspend the process runing in the foreground by typing ^Z, Then to put it in the background:
$ bg
这样能够让在前台执行中的程序挂起。
Listing suspended and background processes
$ jobs
This can list processes are running,backgrounded or suspended with their job numbers.
把所有执行中、后台的、挂起的程序列出,并且有一个job number。
$ fg $jobnumber
To restart(foreground) a suspended process.再次执行挂起的进程。
Killing a process
To kill a job runing in the foreground, type ^C
$ sleep 100
^C
结束一个正在前台执行的进程。
To kill a suspended or background process :
$ kill $jobnumber
结束一个被挂起或在后台的进程。
To kill the processes by finding their process numbers(PIDS)
$ kill PID_number
Remember that using ps to show the process status to find out the PID.
通过PID来结束一个进程。
Quotes
UNIX Tutorial for Beginners