Разрешение на файл задания cron Linux

La forma en que muestro En esta pregunta es la mejor manera de poner colores en Figlet, la forma en que un color se pone antes de los comandos es la única forma que encuentro para que funcione, y después de llamar al siguiente color, el siguiente ¡La línea cambiará al nuevo color!

Si alguien quiere saber, la forma en que llamo a los colores es usando los códigos de color ANSI, como a continuación:

Colores regulares:

  • \e[30m = Black
  • \e[31m = Red
  • \e[32m = Green
  • \e[33m = Yellow
  • \e[34m = Blue
  • \e[35m = Purple
  • \e[36m = Cyan
  • \e[37m = White

Colores claros:

  • \e[90 = Light Black
  • \e[91 = Light Red
  • \e[92 = Light Green
  • \e[93 = Light Yellow
  • \e[94 = Light Blue
  • \e[95 = Light Purple
  • \e[96 = Light Cyan
  • \e[97 = Light White

La forma que uso no es la única, ni siquiera la completa

Para obtener información completa sobre los colores ANSI, lea este sitio:

https://misc.flogisoft.com/bash/tip_colors_and_formatting

Acerca de las variables:

  • Puse el nombre del color en mayúsculas porque es la mejor manera de evitar confusiones

GREEN="\e[92m"

  • Para llamar a la variable creada, debe capturar el valor de la variable mediante la construcción ${}

${GREEN}

  • Para distinguir el color antes del comando, debe usar printf para filtrar el color (Yo uso Printf pero creo que el eco también funciona ).

printf "${GREEN}"

  • La ​​Siguiente Línea que Imprime Algo en la Pantalla Tendrá el Color de la Variable.

printf "${GREEN}"

figlet -f standard "This Will Be Green"

El texto debería ser así:

Test

  • Para detener la fuga de color en el interior donde no debe, hay dos pasos :
    • Si desea poner un nuevo color, simplemente llame al nuevo color
    • Si desea detener el color, utilice la siguiente variable :

      STOP="\e[0m"

      • Put the Stop in the End where after that you Don´t want to Change the color like that:

      printf "${STOP}"

0
03.08.2017, 12:25
2 ответа

В системах Linux для доступа к файлу вам также необходимо иметь доступ для обхода всех каталогов на пути (бит выполнения в разрешениях UNIX ). В вашем случае разрешения /var/spool/cronустановлены на rwx------, а владельцем является root, поэтому вы не можете перейти в каталог как пользователь, отличный от root, и получить ошибку Permission deniedпри попытке доступа к содержимому внутри.

1
28.01.2020, 02:45

Великая Нить, она указала мне правильное направление. Я исправлял виртуальную машину, которая была клонирована, и все GID и UID были перепутаны.

Вот что я сделал на RedHat 5, чтобы починить свою:

[root@pb-qad /]# find. -name cron.allow
./etc/cron.d/cron.allow
--ADDED mfg user

[root@pb-qad ~]# chown root:crontab /usr/bin/crontab
chown: `root:crontab': invalid group

[root@pb-qad ~]# groupadd crontab
[root@pb-qad ~]# groupmod crontab --gid 65535

[root@pb-qad ~]# chown root:crontab /usr/bin/crontab
You have new mail in /var/spool/mail/root

[root@pb-qad ~]# chmod g+s /usr/bin/crontab
[root@pb-qad ~]# ls -al /usr/bin/crontab
-rwxr-sr-x 1 root crontab 315432 Dec 11  2009 /usr/bin/crontab

[root@pb-qad ~]# usermod -a -G crontab mfg
[root@pb-qad ~]# groupmod -g 65535 crontab
groupmod: 65535 is not a unique GID

[root@pb-qad ~]# cd /var/spool/

ОКОНЧАТЕЛЬНОЕ ИСПРАВЛЕНИЕ

[root@pb-qad spool]# chown root:crontab cron
[root@pb-qad spool]# ll -al
total 476
drwxr-xr-x 16 root   root      4096 Oct  1  2009.
drwxr-xr-x 26 root   root      4096 Mar 21 15:49..
drwxr-xr-x  2 root   root      4096 Dec  5  2008 anacron
drwx------  3 daemon qad       4096 Nov 16  2009 at
drwxrwxrwx  2 smmsp  smmsp    69632 Apr 25 09:25 clientmqueue
drwx-wx--T  2 root   crontab   4096 Mar 21 15:49 cron

Теперь Cron работает как пользователь mfg!

0
28.01.2020, 02:45

Теги

Похожие вопросы