새로 생성된 사용자에 대한 bash 구성을 어디에 배치합니까?

새로 생성된 사용자에 대한 bash 구성을 어디에 배치합니까?

과제가 있는데 어떤 bash 구성 파일을 편집해야 할지 혼란스럽습니다.

bash 구성 파일을 편집하고 PS1 프롬프트를 변경하고 루트 사용자가 명령을 입력할 때마다 ~/scripts를 검색하는 환경 변수를 추가해야 합니다. 그런 다음 새로 생성된 모든 사용자도 변수를 갖게 되도록 적절한 디렉터리에 복사해야 합니다.

첫 번째 부분은 잘 수행할 수 있지만 어떤 구성 파일을 편집해야 할지 잘 모르겠습니다. 두 번째 요구 사항에 따라 ~/.bashrc를 편집하고 있지만 복사할 디렉터리의 두 번째 부분에서 막히게 됩니다.

NDG에서는 해당 디렉토리에 있는 확장자가 .sh인 모든 파일이 /etc/profile.d/에서 자동으로 실행된다고 말합니다. 그래서 ~/.bashrc를 bashrc.sh와 같은 파일로 복사/이름 변경했습니다. 하지만 새 사용자 프로필로 테스트하면 터미널에 빈 프롬프트가 나타납니다.

여기 누군가가 나를 도울 수 있기를 바랍니다. 감사합니다.


과제의 정확한 문구

  1. 적절한 bash 셸 구성 파일에서 기본 명령줄 프롬프트에 성, @, 호스트 이름, 작업 디렉터리가 표시되도록 구성합니다.
  2. ~/scripts라는 디렉터리를 만듭니다.
  3. 루트 사용자가 명령을 입력할 때 시스템이 새로 생성된 ~/scripts 디렉터리도 검색하도록 적절한 bash 셸 구성 파일에서 적절한 환경 변수를 변경합니다.
  4. 위 단계에서 수정한 bash 셸 구성 파일을 적절한 디렉터리에 복사하여 새 사용자가 생성될 때마다 해당 사용자도 이러한 환경 변수 값을 갖게 됩니다.

답변1

당신은 훌륭한 편집을 하고 있는 것 같습니다 .bashrc. 사용자 생성 시 복제할 구성/스크립트 파일의 템플릿을 복사해야 하는 디렉토리는 일반적으로 에 있습니다 /etc/skel.

그래서 당신은 할 것입니다 :

  1. ~/.bashrc다음 위치 에 추가하고 배치합니다.

    PS1="surname@\h\w>"
    
  2. ~/scripts에서 향후 사용자 스크립트를 위한 자리 표시자를 만듭니다.

    mkdir ~/scripts
    
  3. ~/.bashrc스크립트를 검색하려면 $PATH 수정자 에 추가하세요 . 경험상 보안상의 이유로 처음이 아닌 끝에 추가합니다.

    PATH=$PATH:~/scripts
    
  4. 이 마지막 부분에서는 슈퍼유저 권한을 가지기 위해 명령 앞에 로 root또는 그룹에 속하여 수행해야 합니다 . 일반 사용자 기본 권한으로는 /etc/skel 디렉토리에 쓸 수 없습니다. 에서와 같이sudosudo

    sudo cp ~/.bashrc /etc/skel
    

    또는 사용자로서 root:

    cp  ~your_user_name/.bashrc /etc/skel
    

관련 내용을 참조하세요링크/etc/skel에 대한 자세한 내용은

/etc/skel 디렉토리에는 useradd 프로그램에 의해 해당 사용자가 생성될 때 새 사용자의 홈 디렉토리에 자동으로 복사되는 파일과 디렉토리가 포함되어 있습니다.

/etc/skel을 사용하면 시스템 관리자가 컴퓨터나 네트워크의 모든 새 사용자에 대한 기본 홈 디렉토리를 생성하여 모든 사용자가 동일한 설정이나 환경에서 시작하도록 할 수 있습니다.

운영 체제를 설치할 때 기본적으로 여러 사용자 구성 파일이 /etc/skel에 저장됩니다.

skel 디렉토리의 이름은 Skeleton이라는 단어에서 파생되었습니다. 왜냐하면 여기에 포함된 파일이 사용자 홈 디렉토리의 기본 구조를 형성하기 때문입니다.

PATH 환경 변수에 대해서는 다음을 참조하세요.이것

PATH 환경 변수는 명령을 입력할 때 쉘이 검색하는 콜론으로 구분된 디렉토리 목록입니다.

프로그램 파일(실행 파일)은 Unix 시스템의 다양한 위치에 보관됩니다. 경로는 특정 프로그램을 요청할 때 시스템에서 찾을 위치를 Unix 셸에 알려줍니다.

PS1에서 프롬프트를 변경하려면.bashrc PS1 생성기매우 영리한 웹페이지를 사용하여 실시간으로 수정 사항을 확인할 수 있습니다.

관련 정보