一般來說, reboot/poweroff/shutdown/init/halt 這些命令都在 /sbin/ 下面,你先 ls /sbin 一下看看這些命令在不在,如果在,那么再 echo $PATH 看看 /sbin 在不在你的PATH環境變量中,如果也在,那么再看看這些命令是否都被設置成可執行了。基本上出現不能執行一個命令的原因也就是上面這幾條了。
發展壯大離不開廣大客戶長期以來的信賴與支持,我們將始終秉承“誠信為本、服務至上”的服務理念,堅持“二合一”的優良服務模式,真誠服務每家企業,認真做好每個細節,不斷完善自我,成就企業,實現共贏。行業涉及成都衛生間隔斷等,在重慶網站建設、全網整合營銷推廣、WAP手機網站、VI設計、軟件開發等項目上具有豐富的設計經驗。
要充分理解本文,必須具備Windows 環境下桌面應用程序的工作經驗,我認為讀者對如何使用 Linux 桌面有一個基本的了解。使用一個運行的 Linux 計算來機探討本文的概念和示例是很有幫助的。
有時候第一次在 Linux 上運行一個應用程序需要一點額外工作。有些應用程序,比如服務器服務,可能無法安裝為服務,因此您需要從命令行啟動這些應用程序。對于啟動這些應用程序的用戶帳戶而言,需要在應用程序文件中設置執行許可標志 (x)。
Linux 在內核空間或用戶空間運行進程。用戶空間 是操作系統的區域,應用程序通常在此運行。簡單地說,每個用戶帳戶有其自己的用戶空間,應用程序在這個領域內運行。
默認情況下,只有 root 用戶有權訪問內核空間。root 用戶 是 Linux 中的超級用戶,相當于 Windows 中的管理員帳戶。在 root 用戶帳戶下運行應用程序可能會引起安全風險,是不可取的。
很多服務器服務需要 root 權限啟動服務。然而,服務啟動后,root 帳戶通常會將其移至服務帳戶。嚴格地說,Linux 中的服務帳戶 才是標準的用戶帳戶。主要區別是服務帳戶僅用于運行一個服務,而不是為任何實際登錄的用戶準備的。
您可以使用 chmod 命令在一個文件中設置執行權限。在 Linux 中,umask 設置通常用來防止下載的文件被執行,也有充分的理由相信,因為它有助于維護 Linux 計算機的安全性。
大多數 Linux 發行版具有一個值為 022 的 umask 設置,這意味著,默認情況下一個新文件權限設置為 644。權限的數字表示形式采用讀 (4)、寫 (2)、執行 (1) 的格式。因此,默認權限為 644 的應用程序下載意味著文件所有者有讀寫權限,而組用戶和其他用戶只有讀權限。
例如,為每個人賦予一個文件的執行權限,使用 chmod a+x 命令。a 表示所有人,加號 (+) 表示添加,而 x 表示執行。同樣地,如果應用程序是一個服務器服務,您應該確保只有授權帳戶才有權執行此服務。
如果一個應用程序能夠在標準用戶帳戶權限下運行,但只有特定組中的用戶才需要使用它,您可以將該組所有者權限設置為可執行,然后將這些用戶添加到該組中。
更具體地說,您可以在一個可執行文件中設置訪問控制列表 (ACL) 權限,賦予特定用戶或組權限來運行該應用程序。使用 setfacl 實用工具設置 ACL 權限。
對于這些需要以 root 用戶啟動進程的應用程序,比如服務器服務,您有幾個選擇。總結了允許用戶執行需要 root 權限的服務器服務的各種選項。
作為 root 用戶 不推薦用于服務器服務。當用戶已經知道 root 密碼而且應用程序泄露不是首要關注問題時,可用于應用程序。
SetUID 由于安全問題,不推薦使用。SetUID 允許標準用戶以另一個用戶方式,比如 root 用戶,執行一個文件。
sudo 很常用,并且被認為是一個很好的實踐。sudo 授予一個用戶或組成員權限以執行可能額外需要 root 權限的文件。該用戶不需要知道 root 密碼。
帶有文件權限的標準用戶帳戶 在一個文件上為用戶所有者、組所有者或其他人(所有人)設置執行權限。這是授予那些不需要 root 權限來執行應用程序的用戶的常用方法。
帶有 ACL 權限的標準用戶帳戶 使用較少,但是如果您不想授予一個用戶 sudo 訪問或者更改文件的權限,這也是一個可行的解決方案。在一個文件上使用 setfacl 命令,您可以授予一個特定用戶或用戶組執行該文件的權力。
在管理 Linux 服務器時,從命令行運行應用程序是一項基本的任務。很多應用程序使用 shell 腳本(類似于 Windows 批處理文件 .bat)來啟動應用程序并執行其他任務,比如設置變量以及為其他用戶分配進程。例如,應用程序可能需要一個 Java? Virtual Machine (JVM) 來執行。那樣的話,shell 腳本可以設置適當的環境變量,然后執行 Java 命令來運行 Java Archive (JAR) 或類文件。這同樣適用于使用 Perl、Python、甚至 C# 的應用程序。(當然,C# 編譯的應用程序可以在 Linux 上運行)
從命令行或者 shell 提示符執行應用程序的一個常用方法是使用 ./ 命令。如果您在 Linux 中使用句號 (.) 和正斜杠 (/),就意味著告訴環境您想要以可執行文件運行該文件。例如,運行一個名為 myapp 的可執行文件,您可以使用 ./myapp 命令。同樣地,您可以在文件名之前加上語言環境,比如:
sh php python perl java
但更多情況下,套裝應用程序使用 shell 腳本,以 #! 符號設置環境變量提供該語言的運行時可執行路徑,比如 #!/usr/bin/python。您也應該熟悉這種方法。
清單 1 使用 catalina.sh 默認腳本通過 ./ 方法啟動 Apache Tomcat 應用程序服務器。然后,使用 sh 方法啟動服務器。因為默認端口是 8080,標準用戶不需要對其進行特別修改就可以啟動該服務。
一、Shell支持作用控制,有以下命令:
1. command 讓進程在后臺運行
2. jobs –l 查看后臺運行的進程
3. fg %n 讓后臺運行的進程n到前臺來
4. bg %n 讓進程n到后臺去;
PS:“n”為jobs查看到的進程編號。
二、執行命令切換至后臺
在Linux終端運行命令的時候,在命令末尾加上符號,就可以讓程序在后臺運行
root@Ubuntu$ 。/tcpserv01
三、切換正在運行的程序到后臺
如果程序正在前臺運行,可以使用Ctrl+z 選項把程序暫停,然后用 bg %[number]命令把這個程序放到后臺運行,這個步驟分為3步,如下:
1.暫停程序運行CTRL+Z
ctrl + z跟系統任務有關的,ctrl + z可以將一個正在前臺執行的命令放到后臺,并且暫停。
[Oracle@linuxidc ~]$ sh ins.sh
[1]+Stopped ins.sh
2.查看暫停的程序
察看jobs使用jobs或ps命令可以察看正在執行的jobs。
[oracle@linuxidc ~]$ jobs -l
[1]+ 4524Stopped ins.sh
jobs命令執行的結果,+表示是一個當前的作業,減號表是是當前作業之后的一個作業。
jobs -l選項可顯示所有任務的PID,jobs的狀態可以是running, stopped,Terminated
3.切換程序至后臺
bg將一個在后臺暫停的命令,變成繼續執行如果后臺中有多個命令,可以用bg %jobnumber將選中的命令調出。
[oracle@linuxidc ~]$ bg %1
[oracle@linuxidc ~]$ jobs -l
[1]+ 4524Running ins.sh
4.切換程序至前臺
也可以用 fg %[number]指令把一個程序掉到前臺運行
[oracle@linuxidc ~]$ fg %1
。/tcpserv01
5.終止后臺程序
也可以直接終止后臺運行的程序,使用 kill 命令
[oracle@linuxidc ~]$ kill %1
但是如果任務被終止了(kill),shell 從當前的shell環境已知的列表中刪除任務的進程標識;也就是說,jobs命令顯示的是當前shell環境中所起的后臺正在運行或者被掛起的任務信息。
是這樣的
首先要保證你安裝的是正確的,接著保證你的這個可執行文件有當前登錄賬號的執行權限,可以用ls -al查看一下
如果,你可以使用如下方式執行:
1、./tlesp (如果后面又參數,你可以根據需要添加參數)
2、/home/path/tlsap (如果后面又參數,你可以根據需要添加參數)
分享文章:linuxsap命令 linux配置samba
分享地址:http://m.newbst.com/article36/dosjgsg.html
成都網站建設公司_創新互聯,為您提供軟件開發、面包屑導航、網站建設、響應式網站、微信小程序、營銷型網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯