etc/bashrc 마지막에 아래와 같은 msg.sh 를 넣고,
if [ `id -u` -ge 500 ] ; then
sh /home/msg.sh
fi
msg.sh 에는 아래와 같이 하였습니다.
#!/bin/bash
read -p "사내 공지사항을 읽어주세요.(y/n)
: " confirm_1
if [ "$confirm_1" == "y" ] ;
then
echo "어쩌구저쩌구"
else
logout
fi
일반 사용자로 로그인 하면 위의 스크립트가 실행은 되는데,
exit, logout 등이 안되더라고요.
그래서, 위 스크립트 내용을
if [ `id -u` -ge 500 ] ; then
## 요 자리에서 바로 하니 됩니다.
fi
근데 출력할 내용이 좀 긴데, 그 글씨들을 다 넣자니 좀
그래서,
생각끝에
else
logout 대신에
trap '$HOME/.bash_logout'
fi
이런식으로 하니 .bash_logout 을 실행할 수 없습니다.(퍼미션)
.bash_logout 은 644 로 자동생성되는데
이걸 수동으로 퍼미션을 바꿔주는 수 밖에 없는지요?
/etc/skel 에서 해당 파일을 퍼미션을 수정해두면...
또 하나는요..
유저 디렉토리에 있는 .(점)으로 된 .bash_history 등의 파일을
자기자신이(일반유저)
수정/삭제 할 수 없도록 할 수 있는지요?
해보니 자신이 사용한 흔적을 지울수 있더라고요.
유저생성을 하면 /etc/skel 에 있는 내용이 복사되는데 해당
유저권한으로 복사되더라고요.
요지는 유저 디렉토리에 있는 .(점)으로 된 파일들은 자기가
수정/삭제 할 수 없도록 하는
겁니다...
알려주시면 감솨하겠습니다...
[산이]님이 남기신 글:
>
>[김성민]님이 남기신 글:
>
>>안녕하세요.
>>
>>SSH로 로그인했을때 지정해 놓은 스크립트 실행이
가능한지요?
>>test.sh 라는 대화형 스크립트를 지정해 놓고 로그인 성공시 그
스크립트가 실행되도록 할 수 있는지 궁금합니다.
>>
>>ex)
>>유저 : /home/user_id
>>스크립트 : /root/***.sh
>
>========================================
>
>bash 쉘이라면
>
>/etc/bashrc 파일 제일 밑에 추가해 주면 됩니다.
>단, 위의 경우, 일반유저는 /root 디렉토리에 접근할 수
없으므로
>일반유저도 접근할 수 있는 위치(디렉토리)에
스크립트 파일이 존재해야 합니다.
>
>예)
>if [ `id -u` -ge 500 ] ; then
> sh /경로/스크립트명
>fi
========================================
|